Yahoo Answers is shutting down on May 4th, 2021 (Eastern Time) and beginning April 20th, 2021 (Eastern Time) the Yahoo Answers website will be in read-only mode. There will be no changes to other Yahoo properties or services, or your Yahoo account. You can find more information about the Yahoo Answers shutdown and how to download your data on this help page.

asked in 電腦與網際網路程式設計 · 2 decades ago

C 的framework

請問像是QT wxwindows MFC 這些是如何做出來的 有人自己在做的嗎?

要應用到物件導向的多型嗎?

1 Answer

Rating
  • 2 decades ago
    Favorite Answer

    > 要應用到物件導向的多型嗎?

    可以用也可以不用,用單純的 C 語言也可以實做,中間並沒有特殊的關係,但用物件導向的多型會好做的多。

    > 請問像是QT wxwindows MFC 這些是如何做出來的?

    一般 framework 主要是用來建立使用者介面,大部份都是 MVC 的架構

    MVC代表了Model/View/Controller

    Model 表示應用系統物件

    View 為應用系統物件的螢幕外觀

    Controller 則定義使用者介面與使用者輸入之間的關係。

    首先先建立你想要的使用者介面模型。

    例如是視窗嗎?

    有按鍵嗎?

    有選單嗎?

    有什麼是螢幕上看得到的物件?

    然後根據你設計好的使用者介面模型

    做出一個一個的使用者介面模組

    再將物件之間透過 event-driven 的方式來驅動 Controller

    > 有人自己在做的嗎?

    因為 framework 已經是十分成熟了

    通常沒有人自己實做,直接用現成的就可以了。

    除非你的應用十分特殊,或是為了研究寫論文,才需要自己設計 framework

    如果你真的需要自己實做的話

    可以參考幾本書:

    1. GOF 寫的 Design Patterns Elements of Reusable Object Oriented Software

    2. Struts - An Open-Source Mvc Implementation

    3. Building Application Frameworks: Object-Oriented Foundations of Framework Design -- by Mohamed E.

    4. Framework Process Patterns: Lessons Learned Developing Application Frameworks -- by James Carey, Brent

    Source(s): 自己曾實作過的 Framework
Still have questions? Get your answers by asking now.