- 论坛徽章:
- 28
|
原来群里的小疯子就是你...那我也来支持一下~
1.简述下你在工作中使用的多门语言以及应用的场景,(例:shell和 python,shell和perl,shell和php,或3p….)
shell : 主要使用的语言,应用于大部分业务场景,基本都是用来封装其他命令或脚本.比如封装awk和sed做字符处理,封装原生的系统命令做标准输出和参数重构,还有其他日常的比如代码发布备份的底层实现,比较简单的配管的实现,并发批量执行,一些监控脚本,业务逻辑的实现(比如机房流量切换什么的).大多都是基于对下游的调用,然后封装.
python : 在上面shell处理的那些需求中,python用的还是比较少,因为其实python对环境其实还是有一定依赖的,但是这个问题可以通过良好的机器上线流程和系统定制来解决.我主要用到的是python的web相关的功能,用的gunicorn+webob+paste+routes这套,实现一些api,比如定制服务安装接口化,做一些agent和server间的接口通信,各种功能的接口花可以方便接入统一的运维管理平台.
go : 目前正在入门,想要入门主要是因为之前从zabbix切到falcon之后有很多之前依赖的小特性现在没有了,跟开发团队沟通过他们又不打算实现,所以也是想自己看看能不能改一改源码,基于go的语法简单,并发,编译等多种特性,其实还想用go写一些agent练练手,实现一些简单的功能,比如简单的配管啊,日志收集啊等等..
awk : 如果按语法来统计的话,其实awk也能单独提出来,不严谨的说,可以算是弱声明的C.哈哈.主要用来做字符处理和跟新人装逼,eval+awk解析json串,等等.
2.如果在这些语言中找到平衡的方法,不至于在使用的时候搞混淆
目前来看,还没有混淆的情况,可能我会的太少了..哈哈
非要说的话,足够的熟练加上良好的编码习惯和清晰的逻辑,以及一条syntax on可以解决大部分问题.
3.对于新语言的快速掌握,有什么好的心得?
其实要掌握任何一门新的语言,过程基本都是一样的.就是学习+实践.
先说学习,这里我觉得选书很重要....真的很重要...
入门的书籍一定要选的足够简单明了,逻辑层次一定要清晰.否则你一定会觉得云山雾绕,才刚刚第一章就有好多自己不理解的概念.
然后进阶的书籍一定要选的跨度合适,和入门的书跨度太小了就是在浪费时间,太多重复的内容,跨度太大就跟入门书籍选的太深是一个道理.
我认为比较好的选书可以是以下这种...
入门 正则表达式必知必会 进阶 精通正则表达式
入门 简明python教程 进阶 python核心编程
欢迎吐槽~
再说实践,最早看书的时候,就是单纯的看,公交上看,火车上看,地铁上也看,就是纯纯的看,后来发现真是没什么卵用,效率好低,动手写的时候什么也记不住,还要回去重新看一遍.
所以,没有编码环境的情况下,只适合看一些理论性比较强的书,比如网络,操作系统这些,并不适合看语言类学习书籍.
看语言类书籍的时候,最好要能一边看一边写,书上好的例子,可以先看,然后盖上,自己写,真的能发现很多很多问题,而且印象深刻.
如果有章后习题,都要认真做,这是对你这一章学习的真实反馈,你能知道这一章的考察点是什么,是为了让你掌握什么,以及你自己的看书效率.
再然后就是平时小需求的慢慢积累,以及论坛这种开放交流平台的学习.
入门-熟练这个过程其实是很快的,但是熟练-精通这个过程往往需要一段时间的积累.所以,保持住自己的学习状态也很重要...
作为一个萌新我表示只能说的出这么多了,哈哈哈
|
|