這個題目是我私心訂下的(哪次不是?),6Please respect copyright.PENANAHB3wFVJrNd
意思是沒有要管大家看不看得懂就是~6Please respect copyright.PENANAhntLbs4Ajp
畢竟從畢業到現在已經當工程師這麼多年,6Please respect copyright.PENANAfOhSYQ2NPV
接觸的程式語言雖然都是大家耳熟能詳的那些,6Please respect copyright.PENANAteCpsmziSV
也不少了~6Please respect copyright.PENANASaJzyRyVzj
所以這次的分析算是藉由我對於所學過的程式語言的觀點整理,6Please respect copyright.PENANAnBMJ6MBgn5
(不代表建議新手該從哪個程式語言入手喔)6Please respect copyright.PENANAgt27MyksjE
然後來跟學長的特質做對應喔!
第一個我想到的最佳解就是Python,6Please respect copyright.PENANA8emyTy3mfO
Python顧名思義就是蟒蛇,6Please respect copyright.PENANAWw9NffKLMB
他的Logo是兩隻蛇纏在一起,6Please respect copyright.PENANAD1yZlv49Td
一隻藍色一隻黃色~6Please respect copyright.PENANAPVQ85HAm9O
此外,目前最受歡迎的Python編輯器之一叫做Anaconda,6Please respect copyright.PENANAfNs8iejMlm
是森蚺的意思~6Please respect copyright.PENANAINw8VROmV6
會選擇這個程式語言,6Please respect copyright.PENANASoni0tyfxv
除了是Logo讓我幻想成學長和我們手牽手的樣子,6Please respect copyright.PENANAGvDqt6ze3b
再來就是蛇代表小龍(讓我想到迷你龍)~6Please respect copyright.PENANAJmA2vWSHTs
還有Python的繼承跟別的程式語言不同,6Please respect copyright.PENANAXJFSLzjrA1
一般程式語言的繼承只能有一個父類別(一個父親),6Please respect copyright.PENANAtT6bY48ORC
但是Python卻可以有多個父類別(多個父親)!6Please respect copyright.PENANAflgUuI22dN
這讓我覺得對應到了學長的多重身分~6Please respect copyright.PENANAKv0Hs8qKO1
既是四天王也是聯盟社社長,6Please respect copyright.PENANAvjKAvxbmjv
再來就是Python簡化了很多語法,6Please respect copyright.PENANAF3DrsUkgdU
是懶人救星~(相當於學長懶散的個性)6Please respect copyright.PENANAhXvYIghl2c
比方人家寫方法要用function,6Please respect copyright.PENANA41g3zWwstx
Python只要用def就可以定義方法了~6Please respect copyright.PENANAKIPDKHIAJs
對了對了,6Please respect copyright.PENANALRJd6a4CcQ
Python也是許多人用來學習處理大數據(meta data)、6Please respect copyright.PENANAVZQ4Q8IrVD
AI(scikit-learn)、爬蟲(Beautiful Soup)的程式語言呢!6Please respect copyright.PENANA8BwOjltYTN
對應學長的戰術能力剛剛好呢!
雖然最佳解出來了,6Please respect copyright.PENANAeMtHdcxni0
但還是要給其他的選項供人思考呀~6Please respect copyright.PENANALDrEgQc31u
那麼第二個選項就是Java6Please respect copyright.PENANA9qF233hp64
沒錯,就是爪哇,還有咖啡豆的那個Java~6Please respect copyright.PENANA3oQMwWYNJQ
當年代代流傳Java螞蟻書(而且是有翅膀的螞蟻)~6Please respect copyright.PENANAC7PqeUGr6I
我因為畢業很久,想說我再也不碰Java啦~Jo Jo!6Please respect copyright.PENANA6eoAUujsmg
就把那個超厚的書做回收了~6Please respect copyright.PENANA6Kblk37Tgz
然後我就遭到報應了...6Please respect copyright.PENANAvssfisCGeb
好在重新接觸Java沒有花太多時間就是,6Please respect copyright.PENANALIMMs2oiLB
凡走過必留下痕跡嘛,6Please respect copyright.PENANAuYPsvVEhDZ
我可是號稱2年沒碰的程式碼不會忘,6Please respect copyright.PENANAPeEnTDN3kX
10年前公司的專案我也知道怎麼維護呢哼哼!6Please respect copyright.PENANAn4bOyA6gW8
那為什麼選Java而不是Javascript呢?6Please respect copyright.PENANASAQSWO1W6W
因為我個人私心覺得,6Please respect copyright.PENANALKvbwxHEJy
學長的個性還有給我的印象,6Please respect copyright.PENANAU2y5Mr3Ae8
比較偏向後端程式語言。6Please respect copyright.PENANAf0ZvuDMpmE
然而我就不在這邊討論前端與後端程式語言的差異,6Please respect copyright.PENANA5RPKRw0mGq
只想奉勸你們各位已經被冠上全端工程師(如我)的工程師們,6Please respect copyright.PENANAQKe6T3zvyS
不要拿後端思維到前端程式碼使用~反之亦然!6Please respect copyright.PENANAoOEzFRHnUE
我們繼續說下去,為什麼選擇Java吧!6Please respect copyright.PENANAqFixCyLAZB
第一個理由確實是因為咖啡的關係~6Please respect copyright.PENANAszv87Nsate
畢竟代表學長的飲品中多少都有跟咖啡有關的選項。6Please respect copyright.PENANAMkx8l8ELmE
再來就是學Java免不了要會的OOP(物件導向程式設計)~6Please respect copyright.PENANATJypWjdz5r
我也曾經歷過不懂為什麼命名要叫做set還有get,6Please respect copyright.PENANAV2zM3HKbbo
不懂為什麼建構子(Constructor)代表藍圖...6Please respect copyright.PENANAgmOwO3sm40
以及分不清楚abstract和interface的時光,6Please respect copyright.PENANANndaOUgI9B
好在學了多個程式語言,反而把不會的概念也補完了!6Please respect copyright.PENANAznM2vto7tK
儘管OOP不是只有Java有,6Please respect copyright.PENANA3LhKhklKil
等等的那個選項也有這個觀念,6Please respect copyright.PENANAgPlPfivz4D
但畢竟是我第一個正規接觸的程式語言(註),6Please respect copyright.PENANADqB8Mx5uDZ
所以就以Java作為代表了~6Please respect copyright.PENANA2MuqJeHjaB
OOP這個技巧的出現,6Please respect copyright.PENANAAFRmB8UQvm
其實是為了讓程式碼能夠再利用,6Please respect copyright.PENANAEUyalX9QJV
讓你不至於成為碼農、什麼都複製貼上~6Please respect copyright.PENANAGXP7NsnO0a
同時也比較好維護程式碼~(註2)6Please respect copyright.PENANATVXg3WkCkN
而OOP的最常見的三大觀念即是─6Please respect copyright.PENANASM5P0iQdVl
封裝、繼承、多型6Please respect copyright.PENANAIl7IU2ROlT
讓我想到每個人加入聯盟社(繼承),6Please respect copyright.PENANAorck59xB9j
成為聯盟社的成員(實例化),要努力賺BP(多型)~6Please respect copyright.PENANAsAPBiQiCVU
關於多型,我看到有人下一個很簡單易懂的註解─6Please respect copyright.PENANAUApoHKqm8o
即是指一樣的事,不同做法。6Please respect copyright.PENANAc2SBn6d01j
又或者:同一個行為,但有不同的結果6Please respect copyright.PENANAlPx19hVIa2
而學長代表Java神之手讓我們進入聯盟社,6Please respect copyright.PENANAmX6UDEf9gR
開啟了農BP的地獄(特別對沒朋友的人不友善的機制)...6Please respect copyright.PENANAPAs6gQNA31
此外,6Please respect copyright.PENANAEt4ExPnldQ
各位你還聽過Silverlight嗎?6Please respect copyright.PENANAkEXUXiVTGv
記得當年微軟還給它做了一個形象人物─藍澤光6Please respect copyright.PENANAXbIbM9sLwX
我曾經用Silverlight寫網頁...6Please respect copyright.PENANAgS2CMdhQFX
然後得知這東西要被報廢了...6Please respect copyright.PENANASHVhqp8qEK
真的是有夠恨鐵不成鋼的!!!6Please respect copyright.PENANAAa5LGCr5iX
雖然可能沒有關聯性,6Please respect copyright.PENANAh8fn6rbpW1
後來的就是Spring Boot,6Please respect copyright.PENANAOdrG14T8Pu
但也沒想到同事說Spring Boot也有點老了...6Please respect copyright.PENANAPTD0PKGgHw
總之,6Please respect copyright.PENANANg1SPDimt3
如果Silberlight是學長的話,6Please respect copyright.PENANAX2dkCuD6iD
那Spring Boot大概就是烏栗了~6Please respect copyright.PENANAmDUbW86X6L
唉,都是時代的眼淚呀!
最後一個選項老實說也是我重新摸索的程式語言,6Please respect copyright.PENANALVJaMhiUhY
那就是C++6Please respect copyright.PENANAiUxZEJQ0xK
當年學C++是為了影像處理,6Please respect copyright.PENANAwz3oBcIxi5
我也沒想到當年使用openCV,6Please respect copyright.PENANAaLKzbwNCKW
現在2025年了,大家還是繼續使用openCV。6Please respect copyright.PENANAz7L64muwqi
儘管都這麼久語法應該都更新了,6Please respect copyright.PENANAnJjpCVjgFy
你們如果當年好好學習openCV,6Please respect copyright.PENANA6hpG1JAU4u
10年後還是受用呀!(對,我2012年大學畢業的)6Please respect copyright.PENANA6c0uFLypEg
會選擇C++的原因是因為我曾經聽過有人這樣比喻C++:6Please respect copyright.PENANA3PP8A6xFdD
發明出C++的人,對於(現在的)C++掌握程度也只有70%6Please respect copyright.PENANAzTi9qwbNVF
因此如果在面試的時候,6Please respect copyright.PENANALKmvm3EhBw
面試官問你,你對於C++的掌握度有多少?6Please respect copyright.PENANALRRlPh7FjH
會回答超過70%的人不是真的有實力,就是過份有自信...6Please respect copyright.PENANAidKd2N3c40
會這樣有感而發是因為,6Please respect copyright.PENANAFh2kmFovI5
今天已經是這個系列的第83篇了,6Please respect copyright.PENANAwJwlbtVpSA
不過我對於學長的理解,6Please respect copyright.PENANAhEa7rmPXgE
就跟對C++的理解一樣,6Please respect copyright.PENANAFqqEH62oTJ
還是只有淺層的程度~6Please respect copyright.PENANAfRid86P1XW
除此之外,6Please respect copyright.PENANAKGhs8FScjQ
C++也是懶人程式語言之一,6Please respect copyright.PENANAGz9OMnMVp1
前提是你要很熟練~6Please respect copyright.PENANAxZFY1h3uRw
怎麼說呢?6Please respect copyright.PENANAUWwAU4EW3R
C++會在背後幫你做一堆的記憶體管理,6Please respect copyright.PENANA0GCoqmouKb
使你程式碼的效能提升~6Please respect copyright.PENANALFwLxNGtSp
不過它的這個特性有時候也會是兩面刃,6Please respect copyright.PENANAVPkRoCcOyR
就是因為他擅自做了你沒預料的事情,6Please respect copyright.PENANALrAqaEVsV0
當你要解BUG的時候,6Please respect copyright.PENANAPEGKhbn9TR
就不得不懷疑他根本是愛搞事的學長呀!
再分析下去會沒完沒了~6Please respect copyright.PENANA9ncxPERWFM
畢竟還有至少3種以上的程式語言沒列出來呢,6Please respect copyright.PENANAaEAc0OJEHS
如果私心想要再追加一個我心中代表學長的程式語言,6Please respect copyright.PENANAP5NBqHRbRJ
那就是被淘汰的Flash了~6Please respect copyright.PENANAzHvE3CmZKu
嚴格來說應該是叫做ActionScript。6Please respect copyright.PENANAMkuCEBtV1B
不過我知道大家對於這個名稱不熟,6Please respect copyright.PENANAJClpXoQ74X
因此後續我還是用Flash稱呼。6Please respect copyright.PENANAEV2AFW3mSE
然而程式語言的部分其實都是指AS~(註3)
Flash是我完全從書本上自學起來的程式語言。6Please respect copyright.PENANAbe2HeeeTsX
過往老師只有教多媒體的觀點,6Please respect copyright.PENANAfikVfBrmlr
只把Flash當動畫的工具~6Please respect copyright.PENANAIvO40LfPIn
但是我真的很想學習做遊戲,6Please respect copyright.PENANAn6lkKolLKX
國小又看到同學用Flash做遊戲,6Please respect copyright.PENANAHmRep1KUp4
因此我人生有一大段時間,6Please respect copyright.PENANA5gFNuPDzT7
每年至少有一款Flash遊戲~6Please respect copyright.PENANAjHp8LJKLjr
懷舊完,說明一下為什麼選Flash吧!
Flash有一種特性是目前所有程式語言望塵莫及的,6Please respect copyright.PENANAW2cvAul7BT
那就是即時性!6Please respect copyright.PENANA0nJ0FlzNu0
各位也許對於現在的通訊軟體的lag或者延遲覺得無傷大雅,6Please respect copyright.PENANABh0cX2iXSw
但若真的要做到一比一的實時性,6Please respect copyright.PENANAO8fWsz7j0u
好比你在畫布上畫一條線,6Please respect copyright.PENANAkRz5karSIy
那每一點都同時間顯示在朋友的螢幕上,6Please respect copyright.PENANANXEJ9tanbj
全部的程式語言中,6Please respect copyright.PENANAFn5t2xEobT
就只有Flash可以做到~6Please respect copyright.PENANAibUhKs2Mmv
剩下的號稱可以的,6Please respect copyright.PENANAcuZduZ66sf
拍謝~都只是因為影像計算快速,6Please respect copyright.PENANAv3tn4boS28
讓你誤以為是即時的感覺~6Please respect copyright.PENANA3Jkt2nq58V
然而它之所以能做到這點,6Please respect copyright.PENANAdQHIBTAH8A
歸因於其特性,而這特性也是它被淘汰的原因之一;6Please respect copyright.PENANAxWo39wjxbi
那就是它有太多的漏洞了~6Please respect copyright.PENANA1GzmS9X2J0
Flash程式語言繞過了很多安全問題,6Please respect copyright.PENANAnydQCoLqjf
使得駭客能透過Flash(SWF檔案)來執行任意程式碼,6Please respect copyright.PENANAmmofTGyHLf
同時Flash又能被嵌入在網頁上,6Please respect copyright.PENANA7uOToZWRKU
等於把這種危險性又擴散出去~6Please respect copyright.PENANAQVl4piXAbn
(因為人們可能會點這些Flash動畫進而電腦中毒)6Please respect copyright.PENANAgVRSWQR3vS
但也因為繞過了安全問題,6Please respect copyright.PENANAiHyHrvAmcY
才能將資訊即時的送到對方電腦上~6Please respect copyright.PENANAZ5TOTR7yTQ
(其他程式語言還在做安全加密或應對措施)
基於讓人又愛又恨的特性,6Please respect copyright.PENANAkvjoS6FCJM
讓我想到學長給人兩極的印象~6Please respect copyright.PENANAcwKWbTl2jC
但這邊我是偏向愛多一點,6Please respect copyright.PENANAqdUScxb1Aa
因為我還是很懷念Flash,6Please respect copyright.PENANAIHZjupbHNj
在那之後我就跑去Unity,重回C#懷抱,6Please respect copyright.PENANA5xrKNg9wuV
爾後又被收費嚇到,而去學Godot(也是用C#)6Please respect copyright.PENANAFdLSPzzcGi
(雖然後來Unity不收費了,但我也回不去了)
此外,6Please respect copyright.PENANAyTrPD2vwqB
Flash在初學者學習做動畫這部分真的很友善,6Please respect copyright.PENANA9v0iZarOAZ
我在做遊戲中的動畫時,6Please respect copyright.PENANAM2mzYBqBnn
也都是思索著如果是Flash會怎麼處理?6Please respect copyright.PENANAXIrWUXFhfO
那親切的像是學長和我們打成一片,6Please respect copyright.PENANAQIOwReDoXO
甚至四天王對決時,還特別不收取我們的BP~6Please respect copyright.PENANAjm92FxI6Qe
當我們打贏其他人時,6Please respect copyright.PENANABqmSQNDFxD
還會幫我們說明其他人的心路歷程一樣~
學長也像Flash一樣,6Please respect copyright.PENANAv40bhKa4RV
是我們的老朋友~6Please respect copyright.PENANAMGWr8qyx6d
那些年的小朋友齊打交、夢遊先生等等小遊戲,6Please respect copyright.PENANAzW4QvOdFf3
陪伴了我們無數的時光~6Please respect copyright.PENANAAbzQb1499R
而我現在使用的Newgrounds遊戲平台,6Please respect copyright.PENANAZXjVFWSb1A
有專門的軟體可供用戶繼續玩Flash遊戲。
當然我也知道,6Please respect copyright.PENANAsULfU3zKLT
觀念要改,6Please respect copyright.PENANAahPUsQtS87
新的技術還是要學。6Please respect copyright.PENANAPniteFjIq1
就像同事和主管提到的Rust或許會成為未來的趨勢~6Please respect copyright.PENANAwyZFBSgKr8
而今我不再每天跟學長對戰了,6Please respect copyright.PENANAxTja47TsrH
接觸寶可夢Z-A後,6Please respect copyright.PENANAsKOoGfcJiy
也不好說會不會有其他人取代學長在我心中的位子...6Please respect copyright.PENANAQBqpr2Ivpb
但是為了學長而寫的這些每日日記,6Please respect copyright.PENANA8jafT7vuYp
讓我有機會透過這種方式反覆思索著6Please respect copyright.PENANAk5r5ZdyIYx
過去現在未來的點點滴滴~6Please respect copyright.PENANACT6282PvVE
進而讓自己有人生方向以及動力!6Please respect copyright.PENANAHAYZcQY0bC
同時還增廣見聞~6Please respect copyright.PENANAoExYqMkxbt
真的很感謝當年Flash的啟蒙,6Please respect copyright.PENANAtQVJjhzUxP
曾經,我以為自己是空有夢想,6Please respect copyright.PENANAVUBIYdSU9A
而無法做遊戲的人~6Please respect copyright.PENANAcGzdLKZgzE
也是因為認識了學長,6Please respect copyright.PENANAm19zyW28sB
讓我能有主題參加每日日記挑戰~6Please respect copyright.PENANAAj1nuuEwhM
給自己每天創作的契機!6Please respect copyright.PENANACcKNMPLG6h
雖然結束後我會重新整頓自己的創作步伐~6Please respect copyright.PENANAjRlQ09OAul
很高興自己還願意持續的創作!
7/19 完6Please respect copyright.PENANAoHr4CiQwls
註: 我人生第一個學習的程式語言其實是Visual Basic,6Please respect copyright.PENANAkNaX7w4tOg
還曾經做一個猴子接香蕉的小遊戲,6Please respect copyright.PENANA8cb5wq5yfM
那是我國小的事情。6Please respect copyright.PENANAnjIsCaB1JC
以前網路空間或者備份的概念都很差,6Please respect copyright.PENANAb3Cm02WHlp
最終因為電腦重灌就清掉我的努力了~
註2: 原則上我們都是希望有人能看懂我們的程式碼,6Please respect copyright.PENANAwIHQhAde7x
讓大家都能共同維護和開發功能~6Please respect copyright.PENANAqA9lpG3N7W
但也有人反其道而行─6Please respect copyright.PENANAx8Rt7NArCb
我偏不走這路線~所有人都看不懂我的程式碼,6Please respect copyright.PENANAsoBLzGo7Ty
就沒人能取代我了!6Please respect copyright.PENANAGXjzUZB54s
主管也不敢趕我走!6Please respect copyright.PENANA4qcZrB331u
不過這種短視近利的想法,6Please respect copyright.PENANAUVxJ5xiRvo
其實害人又害己~6Please respect copyright.PENANAazJtf0R4xr
總不太可能專案都是一個人完成,6Please respect copyright.PENANAqxSqMddKmG
如果是那樣的專案,6Please respect copyright.PENANAzgQ20Sy5Ia
大抵也不是太大的專案...6Please respect copyright.PENANAOsr7O4jMiP
如果哪一天有什麼你很難完成的任務,6Please respect copyright.PENANAhwMAhlnuvl
其他人也幫不了你(因為別人看不懂你的程式碼)~
註3: Flash你可以想像是一個做動畫的開發軟體,6Please respect copyright.PENANAbJBy1dECsX
當你在畫面上拉出一個按鈕時,6Please respect copyright.PENANAPfuwXaTq9U
按下按鈕會發生什麼事情呢?6Please respect copyright.PENANAlpH29LscEE
這時就要透過ActionScript撰寫程式碼,6Please respect copyright.PENANASCC1yvZAlX
綁定事件在按鈕中,6Please respect copyright.PENANA81FNFwIuju
使得按下按鈕後,會跳轉到下一個場景。6Please respect copyright.PENANAmkW4G4LZLV
這之間的關係大概是這樣~