跳到主要內容

發表文章

當java程式設計工程師心得(16) 2023-2週自學Golang

      距上次發文又超過半年的時間了,這次就來分享學習Golang吧,因應工作需求我要自學Golang,在這轉換過程約1個月的時間我從完全不會寫go、也不懂如何部署程式GCP上,到目前已經有初步成果寫成文章分享給大家,預計會分成3篇: 1. 我如何開始自學Golang? 2. 如何在學習GCP相關知識? 3. 如何從不懂CI/CD到規劃GitOps並在GCP上串接CI/CD? 這篇先分享第1點 我如何開始自學Golang?    我習慣做事會用 Sublime Text 做筆記,因此我初期先列出我要學的幾點 1.詢問很強的Golang大神朋友(很感謝Minchao給了我超多建議) 2.學習Golang的開發工具,我初期有用Visual Studio Code寫了hello world,後來IDE改用 Goland ,它真的太強大了      Visual Studio Code :          優點:免費          缺點:plugin要找適合自己的下載試用     Goland :         優點: 官方 有附詳細的附加功能使用說明,並且你想得到的通通都內建         缺點:試用只有30天,費用訂閱制,月付或年繳 3.了解基本型別、module、function宣告方式、常用package,例如string、array、File I/O等等…可以參考這篇 Golang roadmap 自學再加上網路搜尋大量的文章花1~2星期閱讀加上練習 4.學習 gin web framework 撰寫RESTful API(API文件可使用 Swagger )、 gorm 讀寫資料庫 5.單元測試(go test)、code format(go內建有)、code style、build執行檔相關工具或指令     有關code style其實可以參考 google官方 再加上 Uber go style 6.學習專案程式資料夾框架 project-layout    在學習過程我也發現學習Go千萬不要用JAVA的物件導向去學,反而要把JAVA的觀念拋開讓自己歸零去學習一種新的程式語言會更好吸收,也才不會讓自己觀念會卡住,Go本身的設計讓其彈性很大,對初學者建議掌握下列幾點: Struct Receiver Pointers 基本型別 容器&特
最近的文章

當java程式設計工程師心得(15) 2022-滿14年

 現在是2022年最後一天最後一小時,blog也空了一年沒有撰寫了,來分享這2年我遇到的事情吧,在個人生活部份我完成幾件事情: 1. 2021年底時遇到了非常契合的聰明又漂亮的優秀的另一半。 2. 2022年初買了房子。 3. 2022年創了youtube頻道上傳吉他finger style影片。 4. 2021年開始試著用許多方式自學英文。 工作上也有些轉變及新的嘗試: 1. 2021年將入行多年使用的server、讀寫資料庫程式整理完後以open source方式發佈到maven。 2. 2021年開始參與公司GCP相關專案技術研究。 3. 2022年決定轉型當架構師。 上面每一項都能單獨寫一篇故事來分享給大家,上面每項的故事細節,之後我再回來補上吧 祝大家2023年新年快樂,以及幸福的與身邊的人開心過每一天

[JAVA]發布GitHub Gradle專案項目到Maven中央倉庫

前提說明: 我自己在GitHub上有個JAVA library專案,想要發佈到Maven Central,從完全不知道如何開始到上架maven完成,因此撰寫這篇做記錄提供教學,使用的電腦環境是MacOS。 流程大綱 : 1. 申請Sonatype帳號並建立專案,帳號用於之後要上傳打包後的Jar檔相關檔案到Maven Central,帳號主要是要申請Group ID, 若已請申請過Group ID就不用再申請 ,下面範例是我用github帳號申請Maven的Group ID「io.github.raytw」,申請成功後Github發佈可跳過此步驟。 2, 下戴GPG並建立個人公、私鑰,因上傳到Maven Central所有檔案只允許用GPG rsa加密過的檔案上傳。 3. 調整Java專案裡build.gradle Maven發佈設定。 4. 在terminal command line下指令執行,並上傳相關檔到Nexus Repository Manager(發佈前暫存管理網站),再到Nexus Repository Manager網站再次確認後進行發佈後需要等待約2小時。 5. 到Maven Central Repository Search網站搜尋自己的專案名稱。 完整流程說明: 1.申請Sonatype帳號,讓GitHub帳號取得發佈到maven的Group ID (1)在GitHub上有個專案,我的專案 8ComicSDK-JAVA (2)到 Sonatype Jira 註冊,首頁紅圈處是註冊入口 (3)註冊Sonatype帳號後進行登入後,按下上面工具列Create按鈕 (4)出現資料填寫頁面 欄位填寫說明 : Project : 要發佈library到社群就選Community Support Issue Type : 選New Project,如字面 Description : 似乎可不寫,我是有用英文簡單填寫說明 Group Id : 填寫你library存放空間,以GitHub格式固定為 io.github.使用者名稱 Project URL : Git專案存放網址 SCM url : Git專案可被直接用git下戴的連結,即網址最後是.git Already Synced to Central : 是否目前專案有曾經同步到mave

