• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            WarmGUI(0. 序言) 構建自己的C++ Windows UI Class Library

            轉載必須注明原文轉自C++博客(cppblog),作者畢達哥拉斯半圓,謝謝合作。

            寫這個文章的目的,是希望得到更多人的幫助、指導、提供建議,甚至合作。我想自己開發一個Windows上的C++GUI,我取名叫做WarmGUI,因為CoolGUI.com已經被人注冊了,我想那我就叫Warm吧 ^_^

            我會用MFC開發簡單的Windows應用,我的興趣在服務器端并且喜歡稍微系統底層一些的工作,做了較長時間之后。現在的工作需要我開發一個客戶端應用,但是現在,我發現桌面世界變了,我總結了一些主要原因,不一定正確,而且,這也不是我的重點,只是闡述我的目的和動因,請批評指正。

            1. Apple公司的個人產品更加注重個性化合視感(look & fell),盡管不是新話題,在GoF的設計模式中,已經論述過MVC以及look & fell,那么在GoF之前這個話題必然已經存在一段時間了。但是喬布斯幫主在這個方向做到了極致,各種i產品不斷沖擊桌面,移動,掌上各種終端,導致所有的廠商不得不跟上Apple公司的腳步。

            2. 為了獲得"漂亮"的視覺效果,iOS, Android, linux等產品以OpenGL為主要渲染工具做界面開發,而微軟公司與之抗衡的工具是DirectX,并且在近些年的發展中DirectX大有超過OpenGL的勢頭,至少在某些宣傳中是這樣。當然這兩技術必然將長期共存很長時間。

            3. 微軟為了跟上時代潮流,從Win7開始,系統內置DirectX11客戶運行庫,用戶無需單獨安裝。而WPF開始取代MFC做為主流的桌面產品,WPF的子集Silverlight也作為網頁前端開發工具,在IE9中提供特殊視覺效果。

            至此,我認為開發UI應用的人必須:
            1. 學習和掌握DirectX/OpenGL至少兩者之一
            2. 學習和掌握WPF以及Net4以上

            但是對我個人而言,我學習WPF但是拒絕使用WPF,原因如下:
            1. WPF是一個新的框架,只要是框架就會被限制在里面,mfc那冰冷呆板的樣子就是一個例子(這也給Apple可乘之機)。wpf不過是用新的冰冷呆板的框架取代了舊的冰冷呆板的框架。

            2. 據說WPF的效率不佳,并且WPF的視覺效果,是對Direct3D, Direct2D等的封裝,如果想玩的好,還是得從DX玩學起。

            3. 我非常厭惡 C# + .Net 組合,拒絕使用任何C#和.Net,我喜歡效率,喜歡赤裸裸的虐待系統,不喜歡隔著衣服玩女人。我強烈的要求使用C++/C做開發,我不知道是否有人跟我一樣,還是這只是我的個人偏好。

            綜合以上原因,我下載了CEGUI, MyGUI, 這兩個C++UI框架的主要應用時游戲,當然了,OpenGL/DirectX神馬的最早就是應用在游戲上的,他們已經做的比較完善,比較強大了。但是我運行了他們的Demo之后,卻對效率界面效果不是很滿意而且有錯誤,看來需要讀他們的源代碼,并且修改。

            既然如此,我想我可以開發一個自己的框架,反正我要學習的東西那么多(Dx,OGL, WPF, CEGUI, MyGUI...),邊學邊干唄。既然要學習,就學的高興一點,玩得嗨一點。

            目前我的設想如下:
            1. 作為通用的界面基礎,在此之上構建商業軟件,游戲等等;
            2. 輕量級的類庫,不像MFC那樣對一切進行封裝,允許大量使用Windowd API,只做必要的封裝;
            3. 保持靈活度和擴展性;
            4. 采用Direct2D, Direct3D做渲染;
            5. 后期做一個可視化的IDE,嵌入VisualStudio中,做窗口布局,自動生成代碼等。

            看來我要做的工作還真不少,下一節,我開始把我做的一些工作總結寫出來,還要請大家不吝賜教??!學生這里先謝過啦~

            珍愛生命,努力編程?。?/div>

            posted on 2012-08-30 16:40 畢達哥拉斯半圓 閱讀(2549) 評論(17)  編輯 收藏 引用

            評論

            # re: WarmGUI(0. 序言) 構建自己的C++ Windows UI Class Library 2012-08-30 17:26 right

            根據我這么多年的經驗,該庫能夠完成的概率為0%~  回復  更多評論   

            # re: WarmGUI(0. 序言) 構建自己的C++ Windows UI Class Library 2012-08-30 19:24 畢達哥拉斯半圓

            @right
            謝謝鼓勵,哈哈,說說看,為什么呢?  回復  更多評論   

            # re: WarmGUI(0. 序言) 構建自己的C++ Windows UI Class Library 2012-08-30 19:33 LongSing

            你可以參考tcl/tk
            還有FLTK  回復  更多評論   

            # re: WarmGUI(0. 序言) 構建自己的C++ Windows UI Class Library 2012-08-30 19:57 畢達哥拉斯半圓

            @LongSing
            好的,這就去看,謝謝!  回復  更多評論   

            # re: WarmGUI(0. 序言) 構建自己的C++ Windows UI Class Library 2012-08-30 20:19 Richard Wei

            支持一下,不過即使有D3D和WPF的經驗,做這個東西也不是容易的事  回復  更多評論   

            # re: WarmGUI(0. 序言) 構建自己的C++ Windows UI Class Library 2012-08-30 20:49 Pear

            一是有沒有那么長久的時間精力,二是能不能當成習慣來做,連半神vczh的Gac都還沒完成呢  回復  更多評論   

            # re: WarmGUI(0. 序言) 構建自己的C++ Windows UI Class Library 2012-08-30 21:14 畢達哥拉斯半圓

            @Pear
            您說的很有道理,不著急,慢慢弄吧,先做個小級別的。  回復  更多評論   

            # re: WarmGUI(0. 序言) 構建自己的C++ Windows UI Class Library 2012-08-30 21:15 畢達哥拉斯半圓

            @Richard Wei
            謝謝支持!確實很難,慢慢弄吧  回復  更多評論   

            # re: WarmGUI(0. 序言) 構建自己的C++ Windows UI Class Library 2012-08-30 21:18 畢達哥拉斯半圓

            @Pear
            謝謝提供Gac的信息,我剛知道有這個lib,我好好學學!  回復  更多評論   

            # re: WarmGUI(0. 序言) 構建自己的C++ Windows UI Class Library 2012-08-30 23:03 萬連文

            根據我目前掌握的,可以研究一下chromium的views框架以及未來某個時間推出的aura(已經用于chrome os)。實現思想上(概念、對象模型)可以借鑒wpf,缺點就是沒有源碼參考。我自己在盤views/aura + windowless richedit + windowless webview(chromium 內核),工作量巨大,還好可以占用工作時間折騰。

            FLTK 我5-6年前看過,太輕以至于在那個年代做最簡陋的嵌入式UI都覺得不夠好,盡管如此也值得一看。  回復  更多評論   

            # re: WarmGUI(0. 序言) 構建自己的C++ Windows UI Class Library 2012-08-30 23:16 fzy

            感覺你要折騰好幾次的。
            最好和一個商業項目綁定在一起做。
            一開始用手寫的數據來驅動,
            編輯器可以后面寫。

            不要依賴特定的渲染  回復  更多評論   

            # re: WarmGUI(0. 序言) 構建自己的C++ Windows UI Class Library 2012-08-30 23:42 fzy

            和商業項目綁定,快速的迭代開發,才是最好的方式。
            研究形式的開發,根本出不來的。
              回復  更多評論   

            # re: WarmGUI(0. 序言) 構建自己的C++ Windows UI Class Library 2012-08-30 23:46 陳梓瀚(vczh)

            @fzy
            不要小看業余生活豐富的蛋疼程序員的力量  回復  更多評論   

            # re: WarmGUI(0. 序言) 構建自己的C++ Windows UI Class Library 2012-08-30 23:47 畢達哥拉斯半圓

            @fzy
            多謝指教!確實與商業項目綁定,目前做開發的只有我一個人,折騰了一個多月了,哈哈。  回復  更多評論   

            # re: WarmGUI(0. 序言) 構建自己的C++ Windows UI Class Library 2012-08-30 23:49 畢達哥拉斯半圓

            @萬連文
            多謝指點!就去看~  回復  更多評論   

            # re: WarmGUI(0. 序言) 構建自己的C++ Windows UI Class Library 2012-09-03 22:16 過還漂

            思路很好,困難不少,但不是別人說的那樣不可能完成,說實話,我現在正搞一個類似的東西,只能利用業余時間搞  回復  更多評論   

            # re: WarmGUI(0. 序言) 構建自己的C++ Windows UI Class Library 2012-09-03 22:27 畢達哥拉斯半圓

            @過還漂
            哈哈,好啊,一起加油吧!還請多多指點!  回復  更多評論   

            <2012年9月>
            2627282930311
            2345678
            9101112131415
            16171819202122
            23242526272829
            30123456

            導航

            統計

            • 隨筆 - 7
            • 文章 - 0
            • 評論 - 44
            • 引用 - 0

            常用鏈接

            留言簿(3)

            隨筆檔案

            相冊

            contact

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            久久精品一区二区影院| 久久大香香蕉国产| 久久亚洲国产成人影院网站| 久久天天躁狠狠躁夜夜2020| 一级女性全黄久久生活片免费| 亚洲精品乱码久久久久久蜜桃图片| 精品久久久久久久久午夜福利| 久久国产精品99精品国产987| 亚洲国产精品无码久久九九 | 亚洲国产成人精品女人久久久| 久久综合亚洲鲁鲁五月天| 亚洲国产精久久久久久久| 久久这里的只有是精品23| 久久精品国产精品青草| 久久99精品久久久大学生| 久久久久久亚洲精品不卡 | 精品国产99久久久久久麻豆 | 一本久久精品一区二区| 国产精品久久波多野结衣| 精品久久久久久久国产潘金莲| 国产亚洲美女精品久久久久狼| 久久成人国产精品免费软件| 久久成人18免费网站| 伊人久久免费视频| 69SEX久久精品国产麻豆| 亚洲级αV无码毛片久久精品 | 亚洲国产高清精品线久久| 国产一区二区三区久久精品| 久久亚洲AV成人无码国产| 午夜福利91久久福利| 国产精品成人99久久久久 | 国内精品久久人妻互换| 久久亚洲熟女cc98cm| 久久精品中文字幕一区| 久久久亚洲裙底偷窥综合| 亚洲国产精品狼友中文久久久| 久久天天躁狠狠躁夜夜2020老熟妇| 国产激情久久久久影院| 国产精品免费久久久久电影网| 99久久无码一区人妻| 久久99精品国产麻豆不卡|