• <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>

            Sunshine Alike

            半完美主義

              C++博客 :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
              35 Posts :: 1 Stories :: 56 Comments :: 0 Trackbacks

            常用鏈接

            留言簿(15)

            積分與排名

            • 積分 - 50538
            • 排名 - 452

            最新隨筆

            最新評論

            無聊的下午,來個(gè)小小的總結(jié)吧,想到哪寫到哪,呵呵。

            這幾天被項(xiàng)目里的MFC折磨在,雖然自己耐著性子又開始在學(xué),但是還是覺得進(jìn)度非常緩慢。其實(shí)去年的時(shí)候也有過一次用MFC做的項(xiàng)目實(shí)訓(xùn),但第一次接觸MFC的時(shí)候就覺得那就是一怪物,純的??!寫起程序來都覺得惡心。于是乎,在心里油然而生的抵抗情緒作用下,我毅然去當(dāng)了項(xiàng)目組的TL,也不再愿去碰那堆亂七八糟的MFC代碼了。


            我自從進(jìn)入大學(xué)以來,學(xué)習(xí)編程已經(jīng)有近4年了,從一開始我接觸到的就是OO的思想,所以到現(xiàn)在為止,在潛意識里仍然還保留著當(dāng)年老師一遍遍跟我們講授的經(jīng)典名言“everything is an object”。哈哈,對這句話真是很有感情?。?/p>

            編程語言,最開始的時(shí)候我是學(xué)JAVA的(好吧,我承認(rèn)我連C語言都沒學(xué)過,不要BS我,不是我的錯(cuò))。學(xué)校里安排的課程大多也都是用的JAVA。年少無知的日子是多么美好啊,JAVA曾經(jīng)一度是我心目中最完美的語言,以致于對第一次在數(shù)據(jù)結(jié)構(gòu)課上老師所使用的那個(gè)被稱為C++的東西意見天大?!盀槭裁匆褂眠@么垃圾的語言??!”,可我當(dāng)時(shí)真就是這么想的,“語法復(fù)雜,甚至連標(biāo)準(zhǔn)都不統(tǒng)一,內(nèi)存都要自己手動(dòng)管理”。就這么稀里糊涂的過了幾年,慢慢的,由于課程需要開始耐著性子看些C++的書,一路看下去卻如同哥倫布一樣看出了個(gè)“新大陸”。從那門名叫“C++高級程序設(shè)計(jì)的選修課上”開始,我迷上了這門當(dāng)年讓我厭惡不己的語言。準(zhǔn)確的說,現(xiàn)在我的JAVA都已經(jīng)荒廢多時(shí)了,把博客放到這也是這個(gè)原因。


            可是夢想成為一個(gè)C++高手的路卻不是那么好走的。
            同寢室的同學(xué)一路沿著JAVA那條線走來,現(xiàn)在已經(jīng)整天研究些ExtJS, Hibernate,Spring,Struts(當(dāng)年還因?yàn)榘堰@個(gè)詞讀成structs被人暴笑 T_T)這些在我看來都已經(jīng)是兩個(gè)世界的東西了,更別說那些css,javascript之類他們早已非常熟悉的東東了。寢室有一哥們也就用了兩三晚上就用PHP整出一網(wǎng)站出來,雖然知道有模板,但還是讓我感覺驚訝不己。
            反觀我現(xiàn)在,除了會用VS拖幾個(gè)控件之外貌似就只能在cmd下面研究一下cout,cin了。我都不明白這是為什么?時(shí)間也用了不少,可是還是感覺做不出來什么像樣的東西。不少人都跟我說,C++是用來做底層的,是要注重效率寫算法的,可心里還是非常不平衡啊。

            于是這次趁著畢業(yè)前的一點(diǎn)空閑時(shí)間,我又耐下心來打算學(xué)學(xué)MFC??戳艘稽c(diǎn)關(guān)于windows API的基礎(chǔ)知識。一開始寫MFC,我,又徹底的暈菜了。某天我想把一個(gè)int值轉(zhuǎn)成string顯示出來的時(shí)候。我被神奇的卡住了,而且還是一上午 T_T  神哪,在JAVA,C#里這算是問題嗎?之后經(jīng)過若干次嘗試,求助N本書之后,問題終于解決了。使用stringstream轉(zhuǎn)換成功。剛高興了沒半分鐘,問題又來了。顯示在CEdit控件里的就是亂碼,郁悶吶。最后我把書上的代碼拿來抄了一遍,我KAO,居然還是不行!
            于是乎,我坐下來,緩了下神。然后,不是開始再次的嘗試,而是開始在心中暗罵MS。它娘的,沒事整這么多變量啊,宏定義干嘛啊。用string不行么,非要弄出個(gè)CString;LPCTSTR這鬼東西不就是個(gè)char*,莫非換個(gè)馬甲就變帥了?

            /* --------------- 文中 的確是內(nèi)心所想,各位看官一笑而過即可,不必與我爭論其中正誤 ------------------- */

            ?


            BS微軟N次之后,我又開始思考一個(gè)困擾我很長時(shí)間的問題。
            對于生性喜歡有挑戰(zhàn)性的我來說對新鮮的事物總是想一探究竟。當(dāng)年我第一次被MFC嚇跑之后,我一直對windows下的GUI編程念念不忘。時(shí)常想尋找一個(gè)比較“完美”的C++實(shí)現(xiàn)的方法。也是那個(gè)時(shí)候,我才知道人們對于MFC的爭執(zhí)。似乎反對派將其說的一無是處(當(dāng)時(shí)看的時(shí)候不禁心中暗爽,又為自己不學(xué)這個(gè)找了個(gè)理由,呵呵)也是那個(gè)時(shí)候,我還了解了QT,VCF,WTL還有wxWidgets等等庫。可問題是which one ? 我那個(gè)時(shí)候連被人爛熟的MFC都一點(diǎn)不會,就開始學(xué)這些我聽都沒聽過的東東?這些東西真像我想要的那么好么?就是我學(xué)了,別人用這個(gè)嗎……當(dāng)時(shí)腦子里的問題多多,還糾結(jié)了頗久一段時(shí)間。無奈后來還是選擇都放下了。因?yàn)椋乙獪?zhǔn)備考研了……

            痛定思痛
            我認(rèn)真總結(jié)經(jīng)驗(yàn)之后,得出結(jié)論,我必需要選擇一樣了,是好是歹完了之后再說吧,于是就有了我與MFC的第二次搏斗!此外,還有一個(gè)很嚴(yán)重的問題就是,關(guān)于基本功的問題。以前,我自認(rèn)為學(xué)習(xí)C++時(shí)間不短了,原來都是井底之蛙。想要精通任何一項(xiàng)技能都是不容易的。更何況C++這門曾經(jīng)被多少人瘋狂研究過的“超級語言”。

            基本功差吧,那就補(bǔ)吧??墒菑哪睦镅a(bǔ)起呢,據(jù)說C++是從C語言里演化出來的,那么從C開始?
            No,我的OO神經(jīng)這樣告訴我。
            那好,看點(diǎn)C++的新東西吧。于是我看那本評價(jià)頗高的C++Primer。嗯,書上這么教導(dǎo)我們:孩子,多使用C++的新特性吧,STL里有容器,用吧;char* 字符串,扔到垃圾桶吧,這里有更好的string……哈哈,看書的時(shí)候心里巨爽,這語法,多么美妙。
            可是我一合上書就深深體會到一個(gè)道理——現(xiàn)實(shí)是殘酷的!我眼里所看到的代碼,全都是各種各樣的混合體。char* 的字符串依然滿天飛,還有那些C語言里我都沒見過的函數(shù)。
            唉,混亂啊,what do I do ?

            呼~~ 這個(gè)點(diǎn)不早了,先寫到這歇了。明天太陽一樣出來,日子照過,慢慢來吧。

            posted on 2009-03-28 00:19 Sunshine Alike 閱讀(1728) 評論(21)  編輯 收藏 引用 所屬分類: 隨筆

            Feedback

            # re: Confused! 總結(jié)下心情 2009-03-28 00:51 abilitytao
            呵呵 學(xué)完了C++ 現(xiàn)在我要開始向著JAVA的方向挺近了 O(∩_∩)O~
              回復(fù)  更多評論
              

            # re: Confused! 總結(jié)下心情 2009-03-28 00:54 likenk
            呵呵
            我們這屆也是只有我一個(gè)人玩VC++,其他都是c sharp,java。郁悶啊。  回復(fù)  更多評論
              

            # re: Confused! 總結(jié)下心情 2009-03-28 07:15 jimsmorong
            我們哪里是C++必修 Java擇修

            結(jié)果是 我兩樣都無修  回復(fù)  更多評論
              

            # re: Confused! 總結(jié)下心情 2009-03-28 08:13 brucewuu
            哈哈 ,兄弟的經(jīng)歷 可謂同是天涯淪落人啊 。 我也經(jīng)歷過這些呵,現(xiàn)在還是堅(jiān)持C++,而且準(zhǔn)備把MFC丟了,得自己設(shè)計(jì)UI,路還長的很哦 共勉吧  回復(fù)  更多評論
              

            # re: Confused! 總結(jié)下心情 2009-03-28 08:26 空明流轉(zhuǎn)
            我多少也用了6年多的C++了,迄今為止不會用MFC。

            準(zhǔn)確的說C++的UI Lib我一個(gè)都用不好,Qt用的比較熟,不過還是PyQt用的熟。。。  回復(fù)  更多評論
              

            # re: Confused! 總結(jié)下心情 2009-03-28 09:22 匿名人士
            加油咯~~  回復(fù)  更多評論
              

            # re: Confused! 總結(jié)下心情 2009-03-28 09:38 yan
            深有同感啊~~~
            C++是一種多模式的語言,這是優(yōu)點(diǎn)。但是對于初學(xué)者而言,這恰恰如夢魘一般,分外可怕。
            好不容易把C學(xué)熟了,看到無數(shù)的類與構(gòu)造、析構(gòu);費(fèi)了更多的時(shí)間把OO學(xué)明白了,又遇到讓人暈頭轉(zhuǎn)向的流和容器,還有如大海一般深不可測的模板元編程。
            C++,要想學(xué)好,真的是很不容易。學(xué)習(xí)C++的時(shí)間越長,越痛恨它的復(fù)雜難懂,同時(shí)對它的感情還偏偏是越深,呵呵  回復(fù)  更多評論
              

            # re: Confused! 總結(jié)下心情 2009-03-28 10:19 E劍仙
            JAVA、C#有什么好玩的?上層那些人人都能做的應(yīng)用搞多了真的有成就感?還是C++好玩,而且盡量使用CLR……  回復(fù)  更多評論
              

            # re: Confused! 總結(jié)下心情 2009-03-28 10:33 Chuck
            我認(rèn)為C++的精髓反而是在最不起眼的cmd的cout,cin上面
            不要浮躁,學(xué)C++會有比別人更多的收獲

            JAVA、C#有什么好玩的?上層那些人人都能做的應(yīng)用搞多了真的有成就感?還是C++好玩,而且盡量使用CLR……

            看上面這個(gè)仁兄回復(fù)的~  回復(fù)  更多評論
              

            # re: Confused! 總結(jié)下心情[未登錄] 2009-03-28 10:40 海邊沫沫
            我想你的郁悶主要是因?yàn)槟銈冺?xiàng)目組的人不少,每個(gè)人寫代碼的風(fēng)格都不一樣造成的吧?

            其實(shí)C++非常美,非常具有詩意的,但是如果你天天看別人寫的垃圾代碼,那無疑是一種噩夢。MFC并不難,關(guān)鍵是要理解,有很多時(shí)候我們并不需要MFC中的大多數(shù)特性,只需要用設(shè)計(jì)器拖放出一個(gè)簡單的界面,然后和它交互,知道在哪個(gè)事件里寫代碼,知道怎么畫圖就行了。(事實(shí)上,MFC包含的內(nèi)容遠(yuǎn)不止這些)

            你可以到我的博客看看,我寫過一個(gè)俄羅斯方塊的游戲,只用了一點(diǎn)點(diǎn)MFC的知識,但是我認(rèn)為我的C++代碼設(shè)計(jì)得很優(yōu)美。
            http://m.shnenglu.com/youxia/archive/2007/12/16/38605.html

            用到了STL中的deque,用到了Factory模式,用到了多線程和線程同步的知識,用到了GDI繪圖,但是沒用多少M(fèi)FC的東西。  回復(fù)  更多評論
              

            # re: Confused! 總結(jié)下心情 2009-03-28 12:36 Sunshine Alike
            @abilitytao
            呵呵,那以后我又有C++方面的疑問就向你請教了 ^_^  回復(fù)  更多評論
              

            # re: Confused! 總結(jié)下心情 2009-03-28 12:40 Sunshine Alike
            @jimsmorong
            其實(shí)我現(xiàn)在覺得,從C類語言開始學(xué)編程,還是不錯(cuò)的。
            至于學(xué)OO,那就是另一回事了  回復(fù)  更多評論
              

            # re: Confused! 總結(jié)下心情 2009-03-28 12:43 Sunshine Alike
            @likenk
            @brucewuu
            @yan
            看來有這類似經(jīng)歷的大有人在啊
            不過,大家最后都在堅(jiān)持著自己的C++之路,用brucewuu兄的話說 與君共勉吧  回復(fù)  更多評論
              

            # re: Confused! 總結(jié)下心情 2009-03-28 12:48 Sunshine Alike
            @空明流轉(zhuǎn)
            等我這陣忙過了,也許會研究點(diǎn)別的UI,不知道Qt上手起來感覺如何?  回復(fù)  更多評論
              

            # re: Confused! 總結(jié)下心情 2009-03-28 12:53 Sunshine Alike
            @E劍仙
            @Chuck
            嗯,學(xué)習(xí)C++不容易,還得耐心一點(diǎn)點(diǎn)的積累。
            不過CLR不是.net里面的東西么
            用這個(gè)寫的C++代碼是不是別人所說的“托管代碼”?  回復(fù)  更多評論
              

            # re: Confused! 總結(jié)下心情 2009-03-28 12:58 Sunshine Alike
            @海邊沫沫
            好東西,呵呵,收下慢慢學(xué)習(xí),謝了
            搬到cppblog來之后還看過您的博客,對那篇“高起點(diǎn)C++學(xué)習(xí)之路”印象頗深吶。 我想,真正好的C++代碼應(yīng)該也會非常有美感吧,我得多多努力了  回復(fù)  更多評論
              

            # re: Confused! 總結(jié)下心情 2009-03-28 17:56 陳梓瀚(vczh)
            我也很痛恨MFC,但是光痛恨不行,我也要寫GUI啊。于是狂讀MSDN,將相關(guān)的Windows API都搞得差不多的時(shí)候,自己封了個(gè)庫。  回復(fù)  更多評論
              

            # re: Confused! 總結(jié)下心情 2009-03-28 22:40 Sunshine Alike
            @陳梓瀚(vczh)
            我新學(xué)不久,您現(xiàn)在寫GUI也還用API的函數(shù)嗎?會不會在開發(fā)速度上會比較慢呢  回復(fù)  更多評論
              

            # re: Confused! 總結(jié)下心情 2009-04-04 17:05 runsisi
            aha, god bless u :)  回復(fù)  更多評論
              

            # re: Confused! 總結(jié)下心情 2009-04-15 16:51 Alex-Lee
            @Sunshine Alike
            陳梓瀚(vczh)是牛人,我們需要好好向他學(xué)習(xí)。我也是到現(xiàn)在這C++做界面真是郁悶得要死。咱兩可以一起學(xué)習(xí)。  回復(fù)  更多評論
              

            # re: Confused! 總結(jié)下心情 2009-04-22 11:32 abettor
            @E劍仙
            “上層那些人人都能做的應(yīng)用搞多了真的有成就感?”

            我也是學(xué)C++出來的,MFC用了不少,稍微有一點(diǎn)經(jīng)驗(yàn)。現(xiàn)在也常做Java項(xiàng)目,研究些所謂“上層那些人人都能做的應(yīng)用”。

            E仙劍哥哥的說法我覺得還是不太準(zhǔn)確的,看你要研究什么方向了。如果一輩子都只是coder的話,把C++呀、語法呀、技巧呀研究得透徹一些也就夠了;但是如果需要自己去設(shè)計(jì)一些東西,(不管是上層還是底層),都要在很高的層面上設(shè)計(jì)一番。比如寫操作系統(tǒng)、設(shè)計(jì)驅(qū)動(dòng)程序,夠底層嗎?恰恰是這些東西最需要先在“上層”精細(xì)的設(shè)計(jì)。

            我與仁兄一樣鄙視那些做著重復(fù)工作沒有一點(diǎn)創(chuàng)新還天天喊著“我們這是高科技”的人們,更知道C/C++的牛X之處,但是C#和Java里邊的某些思想確實(shí)值得我們借鑒。C#我是不懂的,但Java我知道一些,他的很多機(jī)制和設(shè)計(jì)思想值得大家學(xué)習(xí),比如反射。IoC、AOP等等技術(shù),都基于這個(gè)機(jī)制。甚至,反射可以讓Java在Runtime自動(dòng)變成任何東西,比如一個(gè)會不斷自動(dòng)“學(xué)習(xí)”并添加新功能的智能機(jī)器人。(關(guān)于上述智能機(jī)器人,不瞞各位,我現(xiàn)在正在設(shè)計(jì),已經(jīng)有了一個(gè)初步的思路。)

            也許你會跟我講,Java是用C/C++寫的。這我很清楚,但問題是,我在這里沒有說什么語言比什么語言好,想表達(dá)的意思是,程序的靈魂是設(shè)計(jì)思想,而不是具體的語法和使用的技巧。  回復(fù)  更多評論
              

            AV无码久久久久不卡蜜桃| 久久人搡人人玩人妻精品首页 | 国产精品永久久久久久久久久 | 伊人色综合久久天天| 久久777国产线看观看精品| 国产亚州精品女人久久久久久 | 久久无码人妻精品一区二区三区 | 色综合久久88色综合天天| 欧美一区二区三区久久综| 久久香综合精品久久伊人| 久久亚洲av无码精品浪潮| 热RE99久久精品国产66热| 少妇精品久久久一区二区三区| 国产精品久久久久国产A级| 伊人久久大香线焦综合四虎| 日韩va亚洲va欧美va久久| 国产亚洲精品久久久久秋霞| 国产精品gz久久久| 日韩精品久久久肉伦网站| 久久久久香蕉视频| 国产精品成人无码久久久久久| 久久亚洲精品国产精品| 久久国产一片免费观看| 久久久久国产一级毛片高清版| 色狠狠久久AV五月综合| 2021最新久久久视精品爱| 18岁日韩内射颜射午夜久久成人| 亚洲精品美女久久久久99| 日韩精品无码久久一区二区三| 久久se精品一区二区影院| 久久99国产综合精品| 欧美午夜精品久久久久免费视| 亚洲va国产va天堂va久久| 亚洲国产日韩综合久久精品| 国产真实乱对白精彩久久| 久久久久国产日韩精品网站| 99久久成人国产精品免费| 久久天天躁狠狠躁夜夜avapp| 久久精品亚洲日本波多野结衣 | 午夜视频久久久久一区 | 久久噜噜久久久精品66|