發表文章

目前顯示的是 8月, 2022的文章

Alpha Camp畢業心得

天啊!時間過好快! 還記得9個月前剛報名學期一前的糾結,猶豫轉職的方向是否正確、擔心Alpha Camp的課程是不是真的適合我,在下定決心並報名的那刻直到現在要畢業了,這過程中各種心情轉折,回頭看看這一路上自己的變化與成長,深深覺得這條路很值得! 在剛進學期一時,一切都是這麼的新鮮有趣,從第一個寫出來的if..else..、for迴圈,每個課程、作業都讓我有無比的成就感,難度不大又有點小挑戰,感覺跟玩小遊戲闖關一樣,對於踏上這條路的決定充滿了信心。還記得當我還是學期一時,遇到的困擾都不是不懂而是覺得理念不同😂。一直記得有一個要在10次以內猜出數字的作業,我還是覺得沒公布標準數字答案前,可以玩家第10次不管猜甚麼都說他贏了😂。 進到學期2-1後,第一週難度飆升立馬開始懷疑人生😂。但還好學期一進度提早完成後就有自己各種想法的嘗試和提早預讀課程,在2-1這學期比起其他同學我仍舊算是輕鬆進度飛快,克服第一週各種Array、Object的JS語法熟悉度人生第一次寫 筆記 😂,攻克第二週bootstrap熟悉度而做的人生第一個side project( 婦仇者廚房 )(從此在搞笑的路上越走越遠😂),第三週在輕鬆好玩DOM操作課程中額外自己完成的小遊戲( 井字遊戲 、 象棋 ),第四週總複習也算是沒什麼難度了。在這學期玩得超嗨,鬥志越來越高! 到了學期2-2,延續上學期的鬥志,這學期的課程對我來說還是輕鬆愉快又有趣!這學期第一週就做了個爆款的side project( 月老廟 ),可以自己加創意的作業我就用Random User API做了 超級英雄網頁 ,這學期結尾以好玩的 翻牌遊戲 學會MVC架構概念。這學期除了自嗨外,學會了重視觀摩同學作業!發現同一個功能是可以有不同的邏輯作法,也可以有更一目了然的命名和註解,於是開始學著謙卑。 學期2-3又是個懷疑人生的重磅彈😂。還是在第一週用上學期學到的MVC架構完成一個side project( 樂透轉盤 ),但在這學期課程開始git指令、github、VS Code、Node.js、Express.js各種全新工具的轟炸下,又開始懷疑我前面有認真在學嗎?😂這學期還學了資料庫概念、使用者登入認證、heroku佈署、...等,每學一個新的知識點,就讓我越來越能有恍然大悟的感覺和平日使用的網站們有了概念上的連接。很有趣的學期

Simple Twitter專案(JWT登入憑證、MYSQL、前後分離協作、Git、Code Review、Scrum流程) [ Alpha Camp學期三後端 ]

圖片
專案介紹: 後端專案連結 複刻Twitter的簡易版功能。除了複習這學期所學,這個專案最主要在體驗前後分離協作及如何在時間壓力下走完Scrum流程。 以往在Alpha Camp的學習雖然助教、同學環繞、有問題能即時詢問討論,但所有專案或作業都是一人獨力完成,這是個難得的機會能在學習階段就體驗團隊協作時與前端溝通理解如何互相配合彼此的工作與理解對方方便的資料、與後端夥伴Git協作怎麼避免不必要的conflict與如何分工和互相cover。 擔任角色與完成項目 在前後分離組裡擔任後端工程師角色,在此專案中負責: 共用檔案設置、資料庫Model建置、種子資料建置、本地端Model unit test、遠端travis自動化測試 為了避免不必要的conflict,在Scrum流程第一階段工作分配上決定unit test測試檔中,我負責完成與資料庫有關的建置並通過測試,另一組員負責與路由設定有關的RESTful API規劃。除了資料庫,有許多共同檔案的建置也由我一併完成。 (GitHub repo設置、README.md撰寫、Heroku repo設置、第一條給前端測試連線用API產出、資料庫Model建置並確定符合unit test要求、種子資料建置、登入認證錯誤處理相關檔案建置、確認後端專案完成後符合自動化測試要求) 協作路由coding與API Doc 在Scrum第二階段工作分配上,我負責與user-controller所有路由,另一組員負責其他所有路由。由於我進度較快,reply-controller路由也一併由我完成。 協作 refactor、debug 在Scrum第三階段,由於在前兩階段大量的code review,發現彼此除了coding邏輯、方式、風格不同外,也發現API產出的資料結構和類似狀況時錯誤訊息不同。討論過後決定要統一資料結構與錯誤訊息,避免造成前端的困擾。 這一階段也是再次檢查所有的API是否有問題,並交付給前端組員使用,發現問題立即調整。 git指令 由於多數組員對於git指令皆不熟悉,在專案開始前我先製作大部分這個專案會用到的指令清單。也由於我個人進度較快,在組員有git指令相關問題、前端gh-pages建置問題時,由我這裡即時提供指令步驟與觀念釐清。 專案中特別練習技術與套件 使用MYSQL建置關聯性資料庫,並使用sequelize操作資