原创 冒號課堂節選:併發範式

併發範式 真正的併發式編程,絕不只是調用線程 API 或使用 synchronized 、 lock 之類的關鍵字那麼簡單。從宏觀的架構設計,到微觀的數據結構、流程控制乃至算法,相比通常的串行式編程都可能發生變化。隨着硬件性能和用戶需

原创 設計模式學習筆記(四):封裝變化

設計模式與封裝變化 設計模式可以確保系統能以特定方式變化 ( 這很大程度是一種預測 ) ,從而幫助設計者避免重新設計系統。每一個設計模式允許系統結構的某個部分的變化獨立於其他部分,這樣產生的系統對於某一種特殊變化將更健壯。 下面闡述

原创 冒號課堂節選:泛型範式

泛型範式 Generic Programming ,簡稱 GP ,其基本思想是:將算法與其作用的數據結構分離,並將後者儘可能泛化,最大限度地實現算法重用。 這種泛化是基於模板的參數多態( parametric polymorphis

原创 設計模式學習筆記(三):模式的分類

模式的分類 模式依據其目的可分爲創建型( Creational )、結構型 (Structural) 、或行爲型 (Behavioral) 三種。創建型模式與對象的創建 有關;結構型模式處理類或對象的組合 ;行爲型模式描述類或對象

原创 冒號課堂節選:編程範式

編程範式   掌握一門語言的語法、工具和技巧固然重要,但那隻相當於學會一門兵器的招法,更重要的當然是心法。招法重形,心法重意。得形而忘意,無異捨本逐末;得意而忘形,方能遊刃有餘。下面要談的就是一種心法:編程範式。 範式譯自英文的

原创 zz C++的std::string的“讀時也拷貝”技術

嘿嘿,你沒有看錯,我也沒有寫錯,是讀時也拷貝技術。什麼?我的錯,你之前聽說寫過時才拷貝,嗯,不錯的確有這門技術,英文是Copy On Write ,簡寫就是COW,非常’牛’!那麼我們就來看看這個’牛’技術的效果吧。 我們先編寫一段程序

原创 zz 詳解Sizeof

前向聲明: sizeof ,一個其貌不揚的傢伙,引無數菜鳥竟折腰,小蝦我當初也沒少犯迷糊,秉着“辛苦我一個,幸福千萬人”的偉大思想,我決定將其儘可能詳細的總結一下。 但當我總結的時候才發現,這個問題既可以簡單,又可以複雜,所以本文有的

原创 設計模式學習筆記(五):創建型模式

創建型模式抽象了實例化過程 。它們幫助一個系統獨立於如何創建、組合、管理和表示它的那些對象 。一個類創建型模式使用繼承改變被實例化的類 ,而一個對象創建型模式將實例化委託給另一個對象。 隨着系統演化得越來越依賴於對象複合而不是類繼

原创 何爲框架?

什麼是框架( framework )?它與一般的庫( library )和工具包( toolkit )有何不同? 框架就是一組協同工作的類,它們爲特定類型的軟件構築了一個可重用的設計 。與庫和工具包不同之處在於前者側重設計重用 而

原创 [C++再學習系列] 深入extern關鍵字

變量的聲明與定義:   A definition of a variable allocates storage for the variable and may also specify an initial value for

原创 冒號課堂節選:對象範式

對象範式 OOP 是一種計算機編程模式,它以對象作爲問題空間的基本元素,利用對象和對象間的相互作用來設計程序。所謂對象,是實際問題中實體的抽象,具有一定的屬性和功能。 OOP 的三個基本特性是:封裝性、繼承性和多態性。 OOP 雖然

原创 TCP狀態圖和常見問題

TCP 共有9 個網路狀態,其中涉及到關閉的狀態有5 個。        在我們編寫網絡相關程序的時候,這5 個狀態經常出現。因爲這5 個狀態相互關聯,相互糾纏,而且狀態變化觸發都是由應用觸發,但是又涉及操作系統和網絡,所以正

原创 設計模式學習筆記(八):重構與模式,參考書籍

  備註 : 1.         模式常常組合使用,共同解決問題。 2.         模式是特定場景下優雅的解決方案,因此場景很關鍵。在軟件設計中,特定的場景可能是顯而易見的,可能是隱而不現的,有時甚至是設計者有意

原创 ICE常見編譯和運行(異常)錯誤

在編譯和 Ice 應用相關的文件中,經常因爲 ice 相關的文件包含關係而導致編譯無法通過,此時的錯誤一般提示和 handle.h 相關。然而想要解決這樣的錯誤,一般只需要把在無法編譯成 .o 文件的 .cpp 文件中和 ice 文件相關

原创 String和內存操作

C99 有很多和 string 相關的函數,如 strcat , strchr , strcmp , strcpy , strlen , strncat , strncmp , strncpy 等。然而使用 C++ 編程時,所有和 str