Java程式語言跨平臺及物件導向式設計的特性,使它成為相當受歡迎的開發工具。有能力以Java開發的程式設計師,在職場上也比較吃香,如果程式設計師也取得Java證照,更能夠讓自己在工作職涯上加分不少。Sun為Java針對各種不同開發平臺,制定各種證照以鑑別該領域的專業技術,這些領域包含Java標準平臺(Java SE)、Java企業平臺(Java EE)以及Java微主機平臺(Java ME)等。
這些證照依照工作屬性不同,區分為入門認證(Entry Certification)、基礎認證(Foundation Certification)、專業證照(Specialty Certification)、高階認證(Advanced Certifcation)等四個層級。
資策會數位教育研究所資訊技術訓練中心組長蘇國鈞認為,在各種不同領域及層級的Java認證中,SCJD具有程式設計實作的考試科目,是Java認證裡最有技術鑑別度的證照之一。
以考到SCJD為目標
SCJD的考科包含考試代碼為:Exam 310-027的程式設計實作,以及Exam 310-027的申論題作答等兩科。程式設計實作的考試科目,主要在鑑別受測學員是否具有獨立開發小型專案系統的能力。程式實作的考試內容,是依照Sun所設計的測驗專案規格書,開發一套專案系統,例如航空公司訂票系統。受測人員在報名程式實作的考試後,就會產生連結,下載專案規格書、原始資料檔以及存取原始資料檔的轉介程式,然後依照規格書的需求及規範,開發一套專案系統。規格書會詳細說明專案系統所需要的功能和細節,像是以多執行緒的方式解決原始資料檔案格式轉換的問題、開發程式需具備良好的使用者介面、專案內的程式開發需要有完整注解,以及完整的系統說明文件等規範。
除了要求程式開發架構外,實作考科也規範專案開發中,禁止使用的特定的應用程式介面(Application Programming Interface,API)或是輔助開發工具,像是Enterprise JavaBeans、Servlet、JSP技術,以及JDBC(Java DataBase Connectivity)等工具,也不得使用協力廠商所提供的軟體或程式庫。
完成程式實作的專案開發後,將程式依照規定格式,上傳至指定的網路資料夾內,就算完成這個階段的考試。認證中心會依照評分標準,審查專案並且針對各項目給予分數。和其他IT證照考試科目不太相同,SCJD的程式實作考試,並不限制時間以及考試地點。雖然時間不限制,但Sun教育訓練中心表示,如果受測人員在程式開發上花費的時間太久,可能會因為語言版本的升級而影響考試,因此他們建議受測人員最好盡快完成專案開發,完成程式開發實作的考科。
申論題的考試內容,是到指定的考試中心,以英文寫作的方式回答四題申論題,內容主要在測驗受測人員是否能夠活用熟知的Java程式語法及架構等知識,完成專案系統的開發,例如論述專案開發所使用的網路通訊協定為何,以及為何使用此通訊協定來開發專案等問題。受測人員得要對這些技術和應用有一定程度的了解,以及舉一反三的思考能力,並且能夠以通順的英文文句表達,才能在考試作答上更加得心應手。
熟悉4種Java專業人員必備的技能
資策會數位教育研究所資訊技術訓練中心的講師馬全德表示,要通過SCJD的認證,除了在程式撰寫的能力上有一定水準外,還需要具備4種Java程式的開發技術,包括:
一、多執行緒程式語言開發
SCJD的考題會提供一個特殊規格所組成的資料檔,也會提供一個存取該資料檔的轉介檔案,受測人員需要將這個資料檔裡面的內容,轉譯成可供程式操作的資料,也需要將程式輸出的結果透過轉介程式回存到資料檔內,在開發程式內要處理上述過程,就得具備多執行緒處理的觀念,以完成專案資料的讀取及寫入。
二、Remote Method Invocation(RMI)通訊協定
專案內容會透過網路存取系統,受測人員需要透過RMI通訊協定,傳遞系統所需的訊號。考試並不強制規定使用RMI通訊協定,考生也可以自行定義一個Socket解決網路通訊的問題,不過這樣要自行定義一組通訊協定,一般仍建議使用RMI解決網路傳輸的問題。
三、Jar檔封裝技術
專案要求程式除了功能完整,還要好用,除了使用操作上好用,連帶安裝過程都要簡單易用,因此需要將開發出來的程式封裝成一個Jar檔,讓製作出來的系統能夠直接安裝使用。
四、對MVC框架和單例(Singleton)模式等架構有一定的了解
專案對於程式開發要求相當嚴謹,規格書裡面也將詳細描述程式語法的架構要遵循何種開發模式,像MVC(Model-View-Controller)框架及單例模式等。程式撰寫是否符合這些架構在考試配分中占有相當大的比重。