编程漫谈(一):增强编程能力的六种途径

 

        不是只有编程写代码才能增强编程能力;  有多种途径都可以间接或直接地增强编程能力。


        多运动, 坚持锻炼

       每天早晚各半小时坚持运动锻炼, 增强身体机能, 保证充沛的精力, 能够很好地促进大脑思维的活跃度, 间接有助于编程能力的提升; 孱弱的身体是无法担当大责任的。

       建议: 每天下班之后就不要再写程序攻读技术书籍了, 活动活动, 聊聊天,  读读人文社科的书籍或视频, 增强语言与交流技能。


        培养整体性设计思维

       设计是对需求/目标的整体性理解和统一处理框架。 缺乏有效的设计, 开发就面临着耗时返工、延迟项目进度的重大风险。 阅读设计性书籍, 绘制设计图纸, 培养设计技能; 实际开发中跳出“功能开发”的局部思维, 注重从整体和服务接口角度来思考根本性的或通用的解决方案, 形成大局视野。 


        阅读优秀项目的源代码

        阅读开源项目的源代码, 增强软件系统的分析和解构能力, 汲取优秀设计思路和做法, 同样有助于编程能力的提高。 学习一门语言或技术时, 该语言或技术的基础库是非常有必要研究的; 其次, 是一些小巧而灵活、易于学习、分析和掌握的应用框架。 如何阅读源代码, 请参考博文:  《源代码阅读总结(一) —— 基本方法》


        做有难度的编程训练

        从抽象一点的视角来看, 编程即是运用常见编程元素(比如列表、映射、树、对象、函数等)以及组合结构来表达现实系统的静态构造和动态运行。  可以针对这些常用结构和算法做一些编程练习(就像《编程珠玑》 那样), 更娴熟地掌握基本编程元素的操控能力。 可以实现一个比较实用的算法, 比如 RETE 算法; 可以选择一个子主题, 比如资源分配调度, 做一个小专题研究; 可以做一些较有难度的编程小项目, 比如, 一个简易的Web 服务器, 一个 Shell 解释器 ; 可以针对一些需求开发一些可重用组件, 简易测试框架等。 

       一些博文推荐做一些小项目; 如果项目本身没有太多价值, 不如去攻克一些有趣的难题并进行分享。可以聚焦最关键的部分, 而不为那些次要的东西所分散精力。 要写, 就写有含量有难度的程序, 不要重复工作中已经做到的事情。 

       推荐书籍: 《SICP》, 《编程珠玑》, 《算法导论》,  programming-challenges 


        
       广泛阅读优秀的人文作品
       编程是一项智力体操, 应该更加注重对大脑和思维的扩展与训练。 
       广泛阅读文学、音乐、绘画、建筑、哲学、设计等领域的优秀作品, 丰富和充实思想,  拓展想象力, 才能做出大胆的设计。

 
       静思休息
       闭上眼, 静下心来, 调节身心至最平静的状态, 静默地思考所遇到的各种事情和问题,  慢慢描绘一个清晰的图景。 或者什么都不想,  安静休息一下。
      
 
posted @ 2013-07-13 09:34  琴水玉  阅读(1116)  评论(1编辑  收藏  举报