提高编程技术的几个修炼方向

提升抽象层次有多种手段
服务器君一共花费了209.159 ms进行了4次数据库查询,努力地为您提供了这个页面。
试试阅读模式?希望听取您的建议

编译技术一向被认为是软件开发这个以工程和实践为主的学科当中真正的"火箭科技"。一个程序员,当他掌握了基本的编程技能,并且具备一些实践经验以后,如果要求在编程技术上进一步深造,则无非有三个方向:

  • 其一是钻研高超的算法;
  • 其二是深入计算机和网络体系结构;
  • 其三则是提升编程的抽象层次。

三条路线彼此相关,触类旁通,殊途同归,无分优劣。不过从编程技术本身来说,提升程序的抽象层次具有化繁为简、四两拨千斤的妙趣,尤其引人入胜。六十年来计算机和软件技术的一切发展,就是抽象层次不断提升的过程。从最早的硬件开关、机器语言、顺序加跳转的指令流,到后来的高级语言、结构化编程,再到近二十年来相继兴起的面向对象、构件技术和面向服务架构,无不遵循着这一逻辑。

提升抽象层次有多种手段,函数库、类库、框架、构件、服务,不一而足。而在所有的手段当中,计算机语言是层次最高、能力最强、最富妙趣的一种,别的手段能够达到的效果,语言都可以更轻松的实现,而语言所具备的某些效果,则没有别的手段可以企及,语言是提升软件抽象层次的终极手段。这并不奇怪,人类的抽象能力最终归于语言,这是在哲学范畴内已经被深入讨论过的命题。因此,计算机语言的理论及其处理,被很多一流学者认为是计算机科学中最成熟、最优雅、与实践结合最完美的部分,其重要性不言而喻。

在实践中,如果一个程序员具备强悍的计算机语言处理能力,则他的程序编写和设计能力将会比其他人有层次上的超越,往往能够做出创新性的成果,给开发的效率和效果带来本质性的提升。不但如此,在编译技术中,有很多思想和具体的算法,在很多其他场合能发挥意想不到的效果,可以说编译技术是软件开发的一个思想和工具的宝库。然而在为数几百万的专业程序员队伍当中,能够主动利用这一宝库,运用现有工具熟练处理语言者,已经是少数。而能够主动根据需求设计优质的计算机语言,并且开发配套语言处理工具的人,更是凤毛麟角。究其原因,一是因为语言设计本身对设计者的要求很高,非有深厚学养和实践者难以有所作为,二是因为编译技术本身颇有一定门槛,不但有一整套抽象的理论,而且涉及多个环节,大量细致的算法,需要集中精力系统学习,不容易掌握,更很难臻于上乘。

本文地址:http://www.nowamagic.net/librarys/veda/detail/1577,欢迎访问原出处。

不打个分吗?

转载随意,但请带上本文地址:

http://www.nowamagic.net/librarys/veda/detail/1577

如果你认为这篇文章值得更多人阅读,欢迎使用下面的分享功能。
小提示:您可以按快捷键 Ctrl + D,或点此 加入收藏

大家都在看

阅读一百本计算机著作吧,少年

很多人觉得自己技术进步很慢,学习效率低,我觉得一个重要原因是看的书少了。多少是多呢?起码得看3、4、5、6米吧。给个具体的数量,那就100本书吧。很多人知识结构不好而且不系统,因为在特定领域有一个足够量的知识量+足够良好的知识结构,系统化以后就足以应对大量未曾遇到过的问题。

奉劝自学者:构建特定领域的知识结构体系的路径中再也没有比学习该专业的专业课程更好的了。如果我的知识结构体系足以囊括面试官的大部分甚至吞并他的知识结构体系的话,读到他言语中的一个词我们就已经知道他要表达什么,我们可以让他坐“上位”毕竟他是面试官,但是在知识结构体系以及心理上我们就居高临下。

所以,阅读一百本计算机著作吧,少年!

《代码整洁之道》 马丁(Robert C. Martin) (作者), 韩磊 (译者)

软件质量,不但依赖于架构及项目管理,而且与代码质量紧密相关。这一点,无论是敏捷开发流派还是传统开发流派,都不得不承认。《代码整洁之道》提出一种观念:代码质量与其整洁度成正比。干净的代码,既在质量上较为可靠,也为后期维护、升级奠定了良好基础。作为编程领域的佼佼者,《代码整洁之道》作者给出了一系列行之有效的整洁代码操作实践。这些实践在《代码整洁之道》中体现为一条条规则(或称“启示”),并辅以来自现实项目的正、反两面的范例。只要遵循这些规则,就能编写出干净的代码,从而有效提升代码质量。

更多计算机宝库...