作为一个有追求的程序员,你应该掌握的七种武器

1

科学上网

虽然国内互联网一片热闹的景象,但我们不得不承认,从硬件到软件,从协议到标准,我们现在使用的绝大部分技术都是起源于墙外,而Google是检索这些第一手技术的最好的手段,没有之一。

所以对码农来说,可以自由地浏览是非常有必要的。

有很多种科学上网方式,笔者推荐自己买海外主机搭建SS Server,可以和亲近朋友一起使用一台,具体怎么做就不是这篇文章能展开的了,大家可以百度下。

2

剪贴板

相信大家最常用的快捷键就是复制和粘贴了。

假如你刚刚从Wiki的设计文档把一个API的URL复制下来准备写代码,发现经常聊天的一个技术群弹出一个消息,有个妹子问一个技术问题,凭借自己对技术的感觉很快在Stackoverflow搜到了答案, 赶紧把答案复制过去;突然又收到产品群发的一个邮件需要你去撕逼,写了几句之后,觉得某个措辞应该放到后面,刚剪切了第一句;经理在IM上让你把某个需求的Jira链接发给他......

你如果经常遇到这种情况,首先考虑的应该是把所有的打扰都屏蔽掉,如果做不到,那就安装一个剪贴板工具吧。

Windows下推荐ditto,Mac下推荐Alfred自带的。顺便提一下,类似Mac下的Alfred这种工具(Windows下的有TotalCommander),如果能研究透彻,会极大的提高工作效率。

3

抓包

现在很多产品和需求都需要通过网络与用户或其他服务打交道。如果能细细的查看通过网络发送接收的数据内容,那发现和定位问题就会方便得多,这也是抓包工具的重要功能了。

Windows下的Fiddler,Mac下 的Charles都非常强大。这两者通过安装证书,甚至可以直接抓取Https的网络。

基于Web的应用,也可以直接考虑浏览器的开发者工具。例如,Chrome的开发者工具就非常强大:用XPath可以直接找到元素,可以直接修改元素的值和属性。

如果想做更深层次的抓包,可以研究下Wireshark。

4

文本编辑器

程序员经常要跟各种日志和数据打交道,一个熟悉的文本编辑器可以事半功倍。

笔者比较常用的功能有列模式,例如把一些数据直接编辑成SQL;正则替换,例如从不太标准的日志中提取自己所需的内容。

文本编辑器免费的有Sublime Text/Atom,商业软件有UltraEdit等。另外还有一种基于终端的文本编辑器,例如Nano/Vim/Emacs。如果从事Server开发,掌握这些编辑器的查找、修改、行号等功能是非常有必要的。

5

笔记

在这个信息爆炸的时代,搜索引擎有时候也捉襟见肘。

子曰:"吾日三省吾身",做笔记是一个非常好的反省自己的手段,对每天的收获进行记录和整理,也方便后续快速解决类似问题。

市面上的笔记产品大同小异,笔者一直使用有道云笔记:支持MarkDown语法,免费,跨平台。 另外,思维导图也是一个非常好的整理自己知识的工具。

6

脚本语言

假如突然接到一个这样的临时需求:需要给客户端提供一个模拟服务器,根据请求内容的不同,返回相应的JSON。

这个需求用Python SimpleHTTPServer十几行代码就能实现。很多类似的临时需求,还有需要快速验证的想法,以及粘合多个系统,脚本语言是最合适的。

在自己的主力开发语言之外熟悉一门脚本语言做很多事都可以事半功倍,也可以体验到另一种编程文化。

有很多脚本语言(shell,Ruby,Perl等等)可以选择,笔者推荐Python。Python这些年在很多领域都重新受到追捧。Python有2和3两种,推荐直接上手3,虽然很多老版本服务器系统自带的还是2,但是现在基本上所有的主流库都已经支持Python3了。

如果单纯的当做一个脚本语言,只需要了解如何处理字符串,常用数据结构,如何处理文件和网络IO,基本就满足日常需求了。

7

自己的CodeBase

将自己编程经验提炼为一个CodeBase,这是非常有价值的做法。

经常需要的用模块,如Web框架、模板引擎、Http请求、单元测试以及Mock、Cache、调度、Metric、时间处理、安全、日志、XML/Excel解析等等,每一个模块都有三四种可以选择的技术,选择一个自己熟悉的,构建自己的软件开发栈,这样遇到各种需求都能快速基于自己的CodeBase的实现。

(完)

本文来自企鹅号 - 码农翻身媒体

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏FreeBuf

揭秘:充电宝是如何盗取你的个人隐私的?

中午吃完饭,看到一个微博中别人转的央视新闻《别被改装充电宝盗取隐私》觉得又是啥高大上的东西上了央视,看完后才知道是数字公司的某研究员做的伪装充电宝盗取隐私的玩意...

2407
来自专栏花叔的专栏

小程序支持跳转网页会带来什么影响

11月2日,iphone X 发售的前一晚,微信小程序发布了一个重量级的更新: 小程序内嵌网页能力开发 使用教程很简单: 到mp.weixin.qq.com登录...

63112
来自专栏PHP在线

顶级PHP大师的开发原则

1. 在合适的时候使用PHP – Rasmus Lerdorf 没有谁比PHP的创建者Rasmus Lerdorf明白PHP用在什么地方是更合理的,他于199...

4956
来自专栏极客慕白的成长之路

在 Windows 上拥有舒适的码字体验

3112
来自专栏云市场·精选汇

产品更新——智慧零售V1.3商品+V1.4订单优化上线

选择出库类型,添加商品信息并保存即可。( 出库是减库存操作,出库记录保存后,系统将按照出库单中的商品信息和数量对应更新商品库中的库存信息。)

1053
来自专栏编程心路

为什么人人都需要学习Git?

先来说说 Git 的由来,Git 是一个版本控制软件,最初是由 Linux 之父——林纳斯·托瓦兹 为了更好的管理 Linux 内核代码而编写的。当时 林纳斯 ...

1501
来自专栏腾讯技术工程官方号的专栏

QQ 相册后台存储架构重构与跨 IDC 容灾实践

重构进行了大规模的存储搬迁、功能模块合并,抽象了图片上传“两阶段”,并在此之上设计了轻量级的容灾方案。

3.5K4
来自专栏顶级程序员

10位顶级PHP大师的开发原则

来源:Andrew 译 ,译者网站已经停止运营 网址:http://net.tutsplus.com/tutorials/php/10-principles-...

3635
来自专栏ytkah

微信公众平台多客服新增自定义客服头像和消息转发接口功能

  多客服一般是开放给微信认证服务号的一个便捷功能,可以将消息转发到多客服方便回复。对有些“选择综合症“的客服,看到那一层不变的客服头像就想吐槽。现在好了,多客...

6534
来自专栏开源项目

【码云周刊第 10 期】放码过来,四个男人的带头冲锋!!

一周热门资讯回顾 码云全面改版:新界面新态度,更一致的体验 DuangDuangDuang!码云项目的 Readme.md 特殊技能 微软技术透明中心...

3947

扫码关注云+社区

领取腾讯云代金券