前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一个运维人员的编程思维7

一个运维人员的编程思维7

作者头像
franket
发布2021-11-26 10:32:09
3080
发布2021-11-26 10:32:09
举报
文章被收录于专栏:技术杂记技术杂记

工具

君子性非异也,善假于物也

主旨就是要有工具意识

人从最初的状态到今天,是用工具来划分时代的:石器时代、青铜时代、铁器时代、蒸汽时代、电气时代,信息时代,可见工具的重要性,作为生产力的基础(另一个是人自身),工具可以极大改变整体的生产效率和资源分配格局

充分使用现有工具是运维人员必备的基本素质,工具可以极大拓展和提升个体的能力边界

编写脚本就是一个创造工具的过程


DRY

是不是所有的工具脚本都要偏执地亲自来编写?

DRY(Don’t Repeat Yourself)不要重复发明轮子 ,因为使用工具的初衷是为了提升工作效率,编写脚本本身也是一种成本支出(探究语言和编写过程都得花费一定时间),当这种支出超过一定边界时反而成为了负担(降低了整体工作效率,反而得不偿失),如果正好有人已经完成了相同或类似的工作,拿来稍作修改就可以用岂不是更好,更符合使用工具的初衷?

节省了时间就等于拓展了生命容量

事实上,人就是一种不断重蹈覆辙的动物,很多事情都是在反复发生,表现在同一空间中历史上的不同时刻,或同一时刻空间中不同个体的身上,所以,很多路已经被前人或他人走过,拿过来直接 借鉴 就好了嘛,何必亲自去踩一回坑呢

那反映在工作中如何使用呢?

在shell 中对于排序的需求并不必自己写一个排序函数,直接使用sort就可以了,报表和汇总处理可以使用awk,替换可以使用sed ,过滤信息可以使用 grep ,定时执行也不必去循环检查时间,直接使用crontab,自己要做的只是将这些现成的工具拼接起来,处理目标数据,获取想要的结果就可以了

perl 有 cpan ,python 有 pip ,ruby 有 gem

如果登录到这些公共仓库中看一看,就会发现很多要花费大量时间来实现的复杂处理,都已经被人提前实现了,越通用的,越先被完成,我们要做的就是拿过来用就可以了

那是不是单纯依赖上面的成品包就可以不用自己具备编程能力了呢,当然不是,大部分不代表所有,必然有没被提前实现的方法,如果自己碰到了就得亲自操刀,封装好一点,还能回馈开源社区,即便被提前实现,依旧得具备可以正确使用的能力,至少也得知道如何配置调用,并且与现有的代码集成,其实当项目安全等级要求高的时候,还要有代码审查的能力

总而言之,一定程度的编码能力是绕不过的,但是不要事必躬亲,核心思想是充分利用好现有工具,根本目的是提高工作效率


本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 工具
    • DRY
    相关产品与服务
    腾讯云 BI
    腾讯云 BI(Business Intelligence,BI)提供从数据源接入、数据建模到数据可视化分析全流程的BI能力,帮助经营者快速获取决策数据依据。系统采用敏捷自助式设计,使用者仅需通过简单拖拽即可完成原本复杂的报表开发过程,并支持报表的分享、推送等企业协作场景。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档