<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <title>Ode to Forest</title>
    <link rel="alternate" type="text/html" href="http://www.ode2forest.com/" />
    <link rel="self" type="application/atom+xml" href="http://www.ode2forest.com/atom.xml" />
    <id>tag:www.ode2forest.com,2009-06-05://2</id>
    <updated>2009-12-20T06:38:07Z</updated>
    <subtitle>在森林裏歌頌森林的男人...</subtitle>
    <generator uri="http://www.sixapart.com/movabletype/">Movable Type 4.23-en</generator>

<entry>
    <title>新生活</title>
    <link rel="alternate" type="text/html" href="http://www.ode2forest.com/post/2009/12/new-life.html" />
    <id>tag:www.ode2forest.com,2009://2.49</id>

    <published>2009-12-20T06:25:47Z</published>
    <updated>2009-12-20T06:38:07Z</updated>

    <summary><![CDATA[&nbsp; 近來因為換了工作環境， 工作太過忙碌， 加上缺乏靈感， 因此有好一段時間沒來寫文章.&nbsp; 10/12 那天正式離職了... 說實在的，心裡實在不捨， 一路上開車的時候都陷入沉默以及惆悵中... 畢竟工作了將近9年的公司... 其中累積了許多的悲歡喜樂.... 為了獻給當時的心情, 回到家之後立刻去理髮了.. 將頭髮給剪短， 希望能藉此換個心情...&nbsp; 14/12 那一天到新的辦公室上班... 但是也真夠嗆的... 辦公用具的公司竟然要在次日才運送我們所訂購的椅子等.... 差不多整個早上都我都坐在桌子上辦公.... 新辦公室太遠了, 來回花了我不少的時間以及汽油... 我開始想念舊公司， 特別是開車去上班時都會想念從前去舊公司上班的路程， 畢竟是走完全不同的路去上班....&nbsp;&nbsp; 之後的兩天有夠倒楣的... 15/12那天不小心摔壞夥伴剛買的辦公室用的熱水機, 結果導致我要買一個來賠... 晚上收到DELL 寄給我的電腦, 隔天想要啟動電腦, 卻不動... 以為是顯示問題, 就將電腦抱到附近的電腦公司測試, 一樣的結果....&nbsp; 之後就撥電話給DELL 作report, 花了30多分鐘, 問題沒有獲得解決.. 之後我拆進去看,...]]></summary>
    <author>
        <name>Gordon Lim</name>
        
    </author>
    
        <category term="心情札記" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.ode2forest.com/">
        <![CDATA[&nbsp; 近來因為換了工作環境， 工作太過忙碌， 加上缺乏靈感， 因此有好一段時間沒來寫文章.<br /><br />&nbsp; 10/12 那天正式離職了... 說實在的，心裡實在不捨， 一路上開車的時候都陷入沉默以及惆悵中... 畢竟工作了將近9年的公司... 其中累積了許多的悲歡喜樂.... 為了獻給當時的心情, 回到家之後立刻去理髮了.. 將頭髮給剪短， 希望能藉此換個心情...<br /><br />&nbsp; 14/12 那一天到新的辦公室上班... 但是也真夠嗆的... 辦公用具的公司竟然要在次日才運送我們所訂購的椅子等.... 差不多整個早上都我都坐在桌子上辦公.... 新辦公室太遠了, 來回花了我不少的時間以及汽油... 我開始想念舊公司， 特別是開車去上班時都會想念從前去舊公司上班的路程， 畢竟是走完全不同的路去上班....<br /><br />&nbsp;&nbsp; 之後的兩天有夠倒楣的... 15/12那天不小心摔壞夥伴剛買的辦公室用的熱水機, 結果導致我要買一個來賠... 晚上收到DELL 寄給我的電腦, 隔天想要啟動電腦, 卻不動... 以為是顯示問題, 就將電腦抱到附近的電腦公司測試, 一樣的結果....&nbsp; 之後就撥電話給DELL 作report, 花了30多分鐘, 問題沒有獲得解決.. 之後我拆進去看, 將記憶體拔掉再插, 竟然可以啟動電腦了... 以為沒事了, 就撥電話給DELL 銷案, 之後安裝必須的軟體, 然後開始寫程式.. 結果呢... 忽然間, 整個Windows 當機, 完全不動, 我只好按了power button 強迫關機... 再打開的時候, 又跟早上的問題一樣, 完全沒反應... 然後將記憶體拔掉又插... 雖然可以啟動了, 可是整個Windows 死掉了... 我的程式碼也..<br /><br />&nbsp;&nbsp; 之後又花了30多分鐘(用手機, 因為電訊公司還沒來公司安裝電話)作問題報告, 確定下個星期一會有技術人員來維修與檢查.. 唉... 真衰.<br /><br />&nbsp;&nbsp; 剛開始的幾天都在忙著補充辦公室用具， 目前也只有我一個人在辦公室上班， 夥伴說希望能在華人新年前聘請到4,5 位程式員幫助我， 畢竟目前我們的客戶可是跟州政府有關， 不能失去這個機會， 因此我都在忙著開發系統， 目前正在積極增進新功能並且測試當中.<br /><br />&nbsp;&nbsp; 希望一切會順利了.<br />]]>
        
    </content>
</entry>

