置頂隨筆

          [置頂]《冒號(hào)課堂》意見收集

          posted @ 2009-11-10 09:26 鄭暉 閱讀(1712) | 評(píng)論 (0)編輯 收藏

          [置頂]《冒號(hào)課堂》上市

               摘要: 公告:《冒號(hào)課堂》已正式上市。  閱讀全文

          posted @ 2009-10-26 12:54 鄭暉 閱讀(2292) | 評(píng)論 (2)編輯 收藏

          [置頂]博客搬家

               摘要: 終于有了自己的獨(dú)立博客 http://blog.zhenghui.org,以后就在那兒安家落戶了。  閱讀全文

          posted @ 2009-08-22 22:32 鄭暉 閱讀(1902) | 評(píng)論 (0)編輯 收藏

          [置頂]《冒號(hào)課堂》目錄

               摘要: 《冒號(hào)課堂》目錄  閱讀全文

          posted @ 2008-12-24 01:12 鄭暉 閱讀(8316) | 評(píng)論 (6)編輯 收藏

          [置頂]《冒號(hào)和他的學(xué)生們》寫作提綱

               摘要: 本文系《冒號(hào)課堂》(又名《冒號(hào)和他的學(xué)生們》)系列的目錄提綱,隨著寫作的深入將逐步完善。歡迎大家多提意見!  閱讀全文

          posted @ 2008-07-04 14:41 鄭暉 閱讀(2569) | 評(píng)論 (23)編輯 收藏

          [置頂]關(guān)于《冒號(hào)和他的學(xué)生們》

               摘要: 《冒號(hào)和他的學(xué)生們》的最新公告  閱讀全文

          posted @ 2008-05-20 18:08 鄭暉 閱讀(1276) | 評(píng)論 (15)編輯 收藏

          [置頂]A Proposal on Organization of Information System

               摘要: 關(guān)于信息系統(tǒng)組織方式的一個(gè)改進(jìn)方案
          Information itself is great, but storing and retrieving information sucks.
          From a user’s view, most information systems are essentially organized in hierarchical structure. The major flaw of this kind of structure is that it only provides a single path to the target information. Aiming at this, this article proposes a practical solution by borrowing some ideas from Gmail system.  閱讀全文

          posted @ 2008-05-18 18:50 鄭暉 閱讀(2998) | 評(píng)論 (2)編輯 收藏

          2009年10月28日

          冒號(hào)課堂§10.2:抽象類型

               摘要: 抽象類型——實(shí)中之虛(介紹抽象類型的種類、意義及其用法

          ? 淺顯的比方只是門檻前的臺(tái)階,借之或可拾級(jí)入門,卻無法登堂入室

          ? 具體類型是創(chuàng)建對(duì)象的模板,抽象類型是創(chuàng)建類型的模塊

          ? 抽象數(shù)據(jù)類型的核心是數(shù)據(jù)抽象,而抽象類型的核心是多態(tài)抽象

          ? 必先以術(shù)養(yǎng)道,而后以道御術(shù)

          ? 以社會(huì)身份而非個(gè)人身份作為公民之間聯(lián)系的紐帶,正是針對(duì)接口而非實(shí)現(xiàn)來編程的社會(huì)現(xiàn)實(shí)版

          ? 個(gè)體身份對(duì)應(yīng)的規(guī)范抽象借助封裝,以數(shù)據(jù)抽象的形式出現(xiàn)

          ? 家庭身份對(duì)應(yīng)的規(guī)范抽象借助繼承,以類型層級(jí)的形式出現(xiàn)

          ? 社會(huì)身份對(duì)應(yīng)的規(guī)范抽象借助多態(tài),以多態(tài)抽象的形式出現(xiàn)  閱讀全文

          posted @ 2009-10-28 08:16 鄭暉 閱讀(3454) | 評(píng)論 (0)編輯 收藏

          2009年10月26日

          《冒號(hào)課堂》上市

               摘要: 公告:《冒號(hào)課堂》已正式上市。  閱讀全文

          posted @ 2009-10-26 12:54 鄭暉 閱讀(2292) | 評(píng)論 (2)編輯 收藏

          2009年10月20日

          冒號(hào)課堂§10.1:多態(tài)類型

               摘要: 多態(tài)類型——靜中之動(dòng)(通過實(shí)例展示多態(tài)類型的三種用法

          ? 繼承是多態(tài)的基礎(chǔ),多態(tài)是繼承的目的

          ? 多態(tài)是動(dòng)靜結(jié)合的產(chǎn)物,將靜態(tài)類型的安全性和動(dòng)態(tài)類型的靈活性融為一體

          ? 前者(參數(shù)多態(tài))是發(fā)散式的,讓相同的實(shí)現(xiàn)代碼應(yīng)用于不同的場(chǎng)合

          ? 后者(包含多態(tài))是收斂式的,讓不同的實(shí)現(xiàn)代碼應(yīng)用于相同的場(chǎng)合

          ? 模板方法模式突出的是穩(wěn)定堅(jiān)固的骨架,策略模式突出的是靈活多變的手腕  閱讀全文

          posted @ 2009-10-20 18:18 鄭暉 閱讀(3180) | 評(píng)論 (0)編輯 收藏

          2009年8月22日

          博客搬家

               摘要: 終于有了自己的獨(dú)立博客 http://blog.zhenghui.org,以后就在那兒安家落戶了。  閱讀全文

          posted @ 2009-08-22 22:32 鄭暉 閱讀(1902) | 評(píng)論 (0)編輯 收藏

          2009年3月2日

          冒號(hào)課堂§6.4:后臺(tái)腳本

               摘要: 后臺(tái)腳本——敏捷開發(fā)的利器(簡(jiǎn)談Perl、PHP、Python和Ruby
          ? 語言的發(fā)展趨勢(shì)一定是動(dòng)靜結(jié)合、剛?cè)岵?jì)
          ? Perl凝練晦澀,Python優(yōu)雅明晰,Ruby精巧靈動(dòng),PHP簡(jiǎn)明單純
          ? 或許優(yōu)雅正是來自對(duì)細(xì)節(jié)和規(guī)范的重視
          ? (RoR)與Ruby結(jié)合之后,便如一只猱身而上靈貓,立刻襯托出Java和.NET大象般的身影  閱讀全文

          posted @ 2009-03-02 10:05 鄭暉 閱讀(3775) | 評(píng)論 (4)編輯 收藏

          2009年2月22日

          冒號(hào)課堂§6.3:前臺(tái)語言

               摘要: 前臺(tái)語言——視覺與交互的藝術(shù)(簡(jiǎn)談VB、Delphi和JavaScript
          ? Delphi讓復(fù)雜的事情變得簡(jiǎn)單,VB讓簡(jiǎn)單的事情變得更簡(jiǎn)單
          ? 它(JavaScript)宛如一只神奇的魔袋,乍看平淡無奇,卻總能變出意想不到的寶貝
          ? 待友之道,貴在放大其優(yōu)點(diǎn)而縮小其缺點(diǎn),對(duì)待語言亦當(dāng)如是
          ? 大道相通,難者亦易,易者亦難  閱讀全文

          posted @ 2009-02-22 21:57 鄭暉 閱讀(3571) | 評(píng)論 (4)編輯 收藏

          2009年2月15日

          冒號(hào)課堂§6.2:平臺(tái)語言

               摘要: 平臺(tái)語言——先搭臺(tái)后唱戲(簡(jiǎn)談Java和C#
          ? Java的目的是讓一種語言在多種平臺(tái)上運(yùn)行,而C# 的目的是讓多種語言在一種平臺(tái)上運(yùn)行
          ? 兩個(gè)平臺(tái)語言(Java和C#),一個(gè)重在語言,讓語言向平臺(tái)擴(kuò)散;一個(gè)重在平臺(tái),讓平臺(tái)來凝聚語言
          ? C++提供了一馬平川的大路,也提供了陷阱密布的小道;Java則在大路上鋪設(shè)水泥,同時(shí)封鎖了捷徑小道;C#同樣填平了大路上的坑坑洼洼,但把一些小道上“此路不通”的牌子悄悄換成了“此路危險(xiǎn)”  閱讀全文

          posted @ 2009-02-15 22:41 鄭暉 閱讀(3267) | 評(píng)論 (3)編輯 收藏

          2009年2月8日

          冒號(hào)課堂§6.1:系統(tǒng)語言

               摘要: 系統(tǒng)語言——權(quán)力的雙刃劍(簡(jiǎn)談C、C++和D
          ? 通禪悟道者拈花不語,坐井觀天者蛙鳴鼓噪
          ? Java程序員大多被慣壞了,環(huán)保意識(shí)要淡薄得多
          ? (指針)用得好可以是削鐵如泥的神兵利器,用得不好則可能是自我毀滅的罪惡淵藪
          ? OOP又不是金子,含量越高越好。試圖把一切都裝進(jìn)OOP的箱子里的想法無異于削足適履
          ? 它們(系統(tǒng)語言)的理念是:優(yōu)化機(jī)器的時(shí)間而不是人的時(shí)間,優(yōu)化機(jī)器的記憶而不是人的記憶;假設(shè)編譯器是愚蠢的而程序員是聰明的,因此賦予程序員更多的權(quán)利、義務(wù)與責(zé)任
          ? C++是匹無轡無鞍的野馬,看似桀驁不馴,若能順性而御,必能足踏飛燕,行千里而不勞  閱讀全文

          posted @ 2009-02-08 22:03 鄭暉 閱讀(3665) | 評(píng)論 (1)編輯 收藏

          2009年1月19日

          冒號(hào)課堂§5.4:語言誤區(qū)

               摘要: 語言誤區(qū)——語言的宗教情結(jié)(關(guān)于編程語言的一些誤區(qū)
          ? 如果說編程范式是一種文化,那么編程語言更像是一種宗教——盡管它本不該是
          ? 語言只有兩種:一種怨聲載道,一種無人問津
          ? 對(duì)待一門語言的態(tài)度應(yīng)該是:與其抱怨?fàn)巿?zhí),不如揚(yáng)長避短
          ? 過分拔高一種語言與抹煞語言之間的差別是兩種極端,皆為秕言謬說
          ? 這些人若有幸拜關(guān)公為師,他們最艷羨的一定他的赤兔馬和青龍偃月刀,或許還會(huì)抹紅臉蓄長須什么的,就是不太愿學(xué)他的蓋世武功
          ? 理想的架構(gòu)師應(yīng)當(dāng)如文學(xué)大師,既有恢弘大氣的構(gòu)思,又有細(xì)膩深刻的筆法;應(yīng)當(dāng)如統(tǒng)軍大帥,既有運(yùn)籌帷幄的韜略,又有沖鋒陷陣的武功  閱讀全文

          posted @ 2009-01-19 08:46 鄭暉 閱讀(4613) | 評(píng)論 (4)編輯 收藏

          2009年1月14日

          冒號(hào)課堂§5.3:動(dòng)態(tài)語言

               摘要: 動(dòng)態(tài)語言——披著彩衣飛舞的腳本語言(動(dòng)態(tài)語言簡(jiǎn)談
          ? 程序是為終端用戶服務(wù)的,而腳本是為程序員服務(wù)的
          ? 動(dòng)態(tài)語言秉承的一個(gè)理念是:優(yōu)化人的時(shí)間而不是機(jī)器的時(shí)間
          ? 待靜態(tài)語言披盔戴甲、備馬抬槍之際,動(dòng)態(tài)語言已衣袂飄飄,長劍出手了
          ? 當(dāng)腳本語言披上動(dòng)態(tài)語言的彩衣,昔日不起眼的毛毛蟲便羽化成碟,開始飄舞在眾人追逐的目光之中  閱讀全文

          posted @ 2009-01-14 09:10 鄭暉 閱讀(3542) | 評(píng)論 (0)編輯 收藏

          2009年1月8日

          冒號(hào)課堂§5.2:數(shù)據(jù)類型

               摘要: 數(shù)據(jù)類型——規(guī)則與變通(關(guān)于數(shù)據(jù)類型的討論
          ? Duck類型的哲學(xué)是:名義不重要,重要的是能力
          ? 將一個(gè)會(huì)叫會(huì)游的家伙放進(jìn)池塘看起來不算壞主意,但如果一艘輪船趁機(jī)也轟隆隆地開了進(jìn)來,事情恐怕就不那么美妙了
          ? 靜態(tài)類型檢查類似“疑罪從有”的有罪推定制,動(dòng)態(tài)類型檢查類似“疑罪從無”的無罪推定制
          ? 盡可能守規(guī)則,必要時(shí)求變通
          ? 規(guī)則如褲帶,過于寬松和過于束縛都不好  閱讀全文

          posted @ 2009-01-08 00:02 鄭暉 閱讀(3153) | 評(píng)論 (0)編輯 收藏

          2008年12月30日

          冒號(hào)課堂§5.1:教學(xué)計(jì)劃

               摘要: 教學(xué)計(jì)劃——接下來的故事(討論下一步教學(xué)計(jì)劃
          ? 編程水平的提升之道是:在實(shí)戰(zhàn)中演練招法,在招法中領(lǐng)會(huì)心法,心法反過來提升招法,進(jìn)而提高實(shí)戰(zhàn)水平,如此循環(huán)往復(fù)呈螺旋式上升過程。正所謂熟能生巧,巧能生通
          ? 迭代學(xué)習(xí)法:即在具體知識(shí)與抽象理論之間進(jìn)行折返式學(xué)習(xí)
          ? 網(wǎng)頁的迷人之處就在于,能夠用精美的畫皮來包裹冗長低效的代碼
          ? 無論干哪一行,要想勝任愉快,離不開四樣?xùn)|西:才能、興趣、方法和努力  閱讀全文

          posted @ 2008-12-30 10:17 鄭暉 閱讀(2925) | 評(píng)論 (1)編輯 收藏

          2008年12月21日

          冒號(hào)課堂§4.4:情景范式

               摘要: 情景范式——餐館里的編程范式(編程范式在餐館中的應(yīng)用
          ? 廚師只需提供一種服務(wù):把紙上菜變成盤中菜,至于蒸、煮、炒、燉等具體做法純屬實(shí)現(xiàn)細(xì)節(jié)
          ? 可以這么理解(閉包):所謂包,指函數(shù)與其周圍的環(huán)境變量捆綁打包;所謂閉,指這些變量是封閉的,只能為該函數(shù)所專用
          ? 合理地使用閉包能使代碼更加簡(jiǎn)潔清晰,散發(fā)出函數(shù)式特有的優(yōu)雅氣質(zhì)
          ? 換盤子有兩種方式:一種是服務(wù)員主動(dòng)換,一種是客人要求換。前者是輪詢,后者是通知
          ? 如果把待加工的菜看作數(shù)據(jù),技法看作算法,將數(shù)據(jù)與算法分離,以算法為中心,那是什么范式?  閱讀全文

          posted @ 2008-12-21 23:18 鄭暉 閱讀(3105) | 評(píng)論 (1)編輯 收藏

          2008年12月15日

          冒號(hào)課堂§4.3:匯總范式

               摘要: 匯總范式——一張五味俱全的大烙餅(總結(jié)編程范式
          ? 設(shè)計(jì)模式好比組合套路,能在一些特定場(chǎng)合下克敵制勝;編程范式則好比武功門派,博大精深且自成體系
          ? 一種編程范式之所以能獨(dú)樹一幟,關(guān)鍵在于它突破了原有的編程方式的某些限制,帶來革命性的新思維和新方法,進(jìn)一步解放了程序員的勞動(dòng)力
          ? 因其長而容己,因其短而容他,此萬物之理也
          ? 語言為形,范式為神。若能以神導(dǎo)形、以形傳神,則看似平白無趣的程序也能寫出詩畫般的意境  閱讀全文

          posted @ 2008-12-15 16:28 鄭暉 閱讀(2948) | 評(píng)論 (0)編輯 收藏

          2008年12月7日

          冒號(hào)課堂§4.2:邏輯范式

               摘要: 邏輯范式——當(dāng)算法失去了控制(再談邏輯式編程
          ? 評(píng)價(jià)代碼的復(fù)雜度,長短只是一個(gè)因素。程序員不是打字員,花在思考上的時(shí)間和精力遠(yuǎn)遠(yuǎn)超過花在鍵盤上
          ? 算法=邏輯+控制。其中邏輯是算法的核心,控制主要用于改進(jìn)算法的效率  閱讀全文

          posted @ 2008-12-07 23:19 鄭暉 閱讀(2975) | 評(píng)論 (1)編輯 收藏

          2008年11月30日

          冒號(hào)課堂§4.1:函數(shù)范式

               摘要: 函數(shù)范式——精巧的數(shù)學(xué)思維(再談函數(shù)式編程
          ? 單靠記憶只能觸及知識(shí)之表,單靠練習(xí)只能深入知識(shí)之里,唯有培養(yǎng)方能滲透知識(shí)之根
          ? 學(xué)會(huì)適度地容忍無知
          ? 不僅需要強(qiáng)調(diào)鉆勁和深度的“釘子精神”,還需要強(qiáng)調(diào)磨功和廣度的“刨子精神”
          ? 編程語言的語法、語義等都是從編程范式的樹根衍生而出的枝葉,把握了這種脈絡(luò)和節(jié)奏,代碼才會(huì)如音樂舞蹈般韻律有致
          ? 每種范式擅長的問題領(lǐng)域不盡相同,只有博聞廣識(shí),方可揚(yáng)長避短,程序才會(huì)如行云流水般流暢自然
          ? 程序員更習(xí)慣機(jī)器風(fēng)格的過程式思維和現(xiàn)實(shí)風(fēng)格的OOP思維,不容易接納數(shù)學(xué)風(fēng)格的函數(shù)式思維  閱讀全文

          posted @ 2008-11-30 22:27 鄭暉 閱讀(3225) | 評(píng)論 (3)編輯 收藏

          2008年11月24日

          冒號(hào)課堂§3.4:事件驅(qū)動(dòng)

               摘要: 事件驅(qū)動(dòng)——有事我叫你,沒事別煩我(事件驅(qū)動(dòng)式編程簡(jiǎn)談
          ? 它們(同步回調(diào)和異步回調(diào))都使調(diào)用者不再依賴被調(diào)者,將二者從代碼上解耦,異步調(diào)用更將二者從時(shí)間上解耦
          ? 它們(控制反轉(zhuǎn)、依賴反轉(zhuǎn)和依賴注射)的主題是控制與依賴,目的是解耦,方法是反轉(zhuǎn),而實(shí)現(xiàn)這一切的關(guān)鍵是抽象接口
          ? “回調(diào)”強(qiáng)調(diào)的是行為方式——底層反調(diào)高層,而“抽象接口”強(qiáng)調(diào)的是實(shí)現(xiàn)方式——正是由于接口具有抽象性,底層才能在調(diào)用它時(shí)無需慮及高層的具體細(xì)節(jié),從而實(shí)現(xiàn)控制反轉(zhuǎn)
          ? 控制反轉(zhuǎn)導(dǎo)致了事件驅(qū)動(dòng)式編程的被動(dòng)性
          ? 事件驅(qū)動(dòng)式還具有異步性的特征,這是由事件的不可預(yù)測(cè)性與隨機(jī)性決定的
          ? 獨(dú)立是異步的前提,耗時(shí)是異步的理由
          ? 出版/訂閱模式正是觀察者模式的別名,一方面可看作簡(jiǎn)化或退化的事件驅(qū)動(dòng)式,另一方面可看作事件驅(qū)動(dòng)式的核心思想  閱讀全文

          posted @ 2008-11-24 08:37 鄭暉 閱讀(4076) | 評(píng)論 (5)編輯 收藏

          2008年11月17日

          冒號(hào)課堂§3.3:切面范式

               摘要: 切面范式——多角度看問題(AOP簡(jiǎn)談
          ? 從宏觀角度看,太陽底下沒有新鮮事——AOP無非是SoC原理和DRY原則的一種應(yīng)用
          ? 從微觀角度看,太陽每天都是新的——AOP雖自O(shè)OP的土壤中長出,卻脫離藩籬自成一體
          ? 抽象是前提,分解是方式,模塊化是結(jié)果
          ? 在常人眼中復(fù)雜的牛體,庖丁經(jīng)過抽象,已目無全牛,及至提刀分解,自是游刃有余。待牛如土委地,模塊化既成
          ? 兩條(抽象與分解的原則):?jiǎn)我换换C總€(gè)模塊職責(zé)明確專一,模塊之間相互獨(dú)立,即高聚合低耦合
          ? 對(duì)程序員來說,英語也是一門計(jì)算機(jī)語言,而且是必修的語言
          ? OOP只能沿著繼承樹的縱向方向重用,而AOP則彌補(bǔ)了OOP的不足,可以在橫向方向重用
          ? 如果一個(gè)程序是一個(gè)管道系統(tǒng),AOP就是在管道上鉆一些孔,在每個(gè)孔中注入新的代碼流  閱讀全文

          posted @ 2008-11-17 08:35 鄭暉 閱讀(3161) | 評(píng)論 (0)編輯 收藏

          2008年11月10日

          冒號(hào)課堂§3.2:超級(jí)范式

               摘要: 超級(jí)范式——提升語言的級(jí)別(元編程簡(jiǎn)談
          ? 元編程作為超級(jí)范式的一個(gè)體現(xiàn)是,它能提升語言的級(jí)別
          ? 如果說OOP的關(guān)鍵在于構(gòu)造對(duì)象的概念,那么LOP的關(guān)鍵在于構(gòu)造語言的語法
          ? 離開IDE就無法編寫、編譯或調(diào)試的程序員,如同卸盔下馬后便失去戰(zhàn)斗力的武士,是殘缺和孱弱的
          ? 既然有重復(fù)的代碼,不能從語法上提煉,不妨退一步從文字上提煉
          ? 元程序?qū)⒊绦蜃鳛閿?shù)據(jù)來對(duì)待,能自我發(fā)現(xiàn)、自我賦權(quán)和自我升級(jí),有著其他程序所不具備的自覺性、自適應(yīng)性和智能性,可以說是一種最高級(jí)的程序  閱讀全文

          posted @ 2008-11-10 23:40 鄭暉 閱讀(2330) | 評(píng)論 (0)編輯 收藏

          2008年11月5日

          冒號(hào)課堂§3.1:泛型范式

               摘要: 泛型范式——抽象你的算法(泛型式編程簡(jiǎn)談)
          ? 算法串聯(lián)數(shù)據(jù),如脊貫肉;數(shù)據(jù)實(shí)化算法,如肉附脊
          ? 泛型編程是算法導(dǎo)向的,即以算法為起點(diǎn)和中心點(diǎn),逐漸將其所涉及的概念內(nèi)涵模糊化、外延擴(kuò)大化,將其所涉及的運(yùn)算抽象化、一般化,從而擴(kuò)展算法的適用范圍
          ? 思想是雞,結(jié)論是蛋  閱讀全文

          posted @ 2008-11-05 23:35 鄭暉 閱讀(2860) | 評(píng)論 (1)編輯 收藏

          僅列出標(biāo)題  下一頁

          導(dǎo)航

          統(tǒng)計(jì)

          公告

          博客搬家:http://blog.zhenghui.org
          《冒號(hào)課堂》一書于2009年10月上市,詳情請(qǐng)見
          冒號(hào)課堂

          留言簿(17)

          隨筆分類(61)

          隨筆檔案(61)

          文章分類(1)

          文章檔案(1)

          最新隨筆

          積分與排名

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 商丘市| 左贡县| 五家渠市| 文化| 吉木萨尔县| 安新县| 高陵县| 邢台县| 武功县| 龙州县| 罗江县| 建昌县| 武宣县| 青海省| 徐水县| 海门市| 始兴县| 江安县| 华阴市| 双桥区| 岚皋县| 茌平县| 延津县| 昌邑市| 阿克苏市| 宜宾县| 邹城市| 商河县| 满城县| 云阳县| 吉安市| 尤溪县| 北票市| 玉林市| 岑溪市| 永寿县| 治多县| 双辽市| 屏南县| 北流市| 水城县|