這個題目是我私心訂下的(哪次不是?),8Please respect copyright.PENANAB9xpglPrwk
意思是沒有要管大家看不看得懂就是~8Please respect copyright.PENANAV0S8CTsGBM
畢竟從畢業到現在已經當工程師這麼多年,8Please respect copyright.PENANAxb58zhWZKU
接觸的程式語言雖然都是大家耳熟能詳的那些,8Please respect copyright.PENANAzcBrmn3GMu
也不少了~8Please respect copyright.PENANAody15SZssA
所以這次的分析算是藉由我對於所學過的程式語言的觀點整理,8Please respect copyright.PENANADHk5LPOox8
(不代表建議新手該從哪個程式語言入手喔)8Please respect copyright.PENANAydDlMAtXjX
然後來跟學長的特質做對應喔!
第一個我想到的最佳解就是Python,8Please respect copyright.PENANATMJLMw6L2Y
Python顧名思義就是蟒蛇,8Please respect copyright.PENANAs9uRHiUsCr
他的Logo是兩隻蛇纏在一起,8Please respect copyright.PENANAR7D1rbPvru
一隻藍色一隻黃色~8Please respect copyright.PENANA7ytpnOr0ac
此外,目前最受歡迎的Python編輯器之一叫做Anaconda,8Please respect copyright.PENANAYblXve4LlH
是森蚺的意思~8Please respect copyright.PENANAvQbJ9ab7WZ
會選擇這個程式語言,8Please respect copyright.PENANAokfyd1xktg
除了是Logo讓我幻想成學長和我們手牽手的樣子,8Please respect copyright.PENANAC9kOJNrUXw
再來就是蛇代表小龍(讓我想到迷你龍)~8Please respect copyright.PENANAMvy19waWMj
還有Python的繼承跟別的程式語言不同,8Please respect copyright.PENANAftB7rJR3LX
一般程式語言的繼承只能有一個父類別(一個父親),8Please respect copyright.PENANA8nbu6FyKPi
但是Python卻可以有多個父類別(多個父親)!8Please respect copyright.PENANAR7dUKQlyPA
這讓我覺得對應到了學長的多重身分~8Please respect copyright.PENANAJOz9g8BCxb
既是四天王也是聯盟社社長,8Please respect copyright.PENANAFdNi4Uul5i
再來就是Python簡化了很多語法,8Please respect copyright.PENANAqiyNphhV3r
是懶人救星~(相當於學長懶散的個性)8Please respect copyright.PENANAKa1UHrs6Cb
比方人家寫方法要用function,8Please respect copyright.PENANA2sC3D8yF48
Python只要用def就可以定義方法了~8Please respect copyright.PENANAEGdk600txY
對了對了,8Please respect copyright.PENANAHHnzvHTvrP
Python也是許多人用來學習處理大數據(meta data)、8Please respect copyright.PENANAH7qk6I8WAs
AI(scikit-learn)、爬蟲(Beautiful Soup)的程式語言呢!8Please respect copyright.PENANAT3Lpf7RmeB
對應學長的戰術能力剛剛好呢!
雖然最佳解出來了,8Please respect copyright.PENANARcY746z97E
但還是要給其他的選項供人思考呀~8Please respect copyright.PENANAFcLcEiPWPc
那麼第二個選項就是Java8Please respect copyright.PENANACe050wXG27
沒錯,就是爪哇,還有咖啡豆的那個Java~8Please respect copyright.PENANANcyytIUPox
當年代代流傳Java螞蟻書(而且是有翅膀的螞蟻)~8Please respect copyright.PENANAuRj8G2A7XW
我因為畢業很久,想說我再也不碰Java啦~Jo Jo!8Please respect copyright.PENANAyHC1FiGasC
就把那個超厚的書做回收了~8Please respect copyright.PENANArykoIkoOsE
然後我就遭到報應了...8Please respect copyright.PENANAZQNRhljjJK
好在重新接觸Java沒有花太多時間就是,8Please respect copyright.PENANAiAonDcDnuP
凡走過必留下痕跡嘛,8Please respect copyright.PENANAlFr6OZwVKD
我可是號稱2年沒碰的程式碼不會忘,8Please respect copyright.PENANAsdyXOsfF3z
10年前公司的專案我也知道怎麼維護呢哼哼!8Please respect copyright.PENANAP5hTi88bSJ
那為什麼選Java而不是Javascript呢?8Please respect copyright.PENANAh2Wa29h30f
因為我個人私心覺得,8Please respect copyright.PENANAOlmF6oyLWu
學長的個性還有給我的印象,8Please respect copyright.PENANAqUZeRyw8oU
比較偏向後端程式語言。8Please respect copyright.PENANAjEMFidg0bB
然而我就不在這邊討論前端與後端程式語言的差異,8Please respect copyright.PENANAAP0BIfPRu2
只想奉勸你們各位已經被冠上全端工程師(如我)的工程師們,8Please respect copyright.PENANAgyUvzafkG3
不要拿後端思維到前端程式碼使用~反之亦然!8Please respect copyright.PENANA8NMbAVgxMO
我們繼續說下去,為什麼選擇Java吧!8Please respect copyright.PENANAHB4tsaDljI
第一個理由確實是因為咖啡的關係~8Please respect copyright.PENANALN7Agy9qk8
畢竟代表學長的飲品中多少都有跟咖啡有關的選項。8Please respect copyright.PENANAZ9ZU8wYdpo
再來就是學Java免不了要會的OOP(物件導向程式設計)~8Please respect copyright.PENANAgNRpiplDVh
我也曾經歷過不懂為什麼命名要叫做set還有get,8Please respect copyright.PENANAtZBZTRIAVb
不懂為什麼建構子(Constructor)代表藍圖...8Please respect copyright.PENANALkjodmc5LG
以及分不清楚abstract和interface的時光,8Please respect copyright.PENANA61e90yctgC
好在學了多個程式語言,反而把不會的概念也補完了!8Please respect copyright.PENANAVfxRJFgFcK
儘管OOP不是只有Java有,8Please respect copyright.PENANA1rfyabhm0o
等等的那個選項也有這個觀念,8Please respect copyright.PENANABDPUCEMKYf
但畢竟是我第一個正規接觸的程式語言(註),8Please respect copyright.PENANAcfhFBhIpFL
所以就以Java作為代表了~8Please respect copyright.PENANAXwTUiqdUsV
OOP這個技巧的出現,8Please respect copyright.PENANAsmnfzDLyEp
其實是為了讓程式碼能夠再利用,8Please respect copyright.PENANALNQprOwkxj
讓你不至於成為碼農、什麼都複製貼上~8Please respect copyright.PENANAmCIJ4Zz5yp
同時也比較好維護程式碼~(註2)8Please respect copyright.PENANAM0ph4SLxF3
而OOP的最常見的三大觀念即是─8Please respect copyright.PENANAyJZNUZYVQS
封裝、繼承、多型8Please respect copyright.PENANAL78AqE13cZ
讓我想到每個人加入聯盟社(繼承),8Please respect copyright.PENANAEDg5pN7o1J
成為聯盟社的成員(實例化),要努力賺BP(多型)~8Please respect copyright.PENANAPRthNWUa6N
關於多型,我看到有人下一個很簡單易懂的註解─8Please respect copyright.PENANARPBNjsjgLZ
即是指一樣的事,不同做法。8Please respect copyright.PENANAsDbBE8UlYp
又或者:同一個行為,但有不同的結果8Please respect copyright.PENANApDFsfNl9eH
而學長代表Java神之手讓我們進入聯盟社,8Please respect copyright.PENANA6eZzcyyCcY
開啟了農BP的地獄(特別對沒朋友的人不友善的機制)...8Please respect copyright.PENANAJi8zUE9ivN
此外,8Please respect copyright.PENANAZkQ7xonBz9
各位你還聽過Silverlight嗎?8Please respect copyright.PENANAq20cvXdpJN
記得當年微軟還給它做了一個形象人物─藍澤光8Please respect copyright.PENANAECccU1TRQa
我曾經用Silverlight寫網頁...8Please respect copyright.PENANAtznd6cS9qC
然後得知這東西要被報廢了...8Please respect copyright.PENANAXxkdF1q6am
真的是有夠恨鐵不成鋼的!!!8Please respect copyright.PENANAeKOPpkJ9GN
雖然可能沒有關聯性,8Please respect copyright.PENANAGdSrVajNrz
後來的就是Spring Boot,8Please respect copyright.PENANAAbo7zppE36
但也沒想到同事說Spring Boot也有點老了...8Please respect copyright.PENANAbxEFHfSYZs
總之,8Please respect copyright.PENANA8NnJYvOSbz
如果Silberlight是學長的話,8Please respect copyright.PENANA9wlQHptFDO
那Spring Boot大概就是烏栗了~8Please respect copyright.PENANAk8FrrpUlgP
唉,都是時代的眼淚呀!
最後一個選項老實說也是我重新摸索的程式語言,8Please respect copyright.PENANAqidmhnfy4r
那就是C++8Please respect copyright.PENANANdeFb4gViE
當年學C++是為了影像處理,8Please respect copyright.PENANALDbgrwx7Vo
我也沒想到當年使用openCV,8Please respect copyright.PENANAsCekK4KRyp
現在2025年了,大家還是繼續使用openCV。8Please respect copyright.PENANAgqEROe1hd0
儘管都這麼久語法應該都更新了,8Please respect copyright.PENANAsAgcHkLax6
你們如果當年好好學習openCV,8Please respect copyright.PENANAEwWYQdcWUp
10年後還是受用呀!(對,我2012年大學畢業的)8Please respect copyright.PENANAiaYkjUWZiS
會選擇C++的原因是因為我曾經聽過有人這樣比喻C++:8Please respect copyright.PENANAxkfTYujMCr
發明出C++的人,對於(現在的)C++掌握程度也只有70%8Please respect copyright.PENANAVqDSdhpQYp
因此如果在面試的時候,8Please respect copyright.PENANAOuU0wlP90B
面試官問你,你對於C++的掌握度有多少?8Please respect copyright.PENANAWfB8i9wRzs
會回答超過70%的人不是真的有實力,就是過份有自信...8Please respect copyright.PENANA418VDHAqkq
會這樣有感而發是因為,8Please respect copyright.PENANA0mjIzSjLD3
今天已經是這個系列的第83篇了,8Please respect copyright.PENANAjUf4DvQvTu
不過我對於學長的理解,8Please respect copyright.PENANALwFVKHBrHY
就跟對C++的理解一樣,8Please respect copyright.PENANAxdhW2jBwLQ
還是只有淺層的程度~8Please respect copyright.PENANAsiEywjlBaI
除此之外,8Please respect copyright.PENANAbRkUSYL0Ph
C++也是懶人程式語言之一,8Please respect copyright.PENANA71XFJwFSQx
前提是你要很熟練~8Please respect copyright.PENANAA7z7jQD0wW
怎麼說呢?8Please respect copyright.PENANAZdjVA6GVh4
C++會在背後幫你做一堆的記憶體管理,8Please respect copyright.PENANASJSrGSW9FV
使你程式碼的效能提升~8Please respect copyright.PENANADbwuRUbjuA
不過它的這個特性有時候也會是兩面刃,8Please respect copyright.PENANAPoGtQ8s61A
就是因為他擅自做了你沒預料的事情,8Please respect copyright.PENANAnpQt3R2gAl
當你要解BUG的時候,8Please respect copyright.PENANA4cddBtTzx2
就不得不懷疑他根本是愛搞事的學長呀!
再分析下去會沒完沒了~8Please respect copyright.PENANAmj4cKBrSMx
畢竟還有至少3種以上的程式語言沒列出來呢,8Please respect copyright.PENANAqIkuq9EeQ0
如果私心想要再追加一個我心中代表學長的程式語言,8Please respect copyright.PENANAnv25kcTWiI
那就是被淘汰的Flash了~8Please respect copyright.PENANAhH6XIpvX0z
嚴格來說應該是叫做ActionScript。8Please respect copyright.PENANA6YcVDIlsw4
不過我知道大家對於這個名稱不熟,8Please respect copyright.PENANANlVZlP8LY0
因此後續我還是用Flash稱呼。8Please respect copyright.PENANAMbiRCR1v54
然而程式語言的部分其實都是指AS~(註3)
Flash是我完全從書本上自學起來的程式語言。8Please respect copyright.PENANAeLTpu7Hx8o
過往老師只有教多媒體的觀點,8Please respect copyright.PENANAYSeibIhpDo
只把Flash當動畫的工具~8Please respect copyright.PENANAZ18y0ta7o9
但是我真的很想學習做遊戲,8Please respect copyright.PENANAyIiPLtdzlP
國小又看到同學用Flash做遊戲,8Please respect copyright.PENANAjI4Ky01OxT
因此我人生有一大段時間,8Please respect copyright.PENANA4iLsn0jJ3A
每年至少有一款Flash遊戲~8Please respect copyright.PENANAXx8IDbly0j
懷舊完,說明一下為什麼選Flash吧!
Flash有一種特性是目前所有程式語言望塵莫及的,8Please respect copyright.PENANAQfgwQ1gW4F
那就是即時性!8Please respect copyright.PENANAtXAH7zTn92
各位也許對於現在的通訊軟體的lag或者延遲覺得無傷大雅,8Please respect copyright.PENANABDXcg0YHKX
但若真的要做到一比一的實時性,8Please respect copyright.PENANAWXooOPy3qk
好比你在畫布上畫一條線,8Please respect copyright.PENANAG60k3A16vf
那每一點都同時間顯示在朋友的螢幕上,8Please respect copyright.PENANASLx4Ae06zS
全部的程式語言中,8Please respect copyright.PENANAsNKPWM7Mnx
就只有Flash可以做到~8Please respect copyright.PENANAzTtiX2rFqv
剩下的號稱可以的,8Please respect copyright.PENANAcSmmSkqjKR
拍謝~都只是因為影像計算快速,8Please respect copyright.PENANAuOsbPZIFmQ
讓你誤以為是即時的感覺~8Please respect copyright.PENANAsDVS5Sp3uq
然而它之所以能做到這點,8Please respect copyright.PENANAYjLEMZHW8V
歸因於其特性,而這特性也是它被淘汰的原因之一;8Please respect copyright.PENANA7FvYDqYjBF
那就是它有太多的漏洞了~8Please respect copyright.PENANA51LnG2IaFa
Flash程式語言繞過了很多安全問題,8Please respect copyright.PENANAhueFW4HoIv
使得駭客能透過Flash(SWF檔案)來執行任意程式碼,8Please respect copyright.PENANAGUPkeCQl8j
同時Flash又能被嵌入在網頁上,8Please respect copyright.PENANAb5GiyCbAkI
等於把這種危險性又擴散出去~8Please respect copyright.PENANA8AEs9um2Jp
(因為人們可能會點這些Flash動畫進而電腦中毒)8Please respect copyright.PENANA6eV72q7lyZ
但也因為繞過了安全問題,8Please respect copyright.PENANAnwtYbgH7b8
才能將資訊即時的送到對方電腦上~8Please respect copyright.PENANAGqXk9j6k1D
(其他程式語言還在做安全加密或應對措施)
基於讓人又愛又恨的特性,8Please respect copyright.PENANABF8Gq68E29
讓我想到學長給人兩極的印象~8Please respect copyright.PENANAr6wswjc9RE
但這邊我是偏向愛多一點,8Please respect copyright.PENANAykCYTX6fG7
因為我還是很懷念Flash,8Please respect copyright.PENANAEogTDdtKm6
在那之後我就跑去Unity,重回C#懷抱,8Please respect copyright.PENANAspEoIivTZK
爾後又被收費嚇到,而去學Godot(也是用C#)8Please respect copyright.PENANAS7PtdjIMzk
(雖然後來Unity不收費了,但我也回不去了)
此外,8Please respect copyright.PENANA4H5vBCxInI
Flash在初學者學習做動畫這部分真的很友善,8Please respect copyright.PENANAHvI8w1Tdql
我在做遊戲中的動畫時,8Please respect copyright.PENANA3lixlisbQy
也都是思索著如果是Flash會怎麼處理?8Please respect copyright.PENANAdfXQMb3DWS
那親切的像是學長和我們打成一片,8Please respect copyright.PENANAZGj1I3VmnN
甚至四天王對決時,還特別不收取我們的BP~8Please respect copyright.PENANAIdlpPmRVfX
當我們打贏其他人時,8Please respect copyright.PENANAx2wNde5rNv
還會幫我們說明其他人的心路歷程一樣~
學長也像Flash一樣,8Please respect copyright.PENANAJhVs0m7LO8
是我們的老朋友~8Please respect copyright.PENANAHDK7uyCaA7
那些年的小朋友齊打交、夢遊先生等等小遊戲,8Please respect copyright.PENANAy2SgDrjai4
陪伴了我們無數的時光~8Please respect copyright.PENANAYfB8apxYsy
而我現在使用的Newgrounds遊戲平台,8Please respect copyright.PENANAogWstde4rV
有專門的軟體可供用戶繼續玩Flash遊戲。
當然我也知道,8Please respect copyright.PENANAheWrpZ3nYj
觀念要改,8Please respect copyright.PENANAeBbhldDRhj
新的技術還是要學。8Please respect copyright.PENANAOdjB8EL3QQ
就像同事和主管提到的Rust或許會成為未來的趨勢~8Please respect copyright.PENANA8a1DE27kYu
而今我不再每天跟學長對戰了,8Please respect copyright.PENANA7oA9XJ1dG7
接觸寶可夢Z-A後,8Please respect copyright.PENANAibwr0yJZTf
也不好說會不會有其他人取代學長在我心中的位子...8Please respect copyright.PENANAKlN7HkHd6J
但是為了學長而寫的這些每日日記,8Please respect copyright.PENANAENflaNN3B4
讓我有機會透過這種方式反覆思索著8Please respect copyright.PENANA2hUFgVt0LF
過去現在未來的點點滴滴~8Please respect copyright.PENANAiw1rSTyhiF
進而讓自己有人生方向以及動力!8Please respect copyright.PENANAK5osMga6fC
同時還增廣見聞~8Please respect copyright.PENANA9RHkVfyN3R
真的很感謝當年Flash的啟蒙,8Please respect copyright.PENANAX9h8iaO5xd
曾經,我以為自己是空有夢想,8Please respect copyright.PENANA9AeSuTaf3G
而無法做遊戲的人~8Please respect copyright.PENANAGFD3V9HMA3
也是因為認識了學長,8Please respect copyright.PENANAz8G10Ba0xL
讓我能有主題參加每日日記挑戰~8Please respect copyright.PENANAr3KSf1wZ3Z
給自己每天創作的契機!8Please respect copyright.PENANAtCxc0FBr1p
雖然結束後我會重新整頓自己的創作步伐~8Please respect copyright.PENANA0AILzeVfbE
很高興自己還願意持續的創作!
7/19 完8Please respect copyright.PENANAHNXZglRGdW
註: 我人生第一個學習的程式語言其實是Visual Basic,8Please respect copyright.PENANA4FhXQELftx
還曾經做一個猴子接香蕉的小遊戲,8Please respect copyright.PENANAPa1p2Pft8s
那是我國小的事情。8Please respect copyright.PENANAqSgq9XFTuV
以前網路空間或者備份的概念都很差,8Please respect copyright.PENANA1162qVcGeK
最終因為電腦重灌就清掉我的努力了~
註2: 原則上我們都是希望有人能看懂我們的程式碼,8Please respect copyright.PENANAEopNoUKJzK
讓大家都能共同維護和開發功能~8Please respect copyright.PENANAyx705E38XK
但也有人反其道而行─8Please respect copyright.PENANAgahwojYyJC
我偏不走這路線~所有人都看不懂我的程式碼,8Please respect copyright.PENANADEDqpsIYHP
就沒人能取代我了!8Please respect copyright.PENANAHt38oAwiUd
主管也不敢趕我走!8Please respect copyright.PENANALA7jSvl8Sk
不過這種短視近利的想法,8Please respect copyright.PENANAbqkRUzzKOF
其實害人又害己~8Please respect copyright.PENANAnMU5VXYefi
總不太可能專案都是一個人完成,8Please respect copyright.PENANAZTvTB8C0Lg
如果是那樣的專案,8Please respect copyright.PENANAc5NU2nayG5
大抵也不是太大的專案...8Please respect copyright.PENANA9wzb7zegCg
如果哪一天有什麼你很難完成的任務,8Please respect copyright.PENANAuKGxKm50Pp
其他人也幫不了你(因為別人看不懂你的程式碼)~
註3: Flash你可以想像是一個做動畫的開發軟體,8Please respect copyright.PENANA4cGJZQwTvy
當你在畫面上拉出一個按鈕時,8Please respect copyright.PENANAOxTUZOw756
按下按鈕會發生什麼事情呢?8Please respect copyright.PENANAWIb7tAM4f2
這時就要透過ActionScript撰寫程式碼,8Please respect copyright.PENANAMq63dA79Lc
綁定事件在按鈕中,8Please respect copyright.PENANAXdz6DttHoC
使得按下按鈕後,會跳轉到下一個場景。8Please respect copyright.PENANAoVkhJmVoPJ
這之間的關係大概是這樣~