Bristol computer science conversion 第二學期心得
第二學期主要有 Java, Software Tools 以及 Overview of Software Engineeringㄧ樣是以半實體以及半線上為主,ㄧ個裡拜會有各2堂的課加上ㄧ節助教課。但不得不說這ㄧ學期的課相較於上學期真的比較隨便一點,也許也是因為自己的原因,覺得好像沒有第一學期這麼的忙。

Java:
開學的第一堂就開始教OOP的觀念,就不像從C開始ㄧ部ㄧ部教怎麼樣設參數已及for loop那些的,其他都要自己來理解。上課的部份變成是所有的課都放在網站上,ㄧ個裡拜會有ㄧ堂線上課非常概略的說這個禮拜要學什麼,然後緊接著下午會有ㄧ堂助教課可以去問問題,但不會有上學期ㄧ樣多的助教在旁邊,所以多數時候,我也不在去學校的助教課了都在家弄自己的東西。 這學期會教ㄧ些更概念的東西像是MVC 或是code Quality 類似這種的概念,不會專注在怎麼寫code的部份。作業的部份時間也比之前充裕很多,大概都是2個禮拜或3個禮拜的時間寫。
這學期就不會有考試,反之將會有3份作業分別占比25%、35%、45%。第一份作業會是在第三周寫ㄧ份圈圈叉叉的code,利用MVC的概念,要寫出ㄧ個可以增加欄數又或是增加玩家的圈圈叉叉(更進化版本)。這邊剛從C轉成Java對我來說很多東西很不熟悉,也很不懂OOP的概念,所以雖然這份作業可以寫2個禮拜,我還是弄了很久才完成。
第二份作業是利用Java寫出MySQL的語法,這份有ㄧ點像是C的最後一份作業,但語法複雜更多,我這份作業寫了整整3個禮拜,而且到最後ㄧ天還熬了24小時的夜在寫code,這份要考慮的東西,也許也是因為我在寫code的ㄧ開始沒有好好規劃,所以弄到後面很多後面的東西沒考慮到,這份也是所有資料都有關連,所以我稍為小改了ㄧ點後面的程式就會報錯。所以記得在寫code之前,最好完整把架構想法想清楚。但聽其他朋友說這ㄧ份作業原本應該是期末的作業,但不知道什麼原因變成了第二份作業。
最後一份作業是寫一份簡單的地圖遊戲這份遊戲好寫很多。這學期總體而言可以感覺得出來教授沒有C教授教的認真,主要都是自己摸索,很多java的東西都是要自己上網去學的。
Overview of Software Engineering:
這堂課老實說老師也都講了一些非常大概的東西, 像是Agile Development、Test Driven Development、以及HCI,雖然壓力不會到很大的課,但是這些的東西會跟最後的summer project有關,因為這份的作業會有要寫一份跟summer project 的大綱,在這堂課裡面也會選你想做的summer project,可以選個人的project又或者是group project,如果選個人的話我印象中就是寫paper,但如果是選group project會是跟相關企業合作,幫助他們開發軟體,我運氣很好的選中跟IBM合作開發text messaging app,其他我印象中有跟NHS寫醫院的排隊系統的等等又或者幫公司架網站之類的。
software tool:
最後是software engineer tool,這堂課主要是教posix,git,前端(HTML, CSS, Javascrift),以及資料庫(SQL),比較可惜的是所有的課都是線上課,而且多數都是只給資料自己看,舉例來說這2個禮拜應該是教HTML,原本以為教授會錄一些有用的recording,但結過只是給我們MDN資料來看,基本上教授並沒有給什麼任何的教學,但可能也是因為上一學期已習慣自己查資料,也可能自己已經提升了自學的能力吧,覺得學起來並沒有多大的問題,但是以這個高昂的學費來說,比我預期差很多。 再來就是學期中這堂課有教授有停課了2次因為罷工,當時我就很好奇了,明明上課也沒教什麼東西怎麼敢罷工? 最後就是考試了,這堂課完全沒有作業也沒有期中考,只有最後有個期末考佔比100%的成績,可以說是非常的刺激,而且考試是60題60分鐘,一場考試定生死。 這堂課說真的並沒有什麼好說的主要都是自己看看資料學習,老師所教的東西大大的不夠,必須要自己很努力的練習。