程序随感备录

【1】潜规则

各行各业都有潜规则。程序也不例外。

顺序(main),即逻辑;判断(if),即业务;循环(for),即坚持。

【2】关系

社会上没有一处人事关系不复杂。其实,程序也一样的,大系统中对象与对象之间的关系也很复杂。

【3】辈分

现实中往往存在排资论辈的现象。在程序中,一个对象继承于谁也相当重要。

【4】比较

要比较两个对象,必须先保证类型一致。正如现实中有些东西不可相提并论。

【5】对象

程序员不好找对象与职业有密切原因。长期从事编程的人很理性,逻辑思维性很强,而感情恰恰没有逻辑可循,太理性不宜与女孩子沟通。

比如,女孩子分不清楚东南西北,要换种方式用前后左右来交流。

【6】类比

所谓类比,即同类问题对比分析。计算机程序的本质是对现实世界的模拟,那么,每一条语句每一行代码客观上都可以映射到现实世界的具体应用。

【7】类与对象的关系

引用刘润的这句话加深理解:不抽象,我们就无法深入思考;不还原,我们就看不到本来面目。

认知事物和思考有两个基本的逻辑法则:归纳法和演绎法。归纳法是从个别到一般,演绎法是从一般到个别。

【8】核心竞争力

每个公司客观都会有很多坑,而公司招员工进来就是为了填坑,所谓核心竞争力,即填坑的综合能力。

从微观而论,遇到一个严重BUG可以认为掉坑里去了;由宏观而论,入职一个公司其实也就是跳进了一个大坑里而已。

【9】并发症

医学上,患糖尿病时间长了会引起一系列并发症。其实,程序也是一样的,当一个坑不及时解决,程序演化得越久可能会引起更多的并发症。

【10】没有绝对的正确

程序应用也是如此,比如很多语言逻辑操作符都认为0为假,但是Lua语言就认为0为真,仅有nil或false为假。

【11】填坑力

每个公司都有很多坑,每个公司招聘员工都是为了填坑,所以工作的核心正是填坑。填坑力是一种核心竞争力。

【12】不世故

理解计算机系统比理解人简单,因为她不世故,一视同仁,不讲人情,没有主观情绪。

【13】现代简约式Python

装修行业有个推荐的风格-现代简约式,编程语言也类似,Python语言就对得起这个风格,简约、优雅、现代。

【14】可重建性

可重建性,即可重新构建的特性。软件与实体的主要区别在于其可重建性,若发现重大问题,修改代码,可重新构建新的版本。

假如建一座大楼,一旦建成后,发现有什么致命的缺陷,想推倒重新建一次,是非常不切实际的。但是,软件可以实现这个理想,其实,也可以理解为试错成本低。

【15】场景

程序开发的前期预研阶段,需要尽可能考虑清楚功能或问题的所有场景。

比如,人与人之间的利益关系场景:损人损己、损人利己、损人不利己,利己不损人,利己利人、利人不利己、舍己为人。

共七种可能性。那怎么可以考虑全面呢?必须有个内在的逻辑,如上按境界高低进行归纳排序,越往后境界越高。

【16】综合能力

什么叫综合能力?不能仅仅会一方面,要兼顾相关方面。

简单理解,就是作为程序员必须要会修电脑;作为厨师必须要会修电磁炉;作为理发师必须要会修吹风机。

【17】内在技术 外在业务

作为一名程序员,始终要保持学习状态,对于技术的要求,必须是内在的动力。因为公司侧重于利用你,而不会花太多时间或财力培养你。

对于工作的考核,公司更侧重于业务培养,而业务的实现本质上依赖技术的支撑。因而所谓,内在技术,外在业务。

【18】系统性

所谓系统性,坚持从整体性原则出发,考虑问题时坚持立足整体、统筹全局、把握规律。成为一个做事情拥有一套完整科学方法的人。

【19】人、事、方法论

在公司工作,概括起来 ,每天不外乎三样事情:人、事、方法论。

【20】增删改查

增删改查是代码程序中最常见的行为操作,其实还是那句“计算机是对现实世界的模拟”,反观生活中的网购:

下单算作增,退货即删,换货即改,货比三家即查。

有时候,甚至觉得,家里的某件东西(比如:剪刀、胶带、钳子等)都可以如此理解,用剪刀来举例:

买了一把剪刀,即增;

扔了一把剪刀,即删;

换了一把剪刀,即改;

在诺大个房间找一把剪刀,即查。

综上所述,想表达的是,家里用东西一定要有固定的地方,因为如上分析你会发现查是最频繁且浪费时间的行为。

【21】每个函数都不简单

一个类中每个函数对应着就赋予了此类的对象某种能力,所以,每个函数都不简单。

【22】认知

人与人之间最大的差别不是智商或财富,而是思考问题的层次和模式。程序员尤其需要提升认知维度。

比如,一个优秀的开发人员,会在需求人员进行需求交底时,挖出需求人员真正的潜在期望。

有了这个能力,就为方案设计时争取更多的主动权,也为程序未来的扩展性奠定了基础。

其实,个人认为,所谓认知就是抽象、归纳、总结的能力。

【23】高手

三百六十行,行行出状元。承认每个行业都有高手,那么一般怎么能识别出高手和一般人呢?

看问题抓本质,高手可以把很专业的领域内容通过形象的类比解释得通俗易懂,人人都能理解并欣赏,老少皆宜。

一般人是把简单的专业名词包装粉饰装潢搞得让同行业都看不懂,反而觉得自己很牛逼的人。

【24】待续.....

Good Good Study, Day Day Up.

顺序 选择 循环 总结

原文地址:https://www.cnblogs.com/Braveliu/p/9132595.html