1.面向过程(PROCEDURE ORIENTED)算法
1).具体化,流程化 2).性能高 3).算法+数据结构
2.面向对象(OBJECT ORIENTED)(OO)数据库
1).模型化 2).易维护,易复用,易扩展
3.面向对象编程(OOP)编程
1).继承 容许在现存的组件基础上建立子类组件,这统一并加强了多态性和封装性 A).重载(以统一的方法处理不一样数据类型) 一个类的多态性表现 B).重写(方法重写) 父子类多态性体现 2).封装(信息封装) 确保组件不会以不可预期的方式改变其它组件的内部状态 3).多态 组件的引用和类集会涉及到其它不一样类型的组件,并且引用组件所产生的结果得依据实际调用的类型
4.面向切面编程(ASPECT ORIENTED PAROGRAMMING)(AOP)数据结构
1).切面 项目模块中某些业务逻辑(业务须要必定共性) 2).解耦,提升程序可重用性,提升开发效率
5.三层架构、MVC、MVP、MVVM架构
1).三层架构--界面层(User Interface Layer-Business Logic Layer-Data access Layer 界面–业务逻辑–数据访问) A).界面层(UIL) 与用户交互 B).业务逻辑层(BLL) 实现业务逻辑。业务逻辑具体包含:验证、计算、业务规则等 C).数据访问层(DAL) 与数据库打交道。主要实现对数据的增、删、改、查 2).MVC(Model-View-Controller 模型–视图–控制器) A).Model(模型) 业务逻辑、业务模型、业务操做、数据模型。定义了数据修改和操做的业务规则 B).View (视图) UI组件。接收Controller数据,降Model转化成UI C).Controller(控制器) 处理流入请求 D).特色 View和Model分离(1978 Trygve Reenskaug) E).流程 View⇒Controller⇒Model⇔View 3).MVP(Model-View-Presenter MVC改良模式(View与Model彻底解耦)) A).Model(模型) 业务逻辑、业务模型、业务操做、数据模型。定义了数据修改和操做的业务规则 B).View (视图) UI组件。接收Controller数据,降Model转化成UI C).Presenter(控制器) 处理View背后全部UI事件(一个Presenter只映射一个view) D).特色 View和Presenter双向交互(IBM的子公司Taligent提出) E).流程 View⇔Presenter⇔Model 4).MVVM(Model-View-View Model MVP中把P层削弱为VM层,部分简单的逻辑职责分给了View层) A).Model(模型) 业务逻辑、业务模型、业务操做、数据模型。定义了数据修改和操做的业务规则 B).View (视图) UI组件。接收Controller数据,降Model转化成UI C).View Model(控制器) 负责暴漏方法,命令,其余属性来操做View的状态,触发View本身的事件 D).特色 View和View Model双向数据绑定关系 E).流程 View⇒View Model⇔Model