1101616 實習報告
環境:
精誠資訊位於台北市內湖區瑞光路318號,公司離捷運港墘站走路大概10分鐘,附近也有美食街,在交通和吃飯算是非常方便。上班時間為八小時,午休時間一小時。
工作內容
▲地下室有大面積的會議空間
▲地下室也有懶人沙發,可供同仁休息
工作詳述 :
我所在的部門是數位保險應用服務處,主要負責各大銀行保險代理人系統的設計以及維護。在這幾個月之中,主要是翻寫遠銀保代系統,從前端到後端,了解到網頁架構是如何應用在大型專案,在大型專案中是如何做版本控管,也透過工作性質間接了解到保險業的服務項目。每週也會跟主管開一次會,跟主管報告進度以及提出在翻寫交易時遇到的問題。
實習期間完成之進度 :
我的工作內容主要是翻寫遠銀保代系統,包含AP Server端程式的修改,主要分成以下階段:
-
熟悉環境-1月:
這時期主要在熟悉公司的環境以及架構,架設環境,下載站台,練習如何在公司保代系統新增一隻交易,該如何建立分支,完成交易後該如何上傳到TFS,以及認識公司制定的函式庫要如何使用。
-
實習生練習-2月:
這時期主管有請學長幫我們上課,針對AngularJS做教育訓練以及SQL練習,讓我們可以更快的步上軌道,更加深入了解什麼是交易。交易是提供同系列功能的程式群組。後端提供對同一功能的資料庫增、刪、改、查、匯出CSV、匯出PDF,亦或是電文呼叫等等...。前端針對客戶需求提供對應操作頁面,並呼叫後端完成資料變更。上完課後,讓我們依照規格書做出相對應的功能,在這個月之中,已經讓我漸漸了解到底該如何寫出一隻完整的交易。
-
翻寫交易-(3月~7月):
在這段時間裡,我主要在翻寫遠銀保代系統,並已完成了三隻交易:「受領資料領件作業」、「受理審核確認作業」以及「受理主管放行作業」。這些交易涵蓋了前端網頁的語法以及後端 AP server 端的 C# 和 SQL 語法。為了提高代碼的重用性和模組化,我們將後端專案打包成 DLL 檔案,並放到 AP 端,通過函式庫的方式供前端使用,這樣可以更有效地管理和維護程式碼。在完成翻寫後,同事或學長會幫我們CodeReview。這一步驟非常重要,因為它能夠幫助我們發現並修正可能存在的錯誤或改進的地方,從而使程式碼更加穩健和高效。透過同事的檢查和建議,可以確保最終的程式碼達到一定的程度,同時也能夠互相學習。
-
遠銀保代系統翻寫-根據規格書增修程式碼-(7月~現在):
翻寫完交易後,會依照需求規格書去撰寫測試報告,測試這隻交易的功能是否完善,測試過程中如果有發現功能錯誤,就必須再回去修改程式碼,直到測試報告中的功能都能夠成功執行。而如果遇到對測試報告的內容有疑惑,也可以直接問SA,互相溝通討論,一來一往可以學習到很多東西。
工作當中扮演的角色 :
在工作中,我扮演的角色主要是前後端翻寫、開發和除錯。我的主要職責是負責翻寫遠銀保代系統,使用.NET Core、HTML、Angular JS等技術來完成交易。
▲練習交易的規格書
▲專案開發
學習
程式能力:
需要了解如何應用 Node.js 的模組,因為我們的專案是建立在 Angular CLI 上的。其次,需要熟悉 TypeScript 的語法,因為與 JavaScript 不同,TypeScript 具有型別和介面的特性,而 Angular 引入了 TypeScript,所以花了一些時間來研究它。而公司正在將 AngularJS 的功能逐步轉換為 Angular 架構,因為 Angular 具有更好的執行效能和更易於維護的特點。與 AngularJS 相比,Angular 的語法也更加嚴謹。
程式碼易讀性:
在撰寫程式碼的過程中,保持程式碼的易讀性至關重要。這包括使用一致且有意義的命名規則,特別是對於參數、變數、方法以及資料表欄位等。這樣不僅能使自己的程式碼更加清晰,也能方便其他開發人員理解和維護。此外,命名要有意義,應該要能夠反映出變數或方法的用途和功能。例如,不要使用 temp 或 var1這類模糊的名稱。
另一個重要的點是保持程式碼的整潔性。經常會遇到一些不再使用的程式碼,如果不及時刪除,這些冗餘程式碼會讓程式變得混亂,增加後續維護的難度。當我在翻寫程式碼時,常常會遺留一些不必要的程式碼,如果沒有及時刪除,之後再閱讀這份程式碼的人需要花費更多的時間去理解,並且可能會被這些冗餘部分誤導。
解決問題的能力:
在剛開始編寫程式時,我經常會遇到一些問題,並因此卡住,有時候一個上午都無法解決。經過長時間的思考仍然找不到解決方案,讓人感到非常挫敗。後來,我明白了應該要善用公司的資源,遇到困難時主動向學長或同事求助。有時候,我自己苦思冥想了好幾個小時的問題,學長可能在10分鐘內就能解決,這樣可以更有效率地完成工作。一開始程式出錯有時候都是因為大小寫轉換的問題,導致程式跑不出來。因為從後台傳資料到前台時,命名名稱會因為.NET.core轉換。
例如後台的DG名稱為 TbiasParmGlobleCode,前台接收時result.body.後的名稱會變為tbiasParmGlobleCode,如果這時前台名稱命名為TbiasParmGlobleCode,這時前台就會接收不到後台傳回來的值,導致程式出現錯誤。
如何偵錯:
在撰寫程式時,難免會遇到錯誤。在學校期間,因為程式碼規模相對較小,我們可以一行行地檢查,找出錯誤的所在。然而,在職場上,專案的規模往往是學校作業的數倍,逐行檢查不僅耗時,還會大大降低工作效率。因此,學會如何有效地偵錯,成為一項至關重要的技能。
其次,學會閱讀和理解錯誤訊息也很重要。編譯器在遇到錯誤時,通常會提供詳細的錯誤訊息和堆疊追蹤。通過分析這些訊息,我們可以快速找到錯誤的源頭。學會從錯誤訊息中提取有用的信息,能夠幫助我們更快地解決問題。在職場中,透過有效的偵錯方法和技巧,我們可以大幅度提高工作效率,保證專案的順利進行。
▲前端 AngularJS 的使用
▲後端 C#的使用
▲Angular的使用
自我評估及心得感想
在這段時間的實習經歷中,面臨了許多挑戰,但同時也獲得了很大的成長,每一個挑戰都是一個成長的機會。儘管在學校學習了許多專業知識,但實際應用時發現其中仍存在不少盲點。
在實習中,我遇到了許多需要專業知識解決的問題,這讓我意識到自己需要更深入地了解相關領域。所以,我主動尋求機會閱讀相關文獻,向同事請教,以彌補自己的不足。這個過程不僅讓我更加熟悉所需的知識和技能,還培養了我的自主學習能力和解決問題的能力。透過不斷地學習和實踐,我逐漸克服了專業知識上的困難,並在實習中取得了更多的成就。
這段實習經歷也讓我深刻地認識到,專業知識的學習是一個持續不斷的過程,而不是一個簡單的終點。每個領域都在不斷發展演變,我需要不斷地跟進和學習,才能保持競爭力和適應性。而除了增進專業知識外,這段經歷也讓我意識到了自己的學習態度和工作方法上的不足之處。我發現自己在面對困難時有時會感到沮喪或失望,但隨著時間的推移,我學會了轉變這種消極情緒為積極的動力,並努力尋找解決問題的方法。
對系上的建議
感謝學校提供了這次寶貴的校外實習機會,讓我們能夠親身參與實際的工作項目。在這段實習期間,我不僅加深了對職場運作模式的理解,還幫助我確立了未來的職業目標。實習讓我能夠將課堂上學到的理論知識應用到實際工作中,從而奠定了更加堅實的專業基礎。