学习编程语言林林总总也不算少,课堂学过C\C++对高级语言编程中的面向过程和面向对象、基本语法有了基本了解,自学过数据结构C版的内容,也曾简单学过用Java开发的Android应用。现在开始读研一,研究所里做项目面向windows程序开发,周围的人都在用C#,于是开始转向C#开发并自学。
以前,学习软件开发,练习编程,都是从语言这个学科去考虑,更多的是纠结具体的知识点,某个语法、函数怎么写等等,这种学习作为打基础无可厚非,写出来的代码都是a,b,c,a1,b1,m等命名格式,写下俩的完整程序也就几百行,远远不足以去竞争好公司的众多应聘者;现阶段,需要提高自己的眼光和品鉴力,对于学习编程而言,需要考虑怎样写出好的代码,优秀的代码,规范的程序和从整体把握编译程序的运行机制,从商业标准来要求自己。这是对于自己目前阶段的心得和想要的能力提升。现在就从几个方面来“看看”菜鸟需要了解的地方:
1. 什么是优秀的代码?
2.windows架构和编程设计的运行机制是怎样的?
3.高手是通过敲出来的还是看书看出来的?
4.有什么样的好书推荐,帮助提高编程能力和眼光?
这里一一道来:
1.如何写出优秀的代码?
优秀代码,需要考虑的东西无非一下几点: 命名的规范性,函数封装与接口,灵活性,算法设计效率。这些规则,我将会用一段代码来具体说明。
2.windows程序设计的运行机制怎样的?
windows与程序运行之间的关系是利用消息机制来交互的,程序设计中考虑的是如何利用操作系统的接口来实现功能,所以充分挖掘操作系统的潜力比关注如何具体实现这个功能更重要,举个例子,利用printf来打印字符串,程序关注的是调用系统函数printf,并将字符串代入printf的参数就可以打印,至于字符串在内存中怎样经过处理到外设中并在屏幕中显示出来,C语言做不到,能做到的是操作系统。
windows操作系统的重要特征是抢占式实时多任务。如果两个程序同时运行,内存该如何分配和管理?操作系统一个很重要的作用就是处理机管理,一个程序运行是以进程为单元的,进程开始于程序被调用,结束于程序停止运行。如果多个程序同时运行,处理机怎样响应不同的程序并保持高效呢?每个进程只有占有内存并被处理机调用才被执行,而且进程执行通常需要接受外设输入;操作系统为了充分使处理机处于忙碌状态,不会等待过长。所以处理机机制就是为了解决这个问题,让进程处在不同状态。
3.学习太极时,光看师傅每招每式,看千遍万遍始终不会出手;只有在看的基础上自己去打出每一拳,每一个动作,才会知道哪里犯错哪里需要强记,才能体会每一个要领。要看也要练手。
4.一本好的参考书,相当于一本武功秘笈,指导入门到精通都是有迹可循的;这里推荐带有“微软技术丛书”的标志,都是比较好的windows开发丛书。另外需要经常访问MSDN,获取网络资源。
下面就示例代码来讲讲编程规范:命名方法、代码灵活性、函数封装和接口、算法复杂度。
持续更新中。。。