2013年2月28日 星期四

免費跨平台的好用編輯器/ ide

這篇文章是介紹認為不錯的跨平台免費編輯器/ide。因此,要錢的或是不能跨平台的不在考慮範圍內。這篇介紹的軟體都支援多種程式語言,不限於特定程式語言。

以下是我認為編輯器/ide 應該有的功能:

  1.  code/word complement: 這個功能很重要,可以避免打錯字
  2. 可以改字體顏色、與大小
  3. 能夠快速執行或編譯
  4. code navigation: 這個功能主要是在看 code 時比較方便

python 的 functools.partial 函數

很久以前,就看過這個  functools.partial 了。 只是一直不太明瞭它的實際作用。直到最近我在讀 c++11 時,看到 std::bind 時,我突然領悟 functools.partial 和 std::bind 做的事情一樣。

2013年2月12日 星期二

2013年2月8日 星期五

淺談 go 語言的defer關鍵字

在寫程式,我們時常犯一種錯誤,就是要了資源,忘了釋放。舉例來說,你 fopen 了檔案,卻沒有 fclose 。你 malloc 一塊記憶體,卻忘了 free 它。 你 acruire 一個 locker,卻忘了 release等等。記憶體管理也許可以藉由GC技術,而減輕許多負擔。但是另外兩種呢?

要怎麼減少犯錯的機會呢?盡量減少fopen和fclose之間的距離,越近越好。最好是fopen完就呼叫fclose,這樣犯錯的可能性就降低很多了。

2013年2月4日 星期一

淺談python繼承

最近無聊翻了一下書櫃,找到一本買了卻沒讀完的書,exceptional c++。就稍微看了一下,看看裡面有沒有什麼文章對於寫python code有助益的

那本書條款24(第104頁),是在討論有關使用/濫用繼承。

2013年2月3日 星期日

arduino與人體紅外線感測器 (PIR Motion Sensor)

這篇文章使用的是焦電型人體紅外線感測器 ( PIR Motion Sensor )。焦電型人體紅外線感測器有三個接腳,分別是汲極(D)、源極(S)、和閘極(G)。汲極接arduino的5v腳位,源極接arduino的類比輸入腳位,閘極接arduino的gnd腳位。最簡單的電路就完成了。

2013年2月2日 星期六

如何透過serial和 launchpad溝通(使用energia)

如果你的板子是msp430g2553的launchpad,你會發現energia的communication範例無法使用。原因很簡單,因為msp430g2553的板子要改跳線才能通訊,r1.4和r1.5的方法又不一樣。r1.5的改法比較簡單,只要把rxd和txd從直的改成橫的(當你看板子時,VCC到P2.2時是直的情形)。