程式設計–基本概念

summerNazi發表於2018-12-26

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          

相關文章