热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

程序设计分析(2)——面向对象与面向过程的分析

关于面向过程的一些分析:首先是数据的维护问题,面向过程是过程话的,其数据和行为是分开的,所以你不知道哪个过程修改了这个数据&

关于面向过程的一些分析:

首先是数据的维护问题,面向过程是过程话的,其数据和行为是分开的,所以你不知道哪个过程修改了这个数据,不知道哪个地方调用了这个数据,你无法对其进行控制,安全性,稳定性,可维护性就大大降低了。而且所有数据都是由系统来维护,这也增加了维护的难度。

然后对于面向过程的思想总是将某一个行为看成若干个过程组成,过程与过程之间就有因果关系,都联系在一起,属于紧耦合状态,一旦改变一个过程,则这个行为将会发生异常。

一般用过程化的思想去思考问题总是先思考有多少功能点,而不是先考虑有多少对象参与,他们各负责什么责任。用过程化的思想思考问题,则很有可能造成高耦合度的设计,因为功能点之间可能会重复,可能会相互调用,这样就会增加维护难度;而考虑多少对象时,其责任划分是明确的,是自己负责的事就做,不是就不做,各对象之间不耦合,只注重完成自己职责内的事情,增强了可读和可维护性。

经过这样的分析之后,对于面向对象的思想又进一步加深了,在思考问题的时候,不要先考虑他是什么过程,有哪些步骤,而是应该先思考它可能有哪些对象,找到对象后,弄清它的职责,这样,即使过程发生了变化,也只是协作的对象发生变化而已,不会导致整个过程崩溃。

在系统越来越复杂,越来越难管理的时代,要逐渐养成这样的面向对象的思维方式,从而更好的管理软件。

转:https://www.cnblogs.com/cl51287/archive/2010/11/27/1889819.html



推荐阅读
  • 博主从零开始学习HTML(入门基础)
    从零开始学习HTML(入门基础)互联网三大基石HTTP协议URL:统一资源定位符HTML:超文本标记语言HTML的Head标签中的常用元素<!--告知 ... [详细]
  • 本文探讨了在支付项目开发中使用SS5 Socket Server实现内部网络访问外部网络的技术方案。详细介绍了SS5的安装、配置及性能测试过程,旨在为面临相同需求的技术人员提供参考。 ... [详细]
  • Jenkins 安装指南:Windows 平台详解
    本文详细介绍了如何在Windows平台上安装和配置Jenkins,包括安装步骤、启动方法及基本的系统配置,旨在帮助初次使用者顺利搭建持续集成环境。 ... [详细]
  • 实现HTML表格中的斜线效果
    本文记录了一种使用CSS实现HTML表格中斜线的方法,适合开发者在需要时快速参考和应用。 ... [详细]
  • 本文介绍了如何在C++中使用new关键字动态创建一维和二维数组,并详细解释了常见的错误及其解决方案。 ... [详细]
  • 本文详细介绍了一种利用局域网环境将本地SQL Server数据库备份至另一台计算机的方法。主要步骤包括在目标机器上设置共享文件夹、配置SQL Server以支持备份任务,并通过定时任务实现自动化备份。 ... [详细]
  • SQL执行计划解析(2) 基本查询的图形执行计划
    SQL执行计划解析(2)-基本查询的图形执行计划(上)某种程度上,学习阅读图形执行计划和学习一门新语言很类似。 ... [详细]
  • 深入理解任意分频技术及其在FPGA中的应用
    本文探讨了FPGA中任意分频的重要性,特别是其在高频精确控制中的应用。文章不仅介绍了传统的分频方法,还详细阐述了一种基于DDS(直接数字合成)相位累加器的高精度任意分频技术,旨在为工程师和爱好者提供一种新的思路。 ... [详细]
  • 优化 DropDownList 与 TextBox 的交互体验
    本文介绍了一种解决方案,通过在 DropDownList 前添加一个 TextBox 来提升用户体验。当选项过多时,用户可以通过在 TextBox 中输入关键词来快速定位并选择相应的选项。 ... [详细]
  • 解决LINQ分页时数据丢失的问题
    在使用LINQ进行数据分页的过程中,遇到了一个导致部分数据在翻页时消失的问题。经过仔细排查,发现这一现象与聚集索引的选择密切相关。 ... [详细]
  • SCOI2013 day2 密码(password)
    题目描述:首先看到这题应该知道该怎么裸吧…………以每个字符和间隙为中心可以建立若干个等和不等关系。相等关系可以用并查集合并,不等关系之间连边。然后对每一 ... [详细]
  • 串行与并行加法器的逻辑设计与性能分析
    本文详细探讨了串行加法器和并行加法器的设计原理及其性能特点。通过对比分析两种加法器的工作机制,深入讨论了它们在不同应用场景下的优劣,特别是关于进位处理的不同策略。文章还介绍了进位链的概念及其对加法器性能的影响。 ... [详细]
  • 深入解析Apache SkyWalking CVE-2020-9483 SQL注入漏洞
    本文详细探讨了Apache SkyWalking中的SQL注入漏洞(CVE-2020-9483),特别是其影响范围、漏洞原因及修复方法。Apache SkyWalking是一款强大的应用性能管理工具,广泛应用于微服务架构中。然而,该漏洞使得未经授权的攻击者能够通过特定的GraphQL接口执行恶意SQL查询,从而获取敏感信息。 ... [详细]
  • 本文详细介绍了黑马旅游网的用户退出功能实现方法,包括前后端代码的具体操作步骤。通过访问Servlet销毁session,并重定向至登录页面。 ... [详细]
  • 本文介绍了如何在Ubuntu 16.04系统上配置Nginx服务器,以便能够通过网络访问存储在服务器上的图片资源。这解决了在网页开发中需要使用自定义在线图标的需求。 ... [详细]
author-avatar
潮人-小麦
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有