`
colorlife
  • 浏览: 132323 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

如何思考程序的设计和代码组织

阅读更多

今天看了大话设计模式第一章,写点读后感:


在编程序前,应该怎么想来设计程序的架构?

可维护

修改部分代码而不会影响其他代码。


可扩展

增加一个功能时不会影响到其他功能。


可复用

代码独立出来,可以重复使用。


灵活性

要改变流程和处理逻辑,只需移动代码。也就是代码可以自由组合。



要实现这些特点,就要解耦,粒度应该多大? 这需要认真思考。


将功能分开,将变化影响的地方集中在一起,当要修改代码或增加功能时,能确定受影响的代码在哪里,而不会影响到其他的代码。


简单工厂模式:

将功能包装成为对象,将有类似功能的对象的实例化放在一起统一管理,变化就被限制在工厂类里。




分享到:
评论

相关推荐

    linux环境c程序设计源代码

    9. **编译与链接**:在Linux下,通常使用`gcc`或`g++`编译器进行源代码编译,`make`工具则可以帮助组织和自动化编译过程。 10. **调试技巧**:学会使用`gdb`调试器来跟踪程序执行,设置断点,查看变量值,单步执行...

    Java程序设计源代码

    在"Java程序设计源代码"这个主题中,我们将会深入探讨Java的基础知识,包括语法、面向对象特性以及实际编程实践。 首先,让我们从基础语法开始。Java的基本结构包括变量声明、数据类型(如整型、浮点型、字符型和...

    课程设计java程序源代码

    7. **包(Packages)**:用于组织和管理类,使得代码更易于维护和重用。 在课程设计中,不包含数据库意味着程序可能不涉及数据库交互。这可能意味着项目重点在于算法实现、数据结构、图形用户界面(GUI)或网络编程...

    MFC Windows程序设计 源代码

    在压缩包文件名"**MFC+Windows程序设计_Code**"中,我们可以推测这个压缩文件包含了与MFC和Windows程序设计相关的所有源代码文件。这些文件可能是按照章节或者主题组织的,每个子文件可能对应一个特定的MFC概念或...

    JSP程序设计课件和代码

    【JSP程序设计课件和代码】是一份由张跃平编著的教育资源,主要针对JSP(JavaServer Pages)技术的学习与实践。JSP是一种动态网页开发技术,基于Java平台,它允许开发者将静态HTML内容与动态Java代码结合起来,以...

    《web程序设计》程序源代码

    通过阅读和分析这些源代码,学习者不仅可以理解Web程序设计的基本原理,还能提升实际编程和问题解决能力。每个文件都是一次学习的机会,可以深入研究其内部逻辑,结合书中理论,进一步提高自己的Web开发技能。

    程序设计基础课程设计代码及报告

    在“程序设计基础课程设计代码及报告”这个主题中,我们可以深入探讨编程学习的基础知识,以及如何通过实际项目来巩固这些知识。这份资料包含了两个关键部分:代码实现和设计报告,这都是理解并掌握编程技能的重要...

    LabVIEW2009程序设计源代码

    通过《LabVIEW2009程序设计》一书及附带的源代码,读者可以逐步了解和掌握以上这些关键概念和技术。每个例程都对应着一个具体的编程概念或技巧,通过实际运行和修改这些代码,学习者可以加深对LabVIEW的理解,提升...

    程序设计基础课程以及源代码

    此外,良好的编程习惯,如注释和代码组织,也对提高代码可读性和维护性至关重要。 总的来说,程序设计基础不仅关乎技术,更关乎解决问题的思维方式。通过这个课程,你将学会如何用计算机的语言来思考,如何用逻辑和...

    挑战程序设计竞赛2 算法与数据结构(源代码)

    《挑战程序设计竞赛2:算法与数据结构(源代码)》是一本专注于程序设计竞赛的书籍,其核心在于提升读者的算法理解和应用能力。通过学习本书的源代码,你可以深入理解并掌握各种常用且高效的算法和数据结构。下面将...

    C程序设计代码大全.zip

    《C程序设计代码大全》这个压缩包文件是一个包含C语言编程学习资源的集合,主要针对C程序设计的例题及课后习题的解决方案。它旨在帮助初学者和进阶者深入理解C语言的基本概念、语法结构以及实际编程技巧。在深入探讨...

    angularjs高级程序设计 代码

    在《AngularJS高级程序设计》一书中,作者Adam Freeman深入探讨了这个框架的高级概念和技术,帮助开发者提升技能并构建高效的应用。 这本书的随书代码提供了实例和练习,方便读者实践和理解书中的理论知识。尽管...

    Asp.net web程序设计与应用代码

    这些例子和步骤说明了ASP.NET的基本原理和工作流程,包括服务器端脚本、动态内容生成以及代码组织。通过这种方式,开发者可以创建复杂的Web应用程序,提供丰富的用户体验。学习和理解这些概念,对于进行ASP.NET Web...

    c++语言程序设计郑莉第四版 源代码 完整

    通过这些实例,你可以更直观地理解如何创建和使用类来组织和管理代码。 函数是C++中的重要组成部分,它们可以实现特定功能并被其他代码调用。源代码可能包含各种函数,如重载函数、模板函数、内联函数等,这些都...

    自考 JAVA语言程序设计(一) 课后习题代码

    本资源"自考 JAVA语言程序设计(一) 课后习题代码"提供了针对该课程的课后练习题的代码解答,旨在帮助学生深入理解和实践Java编程概念。 在学习Java语言时,理解基础语法、类与对象、控制结构、异常处理、数据结构...

    java程序设计例题代码

    Java程序设计是软件开发中的重要一环,尤其对于初学者来说,通过实例代码学习能够更好地理解和掌握编程概念。本资源包含了一系列基本且常用的Java程序设计例题代码,旨在帮助学习者扎实基础,提升编程能力。 首先,...

    谭浩强C语言程序设计第二版源代码及课件完整版

    通过阅读《谭浩强C语言程序设计》的源代码,你可以看到每一个函数的实现,每一行控制语句的作用,以及如何组织和结构化一个程序。这不仅有助于加深对C语言语法的理解,还能提升编程技巧和逻辑思维能力。在源代码中,...

    面向对象程序设计源代码

    4. 4_8、5_6、6_4:这些可能涉及不同章节的接口设计、内存管理(比如指针和引用的使用)以及类的组织和设计原则。 5. 6_9、5_8:第六章的第9节和第五章的第8节可能涉及到模板、泛型编程或者异常处理等复杂话题。 ...

    c++程序设计教材附源代码和答案

    通过这些章节的学习,读者可以理解如何构建和组织复杂的程序结构,以及如何设计和实现可重用的代码模块。 书中包含的源代码是作者为了辅助教学精心编写的示例程序,它们涵盖了各种C++编程技术,包括函数、数组、...

    C#windows程序设计 课件+代码

    在"C# Windows程序设计 课件+代码"的学习资源中,你可以深入理解C#语言的基础与高级特性,并通过实际操作来提升编程技能。 1. **C#基础** - **变量和数据类型**:C#支持多种数据类型,包括基本类型如int、float、...

Global site tag (gtag.js) - Google Analytics