Ch0 : Before the Start of Play

[為什麼我要寫這本書?]

我是期望,自己能寫這本書,來去學習怎樣使用這項技術。我想大家一定都會遇過想玩玩ㄧ些東西,但是中文資源少的可憐,ㄧ方面整理這些我自我學習歷程,我也自己學習用破破的英文尋找找答案能力。

受惠於網路開放時代,我想把學習資料整理之後,給各位閱讀與學習。雖然可能還有許多不足的地方,但我希望貢獻自己的ㄧ些小小力量,能幫助想要了解這門技術的朋友。

程式的學習之路,因每個人想要的不一樣,若剛好我在你的學習之路,能給予ㄧ些幫助,會是再好不過的事了。等到您自己有經驗的時候,也期待您可以分享你所學的知識跟大家分享,想都會受益良多的。

PlayFramework 2.5.4所使用的Java版本建議是Java8以上,若使用Java7以下版本會有相容性問題,建議使用Java8版本的JDK,來撰寫Play程式。


[這誰本適合誰?]

適合想玩玩新技術的人、想尋找新的解決方案的人、剛學完Java程式的朋友,都可以嘗試看看。若是新手完全沒接觸過,這本書到中後段會短時間內無法順利吸收,這時候您應該停下腳步,去補足吸收相關的知識後,再繼續往下走下去。

這本書只會很簡單介紹Play基本核心概念與技術,比較關鍵的部分且實用的部份也會解釋,最後我們會實作出簡單的網站與RestFul服務來練習我們說過的部份。


[需要俱備的知識與基礎]

這本書需要具備ㄧ些JAVA程式的基本概念還有SQL語言的基本能力,若發現開始看不懂也無法理解時,您可能要花點時間瞭解相關知識與技術,才會比較容易順利進展進下去,所幸現在網路資源豐富,有很多文章與教學可以參考與閱讀,還有書本可以閱讀,花點時間學習對您會是很有幫助的。

我不要求你很懂所有語言,但是從"做中學"來去理解程式碼的運作,也是學習得一種方式,不要害怕學習的知識不夠,而不敢寫程式,只要願意多多嘗試與練習,從做的過程中,體會程式碼的運作與執行,這是一個很好的學習方式。

您需要俱備基本知識有以下這幾項。

  • JAVA : 你會需要JAVA程式的ㄧ些基礎,像if elsefor迴圈,知道基本型態與集合的不一樣,知道物件與類別,知道基本的封裝與繼承即可。這本書,基本上都以JAVA為主,所以期望你盡量能先理解每段程式碼的意義,才會達到較好的學習效果。
  • 資料庫語言 : 因為後半段,我們會需要使用SQL語法去執行資料庫查尋、新增、更新、刪除的動作,若你看到這裡不知道完全是怎麼回事,到後半段時,要請您ㄧ定要先去了解這語言用途與知識,才會讓你順利進展下去。
  • HTML相關技術 : 畫面上的呈現,我們需要一些基本的HTML語法幫助,還有常見的JavaScriptJQuery使用,與CSS樣式搭配,這部分能先大致瞭解即可,之後有興趣可以再花時間專研更好的畫面呈現方式,讓使用者有更好良好的使用經驗。
  • 其它 : HTTP的ㄧ些基本狀態,像404、200,等等,還有RestFulJson等等。一開始你可以完全不理解沒關係,等有時間研究時,還是需要理解一下這些基礎即可。
  • GIT : 目前現階段最主流的版本控制系統,建議可以花時間學習,方便您的程式控管與使用。

[學習]

在學習或安裝過程,一定會遇到許多困難,我的教學可能會讓你一時間,可能無法裡解為什麼這樣做的話,可以學習利用關鍵字,學習找解答的能力,對於往後你的學習過程會有很大的助益,以下是可參考的網址。也介紹比較常討論軟體工作的BBS網站。而我也會再每個章節最後寫下我參考過的網站Reference,大多該章節可能遇到的問題都可以參考閱讀。

萬用天神 : https://www.google.com.tw/
(找不到合適的論壇,問大神準沒錯!)

良葛格學習筆記 : http://openhome.cc/Gossip/
(很棒的程式學習筆記,可以參考學習的好網站!)

JavaWrold(台灣) : https://www.javaworld.com.tw/jute/
(很適合初學者,來這裡尋找JAVA基礎問題。)

stackoverflow : http://stackoverflow.com/
(國外最常見問程式問題的好所在,當你卡關時,可以來這裡,尋求攻略。)

Play Framework 官方教學 :https://www.playframework.com/documentation/2.5.x/Home
(Play官方自己做的教學,很實用,可以用來參考ㄧ些基本架構與用途。)

ptt : ptt.cc
(台灣最大的BBS論壇,裡面有許多豐富經驗的程式工作者,在soft_job分享文章或工作經驗,建議可以上去多看看文章,了解目前一些業界、技術、程式動態等等。)

results matching ""

    No results matching ""