嗡嗡嗡~
2016-11-01
C++ STL container interator

trace 聽說比較好讀的 LLVM libcxx。寫法是 template 所以 implementation 都在 header file 裡,這裡以 list 為例。

2016-10-25
Composite Pattern

讓使用者將物件合成為樹狀結構,呈現「部分/整體」的階層關係。如此可讓使用的程式以相同的方式處理單獨或合成的物件。這句話沒解釋的話根本看不懂吧……

2016-10-23
Qt d-pointer & q-pointer

每次看 Qt source code 都不知道 d->q-> 到底在幹嘛,翻到 D-Pointer 這篇解釋就來看一下。但是我原本不是要追究這個的ㄚㄚㄚ……

2016-10-23
科技物有政治性嗎?

《科技渴望社會》第四篇。這篇在說「技術物」如何對人及其生活方式產生影響,「技術物」指的是各種各樣具體的技術或系統,例如核能電廠、鐵路、各種通訊方式、公路網、飛機等等,將「技術」這個較為廣義的詞定義得比較狹義但具體。整篇常常提到政治性、權威、權力、社會組織,我理解為在試圖說明技術物對人的生活以及社會產生的影響。

2016-10-18
Iterator Pattern

讓使用者能取得一個 collection 內的每個 element,而不需要暴露此 collection 的 implememtation。

2016-09-21
美國的電氣化過程:系統建構者

《科技渴望社會》的第一篇。這本書集結了科技與社會有關的文章與演講稿等等的翻譯,是 STS (Science, Technology and Society) 領域的讀本。

2016-09-16
Google 模式

不愧是技術出身的人創辦的公司,完全以技術為重。喜歡這本書所呈現的務實觀,以真正做出好用東西為最高原則的務實。

2016-06-12
Load process

要執行一隻程式須將它的 instruction 跟 data load 到 memory。現代 OS 結合 virtual memory 以及 memory management 的 paging 機制來 load process。

2016-06-11
scrum觀察日記

最近工作在跑scrum,來篇觀察日記(欸)。一個端午連假吃飽太閒的概念

2016-04-06
Static Link

所謂 Static Link(靜態連結)──在 linking 階段針對未知 address 的 symbol 填入 address,把一堆 object file 黏在一起變成可執行檔。

2016-04-04
Template Method Pattern

這個 pattern 是用來建立一個 algorithm 的 template。在一個 method 中定義 algorithm 的骨架,其中的小步驟定義在 derived class。可以在不改變 algorithm 架構的狀況下改變其中某些步驟的做法。

2016-04-03
Facade Pattern

提供較簡單、統一的 interface 使用 sub system 中一堆的 interface。Facade 定義了較抽象的 interface,讓 client 更容易使用 sub system。

2016-04-02
Adapter Pattern

將一個 class 的 interface 轉換成另一個 interface 供其他人使用,讓原本不相容的 interface 可以相容。

2016-03-27
select()

由 kernel 注意某些 fd 是否 active(readable、writable 及有 error),有則 return 讓 application process 對 active 的 fd 做相應的處理。用 select() 可避免 application process 去 polling 看各個 socket 是否 active、浪費 CPU 資源。如果沒有 fd active、沒設 timeout、沒有 signal 打斷,select() 是 blocking。

2016-03-06
C++ toolchain on windows and linux

Toolchain