做的程序员久了,就会想方设法去考虑更多的事情,当自己一直在编码实现一个东西的时候,没有考虑那么多,只是简单的去实现某个功能考虑运用什么技能知识,如果想要上一个层次,就需要了解一下思想性东西,下面是我的一些简单理解,希望能够帮到需要的人,或者有什么指导性意见,可以尽管提
一 、编程思想
编程思想是什么,不是说怎么去学好哪个语言,我理解的是高于语言之上,不同的语言只是真正去解决的真正的问题,是实施的步骤。凡事问题,我们不是去做,而是去想,这是什么,需要做什么,得出一个什么样的结果。所以遇到问题,要先去分析,这是什么,这个分析考虑阶段,需要把问题抽象化,去想出一个解决的逻辑模型。其实更深一点的就是一些技术性术语,编程的一些原则性和指导性思想。
二 、设计模式
设计模式是什么,可以这样说,编程是去解决问题,但是问题的种类,变化万千,每遇见一种问题,就去从底层到高层考虑,然后一些列的流程方式去实施,会耗费成本,时间与精力,所以出现这个设计模式,可以把问题归结为哪一类,采用相同的方式去解决,就像做月饼,不用每次都要去揉成圆的,有了摸子,用摸子去做。现有的设计模式是在很多前人进过长时间的实践总结出来的,具有很大的开发帮助性。
三 、设计原则
什么是设计原则,说白了,就是解决问题的过程阶段,没有一个设计原则,我们解决问题的方式和种类是数不尽的,例如我从上海到北京,可以坐火车,坐汽车,走路,因此设计原则来约束一下,不同的应用场景需要的也不同。可靠性,健壮性,可修改性,容易理解,可扩展性,安全性,容错性等
四 、算法和数据结构
这个就是深层次的东西,真正编程中遇到的,比如解决问题,采用的方法,贪心算法,递归,分制算法等,就是为解决某种特定问题的算法。数据结构是什么,众所周知,程序是什么,就是拿数据,处理,显示结果,数据结构就是将这些数据之间联系起来,形成一种关系,日常开发中,算法和数据结构关系比较密切,经常放一块,从字面也可以理解,拿到有联系的数据,计算,得出结果。