<entry>
    <title>喜歡搞怪創新的Google又出招了, Go 語言出擊!</title>
    <link rel="alternate" type="text/html" href="http://www.ode2forest.com/post/2009/11/google-go.html" />
    <id>tag:www.ode2forest.com,2009://2.48</id>

    <published>2009-11-11T11:07:15Z</published>
    <updated>2009-11-11T11:33:16Z</updated>

    <summary><![CDATA[Go的吉祥物 Gordon田鼠&nbsp; 繼Chrome OS 以後， Google 似乎欲求不滿， 總是不鳴則己， 一鳴驚人， 再次拋出個震撼的新聞， Google 自己研發的新語言 -- GO, 以加速程式開發。 Go結合了像是Python動態語言的開發速度，以及擁有C及C++語言等編譯語言的效能及安全性，同時也是一個開放源碼計畫。...]]></summary>
    <author>
        <name>Gordon Lim</name>
        
    </author>
    
        <category term="程式語言" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.ode2forest.com/">
        <![CDATA[<div align="center"><img src="http://i.i.com.com/cnwk.1d/i/bto/20091109/go_gopher_color_logo_250x249.png" /><br /><b>Go的吉祥物 Gordon田鼠</b><br /><br /></div><p>&nbsp; 繼Chrome OS 以後， Google 似乎欲求不滿， 總是不鳴則己， 一鳴驚人， 再次拋出個震撼的新聞， Google 自己研發的新語言 -- GO, 以加速程式開發。 Go結合了像是Python動態語言的開發速度，以及擁有C及C++語言等編譯語言的效能及安全性，同時也是一個開放源碼計畫。 </p>]]>
        <![CDATA[<p>&nbsp; 根據Google 所發表的文告所說， Go 是一個並行的，具垃圾蒐集功能的語言，並可快速編譯。它在單一電腦上可於幾秒內編譯一個大型的Go程式；而且提供一個軟體架構模型以讓相依分析更容易，並避免有過多的檔案及程式庫；Go的型態系統沒有階層，因此不用消耗時間定義各種型態的關係；Go可支援垃圾蒐集、同時執行及通訊；而且Go的主要設計之一就是用來撰寫多核機器上的系統軟體。</p><p>&nbsp; 根據官方的範例， Go 似乎並不難.&nbsp; 例如:</p><br /><table style="padding: 2px;" bgcolor="#f1f1f1" border="0" cellpadding="3" cellspacing="3" width="100%">
  <tbody><tr>
    <td>package main<br />import "fmt"<br />func main() {<br />&nbsp; fmt.Printf("Hello, 世界\n")<br />}</td></tr></tbody></table>
<br /><br /><p>&nbsp; 遺憾的是， 目前Go只支援Linux 以及Mac.</p><p>&nbsp; 因此筆者不禁在想， Go 是否也會在世界掀起一陣浪潮， 成為主流?&nbsp; 還是平庸無奇渡過一生?&nbsp; 當然我是相信Google裡的怪物， 更何況Go的吉祥物竟然是筆者的洋名， 那麼筆者自然沒有拒絕Go的理由了。</p><p>&nbsp; 看來等哪一天， 就用Go寫出魔法程序代碼(請參考筆者的<a href="http://www.ode2forest.com/post/cat-15/" target="_blank">簡單易懂的現代魔法 - 生成魔法</a>).</p>]]>
    </content>
</entry>

<entry>
    <title>在Solaris設定永久的環境變數</title>
    <link rel="alternate" type="text/html" href="http://www.ode2forest.com/post/2009/10/solaris-set-environment-path.html" />
    <id>tag:www.ode2forest.com,2009://2.47</id>

    <published>2009-10-18T07:34:41Z</published>
    <updated>2009-10-18T07:45:05Z</updated>

    <summary>每當要使用wget 之類的指令時, 系統總是找不到, 其原因主要是因為並沒有設定永久性的變數.一般上設置的變數PATH=$PATH:/opt/csw/bin:/usr/sfw/bin:/usr/sbin:/usr/bin:/usr/openwin/bin:/usr/dt/bin:/usr/ccs/binexport PATHset以上三個指令只能維持暫時性, 下次登入時又要重新輸入了.因此, 為了一勞永逸, 1. vi /etc/profile2. 在export LOGNAME PATH下面, 增加 PATH=$PATH:/usr/local/bin:/usr/local/sbin:/usr/ccs/bin:/usr/sfw/bin:/opt/sfw/bin:/apps/php/bin:.3. 增加 LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib:/usr/sfw/lib4. 修改export LOGNAME PATH, 變成 export LOGNAME PATH LD_LIBRARY_PATH或者1. vi /etc/profile2. 在export LOGNAME PATH下面, 增加 PATH=$PATH:/opt/csw/bin:/usr/sfw/bin:/usr/sbin:/usr/bin:/usr/openwin/bin:/usr/dt/bin:/usr/ccs/bin...</summary>
    <author>
        <name>Gordon Lim</name>
        
    </author>
    
        <category term="Solaris 10" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.ode2forest.com/">
        <![CDATA[每當要使用wget 之類的指令時, 系統總是找不到, 其原因主要是因為並沒有設定永久性的變數.<br /><br />一般上設置的變數<br /><br />PATH=$PATH:/opt/csw/bin:/usr/sfw/bin:/usr/sbin:/usr/bin:/usr/openwin/bin:/usr/dt/bin:/usr/ccs/bin<br />export PATH<br />set<br /><br />以上三個指令只能維持暫時性, 下次登入時又要重新輸入了.<br /><br />因此, 為了一勞永逸, <br /><br />1. vi /etc/profile<br />2. 在export LOGNAME PATH下面, 增加 <b>PATH=$PATH:/usr/local/bin:/usr/local/sbin:/usr/ccs/bin:/usr/sfw/bin:/opt/sfw/bin:/apps/php/bin:.</b><br />3. 增加 <b>LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib:/usr/sfw/lib</b><br />4. 修改export LOGNAME PATH, 變成 export LOGNAME PATH LD_LIBRARY_PATH<br /><br />或者<br /><br />1. vi /etc/profile<br />2. 在export LOGNAME PATH下面, 增加 <b>PATH=$PATH:/opt/csw/bin:/usr/sfw/bin:/usr/sbin:/usr/bin:/usr/openwin/bin:/usr/dt/bin:/usr/ccs/bin</b><br /><br /> ]]>
        
    </content>
</entry>

