這個題目是我私心訂下的(哪次不是?),14Please respect copyright.PENANAuIfS1XpffV
意思是沒有要管大家看不看得懂就是~14Please respect copyright.PENANA9wZn6b0aoQ
畢竟從畢業到現在已經當工程師這麼多年,14Please respect copyright.PENANAmcqarfX1kg
接觸的程式語言雖然都是大家耳熟能詳的那些,14Please respect copyright.PENANALwfEOrLrCn
也不少了~14Please respect copyright.PENANAMfST9fHBPt
所以這次的分析算是藉由我對於所學過的程式語言的觀點整理,14Please respect copyright.PENANA8c5jzAlia5
(不代表建議新手該從哪個程式語言入手喔)14Please respect copyright.PENANAI83JZlgcXo
然後來跟學長的特質做對應喔!
第一個我想到的最佳解就是Python,14Please respect copyright.PENANAOSVFwfGW89
Python顧名思義就是蟒蛇,14Please respect copyright.PENANAKC9XE6z9bK
他的Logo是兩隻蛇纏在一起,14Please respect copyright.PENANAQAe59M5sW2
一隻藍色一隻黃色~14Please respect copyright.PENANAwQhQONYQtU
此外,目前最受歡迎的Python編輯器之一叫做Anaconda,14Please respect copyright.PENANAwkWDUcHqyh
是森蚺的意思~14Please respect copyright.PENANARPFh8qO5LK
會選擇這個程式語言,14Please respect copyright.PENANAro5mvtDo2T
除了是Logo讓我幻想成學長和我們手牽手的樣子,14Please respect copyright.PENANAaixB3gNfFK
再來就是蛇代表小龍(讓我想到迷你龍)~14Please respect copyright.PENANAgaNky5vD0y
還有Python的繼承跟別的程式語言不同,14Please respect copyright.PENANA0Vkks9I3x8
一般程式語言的繼承只能有一個父類別(一個父親),14Please respect copyright.PENANAiMpfsdQ29p
但是Python卻可以有多個父類別(多個父親)!14Please respect copyright.PENANAyn9OJptuqK
這讓我覺得對應到了學長的多重身分~14Please respect copyright.PENANAggzfAJGiuu
既是四天王也是聯盟社社長,14Please respect copyright.PENANAt6pQjFjjaN
再來就是Python簡化了很多語法,14Please respect copyright.PENANA8DiJlhTHfa
是懶人救星~(相當於學長懶散的個性)14Please respect copyright.PENANAzPsGbgmWnF
比方人家寫方法要用function,14Please respect copyright.PENANA6rgtTtwfxv
Python只要用def就可以定義方法了~14Please respect copyright.PENANAIAY0ICkxEL
對了對了,14Please respect copyright.PENANAR0v68ckAms
Python也是許多人用來學習處理大數據(meta data)、14Please respect copyright.PENANA1jeZfQ9Zk0
AI(scikit-learn)、爬蟲(Beautiful Soup)的程式語言呢!14Please respect copyright.PENANA2tDctEaCg0
對應學長的戰術能力剛剛好呢!
雖然最佳解出來了,14Please respect copyright.PENANAbP2TfdEGyY
但還是要給其他的選項供人思考呀~14Please respect copyright.PENANAGlBAVOw9VJ
那麼第二個選項就是Java14Please respect copyright.PENANA2WUB0wXbLi
沒錯,就是爪哇,還有咖啡豆的那個Java~14Please respect copyright.PENANAs4W8FuwCXi
當年代代流傳Java螞蟻書(而且是有翅膀的螞蟻)~14Please respect copyright.PENANACfCRwr6eLh
我因為畢業很久,想說我再也不碰Java啦~Jo Jo!14Please respect copyright.PENANATaINFw9ksg
就把那個超厚的書做回收了~14Please respect copyright.PENANAY4PlXTlrkN
然後我就遭到報應了...14Please respect copyright.PENANAyeOhba6DUq
好在重新接觸Java沒有花太多時間就是,14Please respect copyright.PENANAEYkqfqoWzv
凡走過必留下痕跡嘛,14Please respect copyright.PENANAC5MsvGOs0i
我可是號稱2年沒碰的程式碼不會忘,14Please respect copyright.PENANANjMf9vLo5a
10年前公司的專案我也知道怎麼維護呢哼哼!14Please respect copyright.PENANAMhanKKb9ml
那為什麼選Java而不是Javascript呢?14Please respect copyright.PENANA1vJ6hRTpCL
因為我個人私心覺得,14Please respect copyright.PENANAE8FCc8JcrY
學長的個性還有給我的印象,14Please respect copyright.PENANAPGncb3Rs5J
比較偏向後端程式語言。14Please respect copyright.PENANAVIMpcfWRjo
然而我就不在這邊討論前端與後端程式語言的差異,14Please respect copyright.PENANAg6SGmvXvi9
只想奉勸你們各位已經被冠上全端工程師(如我)的工程師們,14Please respect copyright.PENANArExKyytsFR
不要拿後端思維到前端程式碼使用~反之亦然!14Please respect copyright.PENANAB0i0LFcjSH
我們繼續說下去,為什麼選擇Java吧!14Please respect copyright.PENANAz3Cmb4z5GW
第一個理由確實是因為咖啡的關係~14Please respect copyright.PENANAPqxi6e4FNi
畢竟代表學長的飲品中多少都有跟咖啡有關的選項。14Please respect copyright.PENANAac1ZhlffxE
再來就是學Java免不了要會的OOP(物件導向程式設計)~14Please respect copyright.PENANAxkN2JWeZ1l
我也曾經歷過不懂為什麼命名要叫做set還有get,14Please respect copyright.PENANAXHcgpqQnJ3
不懂為什麼建構子(Constructor)代表藍圖...14Please respect copyright.PENANAecWGrWqzIq
以及分不清楚abstract和interface的時光,14Please respect copyright.PENANA2Khz0NLLNs
好在學了多個程式語言,反而把不會的概念也補完了!14Please respect copyright.PENANACQMPA9EPpJ
儘管OOP不是只有Java有,14Please respect copyright.PENANAyYK68JqEJ4
等等的那個選項也有這個觀念,14Please respect copyright.PENANAolcCl9gkLT
但畢竟是我第一個正規接觸的程式語言(註),14Please respect copyright.PENANApOPwZTid9w
所以就以Java作為代表了~14Please respect copyright.PENANA5j6W18KB87
OOP這個技巧的出現,14Please respect copyright.PENANAudJ8voh7mU
其實是為了讓程式碼能夠再利用,14Please respect copyright.PENANAABfB5mOo6I
讓你不至於成為碼農、什麼都複製貼上~14Please respect copyright.PENANAQd5cufBhLd
同時也比較好維護程式碼~(註2)14Please respect copyright.PENANAZJNwhYR6ky
而OOP的最常見的三大觀念即是─14Please respect copyright.PENANAVxKpWkwQFa
封裝、繼承、多型14Please respect copyright.PENANA8hvMbT9COn
讓我想到每個人加入聯盟社(繼承),14Please respect copyright.PENANAAolqgoBmH2
成為聯盟社的成員(實例化),要努力賺BP(多型)~14Please respect copyright.PENANAdV0dXFv5RP
關於多型,我看到有人下一個很簡單易懂的註解─14Please respect copyright.PENANAx9g7yqG0U6
即是指一樣的事,不同做法。14Please respect copyright.PENANAqkxMuvthya
又或者:同一個行為,但有不同的結果14Please respect copyright.PENANAd0xK46Kx8a
而學長代表Java神之手讓我們進入聯盟社,14Please respect copyright.PENANA6RqtAp7sEr
開啟了農BP的地獄(特別對沒朋友的人不友善的機制)...14Please respect copyright.PENANAiBz0zcOnQx
此外,14Please respect copyright.PENANAdK8xVRxSu5
各位你還聽過Silverlight嗎?14Please respect copyright.PENANATb01OuHqDG
記得當年微軟還給它做了一個形象人物─藍澤光14Please respect copyright.PENANAeMcRbikHNf
我曾經用Silverlight寫網頁...14Please respect copyright.PENANA9tA2AcVuVx
然後得知這東西要被報廢了...14Please respect copyright.PENANAMpsOMrFVlr
真的是有夠恨鐵不成鋼的!!!14Please respect copyright.PENANAOpJCijGHRk
雖然可能沒有關聯性,14Please respect copyright.PENANAJrolKvLdJ3
後來的就是Spring Boot,14Please respect copyright.PENANAKcSDRuZFMx
但也沒想到同事說Spring Boot也有點老了...14Please respect copyright.PENANA0U1NmPt0yz
總之,14Please respect copyright.PENANAJJYjC5gfDR
如果Silberlight是學長的話,14Please respect copyright.PENANAOetIBi7E3r
那Spring Boot大概就是烏栗了~14Please respect copyright.PENANAHB4zcEpafh
唉,都是時代的眼淚呀!
最後一個選項老實說也是我重新摸索的程式語言,14Please respect copyright.PENANAroWX9n5tUw
那就是C++14Please respect copyright.PENANAwrmGduqW5s
當年學C++是為了影像處理,14Please respect copyright.PENANAOXxo6OZyO2
我也沒想到當年使用openCV,14Please respect copyright.PENANAm8qQhwbhkA
現在2025年了,大家還是繼續使用openCV。14Please respect copyright.PENANALBJ9u6EPCk
儘管都這麼久語法應該都更新了,14Please respect copyright.PENANALB2escf083
你們如果當年好好學習openCV,14Please respect copyright.PENANA3ztplYEHIA
10年後還是受用呀!(對,我2012年大學畢業的)14Please respect copyright.PENANAYc0aKDfyJl
會選擇C++的原因是因為我曾經聽過有人這樣比喻C++:14Please respect copyright.PENANAnulehNlEgY
發明出C++的人,對於(現在的)C++掌握程度也只有70%14Please respect copyright.PENANAyeuNvTzZz2
因此如果在面試的時候,14Please respect copyright.PENANATxcHrOAk9x
面試官問你,你對於C++的掌握度有多少?14Please respect copyright.PENANAI4DjZBYMCH
會回答超過70%的人不是真的有實力,就是過份有自信...14Please respect copyright.PENANA7j2HnFrWtX
會這樣有感而發是因為,14Please respect copyright.PENANAlspcxoSDA8
今天已經是這個系列的第83篇了,14Please respect copyright.PENANAC9wGJ5Wy5C
不過我對於學長的理解,14Please respect copyright.PENANAUjluM2Vlnf
就跟對C++的理解一樣,14Please respect copyright.PENANAQYy0wvpJvE
還是只有淺層的程度~14Please respect copyright.PENANAm7ejezaFyu
除此之外,14Please respect copyright.PENANAa1wiR175Il
C++也是懶人程式語言之一,14Please respect copyright.PENANAi3ThQBF8jc
前提是你要很熟練~14Please respect copyright.PENANAeGU49CK3Ur
怎麼說呢?14Please respect copyright.PENANAklR170Pkxk
C++會在背後幫你做一堆的記憶體管理,14Please respect copyright.PENANAyEX8Ziiin3
使你程式碼的效能提升~14Please respect copyright.PENANAyp0zGo1oXm
不過它的這個特性有時候也會是兩面刃,14Please respect copyright.PENANArVeTn2Uumy
就是因為他擅自做了你沒預料的事情,14Please respect copyright.PENANAN2lF49OrjB
當你要解BUG的時候,14Please respect copyright.PENANAEBDOeXomdr
就不得不懷疑他根本是愛搞事的學長呀!
再分析下去會沒完沒了~14Please respect copyright.PENANA6KvGChH9Tf
畢竟還有至少3種以上的程式語言沒列出來呢,14Please respect copyright.PENANAvcjcvfVZYb
如果私心想要再追加一個我心中代表學長的程式語言,14Please respect copyright.PENANAVNCpHLMfvT
那就是被淘汰的Flash了~14Please respect copyright.PENANAdH2YU8re1w
嚴格來說應該是叫做ActionScript。14Please respect copyright.PENANANC0eEsRbyb
不過我知道大家對於這個名稱不熟,14Please respect copyright.PENANAY5ndfJmg8P
因此後續我還是用Flash稱呼。14Please respect copyright.PENANA1pqBDOzstW
然而程式語言的部分其實都是指AS~(註3)
Flash是我完全從書本上自學起來的程式語言。14Please respect copyright.PENANA6zpEzyOt9l
過往老師只有教多媒體的觀點,14Please respect copyright.PENANAb8bDm4Jrok
只把Flash當動畫的工具~14Please respect copyright.PENANAFc3LPmIInp
但是我真的很想學習做遊戲,14Please respect copyright.PENANA2BA4C0mtbS
國小又看到同學用Flash做遊戲,14Please respect copyright.PENANA4jCaGKp1xu
因此我人生有一大段時間,14Please respect copyright.PENANABQRmuoJmWk
每年至少有一款Flash遊戲~14Please respect copyright.PENANABayKDoNxeY
懷舊完,說明一下為什麼選Flash吧!
Flash有一種特性是目前所有程式語言望塵莫及的,14Please respect copyright.PENANADrlAjSeviU
那就是即時性!14Please respect copyright.PENANAPWBKEiOAJI
各位也許對於現在的通訊軟體的lag或者延遲覺得無傷大雅,14Please respect copyright.PENANAg3I8Z9I7mg
但若真的要做到一比一的實時性,14Please respect copyright.PENANAD6oQRRlMan
好比你在畫布上畫一條線,14Please respect copyright.PENANAb4SbvB77Hj
那每一點都同時間顯示在朋友的螢幕上,14Please respect copyright.PENANAJT7RVeOsTj
全部的程式語言中,14Please respect copyright.PENANAnIngaG60xK
就只有Flash可以做到~14Please respect copyright.PENANAgocQYyJj7W
剩下的號稱可以的,14Please respect copyright.PENANALncg6yyJVj
拍謝~都只是因為影像計算快速,14Please respect copyright.PENANAps5mYPP551
讓你誤以為是即時的感覺~14Please respect copyright.PENANArpVWkIXKJt
然而它之所以能做到這點,14Please respect copyright.PENANAoGPxr0Cbbl
歸因於其特性,而這特性也是它被淘汰的原因之一;14Please respect copyright.PENANAfcgBdgdhP9
那就是它有太多的漏洞了~14Please respect copyright.PENANAfEY3kt8iHq
Flash程式語言繞過了很多安全問題,14Please respect copyright.PENANAsAB0OnvitQ
使得駭客能透過Flash(SWF檔案)來執行任意程式碼,14Please respect copyright.PENANAqZr5NVS5zz
同時Flash又能被嵌入在網頁上,14Please respect copyright.PENANAQhxBtU0wYD
等於把這種危險性又擴散出去~14Please respect copyright.PENANAE7vLzETszx
(因為人們可能會點這些Flash動畫進而電腦中毒)14Please respect copyright.PENANAFXFzC5bwxH
但也因為繞過了安全問題,14Please respect copyright.PENANAgAPnHFTgKG
才能將資訊即時的送到對方電腦上~14Please respect copyright.PENANAr5a4akqJ68
(其他程式語言還在做安全加密或應對措施)
基於讓人又愛又恨的特性,14Please respect copyright.PENANALFPmCNlpq2
讓我想到學長給人兩極的印象~14Please respect copyright.PENANACbWIqrALrd
但這邊我是偏向愛多一點,14Please respect copyright.PENANA5rr4la3uSG
因為我還是很懷念Flash,14Please respect copyright.PENANAOChzT1PtDF
在那之後我就跑去Unity,重回C#懷抱,14Please respect copyright.PENANARrbb0MlPiF
爾後又被收費嚇到,而去學Godot(也是用C#)14Please respect copyright.PENANAfdwKQocKRa
(雖然後來Unity不收費了,但我也回不去了)
此外,14Please respect copyright.PENANA43rzE3yi8O
Flash在初學者學習做動畫這部分真的很友善,14Please respect copyright.PENANANIAg4Sqxpw
我在做遊戲中的動畫時,14Please respect copyright.PENANAGcu6941zqz
也都是思索著如果是Flash會怎麼處理?14Please respect copyright.PENANAAdyHdFzy6a
那親切的像是學長和我們打成一片,14Please respect copyright.PENANAWNFk8uzXYp
甚至四天王對決時,還特別不收取我們的BP~14Please respect copyright.PENANA8rbMjO3Gcx
當我們打贏其他人時,14Please respect copyright.PENANA1ImM3rpBom
還會幫我們說明其他人的心路歷程一樣~
學長也像Flash一樣,14Please respect copyright.PENANAulSvo8FDqy
是我們的老朋友~14Please respect copyright.PENANAkGjNNWF4FX
那些年的小朋友齊打交、夢遊先生等等小遊戲,14Please respect copyright.PENANAI69MJc9EsL
陪伴了我們無數的時光~14Please respect copyright.PENANALFMDBrlUnD
而我現在使用的Newgrounds遊戲平台,14Please respect copyright.PENANADmIS6ELsRb
有專門的軟體可供用戶繼續玩Flash遊戲。
當然我也知道,14Please respect copyright.PENANAULM5nMd8tW
觀念要改,14Please respect copyright.PENANASbUr3ZQPem
新的技術還是要學。14Please respect copyright.PENANAwnsdHzId3M
就像同事和主管提到的Rust或許會成為未來的趨勢~14Please respect copyright.PENANAGeLZph1ort
而今我不再每天跟學長對戰了,14Please respect copyright.PENANAhScIwicxL1
接觸寶可夢Z-A後,14Please respect copyright.PENANAwuxpMnFeM5
也不好說會不會有其他人取代學長在我心中的位子...14Please respect copyright.PENANAPaUzxrcXxq
但是為了學長而寫的這些每日日記,14Please respect copyright.PENANACwbUonIkph
讓我有機會透過這種方式反覆思索著14Please respect copyright.PENANADl4AHrw1YB
過去現在未來的點點滴滴~14Please respect copyright.PENANAUhqMkZCOS9
進而讓自己有人生方向以及動力!14Please respect copyright.PENANA4fPCna278V
同時還增廣見聞~14Please respect copyright.PENANAwEaK1D3bNC
真的很感謝當年Flash的啟蒙,14Please respect copyright.PENANAqOGRJzLL0p
曾經,我以為自己是空有夢想,14Please respect copyright.PENANAHFBoQjNQNj
而無法做遊戲的人~14Please respect copyright.PENANAZcTxWFy2CO
也是因為認識了學長,14Please respect copyright.PENANANRJtoBLYD7
讓我能有主題參加每日日記挑戰~14Please respect copyright.PENANAbvEGCOJ2QC
給自己每天創作的契機!14Please respect copyright.PENANAVEWoYTn9ei
雖然結束後我會重新整頓自己的創作步伐~14Please respect copyright.PENANAWYJxRznfRD
很高興自己還願意持續的創作!
7/19 完14Please respect copyright.PENANAffgiXUXvRR
註: 我人生第一個學習的程式語言其實是Visual Basic,14Please respect copyright.PENANAIcQjUp2w9x
還曾經做一個猴子接香蕉的小遊戲,14Please respect copyright.PENANAf6TxZDK7v9
那是我國小的事情。14Please respect copyright.PENANARKA9wQs04I
以前網路空間或者備份的概念都很差,14Please respect copyright.PENANA1lNbXP10bG
最終因為電腦重灌就清掉我的努力了~
註2: 原則上我們都是希望有人能看懂我們的程式碼,14Please respect copyright.PENANARNHgS6mYPh
讓大家都能共同維護和開發功能~14Please respect copyright.PENANAj08s1lb217
但也有人反其道而行─14Please respect copyright.PENANAlvqTsHugTB
我偏不走這路線~所有人都看不懂我的程式碼,14Please respect copyright.PENANAp1wWA1qusI
就沒人能取代我了!14Please respect copyright.PENANANkIWhTUyK9
主管也不敢趕我走!14Please respect copyright.PENANAFStxHVGuty
不過這種短視近利的想法,14Please respect copyright.PENANAlf13sm7pIW
其實害人又害己~14Please respect copyright.PENANAw1c33XF0es
總不太可能專案都是一個人完成,14Please respect copyright.PENANANgHwGiL9sV
如果是那樣的專案,14Please respect copyright.PENANAtjd8EeMpNB
大抵也不是太大的專案...14Please respect copyright.PENANAgv0adqvOqT
如果哪一天有什麼你很難完成的任務,14Please respect copyright.PENANALRaPQ7eQfs
其他人也幫不了你(因為別人看不懂你的程式碼)~
註3: Flash你可以想像是一個做動畫的開發軟體,14Please respect copyright.PENANAQXm9GxvdLG
當你在畫面上拉出一個按鈕時,14Please respect copyright.PENANAm10SzPfRmF
按下按鈕會發生什麼事情呢?14Please respect copyright.PENANAYrIsEDklCF
這時就要透過ActionScript撰寫程式碼,14Please respect copyright.PENANADHj4zjYBPa
綁定事件在按鈕中,14Please respect copyright.PENANAU7mLi9OJg0
使得按下按鈕後,會跳轉到下一個場景。14Please respect copyright.PENANA6uZejSZkSM
這之間的關係大概是這樣~