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

            牽著老婆滿街逛

            嚴(yán)以律己,寬以待人. 三思而后行.
            GMail/GTalk: yanglinbo#google.com;
            MSN/Email: tx7do#yahoo.com.cn;
            QQ: 3 0 3 3 9 6 9 2 0 .

            [轉(zhuǎn)載]學(xué)習(xí)時注意思考方法——只獻(xiàn)給初學(xué)者

            來自CU的文章,我覺得很有價值,大家都可以看看的:)
            原文:http://bbs.chinaunix.net/viewthread.php?tid=880434&extra=page%3D21


            不管是在現(xiàn)實(shí)中還是網(wǎng)上,總遇到一些人再問一些奇怪的問題。很多問題讓大牛
            們哭笑不得,總是推薦這些人看一些經(jīng)典的書籍。結(jié)果過了一段時間,其他人的
            知識已經(jīng)滄海桑田,不少人成了大牛,大牛們已經(jīng)成了大大牛。這些人還在重復(fù)
            著類似的問題。本人不是大牛,但是覺得大牛們在技術(shù)上幫助別人的同時還應(yīng)該
            更多的傳播思維方法。如果大牛們沒有時間,那么小弟只好拋磚引玉,談一些不
            成熟的見解,同時希望大牛們多提意見,我再把你們的經(jīng)驗(yàn)總結(jié)起來一齊奉獻(xiàn)給
            大家。

            1)分層思考
            在我的同學(xué)中有一個人算是經(jīng)典案例,他學(xué)習(xí)起來很用功,但似乎不管長時間也
            沒有氣色。并且常問一些讓人哭笑不得的問題。我花可長時間也無法讓他明白學(xué)
            校開的課程到底和實(shí)際的開發(fā)有什么聯(lián)系。有一天我突然發(fā)現(xiàn),我用如何處理以
            太網(wǎng)偵來舉例子來說明如何是用C語言的struct的使用他居然就輕易的弄懂了。之
            后我總結(jié)出來的結(jié)論是:他在學(xué)習(xí)的時候總是嘗試一次弄清楚涉及的每一個細(xì)節(jié),
            結(jié)果就陷入了無窮個疑問中,每次都把自己弄的暈頭轉(zhuǎn)向。

            這里引出了一個對于學(xué)習(xí)者最終要也是最基本的思考方法:分層。可以說99%論
            壇上的哭笑不得的問題是因?yàn)闆]有分層思考造成的。遇到這樣的人只能先教他們
            學(xué)會如何的進(jìn)行分層思考,再向他們推薦學(xué)習(xí)資料。

            練習(xí)分層思考其實(shí)非常簡單,你考慮拓?fù)鋾r,就不要考慮數(shù)據(jù)流程,考慮數(shù)據(jù)流
            程時就不要考慮存儲,考慮網(wǎng)絡(luò)間的協(xié)議時,就不要考慮一臺機(jī)器上的數(shù)據(jù)是如
            何處理的。只要忽略具體的細(xì)節(jié),每次只弄懂和問題相關(guān)的最小的部分。等你全
            部弄懂之后,再考慮層次之間的聯(lián)系。經(jīng)常假設(shè)“它就是那個樣子”,跳過一些問
            題也是好的方法,當(dāng)你發(fā)現(xiàn)跳過一些問題會加速自己的理解時,這些跳過的問題
            往往就是處于不同層次下的,甚至當(dāng)你發(fā)現(xiàn)一些問題是屬于其他層次的時候,問
            題本身不復(fù)存在了。

            分層思考在讀書的時候是很容易掌握的,因?yàn)榇笈兊臅緛砭蜁每茖W(xué)的方法
            向你表述他的思想。難在讀代碼,或者在hacking幾乎沒有教材的技術(shù)的時候,需
            要靈活掌握。

            2)從整體到局部,從局部到整體
            當(dāng)學(xué)會了分層思考后,掌握2)就變得十分簡單了。在每個層次上,很多的問題是
            相互獨(dú)立的,將他們歸納出來,如果有必要了解,逐個擊破。很多人會抱怨某某
            東西很難,其實(shí)加上分層再劃分之后,逐個解決起來就容易多了。分層是為了獲
            得綜覽,劃分局部是實(shí)際解決問題的必要的步驟。

            整體到局部的另一個好處是,實(shí)際上你獲得了某個技術(shù)的最小單位。這些最小單
            位通常也會被其他的技術(shù)所采納。舉個例子,你了解LDAP時熟悉的FQDN、OID、
            realm、BNF等等,在了解電子郵件,HTTP,Keberos的時候也會有用。事實(shí)上劃分
            是再自然不過的方法,只是對于初學(xué)者,也許需要特別強(qiáng)調(diào)一下。

            此外,有些局部的技術(shù)可能是不需要了解的,比如說UPnP,可能你只有在解決實(shí)
            際環(huán)境的問題的時候才需要考慮,雖然它哪里都可以見到,但是你絕大部分情況
            可以忽略它,無論是在考慮拓?fù)鋾r,還是在分析代碼時。

            3)創(chuàng)造和發(fā)現(xiàn)問題
            創(chuàng)造和發(fā)現(xiàn)問題并不一定在你完全掌握了某個技術(shù)之后。而是在1)、2)的前提
            下,能夠在學(xué)習(xí)的過程中提出建設(shè)性的問題。這些問題絕大多數(shù)會在學(xué)習(xí)的過程
            中自然的獲得答案,少數(shù)會在論壇的討論中得到結(jié)論。如果還有剩下的,那么可
            能你發(fā)現(xiàn)了技術(shù)本身存在的缺陷,恭喜你。

            事實(shí)上創(chuàng)造和發(fā)現(xiàn)問題的人很少出現(xiàn)“迷惘”,或者找不到“實(shí)踐的途徑和方法”的
            情況。如果出現(xiàn)了這種情況,很可能1)、2)的條件都沒有具備。如果1)、2)
            都具備了的話,才有下面的方法訓(xùn)練:

            多問“如果”。典型的就是在1)時,先問自己,如果是自己會怎樣設(shè)計?把這個問
            題從開始保留到結(jié)束。
            多問“為什么”。配合“如果”,多問別人為什么這么設(shè)計,并且把讓這個問題貫穿
            到整個的學(xué)習(xí)過程。
            多問“哪些”,哪些東西是可以替換的?通常配合2),這樣可以發(fā)現(xiàn)實(shí)現(xiàn)同一目
            的不同方法,很容易發(fā)現(xiàn)當(dāng)前協(xié)議的不足之處以及更好的解決辦法。

            總結(jié)
            事實(shí)上通篇的內(nèi)容可以歸納為:不斷的問下面5個問題:What(1)、Which(2、
            3)、What if(3)和Why(3)。僅僅是自己的一點(diǎn)不成熟的經(jīng)驗(yàn),而且也寫的比
            較匆忙,漏洞很多。希望大家指正,也希望真正牛人們多多介紹自己的經(jīng)驗(yàn),我
            會抽出時間來幫助你們整理,然后奉獻(xiàn)給大家。

            posted on 2007-03-19 21:56 楊粼波 閱讀(986) 評論(7)  編輯 收藏 引用

            評論

            # re: [轉(zhuǎn)載]學(xué)習(xí)時注意思考方法——只獻(xiàn)給初學(xué)者 2007-03-20 00:06 璞石

            好文章,雖然編程好幾年了,但是有時還是不自覺的陷入某些細(xì)節(jié)不可自拔,越來越混亂。有良好的思維通常能事半功倍  回復(fù)  更多評論   

            # re: [轉(zhuǎn)載]學(xué)習(xí)時注意思考方法——只獻(xiàn)給初學(xué)者 2007-03-20 01:35 lovedday

            謝謝,受益了。  回復(fù)  更多評論   

            # re: [轉(zhuǎn)載]學(xué)習(xí)時注意思考方法——只獻(xiàn)給初學(xué)者 2007-03-20 11:28 空明流轉(zhuǎn)

            有道理。其實(shí)跟人感受是,有些東西,理解了固然更好,如果一時之間沒有理解,那就記住它,遲早是會理解的。  回復(fù)  更多評論   

            # re: [轉(zhuǎn)載]學(xué)習(xí)時注意思考方法——只獻(xiàn)給初學(xué)者 2007-03-20 15:31 Corner Zhang

            文章很好,可有些偏頗!
            說實(shí)話,我學(xué)生時就是學(xué)習(xí)很用功,但成效不大的那個樣子,現(xiàn)在看來這樣也有好處,是成為所謂大牛前的磨礪階段。
            把學(xué)習(xí)比作人生的話,就是每個人都處于自身成長過程中不同境遇下時,采用的不同發(fā)展策略而已。  回復(fù)  更多評論   

            # re: [轉(zhuǎn)載]學(xué)習(xí)時注意思考方法——只獻(xiàn)給初學(xué)者 [未登錄] 2007-03-20 17:45 隨意

            我已經(jīng)出來一年了,
            在我看來,
            學(xué)校是積累基礎(chǔ)的時刻,
            而工作是學(xué)以致用的時刻,
            在這一年我思考了很多,改變了很多.
            過去的一年是痛苦的,
            但是卻是值得的,
            讓我成長了很多很多.

            做程序本來就是靠腦力吃飯,
            如果以為是體力活,
            那么就永遠(yuǎn)都沒有長進(jìn),
            做的永遠(yuǎn)都是體力活.

            我最初寫的代碼很糟糕,
            維護(hù)性很差,
            但是不斷的重構(gòu)中變得更可維護(hù)了,
            維護(hù)一份維護(hù)性很差的代碼是體力活;
            但是維護(hù)一份維護(hù)性很好的代碼就是腦力活了.

            萬物相通,
            人生的道理可以用在程序中,
            程序中的道理可以用于人生.
            只有多思,多想,多問(不一定問別人,可以自問),多學(xué)才行啊....  回復(fù)  更多評論   

            # re: [轉(zhuǎn)載]輕輕松松從C一路走到C++系列文章之一 2007-03-20 20:30 asdf

            摘要

            C++技術(shù)固然是很時髦的,許多C用戶都想在盡可能短的時間內(nèi)為自己貼上C++的標(biāo)簽。介紹C++的書很多,但只有那些已經(jīng)僥幸入門的用戶才偶爾去翻翻,仍有不少在C++門口徘徊的流浪漢。

            本文只針對C用戶,最好是一位很不錯的老用戶(譬如他在遇到最簡單的問題時都嘗試著使用指針),通過一些C和更好的C++(本文用的是Borland C++3.1版本)例程介紹有關(guān)C++的一些知識,讓讀者朋友們“淺入深出”,輕輕松松C to C++!

            一、標(biāo)簽!標(biāo)簽!

            快快為你的程序貼上C++的標(biāo)簽,讓你看起來很像個合格的C++用戶……

            1.注釋(comment)

            C++的注釋允許采取兩種形式。第一種是傳統(tǒng)C采用的/*和*/,另一種新采用的則是//,它表示從//至行尾皆為注釋部分。讀者朋友完全可以通過//使你的代碼帶上C++的氣息,如test0l:

            //test01.cpp#include <iostream.h>//I'm a C++user!//…and C is out of date. void main(){ cout<<"Hello world!/n"; //prints a string}


            Hello-world!

            如果你嘗試著在test0l. exe中找到這些高級的注釋,很簡單,它們不會在那里的。

            2. cincout

            你可能從test0l中嗅出什么味兒來了,在C++中,其次的貴族是cout,而不是很老土的printf ( )。左移操作符’<<’的含義被重寫,稱作“輸出操作符”或“插入操作符”。你可以使用’<<’將一大堆的數(shù)據(jù)像糖葫蘆一樣串起來,然后再用cout輸出:

            cout << "ASCII code of "<< 'a' << " is:" <<97; ASCII code of a is:97


            如何來輸出一個地址的值呢?在C中可以通過格式控制符”%p”來實(shí)現(xiàn),如:

            printf ("%p,&i);

            類似地,C++也是這樣:

            cout << & i;

            但對字符串就不同啦!因?yàn)?

            char * String="Waterloo Bridge";

            cout << String; //prints ‘Waterloo Bridge'

            只會輸出String的內(nèi)容。但方法還是有的,如采取強(qiáng)制類型轉(zhuǎn)換:

            cout<<(void *)String;

            cin采取的操作符是’>>’,稱作“輸入操作符”或“提取操作符”。在頭文件iostream.h中有cin cout的原型定義,cin語句的書寫格式與cout的完全一樣:

            cin>>i; //ok

            cin>>&i; //error. Illegal structure operation

            看到了?別再傻傻地送一個scanf()常用的’&’地址符給它。

            C++另外提供了一個操縱算子endl,它的功能和’/n’完全一樣,如test0l中的cout語句可改版為:

            cout << ”Hello world!”<

            3.即時聲明

            這是筆者杜撰的一個術(shù)語,它的原文為declarations mixed with statements,意即允許變量的聲明與語句的混合使用。傳統(tǒng)C程序提倡用戶將聲明和語句分開,如下形式:

            int i=100;float f; //declarations i++;f=1.0/i; //statements


            而C++拋棄這點(diǎn)可讀性,允許用戶采取更自由的書寫形式:

            int i=100;i++;float f =1. 0/i;


            即時聲明常見于for循環(huán)語句中:

            for(int i = 0; i < 16; i++) for(int j = 0; j < 16; j++) putpixel(j i Color[i][j]);


            這種形式允許在語句段中任點(diǎn)聲明新的變量并不失時機(jī)地使用它(而不必在所有的聲明結(jié)束之后)。

            特別地,C++強(qiáng)化了數(shù)據(jù)類型的類概念,對于以上出現(xiàn)的”int i=1 j=2;”完全可以寫成:

            int i(1) j (2);

            再如:





            http://www.itfensi.com/exploit/Cjj/  回復(fù)  更多評論   

            # re: [轉(zhuǎn)載]學(xué)習(xí)時注意思考方法——只獻(xiàn)給初學(xué)者 2007-03-21 08:46 hehe

            大牛,真正的大牛!
            對我這樣的新手,太好了

            最近在看侯杰的<深入淺出>,我被繞暈了,快要放棄了...  回復(fù)  更多評論   


            只有注冊用戶登錄后才能發(fā)表評論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            狠狠色丁香婷婷久久综合不卡 | 久久久久综合中文字幕| 狠狠久久综合| 久久www免费人成看片| 精品精品国产自在久久高清| 午夜精品久久久内射近拍高清| 久久久久久午夜成人影院| 久久久精品视频免费观看| 人妻少妇久久中文字幕一区二区| 久久男人AV资源网站| 久久精品毛片免费观看| 一本色道久久88综合日韩精品| 精品久久久久久综合日本| 囯产精品久久久久久久久蜜桃| 91精品国产综合久久香蕉| 欧美一区二区三区久久综| 香蕉99久久国产综合精品宅男自| 久久97精品久久久久久久不卡| 国内精品人妻无码久久久影院导航 | 久久综合给合久久狠狠狠97色69| 久久亚洲AV无码西西人体| 国产三级久久久精品麻豆三级| 久久精品桃花综合| 亚洲国产成人精品91久久久| 国产福利电影一区二区三区久久老子无码午夜伦不 | 人妻少妇精品久久| 亚洲一本综合久久| 国产成人久久精品区一区二区| 精品久久亚洲中文无码| 深夜久久AAAAA级毛片免费看 | 亚洲国产另类久久久精品黑人| 一本久久a久久精品综合香蕉| 久久人人爽人人爽AV片| 久久99久久无码毛片一区二区| 99久久精品国产一区二区蜜芽| 精品综合久久久久久97超人| 99久久99久久精品免费看蜜桃| 久久精品国产亚洲AV麻豆网站| 久久精品午夜一区二区福利| 国产午夜免费高清久久影院| 国产亚洲精久久久久久无码|