<entry>
    <title>允許root 用SSH登入Solaris的方法</title>
    <link rel="alternate" type="text/html" href="http://www.ode2forest.com/post/2009/10/solaris-root-ssh-login.html" />
    <id>tag:www.ode2forest.com,2009://2.46</id>

    <published>2009-10-17T14:39:54Z</published>
    <updated>2009-10-18T07:45:44Z</updated>

    <summary>輸入vi /etc/ssh/sshd_config尋找 &quot;PermitRootLogin&quot;, 並將 &quot;no&quot; 改成 &quot;yes&quot;.輸入kill -HUP `cat /var/run/sshd.pid`或者(bash shell 模式)kill -HUP $(cat /var/run/sshd.pid)或者/lib/svc/method/sshd restart...</summary>
    <author>
        <name>Gordon Lim</name>
        
    </author>
    
        <category term="Solaris 10" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.ode2forest.com/">
        <![CDATA[<span class="Apple-style-span" style="background-color: transparent; border-collapse: separate; color: rgb(0, 0, 0); font-family: Arial; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; font-size: medium;"><span class="Apple-style-span" style="color: rgb(51, 51, 51); font-family: verdana,arial,sans-serif; line-height: 18px; font-size: small;"><ol><li>輸入vi<span class="Apple-converted-space"> </span><b>/etc/ssh/sshd_config</b><span class="Apple-converted-space"></span></li><li><span class="Apple-converted-space"></span>尋找 "PermitRootLogin", 並將 "no" 改成 "yes".</li><li>輸入<br /><pre class="alt2" dir="ltr" style="border: 1px inset ; margin: 0px; padding: 6px; overflow: auto; width: 640px; height: 34px; text-align: left;">kill -HUP `cat /var/run/sshd.pid`</pre><br />或者<br />(bash shell 模式)<br /><pre class="alt2" dir="ltr" style="border: 1px inset ; margin: 0px; padding: 6px; overflow: auto; width: 640px; height: 34px; text-align: left;">kill -HUP $(cat /var/run/sshd.pid)</pre><br />或者<br /><br />/lib/svc/method/sshd restart<br /><br /></li></ol></span></span> ]]>
        
    </content>
</entry>

