编程一定要学会这六个基本功?
一、 逻辑语义与物理语义
指令的逻辑语义与物理语义是编程的出发点。逻辑语义是指从问题和自然理解的角度的语义,物理语义是指从计算机存储和运行的角度的语义。比如, int i = 4 的逻辑语义是在程序中创建一个初始值为4的整数变量,物理语义是在计算机内存中分配了4个字节,值为0x00000004. 编程语言提供了从指令的逻辑语义到物理语义的语义映射,而我们通常是使用编程语言从逻辑语义上进行编程的。API是针对特定技术系统的逻辑语义,虽然功能更强大,但本质与拷贝数据的原子指令没有区别。当编写一行代码时,应该理解它所指代的物理语义。
二、 编码与解码
编码与解码是在计算机中表示和还原世间万物的方法和技术。 要在计算世界里解决现实世界的问题,就必须将现实世界的事物映射到计算世界里,就涉及到编码问题;要将计算世界的解映射到现实世界,就涉及到解码问题。计算机中最基本的数据表示采用二进制,即一系列的01串;以二进制来编码世间万物,这不能不说是个思维的奇迹!
三、 数据结构与算法
理解编程语言的逻辑-物理语义之后,下一步要掌握的两大武器是数据结构与算法。 数据结构是程序中存储和组织数据的重要法宝,而算法则是在数据结构之上设计的操作序列。数据结构与算法是问题求解的基础,是编写大型程序必不可少的要素,是计算世界的基石。
四、 设计模式
熟悉基本数据结构和算法之后,接下来要学习设计模式。
编写小型程序, 代码缠成一团没有关系; 但是编写中大型软件系统时,若缺乏设计模式的辅佐,代码组织就会乱成一团意大利面,难以修改、扩展和维护,系统很快就会腐化成没人想动它的废弃物。 设计模式是培养对象编程的结构化的思维体操,直接产出是各种应用框架。
五、 模块化与封装
掌握编程语言、编解码、数据结构、算法、设计模式,基本上能够胜任中小程序的构建了。不过,要驾驭中大型软件系统,就要学会将已实现的通用逻辑流(数据结构、算法、函数、方法、对象、代码结构、业务逻辑等)进行模块化与封装,成为可复用的模块,并仔细设计模块之间的交互关系。
六、 进程与内存
当构建和运行程序时,应当理解程序的运行机制。理解进程与内存的管理是必经之途。进一步地,理解程序所占用的CPU,内存,磁盘IO, 网络等资源以及程序的响应时间和并发吞吐量也是必要的。知其然而知其所以然。
本网站文章仅供交流学习 ,不作为商用, 版权归属原作者,部分文章推送时未能及时与原作者取得联系,若来源标注错误或侵犯到您的权益烦请告知,我们将立即删除.