`
sodabao
  • 浏览: 164568 次
  • 性别: Icon_minigender_1
  • 来自: 大连
文章分类
社区版块
存档分类
最新评论

[转]程序设计中的感悟

阅读更多
上午看了一个高手的blog,他上面写到有关程序,我觉得写的很不错,贴上来,大家一起勉励一下
      1. 学习应该从基础打起,不要一开始就尝试最高深的技术。

  2. 每看一本书,不要说这章我以前学习过了,也掌握的很好,因此我可以跳过这一章看更重要的了。

  3. 对于作业,遇到不会的尽量不要立刻向别人请教。如果实在解决不了的问题,可以先完成你会的,然后把一些特别的难点提炼出来,向高手请教。不要指望书本和行家能帮你解决一切问题,因为并不是所有问题都能由别人教给你。

  4. 向别人请教问题应该把问题说明白。对于错误提示信息应该原样提供出来,不要按自己理解的信息提供。因为既然你自己做不了,说明你理解一般都有问题。

  5. 问问题最好能带代码。

  6. 不要说“编译通过,可是运行时...",因为编译错误和运行错误可能根本没有关系。一般来说,编译是语法问题,而运行是逻辑问题。

  7. 书看千遍不如做程序一遍,应该尽量尝试去写程序。

  8. 做程序千个不如做好程序一个。应该尽量完善你现在做的程序,而不要不断开新的计划,而每个计划都虎头蛇尾。

  9. 要想到你不是一个人写程序,而是和大家一起写程序。

  10. 高深的技巧虽然显示了高深的本领,但是对于合作往往是有害的,应该尽量写出简单易读的代码。

  11. 编制程序应该尽量做到自注释,即代码本身一读就懂,好象自己在说明自己的逻辑一样。

  12. 复杂的代码如果实在做不到自注释,应该给出适量的注释。

  13. 注释在修改代码的时候应该相应修改,不能用陈旧的注释去误导别人。

  14. 代码应该尽量可重用,相同功能的代码应该由相同的函数完成,重要函数应该给出调试信息,以便调试时及早发现问题。

  15. 应该尽量写小函数,每个函数尽量不要超过40行或者更少。这样不用滚动屏幕也许就可以读完整个函数。

 16. 对于switch语句,尽量不要有过多的分支,如果分支太多,可以考虑用跳转表。

  17. 尽量少使用一些有争议的语句,如goto和三目运算符,既然有争议,它肯定有一定的缺点。

  18. 对于goto,许多工程师技术高到可以合理使用,而不至于导致问题。但是你的程序并不一定给你同水平的人看和修改,他们可不能保证合理的读和修改这些相关代码。

  19. 代码编写时应该有一定的格式,其基本要求是对理解代码有一定帮助。

  20. 如果数据是多个模块共有的,应该提供一个封装的类来管理它,并提供一个合适的接口给各个模块。这样,如果数据内容有重大修改,则只要接口不变,基本上可以保证程序不要很复杂的修改。

  21. 应该尽量考虑到数据的并发控制。

  22. 数据的并发控制应该封装在接口内,而不要暴露给其他模块,这样可以减少因为并发原因导致的程序死锁。

  23. 数据本身结构不可以太复杂。应该尽量把不相关的数据分割成为两组数据。

  24. 对于数据量比较大的情况,应该考虑数据库。

  25. 数据库接口应该采用标准ODBC或者ADO接口,尽量不要根据实际数据库DBMS提供的接口来处理,因为你可能在实际使用中更换DBMS。

  26. 小的数据可以考虑文件,文件路径应该必须设计成相对路径。

  27. 在一个函数中,应该尽量打开文件后使用完后立刻关闭,这样其他程序可能使用文件。

  28. 不要尝试把文件全部读到内存中,应该分次处理大文件。

  29. 编写程序应该提供相关的测试程序,以提供测试手段。

  30. 应该考虑代码、函数的使用情况,不要超越函数可以使用的范围使用之。


Trackback:http://blog.csdn.net/hotsummerghost/archive/2005/07/03/411231.aspx

分享到:
评论

相关推荐

    Python语言程序设计习题答案.zip

    每一章开头的本章导读都是编者多年来程序开发与设计教学经验的提炼与升华,都是对程序设计的理解和感悟,值得学习者深入领会。每一章开头的本章要点都是要求学习者深入理解的重要知识和熟练掌握的关键技术。每一章的...

    Python语言程序设计PPT课件.zip

    每一章开头的本章导读都是编者多年来程序开发与设计教学经验的提炼与升华,都是对程序设计的理解和感悟,值得学习者深入领会。每一章开头的本章要点都是要求学习者深入理解的重要知识和熟练掌握的关键技术。每一章的...

    C与C++程序设计学习与实验系统.rar

    同时与软件配套的《C/C++程序设计教程(配有同步实验、流程控制语句动画演示、提供教程中所有程序实例、实验、作业中的源代码(全部用VC6编译器调试通过)》融入了作者多年的教学和学习经验、编程建议、编程感悟,...

    ACM程序设计指导电子书

    1. **电子版文档**:需参照特定的格式模板,文档应包含课程设计小结,总结学习过程中的收获与感悟。 2. **打印版文档**:作为电子版文档的实体备份,便于教师审阅。 3. **源程序压缩包**:压缩文件必须按照“学号....

    可变分区存储管理+实验报告+程序+设计思路和感悟概要.pdf

    可变分区存储管理+实验报告+程序+设计思路和感悟概要.pdf可变分区存储管理+实验报告+程序+设计思路和感悟概要.pdf可变分区存储管理+实验报告+程序+设计思路和感悟概要.pdf可变分区存储管理+实验报告+程序+设计思路和...

    基于计算思维的高中Python程序设计教学的探究.pdf

    在学生为主体的教学方式下,学生能够在学习Python程序设计的过程中感悟计算机求解问题的方法和步骤,从而培养其计算思维能力。 形象化教学是帮助学生理解和运用知识的有效方式之一。在Python程序设计课堂上,教师...

    java程序设计报告模板

    ### Java程序设计报告知识点 #### 一、报告模板概述 在大学阶段,撰写关于Java程序设计的报告是一项重要的学习活动。此类报告不仅帮助学生总结所学知识,还能够锻炼其解决问题的能力以及团队协作技巧。本报告模板...

    C与C++程序设计学习与实验系统 2011.2

    与软件配套的《 C/C++程序设计教程(配有同步实验、流程控制语句动画演示、提供教程中所有程序实例、实验、作业中的源代码(全部用VC6编译器调试通过))》融入了作者多年的教学和学习经验、编程建议、编程感悟,新增...

    计算机程序设计艺术(共3卷)

    Knuth通过这本书,不仅传授了算法的知识,更重要的是,他培养了读者对于程序设计艺术的理解和感悟。通过学习书中的理论与实践,读者能够更好地理解和应对计算机科学中的挑战,提升个人的程序设计水平。

    C_C++程序设计学习与实验系统 2010 part1

    与软件配套的《 C/C++程序设计教程(配有同步实验、流程控制语句动画演示、提供教程中所有程序实例、实验、作业中的源代码(全部用VC6编译器调试通过))》融入了作者多年的教学和学习经验、编程建议、编程感悟,新增...

    python语言程序设计报告实验一二.pdf

    这份实验报告详细记录了学生们在Python语言程序设计实验中的学习过程和心得感悟,全面覆盖了Python的核心概念,并通过解决具体问题的方式,提升了学生的编程实践能力。随着编程经验的积累,相信学生们能够在未来的...

    感悟设计电子设计的经验与哲理.pdf

    《感悟设计:电子设计的经验与哲理》这本书深入探讨了电子设计领域的专业知识,结合作者丰富的经验,揭示了设计过程中的哲学思考。电子设计是信息技术领域的重要组成部分,它涵盖了电路设计、信号处理、嵌入式系统等...

    C_C++程序设计学习与实验系统

    与软件配套的《 C/C++程序设计教程(配有同步实验、流程控制语句动画演示、提供教程中所有程序实例、实验、作业中的源代码(全部用VC6编译器调试通过))》融入了作者多年的教学和学习经验、编程建议、编程感悟,新增...

    解析C语言程序设计(甘玲版) 例题,习题程序代码

    《解析C语言程序设计》是甘玲教授编著的一本深入浅出的C语言教材,其主要内容涵盖了C语言的基础知识、程序设计技巧以及实例解析。本资料包包含了该书中的例题和习题的程序代码,是C语言学习者的重要参考资料。 首先...

    程序设计经典书目推荐

    ### 程序设计经典书目推荐 #### 一、编程语言 对于游戏开发者来说,掌握一门或多门编程语言是至关重要的。当前游戏行业的主流编程语言主要包括 C/C++,此外,针对移动平台(如智能手机)的游戏开发则常用 J2ME...

    《PHP高级程序设计_模式、框架与测试》中文版PDF

    《PHP高级程序设计_模式、框架与测试》中文版PDF 本书采用循序渐进的方式介绍了用php进行web开发的相关知识。书中首先从oop采用的机制——抽象类、接口、契约式编程开始讲起,然后介绍了静态方法、单例模式、工厂...

    c++与c程序设计学习与实验系统(2014)

    与软件配套的《 C/C++程序设计教程(配有同步实验、流程控制语句动画演示、提供教程中所有程序实例、实验、作业中的源代码(全部用VC6编译器调试通过))》融入了作者多年的教学和学习经验、编程建议、编程感悟,...

    C/C++程序设计学习与实验系统

    与软件配套的《 C/C++程序设计教程(配有同步实验、流程控制语句动画演示、提供教程中所有程序实例、实验、作业中的源代码(全部用VC6编译器调试通过))》融入了作者多年的教学和学习经验、编程建议、编程感悟,新增...

    c/c++程序设计学习与实验系统

    与软件配套的《 C/C++程序设计教程(配有同步实验、流程控制语句动画演示、提供教程中所有程序实例、实验、作业中的源代码(全部用VC6编译器调试通过))》融入了作者多年的教学和学习经验、编程建议、编程感悟,新增...

Global site tag (gtag.js) - Google Analytics