顯示具有 IDE 標籤的文章。 顯示所有文章
顯示具有 IDE 標籤的文章。 顯示所有文章

2009年12月22日 星期二

CakePHP教學 on OSX(五)開發環境與伺服器測試:CakePHP in Aptana with MAMP



RoR in Aptana
RoR的魔術之一,是可以透過Generator等用Ruby寫的腳本程式,一口氣自動地產生整個Model, Controller 跟 View等相關的基本程式碼。唯一可惜的是,這個魔術得在終端機視窗裡,手動地鍵入指令來執行。這種方式對於習慣OSX圖形介面(GUI)的人跟懶得記憶指令碼的我來,說真是一場惡夢。所幸Aptana的RadRails套件,把RoR的Generator等腳本都作成一個個的View視窗,可以透過GUI來選擇執行項目與輸入參數。我想光這個功能就可以讓Aptana登上OSX上的RoR開發環境的前幾名了:

Aptana還有內建主控台(Console)分割視窗來顯示輸出結果,不須要離開Aptana去打開“終端機”程式。Aptana甚至還有內建的瀏覽器,可以直接檢視網頁的輸出結果。只差了MySQL資料庫,如果用Splite這個RoR內建的簡單資料庫,開發RoR可以完全在Aptana內進行,不須要其他附加的軟體,可以說是名符其實一網打盡的整合式開發環境。(雖然RadRails還是需要系統預先安裝Xcode套件。安裝RadRails時,Aptana會要求安裝OSX的開發軟體Xcode,因為RadRails還是需要OSX系統內先安裝Ruby的Gem套件,這是Rails管理與安裝相關套件的必要工具。)

CakePHP in Aptana

CakePHP也有類似RoR的Generator自動程式碼產生器,名字叫cake bake的腳本程式。不過也跟RoR的Generator一樣,還是要使用命令列的方式,手動地由終端機上輸入像是火星文一般的指令;或是是透過PHP主控台來執行一個叫“cake.php”的程式。但是如果用了Aptana這類的IDE來還要這麼作,未免也太遜了。可惜Aptana 2.0已經沒有開發官方的PHP套件,除了麵包店裡這一篇“Setting up Eclipse to work with Cake”有解說如何整合Eclipse跟CakePHP之外,網路上也沒有相關Aptana整合CakePHP的中文訊息。不過既然Aptana是基於Eclipse,設定方法應該也類似。於是嘗試一下根據這篇的說明來操作,是了半天終於給試了出來。不過要在Aptana內直接使用cake bake腳本程式,得要先把cakephp輸入成Aptana的專案:
  1. 先確定Aptana已經安裝了PDT套件;MAMP已經啓動;並且在MAMP的網頁根目錄htdocs檔案夾裡已經把CakePHP檔案複製到cake_1_2檔案夾。接下來要把cake_1_2檔案夾,變成Aptana裡建立成一個專案(project):
  2. 按Aptana視窗左上角“新增圖像”右邊那個很小的“倒三角”(哎,這是從Eclipse來的彆腳介面),從選單裡選擇“Project...”;
  3. 接下來要選擇巫師(wizard?),請選擇PHP Project:
  4. 進入“PHP Project”視窗,專案名稱輸入 cake_1_2(最好跟檔案夾名稱一致)。因為要匯入cake_1_2這個檔案夾,這裡要選“Creat project form existing source”,然後按下“Browse...”按鈕:
  5. 找到 /Appliations/MAMP/htdocs 找 cake_1_2 檔案夾(找路徑的過程中請用“點二下”打開檔案夾,不要按右下角的“開啓”按鈕),找到cake_1_2 檔案夾後不要打開,按一下檔案夾圖像再按右下角的 “打開”按鈕:
  6. 回到“PHP Project”視窗,按下“Finish”結束:
  7. 如果本來的“Perspective”(透視?在Aptana/Eclipse 指的是配合不同開發目的,各個相關分割視窗的配製方式)不是PHP,會提示要不要開啓“PHP Perspective”。請按“Yes”,讓Aptana將畫面配製成適合PHP的形式:
  8. 接下來測試一下Aptana內建的網頁伺服器。因為Aptana沒有內建PHP的執行環境,請先確定MAMP伺服器已經開啓,否則無法執行.php檔案。在 cake_1_2 專案下的 index.php 上按右鍵,選取“Run As > PHP Web Page”:
  9. 第一次執行“Run As”,Aptana會提示確認檔案路徑,下次就會用相同地方式執行。請按“OK”:
  10. 如果一切正確,Aptana內建的瀏覽器會顯示CakePHP的首頁:

Bake in Aptana
CakePHP成為Aptana的專案後,接下來要製作Aptana執行cake bake的指令:
  1. 從Aptana的 Run 選單下選擇“External Tools Configurations...”:
  2. 先在“External Tools Configurations”視窗的側邊欄上點一下“Program”,然後按一下左上角的“新增”圖示:

  3. 新增後,在右邊的Name欄位輸入 bake ,然後按一下“Browse Workspace...”:
  4. 出現“Choose Location”視窗,找到 cake_1_2/cake/console 目錄點一下,然後點右邊的 cake 檔案(不是cake.bat或cake.php):
  5. 回到“External Tools Configurations”視窗,在“Working Directory:”欄位輸入:
    ${project_loc}
    並在“Arguments:”欄位輸入:
    bake
  6. 按一下右下角的“Apple”按鈕儲存指令,然後按一下“Run”按鈕執行腳本試看看。如果cake bake有執行的話,應該可以在下方的“Console”分割視窗看到輸出提示。現在只是測試腳本,還不要輸入任何項目,請按“Console”分割區右上方的紅色方塊停止cake bake腳本:
  7. 設定好之後,就可以在“Run > External Tools”選單下看到“bake”指令:
CakePHP 模版 .ctp 檔案編輯
跟CakePHP 1.1 版的模版檔案是 .thtml ,1.2版的模版檔案是 .ctp ,內容都是PHP或HTML的程式碼。但由於Aptana不認得 .ctp ,得要手動設定它跟PHP編輯器的關聯。方法如下:
  1. 從“Aptana Studio”選單下選擇“偏好設定(Preferences...)”:
  2. 從“Preferences”視窗的側邊欄找到的“General > Content Tpyes”,然後點一下右邊的“PHP Content Type”,然後按一下“Add”按鈕:
  3. 在“Content Type”欄位輸入 .ctp ,然後按“OK”:
  4. 接下來設定編輯器的關聯。在側邊欄找到的“General > Editor >File Associations”,然後按一下右邊的“Add”按鈕:
  5. 在“File Type”欄位輸入 .ctp ,然後按“OK”:
  6. 回到“Preferences”視窗,在右下方的“Associated editors:”欄位,點一下“PHP Editor”圖示,然後按一下“Default”按鈕儲存為預設值。最後再按“OK”關閉視窗。

  7. 以後 .ctp 檔案就會自動以PHP editor來編輯。
接下來就可以準備烤第一塊蛋糕了。

2009年12月21日 星期一

CakePHP教學 on OSX(三)開發環境:Aptana & PDT

IDE的選擇
Eclipse是受很多開發者歡迎的整合開發環境(IDE),尤其是開發Java程式。它的優點是免費,以及應用Java開發而產生跨平台的特性。同時擁有很多外掛,可以適應不同的開發語言與開發目的。不過也因為是以Java為基礎,所以先天上的效能與雙位元語言的支援上都有點抱歉,尤其是在OSX上。所幸有Aptana的出現,將Eclipse改寫為OSX的原生程式,大幅提高了執行的效能,但仍具有Eclipse相容性,能支援多數Eclipse用的外掛。

Aptana的開發一開始就是針對Web的應用,因此最初的版本主要針對JavaScript的開發。隨著RoR的出現,Aptana也開發了自己的RoR套件稱為RadRails,1.5版後RadRails變成內建套件,它將RoR開發常用的WEBrick伺服器,Sqlite簡易資料庫,Gem腳本程式等整合在一起,使得Aptana儼然成為OSX上開發RoR的最佳選擇。

不過到了2.0版,Aptana乾脆放棄了其他套件如PHP的開發,專心發展RadRails。所幸Eclipse這邊也推出了PDT(Php Development Tools)。因此使用Aptana 1.5有內建的PHP套件,但Aptana 2.0則必須要自行安裝Eclipse的PDT套件。

安裝與設定
  1. Aptana官方網站上下載最新版的Aptana Studio 2.0
  2. 因為Aptana正在推廣它的RadRails套件,所以官網上出現的是Aptana RadRails,不用擔心,這個只是內建了RadRails,還是能安裝其他套件。中間的下拉選單(Standalone/Mac/Full Installer)不要更動,直接按下“Download Now”按鈕下載回來就是;
  3. 打開下載的dmg檔案,把Aptana 2.0檔案夾拖進"應用程式(Applicarions)"就好了;
  4. 找到 /Applications/Aptana 2.0/AptanaStudio 程式,點二下打開;
  5. Aptana Studio的啓動畫面;
安裝Aptana的Plugin
  1. Aptana Studio的首頁,按下間下方的“Install Plugin”連結;
  2. Plugin頁面可以看到Aptana內建的外掛,例如RadRails等,要安裝其他如Eclipse的外掛,請按下“View Plugin Manager”連結;
  3. 視窗下方會出現“Plugin Manager”分割視窗,按分割視窗右上方綠色的“+”號按鈕;
  4. 出現“Install Additional Features”視窗,選擇PHP開發必要的外掛,例如PHP Development Tools(PDT), PHP DebuggerBinaries 跟 jQuery Support等等,然後按下“Install”按鈕;
  5. 接下來Aptana會自己上網找到套件下載,請稍等:

  6. 確認可用的套件後,可以再選擇一次。PDT SDK 2.0.1有問題無法下載請不要勾選。Ajax套件如果不須要也可以不用全部下載,我只安裝了jQuery。Zend CE Features有時下載速度很慢,如有問題可以稍候再選。確認無誤後,請按“Next>”按鈕;
  7. 網路速度過慢,或某個套件下載有問題時,會出現等候視窗。按右邊的紅色方塊可以取消下載,重新選取個別的套件,分別下載;
  8. 全部下載完畢會出現“Install”視窗,請按“Next >”;
  9. 安裝過程的版權宣告有點囉唆,剛開始不太習慣。請先按“I accept ....”那一項接受版權宣告,然後再按“Finish”按鈕才行;
  10. 接下來才會真正地安裝,真是奇怪的程序;
  11. 終於安裝完畢,接下來要重新啓動Aptana,請按“Yes”;
  12. 以後隨時要安裝Aptana的外掛,可以從Help選單中選擇“Install Aptana Features...”即可;
設定Aptana預設的文件語言編碼
  1. Aptana安裝完後,預設的語言編碼會與系統相同(例如Big5),最好調整一下設定改成utf-8,以減少以後開發上語言編碼的困擾。請從Aptana選單選擇“偏好設置(Preference)”;
  2. 從側邊欄的“General”下找到“Workspace”項目,把右頁左下方的“Text File Encoding”項目,點選“Other”,然後選單選“UTF-8”,然後按“Apply”或“OK”按鈕。
接下還要安裝CakePHP並與Aptana整合。
上一篇|下一篇 安裝CakePHP >