當java程式設計工程師心得(14) 2020-滿12年

今年我想分享兩件事 第一件事:       推薦最近看完的三本書的心得,書的內容對於想加強自身軟體開發能力以及朝架構師前進有些幫助 第一本 Code Complete 2: 有些章節適合project manager閱讀,可了解好的軟體開發集結的人、方法、工具,更推薦有2年以上開發經驗的軟體工程師閱讀,加強自身軟體開發觀念且功力大增,書裡寫了許多累積10年以上工程師經驗的做事方法 我個人覺得這書太晚讀到了,否則能少走好幾年的路,對我來說這本書裡提到90%以上都會了,但是這書還有一個功用,就是拿來用書裡提的數據打臉一些code亂寫的工程師🤣 第二本 無瑕的程式碼 書裡面提到許多設計原則,有些於軟體設計模式裡要應用,有些則是在系統架構上應用,也有用硬體面去套入原則,如果有碰系統架構也有寫軟體的工程師可以買來閱讀,這書能讓自己理清一些盲點。 第三本 Working Effectively with Legacy Code中文版:管理、修改、重構遺留程式碼的藝術 強烈推薦軟體工程師看這本書,內容講解如何對既有系統的code進行重構後可被測試,進而加新功能或提高程式的閱讀性及維護性,並且始終確保程式原功能不被破壞,書內介紹許多重構code高超技術,有讀有保佑,沒讀會出事🤣!裡面附的範例code為JAVA80%及C++20%,強力推薦大家閱讀來增強程式功力 第二件事:       我在google上搜尋"java吉他手"意外搜尋到一篇文章提到我,點進文章看原來是5年前曾來我網誌向我詢問過問題的網友寫的,我印象中有個網友向我詢問他想轉職相關的問題,最後我有給些建議,沒想到這位網友已經轉職且與我同行都是做後端,看文章內容也已經經歷了軟體業的洗禮了,在此一樣祝福他能工作更順利,朝自己的目標前進並加油努力,也對於還有這位網友記得我的網誌,我非常開心,我經營網誌撒出去的種子終於開花結果了(拉人入坑軟體業),哈哈哈。             最後聊聊今年心得,在工作上我也經歷了自身單內的部門對立、惡鬥、也曾深信一個人的人性,變成被這個人抺黑、我被拱成該部門共同敵人,對於這些事一開始會無法接受並讓自己陷入負面情緒狀態,慢慢的學會人要放下,不隨波逐流、也不被陷入對方的圈套或操弄而起舞,每個人進入這行追求的目標都不一樣: 有人追求薪水普通、工作不求質不求快、上班時上網網購

當java程式設計工程師心得-普通人寫程式薪資分享(13)2019-滿11年

   前陣子在巴哈看到有一位與我都是2009年出社會的軟體工程師,他貼出他個人 普通人寫程式10年來的薪資成長 ,那今年我也分享我在程式設計師這一條路上跌跌撞撞的薪資吧,先聲明我學歷是私立科技大學夜校畢業,所以無法提供前段學校的人參考,但我相信前段學校的人會有更多的機會獲得高薪,分享目的也只是提供一個可以參考數據,另外我與同事最近聊天也有聊到在軟體工程師這行業,非四大四中以外的學歷薪資再加上年資10年左右,大部份人薪資落在台幣40,000~60,000,另外我也去查了104(下面附上104的統計)。 下表為我個人10年來的薪資成長表  年份 第幾份工作 月薪(台幣) 年終(月) 產業/工作內容 補充說明 2008/11 1 23,000 1~3 軟體業(後端遊戲伺服器) 程式設計師,這是大學試用期起薪 2009/2 1 28,000 1~3 同上 程式設計師,3個月通過調薪5000 2009/10 1 29,000 1~3 同上 程式設計師,滿1年後有合作開發遊戲同梯的工程師提離職被慰留而調薪,我也莫名跟被調 2010 1 32,000 1~3 軟體業(後端遊戲伺服器、iOS手機遊戲app) 資深程式設計師,寫伺服器兼寫手機app兼帶3個人 2011~2012/9 1 35,200 1~3 軟體業(後端遊戲伺服器、iOS手機遊戲app) 資深程式設計師,上述通通包以外,要再用html5寫遊戲app。 2012/12 2 38,000 0~4 電子業(藍牙、網路傳輸、車用裝置連動相關的android app) 程式設計師,當時不懂自身的能力能談多少薪資以及產業跨滿大的,另外面試錄取後還被人資問薪資若是37000能不能接受,我當時是說ok,後來沒被降 2013/2 2 40,000 0~4 同上 程式設計師,試用期通過調薪2000,打造android app架構 2014 2 48,000 0~4 同上 程式設計師,開始著手設計app跨iOS、android平台的架構,且完成某個難度很高的專案一系列app,能力被認可 2015/11 2 50,000 0~4 同上兼管理2個小組 升任專案經理 2016~2017/6 2 52,000 0~4 同上 某一天看薪資單才發現又有調2000... 2017/8 3 ????? ??? 軟體業(後端系統架構相關技術研究) 資深工程

