文組工程師的轉職心路-補充-資策會課程心得分享

(文組工程師的轉職心路全文請回此處:連結)

意外收到不少私訊,詢問當初資策會上課的內容,這邊跟大家詳細分享一下這段奮鬥的時光。

當初我報名的班級是中壢的「跨域JAVA軟體工程師就業養成班」,為期半年。

第一個月~第二個月 JAVA基礎與進階課程:

最一開始,我們先學習了JAVA的基本語法,從最一開始的資料型態教起,再到for,while等迴圈的學習,再到後來物件導向的教授,一點一滴的打好整個半年的基礎。課程以外,每天都會有些小作業,如列印聖誕樹、或是實作一些基本的程式題目,如費式數列、八個皇后等問題,這些練習都有助於加深學習印象。

在這個階段負擔還不會太重,每天課程內容大約都能在一個晚上複習完,但因為此階段是後來一切的基礎,所以務必要熟的不能再熟。

第二個月 資料庫與SQL語法課程:

第二個月開始,老師開始教第二種程式語言,但嚴格還說其實是只用在資料庫中的程式語言,叫做SQL。我們用SQL語言,去查詢/新增/修改/刪除在資料庫中的資料,你會學到的使用語法,包括Select, From, Where等等。在學習的過程中,老師也會教大家如何安裝資料庫,也會提供一個做好的測試資料給大家練習SQL語法。

在SQL課程中,不時會有小考來驗證大家的學習程度,而最後也會有一次完整的大考。我記得在最後那次大考,我們整個班級大部分的人都考了2個小時以上,題目雖然難但都是實務上需要有能力解決的情況,整個課程下來我覺得老師教得非常扎實。後來在工作上,我也的確常常用到SQL,所以這個課程的學習非常值得。

然而,第二個月開始負擔就有點重了。同一天可能又上Java進階課程又上SQL課程,一個晚上可能複習不完,有時候作業還卡關,更複習不完。所以這個階段,上課的時候務必聽懂至少八成以上,不懂的下課快快問問題,以免一天堆一天,跟不上進度。

第三個月 前端語言課程(Html,CSS,JavaScript):

在我們學好Java語法與SQL語法後,後端部分差不多有個底了,課程也開始安排到前端語法學習。主要就三個,HTML是網頁的基礎骨架,實用而不好看;CSS則是幫HTML穿上潮衣,甚至加上一些動畫;JavaScript則是大腦擔當,負責處理畫面變化的邏輯,如滑鼠移到一個按鈕時,對按鈕那個html元件,利用CSS改成紅色。

這個課程是最有感覺的,許多作業都非常有趣,像是有一次我們要去實作一個時鐘,你看到自己寫的Code完完整整的像個平常在用的時鐘,一秒一秒地跑,會感到非常有成就感。另外也有一次,我們去實作一個抽獎程式,做得好的幾位同學也會在課堂上demo給大家看,你看到大家運用CSS自發地把畫面弄個美美的、浮誇浮誇的,都會會心一笑。

第三個月~第四個月 JavaEE網頁架構課程:

從第三個月開始,課程難度飆升。我們開始學習Java Servlet,一種開發網頁專案的技術。若說我們前兩個月學的是JavaSE,現在開始學的就歸屬於JavaEE,規模上提到專案開發部分,複雜度自然也提升。在這個階段,你會聽到MVC架構,每個字母各自代表一個重要架構功能:V(View)要求你會撰寫JSP網頁,也就是要你同時結合Html/CSS/JavsScript與Java。C(Controller)要求你會使用JAVA寫出專案的商業邏輯。M(Model)要求你結合JAVA與資料庫,能建立起資料庫連線並調動資料。

在M(Model)的部分,你會學到所謂的JDBC技術,是JAVA與資料庫溝通的主要技術。這個部分我覺得很難,需要花時間花心力去理解去練習。然而,這個部分也是目前課程以來最重要的一塊,在我後來的工作經驗中,JDBC技術一直出現,我也一直會需要寫當初在此課程學到的知識。比如在撰寫AWS Lambda時,就因為一些考量而需要使用到JDBC技術。

可以預測,第三個月開始,不僅要上前端課程又得上JavaEE課程,加上難度繼續提升,會漸漸看到部分同學較跟不上進度。這時候比較有經驗的人就會去幫助其他同學,當初在中壢的班級大家感情都不錯,在這個月開始越來越多人晚上留在電腦教室,去問問題去互相討論。這個時期我認為是最難撐的,但時間是真的花得值得。

第四個月 Android手機開發 + Git, Spring等其他技術:

第四個月前後會開始學習Android手機開發,從上面的分享可以知道,課程進度早就超過可以負擔的量了。所以很多同學會選擇到底要不要認真上Android課程,若放掉它,至少能把Web部分學完整。我個人也滿支持這種選擇的,除非你真的對手機開發很有興趣,我覺得可以先將重心放在Web端的學習。

由於時間緊湊,第四個月老師僅能快速帶過一些以後要用到,但現在教不完的技術。Git是一種版本控制技術,能幫助你紀錄專案每次Code的更動。Spring是Java得框架技術,使用它就能省去很多原本要自己拉起袖子開工的活。Hibernate,是一個建立在JDBC上的框架,也是能幫你省很多功的一個技術。

第五個月~第六個月 專案開發:

後面兩個月就是各組專案開發時間,一組大約6~7人,會有網頁小組與手機小組。基本上這個階段就是把前面所以武功一次用上,想當然而會遇到很多問題,但資策會的老師都很熱心幫忙也會幫我們確認開發方向是否正確。所以,這個階段就是跟你的小組一起往前衝,因為老師們會在後面當強力後盾。

專題發表與就業媒合:

最後的最後,各組會上台跟來自各地的公司代表Demo各自的專案。Demo後會立即展開面試,所以如果Demo表現得好,當場就錄取也是有可能的!

這是我們組當初的Demo專案,DDD(ㄉㄨㄚˋ底ㄉㄨㄟ)旅館訂房系統:

網頁端:https://youtu.be/HBqEe0Ad_8Y

手機端:https://youtu.be/paGOj26GJH8

Hi, I am a web developer and Youtuber. Here is my channel. Welcome to visit! https://www.youtube.com/channel/UCZ0PZi7oCPH_eUqBpNbBy0Q

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store