Sep 28又再次入門了 Java近期搭著 ITHOME 鐵人賽與 JCConf 2023 宣傳期的氣氛弄了個簡單的 Java 教學。 雖然自己已經離「初學」時期有一點久遠,但持續累積了不少引導的經驗後,現在回頭看學習材料會驚覺,原來我習慣的表達方式或學習策略,在經歷了多年後已經跟書上有著明顯的不同。特別是基礎的「資料型別」的部分。 儘管現在較新的語言已經不太區分原生型別 primitive type 與其他自訂型別,以 Java 來說就是 reference type 也就是類別。無論是何種情況,入門用的書籍或是影音教材都會有教到這個單元。 我發現我自己傾向在介紹或是「傳遞知識」的時候,往往喜歡把它們一起揉起來傳授。 原生型別 → 可以使用簡單運算子的型別在算式 (expression) 之內 + - * / > < == https://openhome.cc/zh-tw/java/syntax-abc/operator/3 min read3 min read
Feb 28跟 ChatGPT 一起 Pair Programming由於近期參加的學習團體,是個相當喜歡以不同的語言結合軟體工程方法論,同時探討理論的實踐與實務上實作併進的。但自己有個顧慮,看別人做起來困難重重的事情,自己還沒體驗過去給意見不太好。基於這個動機,試著用 C++ 搭著 Drogon Framework 寫了一個簡單的 Side Project,來體驗一下開發上會遇到的困難。 當然,除了實作上的問題,也 …ChatGPT11 min readChatGPT11 min read
Jan 31Database 的 Index 是什麼?Index 索引,它的用途就如同一些書籍的最後幾頁,標示了書中所提到的「詞彙」對應的頁數。下圖為 Thinking in Java 2/e 繁體中文版的索引頁: 而 Database 的 Index 也是相似的功能,只是它會針對 Key 或是獨立建立的 Index 來當成索引。以上圖為例,若是我想要尋找 abstract 相關的概念,我可以在圖上的 …Database8 min readDatabase8 min read
Nov 24, 2022遊戲《情書》Walking Skeleton 的開局測試跟著水球軟體學院的遊戲微服務計劃,走到實際開發的階段囉!作為大舉開發的前哨戰,建立一個 Walking Skeleton 是重要的,它恰好可以用來整合先前探索與分析的基礎,構成一個良好的進攻據點,並作為一個可以測試的文件存在。 分析材料 實作 Walking Skeleton 時,需要將完整情境的其中一條打通,讓它是最簡單的實作型式。目標不是「完整」「完美」, …6 min read6 min read
Nov 14, 2022Walking SkeletonA “walking skeleton” is an implementation of the thinnest possible slice of real functionality that we can automatically build, deploy, and test end-to-end. from Steve, Freem …9 min read9 min read
Nov 14, 2022遊戲:玩命起司先談談寫這篇文章的原因? — 在 JCConf 結束後,被一篇 FB 上的貼文 所吸引。其中的要旨就是由於遊戲的複雜度,恰好足夠用來作為練習軟體工程技術與品味對象:5 min read5 min read
Oct 11, 20222021 後,新的常態在疫情間,蠻多事情不知不覺中改變了。去年的 5 月大家緊繃著躲在家裡的時間,我也因為關著太久而悶壞了。那時是台灣經歷首波的本土大流行,每天都看得到前所未見的確診數字。維持了很久,即使沒有練得勤勞的健身習慣也暫時停止。但是透過這個契機,反而帶來了新的改變。在電視媒體上看到外國向群眾宣導的 new normal,終於換我們要去面對了。 在那段時間,有二個主要的催化劑形成了我由去年開始,持續到現在的新常態。一是讀了被許多人推崇的《原子習慣:細微改變帶來巨大成就的實證法則》,另一個是也有在健身的朋友在臉書上寫著:「不能去健身房,那就由增肌轉成減脂吧!」 原子習慣 原子習慣講述著許多改變自身行為的許多策略,行為是習慣的結果,而習慣是受到整體「情境」的邀請所致。書上有許多具體的行動方案都可以讓人往想要的目標前進,在開始之前我接收到更重要的事情是「信念」,而在得到成果的時候,我反倒發現了「改變的信心」。4 min read4 min read
Aug 22, 2022用 AWS Cognito 實作經典的登入服務AWS Cognito 主要提供帳號管理與授權的服務。舉例來說,使用它可以簡單做出供一般使用者註冊帳號,登入帳號的功能。而你所提供的系統的使用者,可以進一步取得事先設定好的 IAM Role,正常地使用 AWS 服務。當你正在設計的服務,需要提供使用者管理的功能實,用 AWS Cognito 的 User Pool 就能夠做到,特別是當你沒有很在 …AWS14 min readAWS14 min read
Jul 10, 2022學習程式語言不變的部分在進行程式語言的教學、學習或訓練時,我個人喜歡把核心放在「資料型別 (data type)」與「生命週期 (symbol 的 scope)」,最後才是「語法 (syntax)」。 語法放在最後,倒不是它不重要。而是多數的書籍或影音資源都會充份地解說語法,也是新手或初見的學習者最容易「觀察」並「模仿」的部分。在學習新東西的初期,所有的心力大多投入在語法的問題上了,以我的觀點,那是最不需要投入的部分。不管理解程度多少,學習者總是在輸入著程式,抄寫著程式,改寫著網路上查到的範例,語法的形狀遲早會熟悉的。這麼「反覆」使用的東西,不必刻意花時間記住,也能自然地刻印在心上。 相對於「外顯」且易於覺察到的語法,「語意」部分沒特別提醒的話,多數的學習者並沒有特別去下功夫。儘管「語意」聽起來抽象,程式語言至少不像我們日常使用的語言那樣的多變不可捉摸!對程式語言來說「語意」的主軸就是資料型別與符號的可視範圍 (即生命週期的意思),再加上各種細瑣的語言特性。Coding5 min readCoding5 min read
Feb 20, 20222022 TWJUG 講者孵化器各位社群朋友好,過完了元宵 2022 年正式開始囉!今年 TWJUG 依然持續著線上日常的活動,在這開頭的 moment 當然要先繼續來「孵」講者。不管你想著的內容是入門或進階,跟 Java 很相關或著是跟 Java 不太相關都歡迎來討論。像我們過去的題目,一直都沒有限制是以 Java 為主,只要你的想法能對參與者有所啟發,或改善開發與學習的效率都是值得分享出來的。 在 2022 年,持續「孵」講者的部分,會新增一種型式:「預錄影片直播」。二年疫情因素,許多研討會改採線上舉辦,為了避免網路品質的干擾,多數線上議程是採用預錄直播,講者會在開講與 Q&A 時進行線上互動。這麼做有個優點,就是能避免演講經驗較少而過於緊張,事先錄好的情況就可以錄到較為滿意為止。 想成為講者的朋友可以: 即時直播演講 預錄直播演講 帶實作的工作坊 以上三種型式是對於演講型式的基本參考但不限於這些型式,只要你能獲得良好的效果並傳達想法都是可以接受的型式。Twjug2 min readTwjug2 min read