Chris M.༒
程式 筆記
熬夜三天終於...寫出了能動的東西
Artisan Cosmos Demo
https://images.plurk.com/6APa5vckZBOvTnFQ2HxqF9.png https://images.plurk.com/12hWllCVDoPpYX0FgBgkrF.png https://images.plurk.com/2WMXDXzOcOZKwUg1POHZv1.png https://images.plurk.com/30NObN6Bmvfjoh1ELgg93R.png

(只是個雜談噗,可以隨意留言)
Chris M.༒
沒錯,DEMO影片裡面有璐璐友情贊助的展示作品,謝謝璐璐 !!

其他的素材來源:
前端模板來源:Cyborg - Awesome HTML5 Template
照片來源:Unsplash
插圖來源:Irasutoya、Storyset
LOGO和Banner:AI算圖+後製
Chris M.༒
我覺得很好笑的是,我熬夜三天身體就差不多要爆炸了,但班上比較年輕的小夥子跟我說他熬夜一個禮拜還活跳跳,然後我被他嗆爛

我:你好猛喔
他:因為我年輕嘛
我:對啦可是我也......
他:因為我年輕。
我:欸但是我也才──
他:因為我年輕。
我:好啦!!
Chris M.༒
總之,以往都是接手人家寫好的東西(然後看不懂)、或者是專題抱大腿的我,這次終於第一次獨自從頭到尾架了一個系統

4個月密集上課果然還是有效的,我從Java的原生語法都不熟(像是連final是啥都不知道)到現在可以套Spring Boot了,而且還切得出Model、Controller、Service、Repository,我總算是有不用再說「我軟工課學的東西都還老師了」的一天
Chris M.༒
前端則是自己之前跌跌撞撞、還買了課程才勉強會一點點毛皮的React
到現在Hook我還只會用useEffect跟useState嗚嗚
https://images.plurk.com/47fDxcTzgrMBwE9TY70Pv7.png https://images.plurk.com/5uARl1oGIHML4XhsY2Lccq.png https://images.plurk.com/35WVLk2VMykmDs1jKlyqQB.png https://images.plurk.com/3yuVNA1n0vOSWbLg8JfXT7.png
(就只是隨便截一些code)
Chris M.༒
後端反而因為架構明確,蓋起來跟修改起來都挺順暢的

然後Hibernate真的好扯喔,只要寫這樣短短9行、沒錯,9行,就可以涵蓋所有增刪改查的功能了
https://images.plurk.com/5luW6TU2tAXqEcXXYNlNKM.png

對應的Service,有點可怕、有點亂,之後應該要整理一下然後加點註解
https://images.plurk.com/12CzGe8op1a0ZeaxpimPHm.png

Entity也能用Annotation自動注入,好好用
https://images.plurk.com/7DleICY0zpdZrvBoHCfKSL.png
Chris M.༒
資料庫就直接偷噗首的圖好了,懶得再把MySQL打開了
https://images.plurk.com/30NObN6Bmvfjoh1ELgg93R.png

我是第一次寫這種用一張table來描述其他table之間的關聯的寫法,例如那個work_tags,裡面有work_id跟tag_id嘛,使用方法就是:

假設1號作品(work_id=1)有兩個tag,分別是3號tag(tag_id=3)和4號tag(tag_id=3),work_tags這張表裡面就會有兩筆資料,分別是:
1. work_id=1、tag_id=3
2. work_id=1、tag_id=4
Chris M.༒
然後這些全部都跟我一開始規劃的草稿完全不一樣
https://images.plurk.com/1F2sTFM2BUBH0efDBcdxqT.png https://images.plurk.com/1vVIxetit8zVyyE90OoyOa.png https://images.plurk.com/7rshioZhfCbWa42e3iwM2n.png
Chris M.༒
後來的DB架構之所以大改是因為,我的AI好夥伴給了我這些建議......我整個大驚,原來可以這麼做的嗎

用Hibernate也是他建議的,真的比JDBC手刻SQL指令快多了......感動到哭出來
Chris M.༒
再次感謝先人的智慧結晶,謝謝大數據
Chris M.༒
不過AI輔助還是很容易出現前後文自相矛盾的狀況,如果只是一味地摳他寫的code來用,肯定動不了(O)

正確的用法是每次提問都把自己寫到一半的code片段和/或程式架構圖貼給他看,具體跟他說你哪邊要怎麼修,然後斟酌著用他的solution

或是有時候他會給出繞很大一圈遠路的solution,你可以直接跟他說我只想套現成的library之類的,他也給得出相對應的做法
Chris M.༒
這可能也是為什麼其他同學跟我說他們用AI越用越頭痛,還不如不要用 如果沒辦法自己判斷出AI給的東西是好是壞,那真的會、會很可怕
Chris M.༒
(做到一半停下來跟他聊天,他說我很有禮貌

https://images.plurk.com/7xGR3w0ADjSXwXAC8Ll7A5.png
Chris M.༒
裝了VS CODE的養寵物插件,貓貓還會爬牆,可愛(
https://images.plurk.com/3D0SKlkvWEXnqoTX0YFhdB.png
Chris M.༒
我把網頁丟給我哥玩,他秉持著這個笑話的精神亂搞了一通,還真的給他測出BUG,煩死wwwwwww
https://images.plurk.com/2KA7JRFvdE6AbuYh1CHm5T.png

他上傳2GB的EXE檔,我的網頁直接壞掉,好啦我來加檔案容量跟類型限制
璐 🅷 ҉T҉R҉P҉G҉
要了一唄......蜥蜴?
Alviss
酒吧著火啦
Chris M.༒
璐 🅷 ҉T҉R҉P҉G҉ : 沒錯,一杯蜥蜴。

Alviss : This is fine.
Chris M.༒
他還幫我測出使用者名稱放Emoji會當掉的BUG,我修好了
https://images.plurk.com/22Ofd8qTrMSiH3QXO9IQW5.png
Alviss
最佳測試員w
Chris M.༒
Alviss : 真的要頒給他最佳測試員的獎盃
Ping
強烈推薦 copilot,整合vscode,他會讀你專案的code,依照你的風格告訴你接下來要怎麼寫,用起來比chatgpt好用太多
Chris M.༒
Ping : 可是我很怕用習慣了會太依賴他欸www
chatGPT是我想完要怎麼寫之後才去問他,裝copilot的話我怕我會連怎麼寫都還沒開始想就被暴雷(?)
Ping
依賴啊,哪次不依賴(X
這就好像是說有人會說一直查StackOverflow是一種依賴嗎,的感覺
Ping
當然他給你的東西還是要理解一下,不可能一直無腦貼上,不然久而久之就會覺得這個專案到底是誰寫的(X
Ping
copilot也有跟chatgpt差不多的聊天介面,也可以只用這個就好,主要是可以直接打開編輯器然後在你有問題的地方讓滑鼠游標停在哪裡,或是把你要改的某段code框選起來之後再問他問題,他就會根據你框選位置還有附近上下文來判斷怎麼回答你。
Chris M.༒
Ping : 也是欸,剛開始學程式的時候真的會有種迷思,覺得不靠自己一個字一個字寫出來就不行,很抗拒查stack overflow
寫到後來真的是依賴啊,哪次不依賴

哦哦哦可以框選程式碼問他的話好像不錯,我先試試看這個好ㄌ,謝大哥推薦
載入新的回覆