彙整

Archive for the ‘科技’ Category

Things Alike Are Not Things the Same

20/09/2010 發表留言

昨天在 PTT 遇到了一個問題,有人想知道為什麼下面的程式碼:

NSString *aString = @"a";
NSString *bString = @"b";
bString = aString;
NSLog(@"bString = %@", bString);
aString = @"c";
NSLog(@"aString = %@", aString);
NSLog(@"bString = %@", bString);

出來的結果是

bString = a
aString = c
bString = a

主要的問題是,當把 bString 的指標指向 aString 的物件後,當修改 aString 指向物件的值時,不是就等於修改 bString 指向物件的值嗎?為什麼感覺 bString = aString 這行只有把 aString 的值傳遞給 bString,而不是改變指向的物件?

深入閱讀…

分類:科技 標籤:,

請不要用 Dev-C++

19/09/2010 2 留言

請大家幫忙頂這篇,Dev-C++ 真的該被時代淘汰了… orz


Dev-C++ 是 Bloodshed Software 開發的 C/C++ IDE,其中包含完整的開發介面、專案模板、以及開源的編譯器(MinGW GCC),是對使用 Windows 的程式初學者而言,相當方便又容易上手的開發環境。因為這個原因,很多教學文都會教使用者用這套軟體,取代要錢的微軟官方開發環境 Visual C++。雖然後來微軟也有了免費的 Visual Studio Express,但因為 Dev-C++ 有中文版,還是被很多人繼續推薦

所以這似乎是一套很優秀的免費軟體,那麼為什麼這篇文章閒著沒事要說服你離開這套軟體呢?答案是,對初學者而言這個軟體當然沒什麼問題,但其實它有一些潛藏的問題,如果你不是學學就算了,想繼續走程式設計,以後勢必會遇到一些麻煩。與其到時候再想一堆辦法解決,甚至中途轉換到其他 IDE 上,不如從一開始就避開這套軟體,省得繞彎路。

深入閱讀…

分類:科技 標籤:,

Xcode + Qt

13/09/2010 發表留言
分類:科技 標籤:, , , ,

Why Don't We Enter But Return

14/03/2010 發表留言

很無聊當有趣的標題,不過管它的。XD

這篇一開始也是在回答別人問題,想到了就加點料備份上來這樣。

這個話題最近可能會越來越多人有,因為 iPhone 的關係。有用過 iPhone 的人應該會知道,iPhone 的鍵盤上沒有 Enter 鍵,只有一個 Return,但功能是一樣的。

如果你問的話,大部份人會給你的答案應該就是啊那個都一樣啦,只是蘋果搞剛所以換寫法。事實上不是如此,這個 Return 有它的存在原因。顯而易見地,這個寫法當然來自 Macintosh,在 Mac 上「本來應該是 Enter 鍵」的位置上面寫的了兩行,一行是 Enter,一行是 Return。

深入閱讀…

分類:科技 標籤:

在 Mac OS X 下使用 7-Zip 壓縮

24/02/2010 4 留言

Why 7-Zip?

引述重灌狂人文章

當我們要壓縮、解壓縮時都用什麼軟體?大家還在花錢買WinZIP軟體嗎?以下介紹這套全中文介面的7-Zip壓縮軟體,不但操作簡單、速度快,而且還支援常見的ZIP、RAR壓縮格式重點是7-Zip是免費軟體,不用錢、不用破解。如果公司MIS還在幫你灌沒註冊的WinZIP給你用,趕快把他換掉改裝7-Zip吧!

而對於我們 Mac 使用者而言,好處還多了一些。首先,即使你有受權,WinRAR 是 Windows 軟體,雖然可以用 DarwineCrossOver Mac 來跑,不過總是不太方便。雖然系統內建就有壓縮工具,但不但會包進一些莫名其妙的東西,還使用老舊的 ZIP 格式,不支援萬國碼,不支援分割壓縮,也不支援文件加密。Mac 上也是有原生的 RAR 壓縮軟體,但使用的 RAR 程序有版權疑慮(RAR 官方有 Mac OS X 命令列程式,但正式版仍須付費),加上使用者介面不太好,所以我一直不喜歡用。

因為以上種種原因,我已經完全轉向 7z 壓縮格式,並建議所有 Mac 使用者這麼做。我推薦的程式是 7zX。這是一個拖拉放程式,直接把要壓縮的檔案或檔案夾拖到圖示上,填完跳出來的選項,就會壓好。

可是這樣不夠好。內建的壓縮工具只要在檔案上開輔助選單裡面就有,比起拖拉放還是快一點。幸好 Finder 本身就內建可修改輔助選單的工具,接下來要講的就是,如何把這個功能放到選單裡。

深入閱讀…

分類:科技 標籤:,

“Go one level up" in Finder

31/05/2009 1 則迴響

昨天為了藍牙耳機寫了一個切換輸出設備的 AppleScript,驅動系統偏好設定的面板。

因為系統偏好設定面板沒有 AppleScript 指令可以用(這件事本身有點詭異,不過事實如此),所以只好用 System Events 來寫。程式本身是沒什麼問題,不過寫完之後我突然想起前陣子看到的這篇,所以就回去看了一下。

程式本身當然沒問題,不過有幾件事情要澄清一下。System Events 是 AppleScript 的基礎,所以其實這絕對不是 10.5 的新東西,而是從 AppleScript 剛出現時就一直存在。程式是 Leopard only 沒錯,但並非 System Events 本身,而是因為 Leopard 修改了其中的機制。

省略進一步的原理(反正不重要),其實這個作法可以很容易地改寫成 10.4 以下通用版本,只要在最前面加上一行

tell application "Finder" to activate

就行了。在 10.4 以前這是所有 System Events 寫法的必要措施。

深入閱讀…

分類:科技 標籤:,

調整 Mac OS X 程式語系

01/05/2009 發表留言
問:

請問有人有某某軟體的英文版嗎?我去官網下載回來開都是簡體中文,也找不到可以調的地方,怎麼辦啊?



答:

絕大部分的 Mac OS X 應用程式都內建多國語系,使用哪種語言取決於你的系統偏好設定「國際設定」。

深入閱讀…

分類:科技 標籤:

Cocoa Programming for Mac OS X

12/02/2009 發表留言

看到信箱裡出現了個包裹。

喔喔…看來是寄到了。

深入閱讀…

分類:科技 標籤:, ,