<entry>
    <title>在Lighttpd設定Rewrite</title>
    <link rel="alternate" type="text/html" href="http://www.ode2forest.com/post/2009/10/lighttpdrewrite.html" />
    <id>tag:www.ode2forest.com,2009://2.45</id>

    <published>2009-10-16T11:07:34Z</published>
    <updated>2009-10-16T11:14:01Z</updated>

    <summary><![CDATA[lighttpd-inc.conf-----------------------確定server.modules 中的"mod_rewrite"是開啟的, 然後...$HTTP["host"] == "localhost" {&nbsp; server.document-root = "C:\WLMP\HTDOCS\"&nbsp; url.rewrite = (&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "^/images/.*$" =&gt; "$0", // 如果是images 資料夾, 直接存取&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "^/(.*)$" =&gt; "index.php/$1" // 否則其他都導向 index.php&nbsp; )&nbsp; &nbsp;&nbsp;&nbsp; url.rewrite-once = (&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "^\/(images|css)(.*)$" =&gt; "$0", // 如果是images 或者 css 資料夾, 直接存取&nbsp;&nbsp;&nbsp;...]]></summary>
    <author>
        <name>Gordon Lim</name>
        
    </author>
    
        <category term="伺服器體驗" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.ode2forest.com/">
        <![CDATA[lighttpd-inc.conf<br />-----------------------<br /><br />確定server.modules 中的"mod_rewrite"是開啟的, 然後...<br /><br />$HTTP["host"] == "localhost" {<br />&nbsp; server.document-root = "C:\WLMP\HTDOCS\"<br />&nbsp; url.rewrite = (<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "^/images/.*$" =&gt; "$0", // 如果是images 資料夾, 直接存取<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "^/(.*)$" =&gt; "index.php/$1" // 否則其他都導向 index.php<br />&nbsp; )&nbsp; <br /><br />&nbsp;&nbsp;&nbsp; url.rewrite-once = (<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "^\/(images|css)(.*)$" =&gt; "$0", // 如果是images 或者 css 資料夾, 直接存取<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "^(((\/)([^\/^\?]*)){0,1})(((\?)(.*)){0,1})$" =&gt; "index.php?a=$4&amp;$8" // 否則其他都導向 index.php<br />&nbsp;&nbsp;&nbsp; )<br /><br />&nbsp; accesslog.filename = "C:\WLMP\LightTPD\logs\localhost-access_log.txt"<br />}<br /> ]]>
        
    </content>
</entry>

<entry>
    <title>解決在Ubuntu/Debian底下因更換網路卡或將硬碟安裝在另一台伺服器之後找不到eth0/網路的問題</title>
    <link rel="alternate" type="text/html" href="http://www.ode2forest.com/post/2009/08/solve-ubuntu-debian-eth0-missing.html" />
    <id>tag:www.ode2forest.com,2009://2.43</id>

    <published>2009-08-11T02:00:31Z</published>
    <updated>2009-08-11T10:17:45Z</updated>

    <summary> 我的測試環境是將Ubuntu Server 9.04 安裝在Virtualbox. 當我將A電腦裡Ubuntu Server的硬碟檔搬到另一台電腦之後, 用ifconfig, 卻找不到eth0 (eth0 失蹤). 我曾經為了這問題苦惱了許久, 甚至勞動我的同事幫我檢查卻找不到有任何設定上的問題 (/etc/network/interfaces 的設定還在). 後來我發現這是網路卡問題之後就上網找了資料, 這才知道--&gt;Ubuntu Desktop / Ubuntu Server / Kubuntu與Debian會紀錄網路卡的MAC Address來判斷目前所用的網卡是否與紀錄一致, 倘若不同, 就會自動新增一筆紀錄. 所以就算更換新的網卡(同樣道理, 在A 電腦的VirtualOS 的網卡與B電腦的VirtualOS 的網卡Mac Address 不同), 舊網卡的資料還是一樣會被判定成eth0， 而其他新增的網卡會依照eth1,eth2...一直自動新增下去. 解決的辦法: sudo vi /etc/udev/rules.d/70-persistent-net.rules 你會看到類似以下的參數設定......</summary>
    <author>
        <name>Gordon Lim</name>
        
    </author>
    
        <category term="Ubuntu/Kubuntu/Debian" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="伺服器體驗" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.ode2forest.com/">
        <![CDATA[<!--Ubuntu/Debian - 更換網路卡或將硬碟安裝在另一台伺服器之後找不到eth0/網路<br / / / /><br / / / />

我的測試環境是將Ubuntu Server 9.04 安裝在Virtualbox.  當我將A電腦裡Ubuntu Server的硬碟檔搬到另一台電腦之後,
用ifconfig, 卻找不到eth0 (eth0 失蹤).<br / / / /><br / / / />

我曾經為了這問題苦惱了許久, 甚至勞動我的同事幫我檢查卻找不到有任何設定上的問題 (/etc/network/interfaces 的設定還在).<br / / / /><br / / / />

後來我發現這是網路卡問題之後就上網找了資料, 這才知道-->Ubuntu Desktop / Ubuntu Server / Kubuntu與Debian會紀錄網路卡的MAC Address來判斷目前所用的網卡是否與紀錄一致, 倘若不同, 就會自動新增一筆紀錄.  所以就算更換新的網卡(同樣道理, 在A 電腦的VirtualOS 的網卡與B電腦的VirtualOS 的網卡Mac Address 不同), 舊網卡的資料還是一樣會被判定成eth0， 而其他新增的網卡會依照eth1,eth2...一直自動新增下去.<br /><br />

<strong><u>解決的辦法:</u></strong><br /><br />

<strong>sudo vi /etc/udev/rules.d/70-persistent-net.rules</strong><br /><br />

你會看到類似以下的參數設定...<br /><br />

<table bgcolor="#f1f1f1" border="0" cellpadding="2" cellspacing="0" width="100%">
  <tbody><tr>
    <td>
# PCI device 0x10de:0x00df (forcedeth)<br />
#SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:11:22:33:44:55", ATTR{type}=="1", KERNEL=="eth*", NAME="<b>eth0</b>"
<br /><br />
# PCI device 0x10de:0x00df (forcedeth)<br />
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="55:44:33:22:11:00", ATTR{type}=="1", KERNEL=="eth*", NAME="<b>eth1</b>"
    </td>
  </tr>
</tbody></table>

<br /><br />

只保留最底下的參數 (# PCI device 0x10de:0x00df (forcedeth) 開始), 其餘的通通刪除, 並且將<strong>NAME="eth1"</strong> 更改成 <strong>NAME="eth0"</strong><br /><br /><br /><u><b>範例:</b></u><br />

<table bgcolor="#f1f1f1" border="0" cellpadding="2" cellspacing="0" width="100%">
  <tbody><tr>
    <td>
<strike># PCI device 0x10de:0x00df (forcedeth)<br />
#SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:11:22:33:44:55", ATTR{type}=="1", KERNEL=="eth*", NAME="<b>eth0</b>"
</strike><br /><br />
# PCI device 0x10de:0x00df (forcedeth)<br />
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="55:44:33:22:11:00", ATTR{type}=="1", KERNEL=="eth*", NAME="<b>eth1</b>"
    </td>
  </tr>
</tbody></table>

<br /><br />

更改之後, <strong>/etc/udev/rules.d/persistent-net.rules</strong> 內的參數如下:<br /><br />

<table bgcolor="#f1f1f1" border="0" cellpadding="2" cellspacing="0" width="100%">
  <tbody><tr>
    <td>
# PCI device 0x10de:0x00df (forcedeth)<br />
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="55:44:33:22:11:00", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
    </td>
  </tr>
</tbody></table>

<br /><br />
修改完畢並且儲存之後重新啟動伺服器 (<b>sudo shutdown -r now</b>)就行了.<br /><br /><br /><br />注: 這方法適用於所有使用Ubuntu/Debian 的伺服器/電腦.&nbsp; 不管是否用Virtualbox, 都可以用.&nbsp; 比如VMWare 或者安裝在真正的硬碟而非虛擬OS.<br /><br /><br />參考資料: http://nabeko-notebook.blogspot.com/2009/04/eth0debianubuntu.html<br />]]>
        

    </content>
</entry>

<entry>
    <title>簡單易懂的現代魔法 - 生成魔法</title>
    <link rel="alternate" type="text/html" href="http://www.ode2forest.com/post/2009/08/modern-magic.html" />
    <id>tag:www.ode2forest.com,2009://2.34</id>

    <published>2009-08-06T02:26:38Z</published>
    <updated>2009-08-11T02:40:30Z</updated>

    <summary><![CDATA[&nbsp;&nbsp;&nbsp; 我很認真地看了這本小說與動畫之後, 電腦程式員/軟體工程師應該是最有潛能成為魔法使... 因此我也嘗試了下, 看看會不會產生魔法... 於是, 我試著修改小說裡的魔法咒語並且反譯成原始碼.... /********魔法咒語******若汝刻劃時間, 吾將追溯時間若汝逆時而行, 吾將刻劃時間循環 循環, 直到無常之數完全消逝吾不斷輪轉, 若為鐘化為真人美女吧! 吾之程序代碼*/#魔法咒語的原始程序代碼 class Magic {&nbsp; Function __construct() {&nbsp;&nbsp;&nbsp; global $Write_Time;&nbsp;&nbsp;&nbsp; $Trace_Time = "";&nbsp;&nbsp;&nbsp; If($Write_Time) {//若汝刻劃時間&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; While($this-&gt;SELF_Trace_Time($Trace_Time)==False) {//吾將追溯時間.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; If($Trace_Time == REVERSE) {//若汝逆時而行, 吾將刻劃時間&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TIME::SET(NOW());&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //循環 循環&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $this-&gt;Clear_Buffer(); //直到無常之數完全消逝&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;...]]></summary>
    <author>
        <name>Gordon Lim</name>
        
    </author>
    
        <category term="簡單易懂的現代魔法" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.ode2forest.com/">
        <![CDATA[&nbsp;&nbsp;&nbsp; 我很認真地看了這本小說與動畫之後, 電腦程式員/軟體工程師應該是最有潛能成為魔法使... 因此我也嘗試了下, 看看會不會產生魔法... 於是, 我試著修改小說裡的魔法咒語並且反譯成原始碼.... <br /><br />/*<br />*******魔法咒語******<br /><br />若汝刻劃時間, 吾將追溯時間<br />若汝逆時而行, 吾將刻劃時間<br />循環 循環, 直到無常之數完全消逝<br />吾不斷輪轉, 若為鐘<br /><u><b>化為真人美女吧! 吾之程序代碼</b></u><br />*/<br /><br /><b>#魔法咒語的原始程序代碼</b><br /><br /><table style="padding: 2px;" bgcolor="#f1f1f1" border="0" cellpadding="3" cellspacing="3" width="100%">
  <tbody><tr>
    <td>class Magic {<br />&nbsp; Function __construct() {<br />&nbsp;&nbsp;&nbsp; global $Write_Time;<br />&nbsp;&nbsp;&nbsp; $Trace_Time = "";<br /><br />&nbsp;&nbsp;&nbsp; If($Write_Time) {//若汝刻劃時間<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; While($this-&gt;SELF_Trace_Time($Trace_Time)==False) {//吾將追溯時間.<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; If($Trace_Time == REVERSE) {//若汝逆時而行, 吾將刻劃時間<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TIME::SET(NOW());<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //循環 循環<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $this-&gt;Clear_Buffer(); //直到無常之數完全消逝<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $this-&gt;Activate_Clock();//吾不斷輪轉, 若為鐘<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $this-&gt;Build_Models($_GET['VOICES']['COMMANDS']);//化為真人美女吧! 吾之程序代碼<br />&nbsp;&nbsp;&nbsp; }<br />&nbsp; }<br /><br />&nbsp; private Function Activate_Clock() {<br />&nbsp;&nbsp;&nbsp; CLOCK::Run();<br />&nbsp; }<br /><br />&nbsp; private Function Build_Models(&amp;$Commands) {<br />&nbsp;&nbsp;&nbsp; $models = new MODELS;<br />&nbsp;&nbsp;&nbsp; $models-&gt;Build($Commands);<br />&nbsp; }<br /><br />&nbsp; private Function Clear_Buffer() {<br />&nbsp;&nbsp;&nbsp; Foreach(get_defined_vars() as $Val) {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Unset(${$val});<br />&nbsp;&nbsp;&nbsp; }<br />&nbsp; }<br /><br />&nbsp; private Function SELF_Trace_Time(&amp;$Trace_Time) {<br />&nbsp;&nbsp;&nbsp; Return TIME::Trace($Trace_Time);<br />&nbsp; }<br />}<br />    </td>
  </tr>
</tbody></table>]]>
        
    </content>
</entry>

<entry>
    <title>如何在VirtualBox底下的CentOS 5.3安裝Guest Additions?</title>
    <link rel="alternate" type="text/html" href="http://www.ode2forest.com/post/2009/08/virtualboxcentos-5-3-guest-additions.html" />
    <id>tag:www.ode2forest.com,2009://2.41</id>

    <published>2009-08-05T11:16:41Z</published>
    <updated>2009-08-11T02:28:23Z</updated>

    <summary><![CDATA[這個會稍微麻煩些..打開terminal (Right Click mouse-&gt;Open Terminal)輸入yum install gcc -y安裝完之後, 輸入yum install kernel sources -y安裝完之後, 輸入yum install kernel-devel -y待以上步驟做完之後, 重新啟動OS重新進入OS之後, VirtualBox Windows 的Menu, Device-&gt;Install Guest Additions, 之後會看到已經自動將Gues Additions mount 成CDROM了.打開terminal (Right Click mouse-&gt;Open Terminal)輸入 cd /media/VBOXADDITIONS_3.0.2_49928Intel 處理器, 請輸入 sudo sh ./VBoxLinuxAdditions-x86.run 或者;AMD處理器,...]]></summary>
    <author>
        <name>Gordon Lim</name>
        
    </author>
    
        <category term="CentOS" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="伺服器體驗" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.ode2forest.com/">
        <![CDATA[這個會稍微麻煩些..<code></code><br /><br /><ol><li>打開terminal (Right Click mouse-&gt;Open Terminal)<br /><br /></li><li>輸入yum install gcc -y<br /><br /></li><li>安裝完之後, 輸入yum install kernel sources -y<code><br /><br /></code></li><li>安裝完之後, 輸入yum install kernel-devel -y<code><br /><br /></code></li><li>待以上步驟做完之後, 重新啟動OS<br /><br /></li><li>重新進入OS之後, VirtualBox Windows 的Menu, Device-&gt;Install Guest Additions, 之後會看到已經自動將Gues Additions mount 成CDROM了.<br /><br /></li><li>打開terminal (Right Click mouse-&gt;Open Terminal)<br /><br /></li><li>輸入 cd /media/VBOXADDITIONS_3.0.2_49928<br /><br /></li><li>Intel 處理器, 請輸入 <code>sudo sh ./VBoxLinuxAdditions-x86.run 或者;<br /><br /></code></li><li>AMD處理器, 請輸入 <code>sudo sh ./VboxLinuxAdditions-amd64.run<br /><br /></code></li><li>開始安裝...<br /><br /></li><li>完成之後, 重新啟動OS</li></ol>
  ]]>
        
    </content>
</entry>

<entry>
    <title>CentOS 安裝PHP 的GD 模組</title>
    <link rel="alternate" type="text/html" href="http://www.ode2forest.com/post/2009/08/centos-php-gd.html" />
    <id>tag:www.ode2forest.com,2009://2.42</id>

    <published>2009-08-05T09:06:42Z</published>
    <updated>2009-08-11T02:35:34Z</updated>

    <summary><![CDATA[CentOS 並沒有預設安裝GD 模組.&nbsp; 因此想要使用GD 的話, 就通過以下指令上網安裝就行了.yum install php-gd...]]></summary>
    <author>
        <name>Gordon Lim</name>
        
    </author>
    
        <category term="CentOS" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="伺服器體驗" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.ode2forest.com/">
        <![CDATA[CentOS 並沒有預設安裝GD 模組.&nbsp; 因此想要使用GD 的話, 就通過以下指令上網安裝就行了.<br /><br />yum install php-gd<br /> ]]>
        
    </content>
</entry>

<entry>
    <title>自動偵測文字URL並轉成Hyperlink</title>
    <link rel="alternate" type="text/html" href="http://www.ode2forest.com/post/2009/08/detect-and-convert-text-url.html" />
    <id>tag:www.ode2forest.com,2009://2.35</id>

    <published>2009-08-05T04:00:59Z</published>
    <updated>2009-08-11T05:37:46Z</updated>

    <summary><![CDATA[echo preg_replace("/(http:\/\/|www|[a-zA-Z0-9-]+\.|[a-zA-Z0-9\.-]+@)(([a-zA-Z0-9-][a-zA-Z0-9-]+\.)+[a-zA-Z0-9-\.\/\_\?\%\#\&amp;\=\;\~\!\(\)]+)/","&lt;a href=\"\\1\\2\" target=\"_blank\"&gt;\\1\\2&lt;/a&gt;",$text);...]]></summary>
    <author>
        <name>Gordon Lim</name>
        
    </author>
    
        <category term="PHP 技術" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="程式語言" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.ode2forest.com/">
        <![CDATA[echo preg_replace("/(http:\/\/|www|[a-zA-Z0-9-]+\.|[a-zA-Z0-9\.-]+@)(([a-zA-Z0-9-][a-zA-Z0-9-]+\.)+[a-zA-Z0-9-\.\/\_\?\%\#\&amp;\=\;\~\!\(\)]+)/","&lt;a href=\"\\1\\2\" target=\"_blank\"&gt;\\1\\2&lt;/a&gt;",$text);<br /><br /> ]]>
        
    </content>
</entry>

<entry>
    <title>我捨棄了我的乳酪</title>
    <link rel="alternate" type="text/html" href="http://www.ode2forest.com/post/2009/07/post.html" />
    <id>tag:www.ode2forest.com,2009://2.33</id>

    <published>2009-07-27T08:20:48Z</published>
    <updated>2009-07-27T08:21:28Z</updated>

    <summary><![CDATA[&nbsp;&nbsp; 我捨棄了我的舊乳酪, 雖然找到了兩塊新的乳酪, 然而我卻捨棄了最好的那塊乳酪, 接受了另一塊小乳酪.&nbsp;&nbsp; 然而我卻在之後對新乳酪懷有不安感.&nbsp;&nbsp; 這股不安感是怎麼回事?&nbsp; 我想, 是來自給予我新的乳酪的人懷有不信任感.&nbsp;&nbsp; 其一, 乳酪放在哪?&nbsp;&nbsp; 其二, 什麼牌子的乳酪?&nbsp;&nbsp; 其三, 到現在還沒看到乳酪.&nbsp;&nbsp; 舊的乳酪已經丟了... 已經沒有退路, 只好繼續尋找新的乳酪.......]]></summary>
    <author>
        <name>Gordon Lim</name>
        
    </author>
    
        <category term="心情札記" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.ode2forest.com/">
        <![CDATA[&nbsp;&nbsp; 我捨棄了我的舊乳酪, 雖然找到了兩塊新的乳酪, 然而我卻捨棄了最好的那塊乳酪, 接受了另一塊小乳酪.<br />&nbsp;&nbsp; 然而我卻在之後對新乳酪懷有不安感.<br />&nbsp;&nbsp; 這股不安感是怎麼回事?&nbsp; 我想, 是來自給予我新的乳酪的人懷有不信任感.<br />&nbsp;&nbsp; 其一, 乳酪放在哪?<br />&nbsp;&nbsp; 其二, 什麼牌子的乳酪?<br />&nbsp;&nbsp; 其三, 到現在還沒看到乳酪.<br />&nbsp;&nbsp; 舊的乳酪已經丟了... 已經沒有退路, 只好繼續尋找新的乳酪.... ]]>
        
    </content>
</entry>

<entry>
    <title>為UITableViewCell增加背景圖片</title>
    <link rel="alternate" type="text/html" href="http://www.ode2forest.com/post/2009/05/iphone-uitableviewcell-background-image.html" />
    <id>tag:www.ode2forest.com,2009://2.44</id>

    <published>2009-05-24T05:30:41Z</published>
    <updated>2009-08-11T05:36:14Z</updated>

    <summary><![CDATA[雖然不是很了不起的知識, 但也是我找了許久終於找到的答案.&nbsp; 要使UITableViewCell的背景換成自己喜歡的, 很簡單...&nbsp; - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;static NSString *CellIdentifier = @"Cell";&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;if (cell == nil) {&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;cell.backgroundView = [[UIImageView...]]></summary>
    <author>
        <name>Gordon Lim</name>
        
    </author>
    
        <category term="iPhone 程式開發" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="程式語言" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.ode2forest.com/">
        <![CDATA[雖然不是很了不起的知識, 但也是我找了許久終於找到的答案.&nbsp;
<div><br /></div><div>要使UITableViewCell的背景換成自己喜歡的, 很簡單...</div><div><br />&nbsp;

<table border="0" width="100%" cellpadding="3" cellspacing="3" bgcolor="#F1F1F1" style="padding:3px;">
  <tbody><tr>
    <td>
<div><font class="Apple-style-span" color="#444444" face="Verdana, Helvetica, Arial, sans-serif" size="4"><span class="Apple-style-span" style="border-collapse: collapse; font-size: 14px; line-height: 22px;"><div>- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;static NSString *CellIdentifier = @"Cell";</div><div>&nbsp;&nbsp; &nbsp;</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];</div><div><br /></div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;if (cell == nil) {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;cell.backgroundView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"background.png"]];// 套用自己的圖片做為背景</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;CGRect CellFrame = CGRectMake(0, 0, 300, 60);</div><div>&nbsp;&nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre">	</span> &nbsp; &nbsp;CGRect Label1Frame = CGRectMake(10, 5, 288, 38);</div><div><span class="Apple-tab-span" style="white-space:pre">	</span> &nbsp; &nbsp;UILabel *lblTemp;</div><div><span class="Apple-tab-span" style="white-space:pre">	</span></div><div><span class="Apple-tab-span" style="white-space:pre">	</span> &nbsp; &nbsp;UITableViewCell *cell = [[[UITableViewCell alloc] initWithFrame:CellFrame reuseIdentifier:cellIdentifier] autorelease];</div><div><span class="Apple-tab-span" style="white-space:pre">	</span> &nbsp; &nbsp;lblTemp = [[UILabel alloc] initWithFrame:Label2Frame];</div><div><span class="Apple-tab-span" style="white-space:pre">	</span> &nbsp; &nbsp;lblTemp.backgroundColor = [UIColor clearColor];//清除預設的背景顏色</div><div><span class="Apple-tab-span" style="white-space:pre">	</span> &nbsp; &nbsp;lblTemp.tag = 1;</div><div><span class="Apple-tab-span" style="white-space:pre">	</span> &nbsp; &nbsp;lblTemp.font = [UIFont boldSystemFontOfSize:15];</div><div><span class="Apple-tab-span" style="white-space:pre">	</span> &nbsp; &nbsp;lblTemp.numberOfLines = 2;</div><div><span class="Apple-tab-span" style="white-space:pre">	</span> &nbsp; &nbsp;[cell.contentView addSubview:lblTemp];</div><div><span class="Apple-tab-span" style="white-space:pre">	</span> &nbsp; &nbsp;[lblTemp release];<span class="Apple-tab-span" style="white-space:pre">	</span></div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;}</div><div><br /></div><div><span class="Apple-tab-span" style="white-space:pre">	</span>UILabel *lblTemp1 = (UILabel *)[cell viewWithTag:1];</div><div><span class="Apple-tab-span" style="white-space:pre">	</span>lblTemp1.text = @"AAAAA";</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;return cell;</div><div>}</div></span></font></div>
    </td>
  </tr>
</tbody></table></div>]]>
        
    </content>
</entry>

<entry>
    <title>如何在VirtualBox底下的Kubuntu安裝Guest Additions?</title>
    <link rel="alternate" type="text/html" href="http://www.ode2forest.com/post/2009/05/virtualbox-kubuntu-install-guest-additions.html" />
    <id>tag:www.ode2forest.com,2009://2.31</id>

    <published>2009-05-18T13:28:58Z</published>
    <updated>2009-08-11T02:29:20Z</updated>

    <summary><![CDATA[進入OS之後, VirtualBox Windows 的Menu, Device-&gt;Install Guest Additions在Kubuntu裡會看到已經自動將Gues Additions mount 成CDROM了.打開terminal (KDE-&gt;Application-&gt;System-&gt;Terminal)輸入 cd /media/cdrom0Intel 處理器, 請輸入 sudo sh ./VBoxLinuxAdditions-x86.run 或者;AMD處理器, 請輸入 sudo sh ./VboxLinuxAdditions-amd64.run開始安裝......]]></summary>
    <author>
        <name>Gordon Lim</name>
        
    </author>
    
        <category term="Ubuntu/Kubuntu/Debian" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="伺服器體驗" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.ode2forest.com/">
        <![CDATA[<ol><li>進入OS之後, VirtualBox Windows 的Menu, Device-&gt;Install Guest Additions<br /><br /></li><li>在Kubuntu裡會看到已經自動將Gues Additions mount 成CDROM了.<br /><br /></li><li>打開terminal (KDE-&gt;Application-&gt;System-&gt;Terminal)<br /><br /></li><li>輸入 cd /media/cdrom0<br /><br /></li><li>Intel 處理器, 請輸入 <code>sudo sh ./VBoxLinuxAdditions-x86.run 或者;<br /><br /></code></li><li>AMD處理器, 請輸入 <code>sudo sh ./VboxLinuxAdditions-amd64.run<br /><br /></code></li><li>開始安裝...<br /></li></ol> ]]>
        
    </content>
</entry>

<entry>
    <title>如何在VitualBox 的OS 設置寬螢幕?</title>
    <link rel="alternate" type="text/html" href="http://www.ode2forest.com/post/2009/05/vitualbox-os-wide-screen.html" />
    <id>tag:www.ode2forest.com,2009://2.30</id>

    <published>2009-05-05T14:47:45Z</published>
    <updated>2009-08-09T09:20:33Z</updated>

    <summary><![CDATA[進入OS之後, VirtualBox Windows 的Menu, Device-&gt;Install Guest Additions在OS裡會顯示要求安裝軟體, 安裝它.安裝完成之後, 系統會要求重新啟動OS, 重新啟動.打開Dos Prompt, 去到VirtualBox 的安裝目錄. 比如預設是:cd C:\Program Files\Sun\xVM VirtualBox必須在VirtualBox 裡開啟OS的情況下, 輸入: VBoxManage controlvm "Windows XP" setvideomodehint "1280" "720" "32"("Windows XP" 就是建立Virtual OS 的名稱.&nbsp; "1280" "720" 就是螢幕解析度為1280*720.&nbsp; "32" 就是32bit.)&nbsp; 設置一次就行了, 下次啟動Virtual OS 時,...]]></summary>
    <author>
        <name>Gordon Lim</name>
        
    </author>
    
        <category term="伺服器體驗" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.ode2forest.com/">
        <![CDATA[<ol><li>進入OS之後, VirtualBox Windows 的Menu, Device-&gt;Install Guest Additions<br /><br /></li><li>在OS裡會顯示要求安裝軟體, 安裝它.<br /><br /></li><li>安裝完成之後, 系統會要求重新啟動OS, 重新啟動.<br /><br /></li><li>打開Dos Prompt, 去到VirtualBox 的安裝目錄. 比如預設是:<br />cd C:\Program Files\Sun\xVM VirtualBox<br /><br /></li><li>必須在VirtualBox 裡開啟OS的情況下, 輸入: <b>VBoxManage controlvm "Windows XP" setvideomodehint "1280" "720" "32"</b><br />("Windows XP" 就是建立Virtual OS 的名稱.&nbsp; "1280" "720" 就是螢幕解析度為1280*720.&nbsp; "32" 就是32bit.)&nbsp; 設置一次就行了, 下次啟動Virtual OS 時, Virtual Windows/OS 的螢幕高寬度以及解析度就是當初設置的.<br /><br />p/s:&nbsp; 需要重新設置Virtual Windows/OS 的螢幕解析度時, 重新輸入 <b>VBoxManage controlvm "Windows XP" setvideomodehint "螢幕寬度" "螢幕高度" "32"</b> 就行了.<br /><br /></li><li>輸入完按Enter之後, Virtual Windows 已經變成1280*720的螢幕解析度了. </li></ol>]]>
        
    </content>
</entry>

<entry>
    <title>我的iPhone應用程式的開發體驗</title>
    <link rel="alternate" type="text/html" href="http://www.ode2forest.com/post/2009/03/iphone-learning-experience.html" />
    <id>tag:www.ode2forest.com,2009://2.29</id>

    <published>2009-03-30T12:45:43Z</published>
    <updated>2009-08-11T05:36:23Z</updated>

    <summary><![CDATA[&nbsp;&nbsp; 我的iPhone應用程式的開發體驗在開始開發iPhone的應用程式之前, 其實我完全沒碰過iPhone, MAC OS 以及 iPhone 應用程式的開發語言.&nbsp; 我是以一個類似盲人摸象的方式開始玩MAC OS 以及開發語言.&nbsp;&nbsp; 會接觸iPhone開發語言也是逼不得已的一件事.&nbsp;&nbsp; 這可要追溯到1個多星期以前, 我忽然接到經理的通知, 要我出發到首都的分公司進行iPhone應用程式開發兩個星期.&nbsp; 說實在, 我委實嚇著了.&nbsp; 公司竟然要一個從來沒有接觸過MAC OS 以及iPhone的人在兩個星期內完成應用程式/軟體的開發, 這是什麼國際笑話?...]]></summary>
    <author>
        <name>Gordon Lim</name>
        
    </author>
    
        <category term="iPhone 程式開發" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="程式語言" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.ode2forest.com/">
        <![CDATA[&nbsp;&nbsp; 我的iPhone應用程式的開發體驗<br /><br />在開始開發iPhone的應用程式之前, 其實我完全沒碰過iPhone, MAC OS 以及 iPhone 應用程式的開發語言.&nbsp; 我是以一個類似盲人摸象的方式開始玩MAC OS 以及開發語言.<br /><br />&nbsp;&nbsp; 會接觸iPhone開發語言也是逼不得已的一件事.<br /><br />&nbsp;&nbsp; 這可要追溯到1個多星期以前, 我忽然接到經理的通知, 要我出發到首都的分公司進行iPhone應用程式開發兩個星期.&nbsp; 說實在, 我委實嚇著了.&nbsp; 公司竟然要一個從來沒有接觸過MAC OS 以及iPhone的人在兩個星期內完成應用程式/軟體的開發, 這是什麼國際笑話?<br /><br /><br />]]>
        <![CDATA[&nbsp;&nbsp; 好吧, 竟然總裁叫到, 也不得不硬著頭皮去找iPhone開發語言的相關資訊.&nbsp; 好不容易讓我找著了, 可當我看著相關書籍時, 實在是有點在看外星語言的感覺, 完全看不懂, 而且越看越是頭昏腦脹.<br /><br />&nbsp;&nbsp; 搞了一個多星期, 竟開始搞上味道了.&nbsp; 從最初的朦朧不懂, 到現在有點上手的感覺, 實在讓人興奮, 而且還有點欲罷不能, 很想繼續玩下去.<br /><br />&nbsp;&nbsp; 在這艱難的1個多星期裡, 所幸我認識了一個懂得iPhone開發語言的網友 (雖然他對我的幫助不多, 而且幾乎都是要自己去找答案), 但是有他的一些指引, 以及另一個也懂iPhone開發語言的網友的一些建議, 總算有點開竅了.<br /><br />&nbsp;&nbsp;
想要學iPhone 開發語言的條件是什麼?&nbsp; 葵花寶典有一言 "欲學神功, 必先自宮".&nbsp; 哦, 不不, 欲學神功, 必先自廢武功.&nbsp;
自廢武功嗎?&nbsp; 沒錯, 就是要自廢武功, 把自己從前學過的程式語言通通拋掉, 而且要忘了Windows的習慣.&nbsp; iPhone
開發語言是獨孤九劍, 沒有恆心與毅力是完全不行的, 並且要有C/C++的基礎 (雖然說把從前學過的程式語言通通拋掉, 但是基本觀念還是要保留).<br /><br />&nbsp;&nbsp; 這基礎觀念是幹嘛的?&nbsp; 那就是為了打通我們身上的任督二脈等經脈.<br /><br />&nbsp;&nbsp; 為什麼?&nbsp; 因為iPhone的開發語言完全顛覆了我們所學的任何一種語言, 可是卻擁有C/C++的觀念以及必要的基礎.<br /><br />&nbsp;&nbsp; 今天就先分享到這裡, 畢竟我還有4天時間必須趕快完成, 因此現在不得不趕快找資料以便在時間內完成然後趕快帶著行李連滾帶跑的跑回老家的總公司去. ]]>
    </content>
</entry>

</feed>

