這個題目是我私心訂下的(哪次不是?),23Please respect copyright.PENANA2FPGtq1pCc
意思是沒有要管大家看不看得懂就是~23Please respect copyright.PENANAsn64W1UquP
畢竟從畢業到現在已經當工程師這麼多年,23Please respect copyright.PENANAcXKvQkoRA0
接觸的程式語言雖然都是大家耳熟能詳的那些,23Please respect copyright.PENANAFE3x98Gnyr
也不少了~23Please respect copyright.PENANAZYxsDdJeqW
所以這次的分析算是藉由我對於所學過的程式語言的觀點整理,23Please respect copyright.PENANA9GIA7VU14Y
(不代表建議新手該從哪個程式語言入手喔)23Please respect copyright.PENANAFZPkKgkR2c
然後來跟學長的特質做對應喔!
第一個我想到的最佳解就是Python,23Please respect copyright.PENANAIBtLos8Nhz
Python顧名思義就是蟒蛇,23Please respect copyright.PENANATnTH0KgyWu
他的Logo是兩隻蛇纏在一起,23Please respect copyright.PENANAPq6BEncqts
一隻藍色一隻黃色~23Please respect copyright.PENANAIUyuPdJRe6
此外,目前最受歡迎的Python編輯器之一叫做Anaconda,23Please respect copyright.PENANA5Sl5BewX89
是森蚺的意思~23Please respect copyright.PENANAD5yJQQnLub
會選擇這個程式語言,23Please respect copyright.PENANADmnDrAEVj6
除了是Logo讓我幻想成學長和我們手牽手的樣子,23Please respect copyright.PENANANKk9zwLjoO
再來就是蛇代表小龍(讓我想到迷你龍)~23Please respect copyright.PENANAgyN0cueBVP
還有Python的繼承跟別的程式語言不同,23Please respect copyright.PENANAmRTeDHP0Rm
一般程式語言的繼承只能有一個父類別(一個父親),23Please respect copyright.PENANApbndzLhh27
但是Python卻可以有多個父類別(多個父親)!23Please respect copyright.PENANACjnagutc4N
這讓我覺得對應到了學長的多重身分~23Please respect copyright.PENANAQOtBr3FCTa
既是四天王也是聯盟社社長,23Please respect copyright.PENANAyshFa9SQdA
再來就是Python簡化了很多語法,23Please respect copyright.PENANAa6fI2NDsGG
是懶人救星~(相當於學長懶散的個性)23Please respect copyright.PENANAGCR3nLuQmX
比方人家寫方法要用function,23Please respect copyright.PENANAQQevFo4Izx
Python只要用def就可以定義方法了~23Please respect copyright.PENANA3SbLUR8hhf
對了對了,23Please respect copyright.PENANArj3rS9PUJJ
Python也是許多人用來學習處理大數據(meta data)、23Please respect copyright.PENANA5mMEOyONBR
AI(scikit-learn)、爬蟲(Beautiful Soup)的程式語言呢!23Please respect copyright.PENANA5rW9g2Gk1f
對應學長的戰術能力剛剛好呢!
雖然最佳解出來了,23Please respect copyright.PENANAGMrhNEwgl4
但還是要給其他的選項供人思考呀~23Please respect copyright.PENANARBEOrImiKU
那麼第二個選項就是Java23Please respect copyright.PENANAjKHyhg011M
沒錯,就是爪哇,還有咖啡豆的那個Java~23Please respect copyright.PENANASKWuD4Ncfd
當年代代流傳Java螞蟻書(而且是有翅膀的螞蟻)~23Please respect copyright.PENANAJ9n7kQeLZE
我因為畢業很久,想說我再也不碰Java啦~Jo Jo!23Please respect copyright.PENANAXhfbwI8WXE
就把那個超厚的書做回收了~23Please respect copyright.PENANA8PcjjWVhzI
然後我就遭到報應了...23Please respect copyright.PENANAM3ooPlmHkw
好在重新接觸Java沒有花太多時間就是,23Please respect copyright.PENANA4gnjXQVk92
凡走過必留下痕跡嘛,23Please respect copyright.PENANAQvAdHwFyhr
我可是號稱2年沒碰的程式碼不會忘,23Please respect copyright.PENANAgTFiXYJwd3
10年前公司的專案我也知道怎麼維護呢哼哼!23Please respect copyright.PENANAwd48ExJWFZ
那為什麼選Java而不是Javascript呢?23Please respect copyright.PENANAhk6N6CD63N
因為我個人私心覺得,23Please respect copyright.PENANAHw9TSmYqOU
學長的個性還有給我的印象,23Please respect copyright.PENANAcFU2acBsjp
比較偏向後端程式語言。23Please respect copyright.PENANAZ25RSZi2Vd
然而我就不在這邊討論前端與後端程式語言的差異,23Please respect copyright.PENANA8NVGxtjUf9
只想奉勸你們各位已經被冠上全端工程師(如我)的工程師們,23Please respect copyright.PENANA61g16PPbkU
不要拿後端思維到前端程式碼使用~反之亦然!23Please respect copyright.PENANAB6DeTBBnmd
我們繼續說下去,為什麼選擇Java吧!23Please respect copyright.PENANAyH5bASJd6w
第一個理由確實是因為咖啡的關係~23Please respect copyright.PENANAAK9KQzXr3m
畢竟代表學長的飲品中多少都有跟咖啡有關的選項。23Please respect copyright.PENANAM0rSdNJI0S
再來就是學Java免不了要會的OOP(物件導向程式設計)~23Please respect copyright.PENANA7FBz9e6w3Q
我也曾經歷過不懂為什麼命名要叫做set還有get,23Please respect copyright.PENANA4CEVrWuPFc
不懂為什麼建構子(Constructor)代表藍圖...23Please respect copyright.PENANAFwwXaHoUHh
以及分不清楚abstract和interface的時光,23Please respect copyright.PENANAlFCxyBEc0z
好在學了多個程式語言,反而把不會的概念也補完了!23Please respect copyright.PENANANPPUwIPkjF
儘管OOP不是只有Java有,23Please respect copyright.PENANAubZYozvja8
等等的那個選項也有這個觀念,23Please respect copyright.PENANArI7Ydbqgt4
但畢竟是我第一個正規接觸的程式語言(註),23Please respect copyright.PENANA2wLCPGa3F2
所以就以Java作為代表了~23Please respect copyright.PENANAmfaMUkipaf
OOP這個技巧的出現,23Please respect copyright.PENANA3p4VuoHM2p
其實是為了讓程式碼能夠再利用,23Please respect copyright.PENANA2J6YMWUC8o
讓你不至於成為碼農、什麼都複製貼上~23Please respect copyright.PENANAHrgGNSV9XZ
同時也比較好維護程式碼~(註2)23Please respect copyright.PENANA00R1ppupXu
而OOP的最常見的三大觀念即是─23Please respect copyright.PENANADqXVbQkc16
封裝、繼承、多型23Please respect copyright.PENANA9VULw15a35
讓我想到每個人加入聯盟社(繼承),23Please respect copyright.PENANAlCEa5JzD7j
成為聯盟社的成員(實例化),要努力賺BP(多型)~23Please respect copyright.PENANA6pT0SlbRqz
關於多型,我看到有人下一個很簡單易懂的註解─23Please respect copyright.PENANA6FfkuaFzWQ
即是指一樣的事,不同做法。23Please respect copyright.PENANAUmHT4s4D1E
又或者:同一個行為,但有不同的結果23Please respect copyright.PENANA8yPQDx4vOm
而學長代表Java神之手讓我們進入聯盟社,23Please respect copyright.PENANAUpUMOPIs0i
開啟了農BP的地獄(特別對沒朋友的人不友善的機制)...23Please respect copyright.PENANAi3mDaI4N2x
此外,23Please respect copyright.PENANA4eusqSOBrQ
各位你還聽過Silverlight嗎?23Please respect copyright.PENANAaTPjeCpqwH
記得當年微軟還給它做了一個形象人物─藍澤光23Please respect copyright.PENANAqzu4lBhU4p
我曾經用Silverlight寫網頁...23Please respect copyright.PENANAs2AWprRoyx
然後得知這東西要被報廢了...23Please respect copyright.PENANA04wZXDZZGP
真的是有夠恨鐵不成鋼的!!!23Please respect copyright.PENANAMiJb971OVi
雖然可能沒有關聯性,23Please respect copyright.PENANATP3FgfeJcp
後來的就是Spring Boot,23Please respect copyright.PENANALj2vK4IEJw
但也沒想到同事說Spring Boot也有點老了...23Please respect copyright.PENANAHSYMqyx9fC
總之,23Please respect copyright.PENANAMRoUHG3KFp
如果Silberlight是學長的話,23Please respect copyright.PENANARqzoUqa9rc
那Spring Boot大概就是烏栗了~23Please respect copyright.PENANAwwqjpYjIUS
唉,都是時代的眼淚呀!
最後一個選項老實說也是我重新摸索的程式語言,23Please respect copyright.PENANA3O1U9GgQqr
那就是C++23Please respect copyright.PENANA5LfGI2RT8z
當年學C++是為了影像處理,23Please respect copyright.PENANAOqL8FEwCMN
我也沒想到當年使用openCV,23Please respect copyright.PENANAFhRTzlAdNb
現在2025年了,大家還是繼續使用openCV。23Please respect copyright.PENANAjXcAF0PxJl
儘管都這麼久語法應該都更新了,23Please respect copyright.PENANAnBuVx6QCzB
你們如果當年好好學習openCV,23Please respect copyright.PENANAgCcqBOS9Zy
10年後還是受用呀!(對,我2012年大學畢業的)23Please respect copyright.PENANATZV4bfUZrJ
會選擇C++的原因是因為我曾經聽過有人這樣比喻C++:23Please respect copyright.PENANAMl3pAEmij7
發明出C++的人,對於(現在的)C++掌握程度也只有70%23Please respect copyright.PENANAzakcgkM1cO
因此如果在面試的時候,23Please respect copyright.PENANALXCrjMoZbS
面試官問你,你對於C++的掌握度有多少?23Please respect copyright.PENANAg1ZoyEg2Eh
會回答超過70%的人不是真的有實力,就是過份有自信...23Please respect copyright.PENANAsur1SrdS7h
會這樣有感而發是因為,23Please respect copyright.PENANAB6eiPDjjN4
今天已經是這個系列的第83篇了,23Please respect copyright.PENANAf1Ra3nDqY3
不過我對於學長的理解,23Please respect copyright.PENANA85ELFlhkkd
就跟對C++的理解一樣,23Please respect copyright.PENANAHHUCXDfVC3
還是只有淺層的程度~23Please respect copyright.PENANAleEQj56dmt
除此之外,23Please respect copyright.PENANAMo9yJTfRvB
C++也是懶人程式語言之一,23Please respect copyright.PENANAFQE6WL0Fox
前提是你要很熟練~23Please respect copyright.PENANAgq4wiLpCSx
怎麼說呢?23Please respect copyright.PENANARZYMiHwYxu
C++會在背後幫你做一堆的記憶體管理,23Please respect copyright.PENANA2APnK5Gmyp
使你程式碼的效能提升~23Please respect copyright.PENANALJhdVhUVIk
不過它的這個特性有時候也會是兩面刃,23Please respect copyright.PENANABIWupyjsna
就是因為他擅自做了你沒預料的事情,23Please respect copyright.PENANAwquZEdVqaO
當你要解BUG的時候,23Please respect copyright.PENANAfmO8pHcv6s
就不得不懷疑他根本是愛搞事的學長呀!
再分析下去會沒完沒了~23Please respect copyright.PENANA4bztmBoWp0
畢竟還有至少3種以上的程式語言沒列出來呢,23Please respect copyright.PENANAfCdGP7jDYB
如果私心想要再追加一個我心中代表學長的程式語言,23Please respect copyright.PENANAehkGbx8EhX
那就是被淘汰的Flash了~23Please respect copyright.PENANAR7Fq19iJpF
嚴格來說應該是叫做ActionScript。23Please respect copyright.PENANAHI02HIxbtf
不過我知道大家對於這個名稱不熟,23Please respect copyright.PENANANtINEagryN
因此後續我還是用Flash稱呼。23Please respect copyright.PENANAhg59V74e7d
然而程式語言的部分其實都是指AS~(註3)
Flash是我完全從書本上自學起來的程式語言。23Please respect copyright.PENANA09GtVb23zn
過往老師只有教多媒體的觀點,23Please respect copyright.PENANAxezs4zInoy
只把Flash當動畫的工具~23Please respect copyright.PENANA7yOu3xuPmq
但是我真的很想學習做遊戲,23Please respect copyright.PENANA9sQgkAOwCF
國小又看到同學用Flash做遊戲,23Please respect copyright.PENANAq1iLkodS7y
因此我人生有一大段時間,23Please respect copyright.PENANAur5FK1Fz8g
每年至少有一款Flash遊戲~23Please respect copyright.PENANAlGOzmGGQCF
懷舊完,說明一下為什麼選Flash吧!
Flash有一種特性是目前所有程式語言望塵莫及的,23Please respect copyright.PENANAwGZub2eL43
那就是即時性!23Please respect copyright.PENANAC8fAdwjxpl
各位也許對於現在的通訊軟體的lag或者延遲覺得無傷大雅,23Please respect copyright.PENANAMp2xcmlADR
但若真的要做到一比一的實時性,23Please respect copyright.PENANAxFfd7y32lA
好比你在畫布上畫一條線,23Please respect copyright.PENANAJULBb9inJf
那每一點都同時間顯示在朋友的螢幕上,23Please respect copyright.PENANAEZsUhFha6S
全部的程式語言中,23Please respect copyright.PENANAeDICy26lxC
就只有Flash可以做到~23Please respect copyright.PENANAPRqc9VRpAO
剩下的號稱可以的,23Please respect copyright.PENANAWRWUg37PCa
拍謝~都只是因為影像計算快速,23Please respect copyright.PENANAK98MQlLSod
讓你誤以為是即時的感覺~23Please respect copyright.PENANAhuLgynDvS9
然而它之所以能做到這點,23Please respect copyright.PENANAJfdMAZabie
歸因於其特性,而這特性也是它被淘汰的原因之一;23Please respect copyright.PENANAxeYmmBq91N
那就是它有太多的漏洞了~23Please respect copyright.PENANAZLLxkiA9Zu
Flash程式語言繞過了很多安全問題,23Please respect copyright.PENANAb7MaKVh3Ue
使得駭客能透過Flash(SWF檔案)來執行任意程式碼,23Please respect copyright.PENANAv576sK9Tfp
同時Flash又能被嵌入在網頁上,23Please respect copyright.PENANAmHiXminngR
等於把這種危險性又擴散出去~23Please respect copyright.PENANA0lzSqS2wN1
(因為人們可能會點這些Flash動畫進而電腦中毒)23Please respect copyright.PENANACsvgYLvcpU
但也因為繞過了安全問題,23Please respect copyright.PENANAADJA3stFmu
才能將資訊即時的送到對方電腦上~23Please respect copyright.PENANA2L9DqifEaz
(其他程式語言還在做安全加密或應對措施)
基於讓人又愛又恨的特性,23Please respect copyright.PENANAi80VX0BoGN
讓我想到學長給人兩極的印象~23Please respect copyright.PENANASDtVLB3WuE
但這邊我是偏向愛多一點,23Please respect copyright.PENANA5YsLWV2zqe
因為我還是很懷念Flash,23Please respect copyright.PENANA1p1r79DJxK
在那之後我就跑去Unity,重回C#懷抱,23Please respect copyright.PENANAYW5SrtmbcH
爾後又被收費嚇到,而去學Godot(也是用C#)23Please respect copyright.PENANARc1owchkVP
(雖然後來Unity不收費了,但我也回不去了)
此外,23Please respect copyright.PENANAWFi1aGtaox
Flash在初學者學習做動畫這部分真的很友善,23Please respect copyright.PENANAJNDO1ZJy0C
我在做遊戲中的動畫時,23Please respect copyright.PENANAOXgLUXHyOn
也都是思索著如果是Flash會怎麼處理?23Please respect copyright.PENANAIXpMr1gOgj
那親切的像是學長和我們打成一片,23Please respect copyright.PENANACp8f3pUC0F
甚至四天王對決時,還特別不收取我們的BP~23Please respect copyright.PENANAifaCdS5sL6
當我們打贏其他人時,23Please respect copyright.PENANAuX1GzaMyKP
還會幫我們說明其他人的心路歷程一樣~
學長也像Flash一樣,23Please respect copyright.PENANArsfk9aWkR9
是我們的老朋友~23Please respect copyright.PENANAHf6PopQOvl
那些年的小朋友齊打交、夢遊先生等等小遊戲,23Please respect copyright.PENANACxeq8PsbTq
陪伴了我們無數的時光~23Please respect copyright.PENANApKG8Hd00eI
而我現在使用的Newgrounds遊戲平台,23Please respect copyright.PENANAqLTamzj0Rq
有專門的軟體可供用戶繼續玩Flash遊戲。
當然我也知道,23Please respect copyright.PENANAAQ8MbdWM64
觀念要改,23Please respect copyright.PENANAfkrB3nXbm8
新的技術還是要學。23Please respect copyright.PENANAFnSL9tUVN6
就像同事和主管提到的Rust或許會成為未來的趨勢~23Please respect copyright.PENANAcLx3DM3Ue2
而今我不再每天跟學長對戰了,23Please respect copyright.PENANAl2EHKHz6nV
接觸寶可夢Z-A後,23Please respect copyright.PENANArPtzr0AFeo
也不好說會不會有其他人取代學長在我心中的位子...23Please respect copyright.PENANArY3auEwVAw
但是為了學長而寫的這些每日日記,23Please respect copyright.PENANA6E6KY1whAn
讓我有機會透過這種方式反覆思索著23Please respect copyright.PENANAtrUzWO1EKb
過去現在未來的點點滴滴~23Please respect copyright.PENANAZ3fH8ZtpRl
進而讓自己有人生方向以及動力!23Please respect copyright.PENANAVoVfArUWL7
同時還增廣見聞~23Please respect copyright.PENANAG5rMdvtBvB
真的很感謝當年Flash的啟蒙,23Please respect copyright.PENANAxOluOeBTN6
曾經,我以為自己是空有夢想,23Please respect copyright.PENANAH3OXMzTW7t
而無法做遊戲的人~23Please respect copyright.PENANADypWvVzrkO
也是因為認識了學長,23Please respect copyright.PENANA3dwimzaUV6
讓我能有主題參加每日日記挑戰~23Please respect copyright.PENANAOHfKSdPB17
給自己每天創作的契機!23Please respect copyright.PENANAXTAqKzhj0m
雖然結束後我會重新整頓自己的創作步伐~23Please respect copyright.PENANA9Xnb7Rn1lJ
很高興自己還願意持續的創作!
7/19 完23Please respect copyright.PENANASkMUNJUS1U
註: 我人生第一個學習的程式語言其實是Visual Basic,23Please respect copyright.PENANAowpg8FlkLq
還曾經做一個猴子接香蕉的小遊戲,23Please respect copyright.PENANAl1XgrSKl5F
那是我國小的事情。23Please respect copyright.PENANAqPs9PadNss
以前網路空間或者備份的概念都很差,23Please respect copyright.PENANAl8RLdeDomu
最終因為電腦重灌就清掉我的努力了~
註2: 原則上我們都是希望有人能看懂我們的程式碼,23Please respect copyright.PENANAZeQlfsPeHU
讓大家都能共同維護和開發功能~23Please respect copyright.PENANA7xQrIs4HAj
但也有人反其道而行─23Please respect copyright.PENANACVrgtc85NX
我偏不走這路線~所有人都看不懂我的程式碼,23Please respect copyright.PENANAEvRMhMlQzC
就沒人能取代我了!23Please respect copyright.PENANAFL4iotjwgx
主管也不敢趕我走!23Please respect copyright.PENANA4AuFXNfFmE
不過這種短視近利的想法,23Please respect copyright.PENANAxSbmmaD8nn
其實害人又害己~23Please respect copyright.PENANAegdMIGMp9o
總不太可能專案都是一個人完成,23Please respect copyright.PENANA3OPqtUj8AI
如果是那樣的專案,23Please respect copyright.PENANAWANAAhPqaZ
大抵也不是太大的專案...23Please respect copyright.PENANAdtYfhzMqRI
如果哪一天有什麼你很難完成的任務,23Please respect copyright.PENANAkiwipABaMW
其他人也幫不了你(因為別人看不懂你的程式碼)~
註3: Flash你可以想像是一個做動畫的開發軟體,23Please respect copyright.PENANAUPOaZmGkEn
當你在畫面上拉出一個按鈕時,23Please respect copyright.PENANAXchzZEL5f9
按下按鈕會發生什麼事情呢?23Please respect copyright.PENANAHaEUrEpuvs
這時就要透過ActionScript撰寫程式碼,23Please respect copyright.PENANAfqYqrXkvRS
綁定事件在按鈕中,23Please respect copyright.PENANAAgC5pZ3hK6
使得按下按鈕後,會跳轉到下一個場景。23Please respect copyright.PENANAZPkLLCVkpK
這之間的關係大概是這樣~