這個題目是我私心訂下的(哪次不是?),28Please respect copyright.PENANAYtvR5aDRcQ
意思是沒有要管大家看不看得懂就是~28Please respect copyright.PENANAHt4aKikLJv
畢竟從畢業到現在已經當工程師這麼多年,28Please respect copyright.PENANAZJp3LWocEg
接觸的程式語言雖然都是大家耳熟能詳的那些,28Please respect copyright.PENANAfDo71WV95r
也不少了~28Please respect copyright.PENANAodSiPW9bJP
所以這次的分析算是藉由我對於所學過的程式語言的觀點整理,28Please respect copyright.PENANANwulwJjUjD
(不代表建議新手該從哪個程式語言入手喔)28Please respect copyright.PENANAZYmPhyoEk8
然後來跟學長的特質做對應喔!
第一個我想到的最佳解就是Python,28Please respect copyright.PENANAxJZ6qsjSZE
Python顧名思義就是蟒蛇,28Please respect copyright.PENANAikLUwxG2Aa
他的Logo是兩隻蛇纏在一起,28Please respect copyright.PENANAtqsbQ3DzZi
一隻藍色一隻黃色~28Please respect copyright.PENANAgA9njQQr2o
此外,目前最受歡迎的Python編輯器之一叫做Anaconda,28Please respect copyright.PENANAB2JjcW9fOi
是森蚺的意思~28Please respect copyright.PENANAFaSKRb2Xsb
會選擇這個程式語言,28Please respect copyright.PENANAIReGYwO0sW
除了是Logo讓我幻想成學長和我們手牽手的樣子,28Please respect copyright.PENANAPXudYsFRGO
再來就是蛇代表小龍(讓我想到迷你龍)~28Please respect copyright.PENANAXBjazAx7qW
還有Python的繼承跟別的程式語言不同,28Please respect copyright.PENANA56oBEKsHgS
一般程式語言的繼承只能有一個父類別(一個父親),28Please respect copyright.PENANAGH7L1L9KQC
但是Python卻可以有多個父類別(多個父親)!28Please respect copyright.PENANADlsbYOi6WW
這讓我覺得對應到了學長的多重身分~28Please respect copyright.PENANAKHwZoA6UN2
既是四天王也是聯盟社社長,28Please respect copyright.PENANAwNexBEqqWN
再來就是Python簡化了很多語法,28Please respect copyright.PENANA2yNieOoHBd
是懶人救星~(相當於學長懶散的個性)28Please respect copyright.PENANAhCMjmrrlCz
比方人家寫方法要用function,28Please respect copyright.PENANAo6QMTcdoZg
Python只要用def就可以定義方法了~28Please respect copyright.PENANAhelRxM5SjW
對了對了,28Please respect copyright.PENANAu9lpQGNc6Y
Python也是許多人用來學習處理大數據(meta data)、28Please respect copyright.PENANA2Z8WGbJDqN
AI(scikit-learn)、爬蟲(Beautiful Soup)的程式語言呢!28Please respect copyright.PENANAtSgNnADWd6
對應學長的戰術能力剛剛好呢!
雖然最佳解出來了,28Please respect copyright.PENANAcR8S1nJqsk
但還是要給其他的選項供人思考呀~28Please respect copyright.PENANAK8cx0Nu5dw
那麼第二個選項就是Java28Please respect copyright.PENANAGxrcv1I6iY
沒錯,就是爪哇,還有咖啡豆的那個Java~28Please respect copyright.PENANAcG4QTUGsqP
當年代代流傳Java螞蟻書(而且是有翅膀的螞蟻)~28Please respect copyright.PENANAAlnujHYmIs
我因為畢業很久,想說我再也不碰Java啦~Jo Jo!28Please respect copyright.PENANAuSyPuq5Exz
就把那個超厚的書做回收了~28Please respect copyright.PENANAylLrpw5A8X
然後我就遭到報應了...28Please respect copyright.PENANAxExdb0qDCF
好在重新接觸Java沒有花太多時間就是,28Please respect copyright.PENANA1zCF56sjNu
凡走過必留下痕跡嘛,28Please respect copyright.PENANAj2K6W7m0mS
我可是號稱2年沒碰的程式碼不會忘,28Please respect copyright.PENANAgoToHQMnjG
10年前公司的專案我也知道怎麼維護呢哼哼!28Please respect copyright.PENANAe2kNk9RzDu
那為什麼選Java而不是Javascript呢?28Please respect copyright.PENANAQq5haXPN2t
因為我個人私心覺得,28Please respect copyright.PENANAxYFvTTgO1P
學長的個性還有給我的印象,28Please respect copyright.PENANAIPFGNSuytH
比較偏向後端程式語言。28Please respect copyright.PENANAAPeBLXq1lS
然而我就不在這邊討論前端與後端程式語言的差異,28Please respect copyright.PENANA0Om3DZkfFK
只想奉勸你們各位已經被冠上全端工程師(如我)的工程師們,28Please respect copyright.PENANAPmYfQk5ucF
不要拿後端思維到前端程式碼使用~反之亦然!28Please respect copyright.PENANAOs5bWdMmU0
我們繼續說下去,為什麼選擇Java吧!28Please respect copyright.PENANAVzughOmH9m
第一個理由確實是因為咖啡的關係~28Please respect copyright.PENANAgb202MdMsc
畢竟代表學長的飲品中多少都有跟咖啡有關的選項。28Please respect copyright.PENANA957Cv8PCZW
再來就是學Java免不了要會的OOP(物件導向程式設計)~28Please respect copyright.PENANAV7kZkzsAT7
我也曾經歷過不懂為什麼命名要叫做set還有get,28Please respect copyright.PENANA5bvbFkrgH4
不懂為什麼建構子(Constructor)代表藍圖...28Please respect copyright.PENANAU8DseocX8J
以及分不清楚abstract和interface的時光,28Please respect copyright.PENANAKmITQoKfZB
好在學了多個程式語言,反而把不會的概念也補完了!28Please respect copyright.PENANAwXVtmEaBK7
儘管OOP不是只有Java有,28Please respect copyright.PENANA0tuQiKLvlx
等等的那個選項也有這個觀念,28Please respect copyright.PENANAxQEXunkoUk
但畢竟是我第一個正規接觸的程式語言(註),28Please respect copyright.PENANAfKkovCJSAZ
所以就以Java作為代表了~28Please respect copyright.PENANAphjN5pddFQ
OOP這個技巧的出現,28Please respect copyright.PENANAbHOeSGKmQx
其實是為了讓程式碼能夠再利用,28Please respect copyright.PENANAuNLIJQaHsI
讓你不至於成為碼農、什麼都複製貼上~28Please respect copyright.PENANAaZaTqdmF6p
同時也比較好維護程式碼~(註2)28Please respect copyright.PENANA4QJk8xXuZE
而OOP的最常見的三大觀念即是─28Please respect copyright.PENANAjDujU6mwvH
封裝、繼承、多型28Please respect copyright.PENANA3WnVD0MZi3
讓我想到每個人加入聯盟社(繼承),28Please respect copyright.PENANAqVfbLJiLqS
成為聯盟社的成員(實例化),要努力賺BP(多型)~28Please respect copyright.PENANAb03hYDWohJ
關於多型,我看到有人下一個很簡單易懂的註解─28Please respect copyright.PENANAAWUEbIg9Uc
即是指一樣的事,不同做法。28Please respect copyright.PENANA8Ay27PaFbs
又或者:同一個行為,但有不同的結果28Please respect copyright.PENANAif3CMcZ8gk
而學長代表Java神之手讓我們進入聯盟社,28Please respect copyright.PENANANTLVklIlGk
開啟了農BP的地獄(特別對沒朋友的人不友善的機制)...28Please respect copyright.PENANAlVU7lAeq7D
此外,28Please respect copyright.PENANAWCuLmjya1F
各位你還聽過Silverlight嗎?28Please respect copyright.PENANAua0bkz0f8y
記得當年微軟還給它做了一個形象人物─藍澤光28Please respect copyright.PENANALN6bEflb3Y
我曾經用Silverlight寫網頁...28Please respect copyright.PENANAfRmyGaYjyu
然後得知這東西要被報廢了...28Please respect copyright.PENANAV5xkLX09a5
真的是有夠恨鐵不成鋼的!!!28Please respect copyright.PENANAojwH23fDwO
雖然可能沒有關聯性,28Please respect copyright.PENANAWwW0LTcwFE
後來的就是Spring Boot,28Please respect copyright.PENANAsUGZkkinjm
但也沒想到同事說Spring Boot也有點老了...28Please respect copyright.PENANAPTznJnSHdF
總之,28Please respect copyright.PENANAxcgBIblGEq
如果Silberlight是學長的話,28Please respect copyright.PENANAERBaQd2w1Q
那Spring Boot大概就是烏栗了~28Please respect copyright.PENANAhGXS0zu5ta
唉,都是時代的眼淚呀!
最後一個選項老實說也是我重新摸索的程式語言,28Please respect copyright.PENANAgFIKRmUYEy
那就是C++28Please respect copyright.PENANAyoQth4QH8m
當年學C++是為了影像處理,28Please respect copyright.PENANAoauFn7aIE7
我也沒想到當年使用openCV,28Please respect copyright.PENANAjhhaVX8xYo
現在2025年了,大家還是繼續使用openCV。28Please respect copyright.PENANAfPNtpoJ0lI
儘管都這麼久語法應該都更新了,28Please respect copyright.PENANA35bMop8XCm
你們如果當年好好學習openCV,28Please respect copyright.PENANAopmiat0N1A
10年後還是受用呀!(對,我2012年大學畢業的)28Please respect copyright.PENANA0pWEoODh9t
會選擇C++的原因是因為我曾經聽過有人這樣比喻C++:28Please respect copyright.PENANAiQ7LS1vrMm
發明出C++的人,對於(現在的)C++掌握程度也只有70%28Please respect copyright.PENANAQfG3ptclIn
因此如果在面試的時候,28Please respect copyright.PENANA1iJ9hJuus4
面試官問你,你對於C++的掌握度有多少?28Please respect copyright.PENANASzcqVH1yYN
會回答超過70%的人不是真的有實力,就是過份有自信...28Please respect copyright.PENANAGakJ0Ix8H0
會這樣有感而發是因為,28Please respect copyright.PENANAHpWdRqx13J
今天已經是這個系列的第83篇了,28Please respect copyright.PENANA008ldJGp3k
不過我對於學長的理解,28Please respect copyright.PENANAH66jyrQQkw
就跟對C++的理解一樣,28Please respect copyright.PENANAppSHPrN4qX
還是只有淺層的程度~28Please respect copyright.PENANA75sHTL0Txi
除此之外,28Please respect copyright.PENANAoXMCXXe5gc
C++也是懶人程式語言之一,28Please respect copyright.PENANAGz8RN1kqBc
前提是你要很熟練~28Please respect copyright.PENANA0o0DGUzcc0
怎麼說呢?28Please respect copyright.PENANAouMyXMySMZ
C++會在背後幫你做一堆的記憶體管理,28Please respect copyright.PENANAcOUzQgwrtJ
使你程式碼的效能提升~28Please respect copyright.PENANAMjs1RJ4ulQ
不過它的這個特性有時候也會是兩面刃,28Please respect copyright.PENANA6VUqRNVb2R
就是因為他擅自做了你沒預料的事情,28Please respect copyright.PENANAjiS4lKNxF2
當你要解BUG的時候,28Please respect copyright.PENANAhQHCI1766u
就不得不懷疑他根本是愛搞事的學長呀!
再分析下去會沒完沒了~28Please respect copyright.PENANA9QHDtDiGiu
畢竟還有至少3種以上的程式語言沒列出來呢,28Please respect copyright.PENANAFGI0BpaYwt
如果私心想要再追加一個我心中代表學長的程式語言,28Please respect copyright.PENANAh2nY4ag40u
那就是被淘汰的Flash了~28Please respect copyright.PENANAon4dRaZW7D
嚴格來說應該是叫做ActionScript。28Please respect copyright.PENANA3Wmgqesrx5
不過我知道大家對於這個名稱不熟,28Please respect copyright.PENANAwZ1cutA7Hb
因此後續我還是用Flash稱呼。28Please respect copyright.PENANAbscgiTdc39
然而程式語言的部分其實都是指AS~(註3)
Flash是我完全從書本上自學起來的程式語言。28Please respect copyright.PENANAm6y4e72y1U
過往老師只有教多媒體的觀點,28Please respect copyright.PENANAcPXXrXLkZI
只把Flash當動畫的工具~28Please respect copyright.PENANA5BK5VRPMWO
但是我真的很想學習做遊戲,28Please respect copyright.PENANAPtSdUbJ5Ib
國小又看到同學用Flash做遊戲,28Please respect copyright.PENANAhDk1GZEWz4
因此我人生有一大段時間,28Please respect copyright.PENANA3mHluLjg33
每年至少有一款Flash遊戲~28Please respect copyright.PENANAumEgXI14kY
懷舊完,說明一下為什麼選Flash吧!
Flash有一種特性是目前所有程式語言望塵莫及的,28Please respect copyright.PENANAam6IqcywtV
那就是即時性!28Please respect copyright.PENANA8gY8ZQavaj
各位也許對於現在的通訊軟體的lag或者延遲覺得無傷大雅,28Please respect copyright.PENANA5EJQwy0Ws4
但若真的要做到一比一的實時性,28Please respect copyright.PENANAim1OCaue5i
好比你在畫布上畫一條線,28Please respect copyright.PENANAFzNF0HM9hA
那每一點都同時間顯示在朋友的螢幕上,28Please respect copyright.PENANAYOPEzu6ztC
全部的程式語言中,28Please respect copyright.PENANA67bIO4bLS9
就只有Flash可以做到~28Please respect copyright.PENANATvECQqJ140
剩下的號稱可以的,28Please respect copyright.PENANAgsHDIpyY0E
拍謝~都只是因為影像計算快速,28Please respect copyright.PENANAs1SAhqBnMC
讓你誤以為是即時的感覺~28Please respect copyright.PENANAgL9DJBEnb3
然而它之所以能做到這點,28Please respect copyright.PENANAnt6HBpzUPr
歸因於其特性,而這特性也是它被淘汰的原因之一;28Please respect copyright.PENANADP1rtunXyD
那就是它有太多的漏洞了~28Please respect copyright.PENANAtSK1RDx1qH
Flash程式語言繞過了很多安全問題,28Please respect copyright.PENANAPbT7zB7JUQ
使得駭客能透過Flash(SWF檔案)來執行任意程式碼,28Please respect copyright.PENANAMB9uFPkQr0
同時Flash又能被嵌入在網頁上,28Please respect copyright.PENANAETCBgy8h9X
等於把這種危險性又擴散出去~28Please respect copyright.PENANAA1zIsEqrN7
(因為人們可能會點這些Flash動畫進而電腦中毒)28Please respect copyright.PENANAQGZbQSZX4D
但也因為繞過了安全問題,28Please respect copyright.PENANAIH1F5ntsXy
才能將資訊即時的送到對方電腦上~28Please respect copyright.PENANAxaFDOJtOhN
(其他程式語言還在做安全加密或應對措施)
基於讓人又愛又恨的特性,28Please respect copyright.PENANAGpKwPjUqsc
讓我想到學長給人兩極的印象~28Please respect copyright.PENANAaseEexvLQG
但這邊我是偏向愛多一點,28Please respect copyright.PENANAhCCAim4Ssb
因為我還是很懷念Flash,28Please respect copyright.PENANAhXoXeOC5hF
在那之後我就跑去Unity,重回C#懷抱,28Please respect copyright.PENANAkMdjx86qr2
爾後又被收費嚇到,而去學Godot(也是用C#)28Please respect copyright.PENANA7LV0WuWtJ2
(雖然後來Unity不收費了,但我也回不去了)
此外,28Please respect copyright.PENANAOsL56sXFCT
Flash在初學者學習做動畫這部分真的很友善,28Please respect copyright.PENANASE73xrFMtR
我在做遊戲中的動畫時,28Please respect copyright.PENANAy2zTAldcXd
也都是思索著如果是Flash會怎麼處理?28Please respect copyright.PENANAnTDKFCZzI8
那親切的像是學長和我們打成一片,28Please respect copyright.PENANATIPtK6SyLQ
甚至四天王對決時,還特別不收取我們的BP~28Please respect copyright.PENANAueSOVARbpM
當我們打贏其他人時,28Please respect copyright.PENANA1tTLCW6ful
還會幫我們說明其他人的心路歷程一樣~
學長也像Flash一樣,28Please respect copyright.PENANAV3CzDpFYer
是我們的老朋友~28Please respect copyright.PENANASo7zq7ryvV
那些年的小朋友齊打交、夢遊先生等等小遊戲,28Please respect copyright.PENANAkOirKJg796
陪伴了我們無數的時光~28Please respect copyright.PENANAuAC8Qm20Bc
而我現在使用的Newgrounds遊戲平台,28Please respect copyright.PENANAbHTbzmhJgU
有專門的軟體可供用戶繼續玩Flash遊戲。
當然我也知道,28Please respect copyright.PENANABnxyqW1Xm3
觀念要改,28Please respect copyright.PENANA6lKMxUX2OA
新的技術還是要學。28Please respect copyright.PENANA2vnTDx4rAi
就像同事和主管提到的Rust或許會成為未來的趨勢~28Please respect copyright.PENANArC5Rfqhq8k
而今我不再每天跟學長對戰了,28Please respect copyright.PENANAkEj9QE9SLe
接觸寶可夢Z-A後,28Please respect copyright.PENANA5hUhAZSfaM
也不好說會不會有其他人取代學長在我心中的位子...28Please respect copyright.PENANA95zXuG4R72
但是為了學長而寫的這些每日日記,28Please respect copyright.PENANAVObu3Gvwz8
讓我有機會透過這種方式反覆思索著28Please respect copyright.PENANAILmoAWcXsv
過去現在未來的點點滴滴~28Please respect copyright.PENANAuLduIyBzYS
進而讓自己有人生方向以及動力!28Please respect copyright.PENANAxfYapeOllb
同時還增廣見聞~28Please respect copyright.PENANAuTugbvrwzG
真的很感謝當年Flash的啟蒙,28Please respect copyright.PENANAPAqyNFoV87
曾經,我以為自己是空有夢想,28Please respect copyright.PENANAq4G2Pojeao
而無法做遊戲的人~28Please respect copyright.PENANAFFt0uXrTlY
也是因為認識了學長,28Please respect copyright.PENANABOKYd3v0EN
讓我能有主題參加每日日記挑戰~28Please respect copyright.PENANAXZygCAf2Ep
給自己每天創作的契機!28Please respect copyright.PENANAufRDKeRGie
雖然結束後我會重新整頓自己的創作步伐~28Please respect copyright.PENANAHg4q63ZKFa
很高興自己還願意持續的創作!
7/19 完28Please respect copyright.PENANANjDBXrKYi5
註: 我人生第一個學習的程式語言其實是Visual Basic,28Please respect copyright.PENANAZZDNHflq2H
還曾經做一個猴子接香蕉的小遊戲,28Please respect copyright.PENANAekLeBYx1Qp
那是我國小的事情。28Please respect copyright.PENANAfexheOgnNs
以前網路空間或者備份的概念都很差,28Please respect copyright.PENANAKV09Wc5W5q
最終因為電腦重灌就清掉我的努力了~
註2: 原則上我們都是希望有人能看懂我們的程式碼,28Please respect copyright.PENANA3lmTUdpo4c
讓大家都能共同維護和開發功能~28Please respect copyright.PENANAZTcePK2fCY
但也有人反其道而行─28Please respect copyright.PENANAnmygTkzmPE
我偏不走這路線~所有人都看不懂我的程式碼,28Please respect copyright.PENANAl3gfcvMqcj
就沒人能取代我了!28Please respect copyright.PENANAbz5yf4zex5
主管也不敢趕我走!28Please respect copyright.PENANACqghkZuTC9
不過這種短視近利的想法,28Please respect copyright.PENANAEWuH8sUe9h
其實害人又害己~28Please respect copyright.PENANAJCWquPewtx
總不太可能專案都是一個人完成,28Please respect copyright.PENANAmZiFM0FDcS
如果是那樣的專案,28Please respect copyright.PENANA9ayKAuUo3c
大抵也不是太大的專案...28Please respect copyright.PENANAp4JQlurPLY
如果哪一天有什麼你很難完成的任務,28Please respect copyright.PENANALoCKrDemUN
其他人也幫不了你(因為別人看不懂你的程式碼)~
註3: Flash你可以想像是一個做動畫的開發軟體,28Please respect copyright.PENANAmphcrQ0Z2Q
當你在畫面上拉出一個按鈕時,28Please respect copyright.PENANATepmZBQiLq
按下按鈕會發生什麼事情呢?28Please respect copyright.PENANAp93GhDbLyB
這時就要透過ActionScript撰寫程式碼,28Please respect copyright.PENANAqY2oYdOvpy
綁定事件在按鈕中,28Please respect copyright.PENANAZDSa8LWqq3
使得按下按鈕後,會跳轉到下一個場景。28Please respect copyright.PENANAF3yGBOhRAT
這之間的關係大概是這樣~