當java程式設計工程師心得-資深工程師(12)2018-滿10年

  十年磨一劍,霜刃未曾試。 出自於賈島的《劍客 / 述劍》       入行從事軟體程式設計工程師已經10年了,幸運的是在目前任職的公司能夠有機會發揮應用過往所累積的經驗及能力,但我個人覺得還沒用到全力,還有很大的空間,在此希望進入這行業後輩們能保有初心,記住自己堅持的目標努力不懈的前進,先求穩再求好。       分享下今年獲得了一些經驗,今年出差去了中國上海參加QCon上海2018|全球軟件大會,有興趣的人可以點超連結去看看投影片,當時進入會場時讓我感到非常震憾!!非常多世界各地的大神在台上演講新技術及應用,滿滿的人潮在會場走動,在那裡吸收到許許多多的新技術,當我們還在用舊技術的這一刻,在相同時空下已經有人在用新技術並且應用於更大型的系統,希望在軟體界的各位能一起提升彼此的能力,分享這個資訊。       再來談談工作部份,在新公司不例外的再度遇到能力被上級認可,其實從錄取到進入公司一直到負責的專案上線,過程中一直被上級詢問是否接任升遷為主管,這件事一談就談了一年多,後來經由種種考量我選擇接受升遷,但是整個團隊的運作風氣保持,目前陸陸續續也在徵新人,忙著將建立新人訓練流程,不斷的調整流程,當中也有通過與無法通過的新人,短期目標也是慢慢擴大團隊並將人的能力提升上去,接著提升開發流程品質,才能團隊一起挑戰新技術、新專案。       最後問你(妳)一個問題,你覺得百萬年薪很難嗎?這沒有絕對答案,有許多因素會影嚮,但若以我自身經驗來回答,我會回答你(妳):保有初心,堅定目標,努力提升自我能力,挑戰別人認為不可能並且想放棄的機會,你根本就不需要去思考達到百萬年薪難不難這個問題,答案自然就會有。 有任何問題歡迎留言詢問~祝大家新年快樂!

當java程式設計工程師心得-專案經理篇完結(11)2017-滿9年

過去的選擇,成就現在的你,現在的選擇,成就未來的你。       我選擇放棄感情、選擇了工作、選擇追求高薪、選擇爆肝拼進度、選擇錯過不錯的對象,不論我做過怎樣的選擇,成就了現在的我,雖然我目前達成了現階段人生目標,同時也失去人生目標了,但我不後悔也不會抱怨所做過的選擇。      我的信念是每天都要努力付出,認真對待每一件事,以及把握每個機會,過去這信念只應用於工作,今年也嘗試應用於感情,但不是很順利,覺得滿灰心的,但是我會繼續對於感情努力,多認識些對象,如果有緣看到這篇的人可以跟我加個fb交個朋友(當然是女生的話我會很開心XD)。      上面是今年的心情分享,接下來聊聊我換了新公司新工作吧,新公司新同事新氣象,有正妹工程師跟正妹統計師(我不會附圖的,才不想被追殺),可惜正妹都有男友了,但是工作氣氛真的很棒,在此給大家一個建議,真的找工作時不知道要找什麼工作,就挑團隊能力不錯及氣氛佳的公司就對了,大家合作一下工作快速完成,剩下時間就是聊天、泡茶、聊聊新技術、跟正妹同事聊聊我認識女生不順利之類,或許當你在工作上追求的某條路已經到底時,不仿轉個彎,你會發現還有路可以選擇,此時記得我文章開頭的第一句話,也絕對不要後悔,也不要抱怨,持續努力吧!!