C++是物件導向的C,其Framework是C++特有的語法,其核心實體都是ANSI C的程式碼。ISO9899:1999乃是眾所周知的C99,經程式設計師在學生時代廣為學習的是GCC,已經完全支援和擴增為C99標準語法,然而C99和ANSI C的差異不被C++擴增,後來的ISO/IEC9899:2011,並未被GCC持續擴增C語言的語法功能。
C的程式設計師和C++的程式設計師,其實應該都是共同做專案的模式居多,而C語言是程式語法實體很小的程式語言,相當適合用於填寫C++的核心程式碼。程式語法的實體越小,將越容易掌握用於大量使用,讓大多數的函式和方法,都以C來撰寫以降低開發成本。C的程式設計訓練,應該是百行以內的小程式當訓練目標,並把C++經UML自動產生的程式碼,用以填寫區塊狀的程式碼填入C++。
UML的設計模式研究方向,其實是要解決物件導向的技術要被C使用,必須用UML自動產生C++的物件導向程式碼。C++要推廣到C的過程中,其關鍵是靠UML的25種設計模式,經自動產生C++的物件導向程式碼,讓C的程式設計師都願意使用C++。UML是基於GoF的25種設計模式,因而發展成為新的程式規劃技術。簡而言之,C++要推廣至C的程式設計師,憑空創造25種設計模式以加快C入門C++,並進一步發展出UML自動產生程式碼的技術。
Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides ( 1994 ) Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley
GoF的設計模式,此著作發行於1994年,當時的國際主流程式語言,乃是FORTRAN77、ANSI C及Visual Basic 3。C++想要闖進程式設計的領域,必然會想要鎖定其通用語法的C,因而要讓物件導向自動產生程式碼。此程式設計理念獲得C的程式設計師的肯定,因而要求建立程式設計的標準語法,ISO/IEC14882:1998(C++98)。C++的物件導向基本精神,乃是以UML自動產生程式碼。
微軟的VC++2015,此版本起完全支援C99的所有語法,其目的乃是C++是經C拼裝而成的架構。國際軟體大廠的編譯器,都應該採用VC++2015以後的版本。VC++和GCC,都已經完全支援C99的語法,亦顯示ANSI C可淘汰,C99是C語言的趨勢語法。GCC是程式設計師在學生時代的編譯器,而GCC已經完全支援C99的語法,以後的程式設計師都是撰寫C99。
References
C的程式設計師和C++的程式設計師,其實應該都是共同做專案的模式居多,而C語言是程式語法實體很小的程式語言,相當適合用於填寫C++的核心程式碼。程式語法的實體越小,將越容易掌握用於大量使用,讓大多數的函式和方法,都以C來撰寫以降低開發成本。C的程式設計訓練,應該是百行以內的小程式當訓練目標,並把C++經UML自動產生的程式碼,用以填寫區塊狀的程式碼填入C++。
UML的設計模式研究方向,其實是要解決物件導向的技術要被C使用,必須用UML自動產生C++的物件導向程式碼。C++要推廣到C的過程中,其關鍵是靠UML的25種設計模式,經自動產生C++的物件導向程式碼,讓C的程式設計師都願意使用C++。UML是基於GoF的25種設計模式,因而發展成為新的程式規劃技術。簡而言之,C++要推廣至C的程式設計師,憑空創造25種設計模式以加快C入門C++,並進一步發展出UML自動產生程式碼的技術。
GoF的設計模式,此著作發行於1994年,當時的國際主流程式語言,乃是FORTRAN77、ANSI C及Visual Basic 3。C++想要闖進程式設計的領域,必然會想要鎖定其通用語法的C,因而要讓物件導向自動產生程式碼。此程式設計理念獲得C的程式設計師的肯定,因而要求建立程式設計的標準語法,ISO/IEC14882:1998(C++98)。C++的物件導向基本精神,乃是以UML自動產生程式碼。
微軟的VC++2015,此版本起完全支援C99的所有語法,其目的乃是C++是經C拼裝而成的架構。國際軟體大廠的編譯器,都應該採用VC++2015以後的版本。VC++和GCC,都已經完全支援C99的語法,亦顯示ANSI C可淘汰,C99是C語言的趨勢語法。GCC是程式設計師在學生時代的編譯器,而GCC已經完全支援C99的語法,以後的程式設計師都是撰寫C99。
References
- Wikipedia, Design Patterns
- Wikipedia, Microsoft Visual C++