从小工到专家 2019.10.31

第三章 基本工具 The Basic Tools

     


就像每个工匠刚刚开始职业生涯时,都会准备一套品质良好的基本工具,新程序员也需要准备一套的工具,也许它不是最好的,但最重要的是它在程序员看来是最顺手的。

随后学习与适应的过程开始,每种工具都有其自身的特性与古怪之处,都需要得到相应的特殊对待。随着时间的推移,工具与程序员的磨合程度越来越高,工具将程序员的才干放大,工具掌握的越好,程序员的效率越高。伴随一些特殊需求,程序员需要新的工具来解决问题。要像工匠一样,想着定期添加工具,总是寻找更好的做事方式。

 纯文本的威力


纯文本:即有可打印字符组成。 人可以直接阅读和理解其形式。使用纯文本可以保证不过时,即人们可以随时自由阅读的形式,不需要软件来辅助解读;更易于测试,使用纯文本的合成数据,对于增加,更新或是测试数据是一件简单的事情,并且无需为此创建任何的特殊工具。

shell游戏


注重实效的程序员并只是剪切代码,或是开发对象模型,或是撰写文档,或是使构建过程自动化——所有这些事情我们都要做。如果我们习惯了使用GUI界面和集成开发环境,在这样的环境下成长起来,就是丧失对底层的了解,对于shell的“游戏”无法了解。这样做只会让环境限制了自我,自我的生产率会被所使用的工具所限制,无法有自我的提高。而通过使用shell语句,则不会让工具限制你。

强力编辑与源码控制

选择一种可以在多平台使用并且既有GUI版本,又有非GUI版本的编辑器,精通它,将其用于所有的编辑任务:代码,文档,备忘录,系统管理等等。精通一种编辑器可以提高你的生产率,它可以帮助你使常用操作流水线化,提供自动缩进等等,从各个方面提高你的生产率。

源码控制系统,可以比作一个巨大的UNDO键——一个项目级的时间机器,能够让你返回修改源码几周前的太平时期,代码还能够运行的时期。

调试

每一个程序的必经之路,每一个程序员都会花费大量时间的步骤。

调试当中的bug是必不可少的,对调试要有正确的心态。要接受现实:调试就是解决问题。对于bug 不要一味去指责某个引起bug的人或物,要专注于修正问题,而不是发出指责。

对于调试要有正确的方式:不要想当然的按照对的方式去调试,那样做永远不会找出bug,你要放弃自我程序员的身份,站在客户的角度去调试,以客户的眼光看待问题,而且不要害怕出现bug,不要惊慌,对待bug不要持有“那不可能”的惊讶感,任何bug都是可能的。

修改bug时,要确保错误成功编译的代码没有警告。修改bug,要知道bug出现在什么地方,在寻找bug原因的过程中,让自己的数据可视化,用肉眼去追踪数据,寻找bug原因。对于原因,不要将bug的第一原因归于第三方的产品或者其他成员编写的应用代码,而是有大可能的bug的位置定位在正在开发的应用代码当中。

原文地址:https://www.cnblogs.com/cxy0210/p/11767159.html

时间: 2024-08-30 01:35:16

从小工到专家 2019.10.31的相关文章

离线赛 2019.10.31

