11 2008 檔案

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

          posted @ 2008-11-30 22:27 鄭暉 閱讀(3233) | 評論 (3)  編輯

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

          posted @ 2008-11-24 08:37 鄭暉 閱讀(4096) | 評論 (5)  編輯

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

          posted @ 2008-11-17 08:35 鄭暉 閱讀(3166) | 評論 (0)  編輯

          冒號課堂§3.2:超級范式
               摘要: 超級范式——提升語言的級別(元編程簡談
          ? 元編程作為超級范式的一個體現是,它能提升語言的級別
          ? 如果說OOP的關鍵在于構造對象的概念,那么LOP的關鍵在于構造語言的語法
          ? 離開IDE就無法編寫、編譯或調試的程序員,如同卸盔下馬后便失去戰斗力的武士,是殘缺和孱弱的
          ? 既然有重復的代碼,不能從語法上提煉,不妨退一步從文字上提煉
          ? 元程序將程序作為數據來對待,能自我發現、自我賦權和自我升級,有著其他程序所不具備的自覺性、自適應性和智能性,可以說是一種最高級的程序  閱讀全文

          posted @ 2008-11-10 23:40 鄭暉 閱讀(2337) | 評論 (0)  編輯

          冒號課堂§3.1:泛型范式
               摘要: 泛型范式——抽象你的算法(泛型式編程簡談)
          ? 算法串聯數據,如脊貫肉;數據實化算法,如肉附脊
          ? 泛型編程是算法導向的,即以算法為起點和中心點,逐漸將其所涉及的概念內涵模糊化、外延擴大化,將其所涉及的運算抽象化、一般化,從而擴展算法的適用范圍
          ? 思想是雞,結論是蛋  閱讀全文

          posted @ 2008-11-05 23:35 鄭暉 閱讀(2867) | 評論 (1)  編輯

          冒號課堂§2.4:并發范式
               摘要: 并發范式——合作與競爭(并發式編程簡談
          ? 有誰愿意駕駛一輛啟動后不能剎車、不能倒車、不能變速、油盡方停的汽車呢?
          ? 并發式編程以進程為導向、以任務為中心將系統模塊化
          ? 并發式編程以資源共享與競爭為主線  閱讀全文

          posted @ 2008-11-04 00:33 鄭暉 閱讀(1251) | 評論 (2)  編輯

          冒號課堂§2.3:對象范式
               摘要: 對象范式——民主制社會的編程法則(OOP簡談
          ? 如果把整個流程看作一顆倒長的大樹,過程式編程自樹根向下,逐漸分支,直到每片樹葉,類似數學證明中的分析法,即執果索因的逆推法;OOP則從每片樹葉開始,逐漸合并,直到樹根,類似數學證明中的綜合法,即執因索果的正推法
          ? 與其說OOP更具重用性,不如說更具易用性
          ? 函數是被動的實體,對象是主動的實體
          ? 過程式程序的世界是君主制的;OO程序的世界是民主制的  閱讀全文

          posted @ 2008-11-04 00:20 鄭暉 閱讀(1436) | 評論 (3)  編輯

          冒號課堂§2.2:聲明范式
               摘要: 聲明范式——目標決定行動(聲明式編程簡談
          ? 命令式編程是行動導向的,因而算法是顯性而目標是隱性的;聲明式編程是目標驅動的,因而目標是顯性而算法是隱性的
          ? 聲明式編程重目標、輕過程,專注問題的分析和表達而不致陷入算法的迷宮,其代碼也更加簡潔清晰、易于修改和維護
          ? 歸根結底,編程是尋求一種機制,將指定的輸入轉化為指定的輸出  閱讀全文

          posted @ 2008-11-03 23:27 鄭暉 閱讀(2603) | 評論 (0)  編輯

          冒號課堂§2.1:命令范式
               摘要: 命令范式——一切行動聽指揮(命令式編程簡談
          ? (命令式編程)其世界觀是:程序是由若干行動指令組成的有序列表;其方法論是:用變量來儲存數據,用語句來執行指令
          ? (結構化編程)在微觀上,主張循規守矩;在宏觀上,主張分而治之
          ? 一個按結構化編程思想設計的流程圖,每個模塊大小適中、模塊之間關系簡明、模塊內部線路清晰,單從視覺上就會給人一種美感  閱讀全文

          posted @ 2008-11-03 23:16 鄭暉 閱讀(2911) | 評論 (2)  編輯

          導航

          統計

          公告

          博客搬家:http://blog.zhenghui.org
          《冒號課堂》一書于2009年10月上市,詳情請見
          冒號課堂

          留言簿(17)

          隨筆分類(61)

          隨筆檔案(61)

          文章分類(1)

          文章檔案(1)

          最新隨筆

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 海林市| 双流县| 渭南市| 林口县| 镇安县| 柳江县| 永宁县| 贺州市| 彰化市| 东山县| 石渠县| 四会市| 蒲江县| 马山县| 云霄县| 宁国市| 黄山市| 辽宁省| 高邑县| 会泽县| 津市市| 五原县| 新营市| 尚义县| 浦北县| 新津县| 锡林郭勒盟| 阜南县| 木里| 铅山县| 通江县| 平舆县| 延边| 方城县| 本溪| 山东| 乌兰察布市| 丰城市| 醴陵市| 东乌| 岚皋县|