JAVA/SCA專業班

Java is Everywhere

Java SE Course
老魚自用JAVA授課教材

前言

JAVA 有著長達10多年不間斷的持續發展,至今其應用範圍含蓋至所有需要資訊管理與軟體工程的地方,但也因此讓 JAVA台面上的"標準"中充斥著被商業公司利益所操縱, 進而左右其 Java SE 技術發展的部份內容,再加上大多數的開發者們害怕學習"改變", 害怕學習大多數人眼中"大廠 Java SE 技術標準"以外的技術, 但先天 JAVA 本身的優秀性, 透明化與創造性, 在今天許多大公司對 JAVA 上的貢獻成果, 使今天的 JAVA 成為開發資源與領域最廣大的企業選擇.

  • 全球程序語言排行榜 - TIOBE(全球公信最高的調查, 每個月更新一次)
    • 最近TIOBE編程社區又給出了流行的編程語言的一個說明。它是每個月更新一次的。這個排名是根據全世界範圍內一些專業工程師,課程和第三方供應商。最流行的搜索引擎谷歌的MSN ,雅虎,維基百科和YouTube等來評估的。


SOA/SCA 扮演著新一代的開發標準, 課程中搭配著對 SOA/SCA 的教學, 讓參與者能在實務工作時, 將這開放標準帶到更多的企業軟體開發的生態中.



Google 網上論壇
老魚師與沙瀰們的菩提園
造訪此群組



對程式設計完全零基礎


YouTube Video

對一位完全零基礎的學生, 您可以從下列有趣且圖形化的程式教學軟體學習起, 從快樂中認識程式設計.

國中小學生

JavaOne 2009 - Alice Educational Software

高中大學生

  • Alice
    • http://www.alice.org/index.php
    •  Alice是卡內基梅隆大學的Randy Pausch發明的3D虛擬世界編程環境,可以很容易的創造出動畫故事或交互式遊戲,適合從4-6年級到高中的學生。
    • 杜克大學計算機科學家Susan Rodger希望Alice能吸引更多年輕學生進入編程的世界。杜克大學最近舉行了Alice夏令營,參加的學生一半是女生一半是男生,她在2009年3月召開的計算機科學教育的技術討論會上稱,學生都積極的投入到 Alice的3D世界中,總是想要更多的時間去創造自己的世界。他們每天使用Alice五到六個小時,仍然不願意下線和關閉Alice世界。
    • Rodger 還希望Alice能改變當前計算機科學界陽盛陰衰的局面,2008年美國獲得計算機科學學士的畢業生中只有11.8%是女性。
      • http://software.solidot.org/article.pl?sid=09/06/24/0923202&from=rss






課程目標


軍以戰為主, 戰以勝為先 !!!
老魚的目標是希望引導您成為懂得運用 JAVA 技術的人才,而非為了認證資格 SCJP 甚至 JSR SE/EE 這台面上所稱的規範標準範圍, 累積至今已有高達9成以上的企業IT主管了解, “認證"制度只能讓新人獲得基本的能力證明, 但大多數的結果是企業必須再進行新人訓練或者不適任的結果, 證照不再是一項保證, 而是可有可無的, 往往當場的筆試/口試結果才是錄用的主要依據, 所以老魚的授課範圍改以挑戰傳統的教學課本與認證課程程序流程, 完全以企業可用人才為核心, 讓您懂得靈活運用更多有效的 Java Third-Party Library, 甚至能創作更佳的 APIs 這才是 JAVA 開發者之道。

過程中也將穿插如何做好一位好SD的課外教學.








"心態"對了, 方向就對了!


在學習的開始前, 老魚希望您能沈澱心境後, 先閱讀下列的魚文:




入學資格考(範圍)


這是給準備來上課的您, 一個小小的考驗, 代表著你來的心態與態度, 至於理由呢 ? 老魚有標示了, 當然這是在程式裡的術語行話, 不太同於一般的原詞意.
  1. "聽力"默寫(大小寫是嚴格不相同的詞)
    1. Project(專案), Application(應用程式)
    2. Object(物件), class(類別), Interface(介面)
    3. package(套件/包裹)
    4. public(公開/公共的), static(靜態的), void(空/無:代表著不須回傳結果), main(主要的)
    5. String(字串), int / Integer(整數),  Float, Double
    6. Array(陣列), [ ] (中括號代表一個陣列)
    7. args (是"參數" arguments 的簡稱, 在這被簡寫, 視為一個開發者不成文的慣例)
    8. new (創造一個物件)
    9. System.out.print( ) 代表要印出一個內容呈現在螢幕上.
    10. IDE (整合開發環境)
    11. JDK(Java開發工具組), JRE(Java執行期環境), JVM(Java虛擬機器)
  2. 默寫下列程式結構
    1. 大小寫是嚴格不相同的, 錯一字, 退學!!!
    2. 詞間空格最少一個空白鍵, 無上限.
    3. ; (分號)代表一個程式句的表達完成.
    4. { ... } 大括號是成對的, 用來表達一個區塊狀的內容, 大區塊中有小區塊.

class Main {
public static void main(String[ ] args) {
System.out.print(3939889);
}
}






Session 1 (2009-6/23)


J1001.JAVA.Introduction(概述)


  • 入學資格考
  • Pair Programming
  • J1001.JAVA.Introduction(概述)
  • 整合開發環境(IDE)
    • J1002.Java.Developer.Environment(開發者環境)
  • OO Concepts




快速下載與初級參考






延伸閱讀選





Pair Programming


結對編程
兩個程式設計師在一個工作台上共同參與、合作。就好像一個開車一個做導航員,而且最好經常是互換角色。 這種合作對開發程序有很多好處。比如增加紀律性,寫出更好的代碼等。

Pair programming is a software development technique in which two programmers work together at one work station. One types in code while the other reviews each line of code as it's typed in. The person typing is called the driver. The person reviewing the code is called the observer[1] or navigator. The two programmers switch roles frequently (possibly every 30 minutes).




自習參考


發展了10多年的JAVA, 您可以在任何的新舊書店找到數十本的中文入門書, 您可以參考老魚書櫃上的書籍清單去購買它:
或者選擇最多人點擊閱讀的 良葛格學習筆記 直接上網學習 JAVA, 省下購書的錢 :
英文程度好的話, 請從這開始:
至於想要個更互動的討論區, 您可以前往 JAVA 中文最大的社群中心挖文與詢問您的問題:

對於初學需要了解名詞的中英對照, 這裡有老魚用來翻譯的詞彙參考

如果您真的想考張 SCJP, 黃彬華老師貢獻了不少中文考題資源給大家:
http://sites.google.com/site/ronforwork/Home/javas-home

離開Java,尋找更佳語言的10大理由





GNU/Linux 下的 JDK 安裝教學



http://blog.opendigest.org/show-534-1.html