该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
编了这么久的程序,一直想找机会总结下其中的心得和方法,但回想我这段编程道路,又很难说清楚,如果按照我走过的所有路来说,显然是不可能的!当我看完了云风的《游戏之旅--编程感悟》和梁肇新的《编程高手箴言》我突然知道我要从何说起,我要怎么说了!
从接触编程到现在已经至少要6年,,虽然时间短,但我几乎每天都在编,而编程上突飞猛进的还是最近一两年,单纯编程上的进步,很简单就是经验,但你要理解才可以进步的快!这就是说,你的理论课要学好,才能学好编程,操作系统,网络原理,计算机体系结构,数据结构,编译原理,你哪个学的不好,你根本不配成为编程高手,我见过的高手,这些学的都不错!这些都是计算机的支柱,你连它的支柱都不了解,怎么编程,即使你编写的程序好——只有一个原因,你用的是高级语言或脚本语言,因为它们封闭大量低层语言细节,让你不用了解就可以编写,你不了解低层细节你杂成为高手!
解释什么叫编程?
我觉得现在很多同学,根本不知道什么叫编程!我现在告诉你,单纯的编程,也就是就知道语法知识的编程,根本不叫编程,只会单纯的语法的编程连低级程序员都不如!
编程不仅仅是你对语法的掌握,你还要把各种技术混合到里面,这样才叫编程,你编程的时候,你应该问问自己,你的程序有算法吗?你的程序写的够简单吗?速度足够快吗?占用空间足够少吗?代码写的规范吗?语句写的标准吗?你的程序之间的结构合理吗?你类定义的合适吗?方法和属性合理吗?接口合理吗?等等等,包含很多东西!这就是高级程序员为什么赚这么多钱!要付出相当大的脑力劳动!
调试对你也很重要,一个程序高手,也是调试专家,其实调试很多方法,但大多数都是实践中得到的!
指正现在人对学计算机误区
现在我每天在和汇编,硬件指令 ,c和c++或一些低层API打交道,有些时候编程这个东西很难说清楚,只有你经历了,你才能感受到,你没有经历,就永远体验不到!
我现在要更正几个现在学计算机人的误区,我想回答的是,学什么才是学计算机!
学计算机的两个方向:一个是纯搞理论的,一个是搞实践的。搞理论的无可厚非的,大家都承认是学计算机。那么实践呢?我很难给出一个定义,但我会列出那些才是真正学计算机学的:
(1)编程,这里的编程,我要抛出FLASH,PHOTOSHOP,3DMAX等,它们虽然也有语言,但都是为了给美术人员提供的!也就是几乎封闭了大量的低层细节,对于一个学计算机的人来说,如果你努力学它们,你还是不要学计算机了,去学美术把!网页编程能接触到至少两种类型语言,,HTML和ASP或JSP(PHP),HTML说实话,不应该是计算机人学的,你应该学的是ASP,JSP等!
按严格意义上讲(但实际没有这么严格)如果你的主要必修语言,不是c,c++,JAVA,或者硬件指令,都不算是真正学计算机的,之所以这么说,我举个例子,比如你用JSP,它是一个脚本语言,如果你用过这个语言,你认为你用好这门语言需要了解硬件结构知识吗?显然不用,如果你纯是JSP程序员,你需要只是,JSP语法,一些简单的JAVA语言,SQL之类的数据库知识,其余的你什么都不需要,至于分析流程,那是系统分析师的事,不要和编程混为一谈,我学JSP学了3个月,现学现买就做出了功能齐全的网上书店(当时是老师布置的作业),如果再努点力,就可以投如使用!所以说,学JSP根本就不需要太多的专业知识,不是学计算机的也很容易就学会!
学c++,我都学了好几年了,用它写程序都几十万行,我也不敢说我学的精通!就是因为它太灵活了!不同人,用的效果就是不一样!
所以按严格意义上讲,如果你的主要必修语言,不是c ,c++,JAVA,或者硬件指令,都不算是真正学计算机的,也就是说,学那些对计算机专业知识不需要太多了解的语言,就不叫学计算机的!
(2)从事软件方法实践研究,这个纯是软件工程方面的,如果你没有容入一个大项目中很难体会它的重要性,想一想,一个程序,几十万,几百万行代码,能这么好的实现,并运行,它的功劳不小!
(3)从事低层硬件开发,这里可能和搞电子的专业有些重叠,但事实就是这样,他们也是学计算机的!
其余的,装系统了,装电脑了,用人家编好的软件实现些图片音乐等功能的,那都是计算机的门外汉,不要和真正学计算机的混为一谈!
我经常被问到:
你会盗qq不?我晕,学计算机的就要会盗qq?
你会装电脑不?虽然我会,但不会并不可耻
你会装系统不?虽然我会,但不会并不可耻
'''''''''''''''''''''''
'''''''''''''
等等把,有好多,通过我上面解释,你应该理解学计算机的应该会什么,不会什么也是应该的!
正式入题,怎么学好编程!
, 世面上好象只有这两本是中国人写的关于编程心得的书,中国编程好的人很多,但写出方法很难!第一本《游戏之旅--编程感悟》前面几章写的是云风的编程经历,后面几章写的是编程经验!总的来说本书很容易读懂!《编程高手箴言》书很难,尤其写操作系统那章!正如作者所说,真正写一门编程方法学的书很难!本书前几张概括了当前中国软件面临的形式,我强烈建议看一下,写的很经典!以前我不知道程序和软件的区别是什么,现在我知道了!后面几张写的都是编程方法和编程要具备的知识!
总结他们两人所说的,我准备按照下面提纲来写编程方法!
1。如果你感兴趣,学计算机是一种光荣,如果你不感兴趣,那么它是地狱!
2。理论对你很重要,尤其是你一名搞技术的程序工程师!
3。学会自学,学会思考,学会合作与交流!
4。要想成为高手,一定要从底层学起,底层是什么?CPU,汇编等硬件指令!
5。编程需要经验积累,学会调试对你尤其重要!
6。全局把握整个工程,具体到每个类的属性和方法以及各个类的关系!一定确保你设计的类和类模式和类间关系能够有效,利于修改和升级!概括说就是软件工程 !