Google 的 雲端開發的上課初步感想
這學期學校的課程在教 Google 的 雲端開發,一開始小弟以為頂多只是教教概念,和寫寫簡單的程式
但很高興不是這麼一回事,感謝毛老師很用心教學,為了打好同學的基礎還很認真教物件導向
整整教了快半學期
上週終於讓同學們都照著範例可以 copy 貼上 完整一個簡單的留言版
使用 Eclipse 的開發工具 ver Ganymede
花了一些時間了解,安裝 Google 的平台開發套件、排除 JDK Compiler 和 開發工具不一致問題 ( 光是這個花了很多時間 Orz )
( 我們的 開發工具什麼時候也可以不用免安裝
申請 Google 雲端平台帳號 ( 相對來說 這個比較簡單 )
不知道 MS 的 Azure 平台什麼時候在申請時也能簡化 ( 當初申請試用時搞了兩個認證才能通過 )
經過 兩週後 總算完成
照抄的範例 ( 沒什麼特別的 )
http://liveriverguestbook.appspot.com/guestbook.jsp
基本上 是用 JSP ( 可以想像成 ASP 的語法介面 一樣有 <%%> 的 tag )
架構會分成 介面端 和 library ( 這個部分就像我們會把程式分層的概念是一樣 )
和我們在寫 asp.net 網頁最大的不同就是,所有的資料讀出和寫入
一定都要透過 Object 的方式來儲存,而且 Class 就等同 Table !
每一個 Class 的 實例 就等同 一筆資料! ( 這都和 Azure 是一模一樣的 )
所以在開發上對於 OO 要有一定程度的要求 ( 不然會很容易搞不懂為啥 PersistenceManager 是怎麼運作的 。若是有在用 EntityFramework 的話!就會覺得比較相似 ! )
而背後都是透過 JDO 再搭配 「Attribute」( java 是用 @ , C# 是用 [ ] )
( 註:裡面不會去連 DB ,若是用 傳統式 關聯式資料庫的話!會有擴充上的限制 )
可能是小弟已經很習慣 ASP.NET 的介面和程式分離開發的方式,再回頭來寫 JSP ( ASP ) 的方式來設計介面
只能說很痛苦 ( 雖然 Eclipse 會在開 jsp 頁面幫你用 DreameWare 開 , 但 畢竟還是不直覺 。畫面上一堆的 %% )
不過慶幸的是因為架構一定會分開,所以裡面的商業邏輯都會放在自已寫的 package 中,而不會放在 war 裡 。
只是每寫一個 Serverlet 都要在 web.xml 中去定義 關係和 網頁位置 。 ( 這個地方 .NET 就比較方便了 )
接下來可以試試看 前端用 silverlight 然後透過 WS 或是 HTTP 的方式 和 這個範例溝通看看,應該蠻有趣的 XDDDD