2019.10.30 \[ Ameiyo \] A: 地精部落 : Dp , 前缀和优化 Dp B: 深入虎穴 : 图,结论题 C: 教义问答手册 : 分治,分块,Dp A 挺简单的一道 Dp ...看 这个博客 . B 其实可以用 dijsktra 做这道题,但是每次用来更新的都是自己的次小值. 因为当你走到当前点时,老虎会让你不能走最小值,所以是用次小值更新. 每次也是拿次小值最小的点出来更新. ll mi[N][2]; struct NODE { int id; ll w; inline

2019.10.28~2019.10.31考试总结

连续几天的考试都没有总结,今天有些时间,总结一下这几场考试的情况. 10.28场 开场先读题,然后推了推T2,发现是水题.出于对期望的恐惧,没有选择研究T3,而是回头肝T1,想了很久,没有思路.打完T2,自己搓了一些数据,过了,回头打了T1的暴搜,再打了一个表,似乎部分分挺多的.再做T3,有点思路,但思路并不清晰,于是打了特殊数据就完了. 期望得分:70+100+20=190 最终得分:30+100+20=150 结果T1是DP,没看出来.唔...原题,地精部落,题果然还是做的太少了,有些人做过

lyc——2019.10.31

10:判决素数个数 总时间限制: 1000ms 内存限制: 65536kB 描述 输入两个整数X和Y,输出两者之间的素数个数(包括X和Y). 输入 两个整数X和Y(1 <= X,Y <= 105). 输出 输出一个整数,表示X,Y之间的素数个数(包括X和Y). 样例输入:1 100 样例输出:25 #include<cstdio> #include<algorithm> using namespace std; bool f[100005]; int main() {

2019.10.31模拟赛

说在前面 考场遇见原题??? 上午刚做的 下午就\(T3\)考到了\(2333\) 然而还是因为忘了取模挂了28分 T1 Dove下跳棋 数据太水输出n-1可得90 Dove 喜爱下跳棋,在传统的跳棋基础之上,Dove 又延伸出了许多别的玩法.Dove 以一个一维数轴为棋盘下跳棋,总共会移动棋子?? ? 1 次.因为讨厌没有规律,所以Dove 每次只会恰好把棋子向右移动?? 个格子. Cicada 送给了Dove 一个长度为?? 的数列{??},为了表示感谢,Dove 打算以Cicada 送给他

2019.10.31 Zabbix环境初始化及添加监控主机

一.实验环境准备 Centos:192.168.200.111    server.zabbix.com Centos:192.168.200.112    agent.zabbix.com Windows10:192.168.200.110    windows10 111: hostname server.zabbix.com bash vim /etc/hostname中添加: server.zabbix.com vim /etc/hosts中添加: 192.168.200.111 ser

从小工到专家2019 -11-30

本次阅读的是第六章,主题是"当你编程时" 从本章我了解到编程不是简单的机械运动,将设计转换为可执行的语句.而是依靠主动思考创造出更加完美,更加长久的代码,而不是不主动思考,靠巧合去编程. 我们需要的是深思熟虑的编程,而不是靠运气和偶然拼凑而出的编程集合体.进行深思熟虑的编程,需要我们有意识的认识到我要做什么,按照提前规划好的计划编程,运用可靠的例子来编程,不仅仅要对代码进行检测,也要对自己的假设进行测试:对于自己的工作有一个优先级,把时间花在重要的地方. 进行测试,也要有方法,要逐段测

程序员修炼之道_从小工到专家_读书分享

最近央视给我们连续分享了<大国工匠>,很是羡慕,嫉妒,恨.要知道我们程序员也是一名工匠,哈哈.最近用两天多的时间读了一本和工匠有关的书籍<程序员修炼之道-从小工到专家>这本书,现在分享给大家,因本人能力有限,拙劣之处请包涵. 从这本书的名字说起,这本书现在的名字体现不出来书中的主题内容,书的原名为<The Pragmatic Programmer>翻译为<注重实效的程序员>,看到这个题目想必大家对书的主题有个大概印象.这本书在编码问题,软件架构和设计,项目管

程序员修炼之道:从小工到专家

可以为以下事物制作原型1.架构2.新功能3.外部数据结构及内容4.第三方工具组件5.性能问题6.用户界面设计为了学习而制作原型怎样使用原型1.正确性2.完整性3.健壮性4.文档风格 领域模型语言的界限就是一个人的世界的界限.数据语言与命令语言估算,以避免发生意外1.估算来自哪里?2.理解提出问题?3.建立系统的模型4.模型分解为组件5.每个参数指定值6.计算答案项目进度的控制:1.需求检查2.分析风险3.设计,实现,集成4.用户确认(验收)5.维护 纯文本的威力:1.保证不过时2.杠杆作用3.易

《程序员修炼之道:从小工到专家》【PDF】下载

<程序员修炼之道:从小工到专家>[PDF]下载链接: https://u253469.ctfile.com/fs/253469-231196340 内容简介 <程序员修炼之道>由一系列独立的部分组成,涵盖的主题从个人责任.职业发展,直到用于使代码保持灵活.并且易于改编和复用的各种架构技术,利用许多富有娱乐性的奇闻轶事.有思想性的例子以及有趣的类比,全面阐释了软件开发的许多不同方面的最佳实践和重大陷阱.无论你是初学者,是有经验的程序员,还是软件项目经理,本书都适合你阅读. 作者简介