系统设计
1、面向对象设计
分析类图是从用户的角度出发得到的业务“系统”,而设计类图更多的是从系统、软件的角 度来描述和表达系统。二者具体的区别:
分析类图:在需求分析阶段,类图是研究领域中的概念;分析类图主要用于描述应用领
域中的概念,类图中的类从领域中得出,从需求中获取。
设计类图:在设计阶段,类图重点描述类与类之间的接口;设计类图用于描述软件的接
口部分,而不是软件的实现部分,设计类图更易于开发者之间的相互理解和交流;设计 类图通常是在分析类图的基础上进行细化和改进的。
设计类包括实体类、控制类和边界类三种类型。
类之间的关系有:
关联 | 提供了不同类的对象之问的结构关系,它在一段时间内将多个类的实例连 接在一起。 |
聚合 | 整体与部分的关系,各自具有不同的生命周期。 |
组合 | 整体与部分的关系,具有相同的生命周期。 |
依赖 | 两个类 A 和 B ,如果 B 的变化可能会引起 A 的变化。 |
泛化 | 父类与子类之间的关系。是继承的反关系。 |
实现 | 一个或多个类可以实现一个接口,每个类分别实现接口中的操作。 |
流程图与活动图的区别:
流程图着重描述处理过程,它的主要控制结构是顺序、分支和循环,各个处理过程之间
有严格的顺序和时间关系。而活动图描述的是对象活动的顺序关系所遵循的规则,它着 重表现的是系统的行为,而非系统的处理过程。
活动图能够表示并发活动的情形,而流程图不行。
活动图是面向对象的,而流程图是面向过程的。
序列图与协作图的区别
2、Web 设计常见技术
负载均衡技术 | LVS、Haproxy |
缓存服务器 | Varnish、Ngnix、squid、Memcache、Redis、Ehcache |
分布式文件系统 | Hadoop、FastDFS |
Web 应用服务器 | Jetty、Jboss、Apache |
分布式数据库 | Mysql、MongoDB、Oracle |
3、软件产品线
软件产品线是一个产品集合,这些产品共享一个公共的、可管理的特征集,这个特征集能满 足特定领域的特定需求。软件产品线是一个十分适合专业开发组织的软件开发方法,能有效 地提高软件生产率和质量,缩短开发时间,降低总开发成本