這個題目是我私心訂下的(哪次不是?),29Please respect copyright.PENANAArYjQhU6um
意思是沒有要管大家看不看得懂就是~29Please respect copyright.PENANABHGOEz1Gsp
畢竟從畢業到現在已經當工程師這麼多年,29Please respect copyright.PENANAt0yMgrOrKC
接觸的程式語言雖然都是大家耳熟能詳的那些,29Please respect copyright.PENANAAtzcMz1XC7
也不少了~29Please respect copyright.PENANAsbhvLsPmR9
所以這次的分析算是藉由我對於所學過的程式語言的觀點整理,29Please respect copyright.PENANAouC5csJ3cI
(不代表建議新手該從哪個程式語言入手喔)29Please respect copyright.PENANAC5IDoNLrvQ
然後來跟學長的特質做對應喔!
第一個我想到的最佳解就是Python,29Please respect copyright.PENANAapCvCzGYtx
Python顧名思義就是蟒蛇,29Please respect copyright.PENANADramIA7rjr
他的Logo是兩隻蛇纏在一起,29Please respect copyright.PENANAga3bLC8NWn
一隻藍色一隻黃色~29Please respect copyright.PENANA39YAvbS0CZ
此外,目前最受歡迎的Python編輯器之一叫做Anaconda,29Please respect copyright.PENANABGX3HMZNI6
是森蚺的意思~29Please respect copyright.PENANAMMeE9xkKLC
會選擇這個程式語言,29Please respect copyright.PENANAcUbVnYiiNH
除了是Logo讓我幻想成學長和我們手牽手的樣子,29Please respect copyright.PENANA9zENqOLgnf
再來就是蛇代表小龍(讓我想到迷你龍)~29Please respect copyright.PENANAm3b3kusQva
還有Python的繼承跟別的程式語言不同,29Please respect copyright.PENANAUrQ561Ta8r
一般程式語言的繼承只能有一個父類別(一個父親),29Please respect copyright.PENANA04iNVGIQ8u
但是Python卻可以有多個父類別(多個父親)!29Please respect copyright.PENANAXviq0J735y
這讓我覺得對應到了學長的多重身分~29Please respect copyright.PENANAlimKdGKHTw
既是四天王也是聯盟社社長,29Please respect copyright.PENANAtesDvPrf3Z
再來就是Python簡化了很多語法,29Please respect copyright.PENANAYBjrBKrJKv
是懶人救星~(相當於學長懶散的個性)29Please respect copyright.PENANAROPWLHUKbw
比方人家寫方法要用function,29Please respect copyright.PENANAVreLcw5gKb
Python只要用def就可以定義方法了~29Please respect copyright.PENANAS8Zk5PBaL4
對了對了,29Please respect copyright.PENANAPve8pWkja2
Python也是許多人用來學習處理大數據(meta data)、29Please respect copyright.PENANAQNleqhTaFs
AI(scikit-learn)、爬蟲(Beautiful Soup)的程式語言呢!29Please respect copyright.PENANAodaUF55bjI
對應學長的戰術能力剛剛好呢!
雖然最佳解出來了,29Please respect copyright.PENANAdDuODI2TPw
但還是要給其他的選項供人思考呀~29Please respect copyright.PENANAqRzW9MZJ5F
那麼第二個選項就是Java29Please respect copyright.PENANAt84Clk17eq
沒錯,就是爪哇,還有咖啡豆的那個Java~29Please respect copyright.PENANA3JivNO8vB2
當年代代流傳Java螞蟻書(而且是有翅膀的螞蟻)~29Please respect copyright.PENANAcO9LthgpyJ
我因為畢業很久,想說我再也不碰Java啦~Jo Jo!29Please respect copyright.PENANAErDziWUcu6
就把那個超厚的書做回收了~29Please respect copyright.PENANAgDpmvNq63w
然後我就遭到報應了...29Please respect copyright.PENANAiQ44p7I62p
好在重新接觸Java沒有花太多時間就是,29Please respect copyright.PENANA13lHo3hbw3
凡走過必留下痕跡嘛,29Please respect copyright.PENANA3bf4KI7wnB
我可是號稱2年沒碰的程式碼不會忘,29Please respect copyright.PENANAYPHx2TiLWd
10年前公司的專案我也知道怎麼維護呢哼哼!29Please respect copyright.PENANAn6Dm1Bp4RA
那為什麼選Java而不是Javascript呢?29Please respect copyright.PENANAAR8zyeaCQV
因為我個人私心覺得,29Please respect copyright.PENANAE5d9IRPh84
學長的個性還有給我的印象,29Please respect copyright.PENANAj4hcZhS0Yn
比較偏向後端程式語言。29Please respect copyright.PENANAgl9hNgd1SP
然而我就不在這邊討論前端與後端程式語言的差異,29Please respect copyright.PENANAYCBsHXNN3o
只想奉勸你們各位已經被冠上全端工程師(如我)的工程師們,29Please respect copyright.PENANA6q6NnJrz86
不要拿後端思維到前端程式碼使用~反之亦然!29Please respect copyright.PENANAZZsTp09DYU
我們繼續說下去,為什麼選擇Java吧!29Please respect copyright.PENANAFhV2ODZjf1
第一個理由確實是因為咖啡的關係~29Please respect copyright.PENANAgRNXj2VmWB
畢竟代表學長的飲品中多少都有跟咖啡有關的選項。29Please respect copyright.PENANAMXm0Q0Zy2R
再來就是學Java免不了要會的OOP(物件導向程式設計)~29Please respect copyright.PENANAaagBTzHyOH
我也曾經歷過不懂為什麼命名要叫做set還有get,29Please respect copyright.PENANAzUV2Vwxc6q
不懂為什麼建構子(Constructor)代表藍圖...29Please respect copyright.PENANAN5EO2o4641
以及分不清楚abstract和interface的時光,29Please respect copyright.PENANAgrjNiwjzKW
好在學了多個程式語言,反而把不會的概念也補完了!29Please respect copyright.PENANA5Yr1GVwB8l
儘管OOP不是只有Java有,29Please respect copyright.PENANALscgtMUP0I
等等的那個選項也有這個觀念,29Please respect copyright.PENANAmzj45sWcUB
但畢竟是我第一個正規接觸的程式語言(註),29Please respect copyright.PENANAJ2uXz1xyfa
所以就以Java作為代表了~29Please respect copyright.PENANACflZQuNxB3
OOP這個技巧的出現,29Please respect copyright.PENANAhvWyn4CSaJ
其實是為了讓程式碼能夠再利用,29Please respect copyright.PENANAUaomBBB9ZT
讓你不至於成為碼農、什麼都複製貼上~29Please respect copyright.PENANAkpjlAPq74s
同時也比較好維護程式碼~(註2)29Please respect copyright.PENANAdTj35BIq5p
而OOP的最常見的三大觀念即是─29Please respect copyright.PENANARxZCNwzgK2
封裝、繼承、多型29Please respect copyright.PENANAHIiFf07H6c
讓我想到每個人加入聯盟社(繼承),29Please respect copyright.PENANA7mwVlgaFXQ
成為聯盟社的成員(實例化),要努力賺BP(多型)~29Please respect copyright.PENANAidbHIYnRk0
關於多型,我看到有人下一個很簡單易懂的註解─29Please respect copyright.PENANAkREBhZ1YQe
即是指一樣的事,不同做法。29Please respect copyright.PENANA2DKI2HeyvL
又或者:同一個行為,但有不同的結果29Please respect copyright.PENANARc4GLEPTFM
而學長代表Java神之手讓我們進入聯盟社,29Please respect copyright.PENANA6WUu8hEnbU
開啟了農BP的地獄(特別對沒朋友的人不友善的機制)...29Please respect copyright.PENANAzRBoSdf7sg
此外,29Please respect copyright.PENANANKfcA8qhLo
各位你還聽過Silverlight嗎?29Please respect copyright.PENANAasxWPRzfDI
記得當年微軟還給它做了一個形象人物─藍澤光29Please respect copyright.PENANAvIJBlAiuV5
我曾經用Silverlight寫網頁...29Please respect copyright.PENANAv7OXN45ngR
然後得知這東西要被報廢了...29Please respect copyright.PENANAsqw11R1jyC
真的是有夠恨鐵不成鋼的!!!29Please respect copyright.PENANA0ZaXubD16p
雖然可能沒有關聯性,29Please respect copyright.PENANAJx7QqUXUJA
後來的就是Spring Boot,29Please respect copyright.PENANAx2YKEOeqdf
但也沒想到同事說Spring Boot也有點老了...29Please respect copyright.PENANA69RA3RhlM0
總之,29Please respect copyright.PENANAU6AJpmOKw8
如果Silberlight是學長的話,29Please respect copyright.PENANAWj4s9fvKpb
那Spring Boot大概就是烏栗了~29Please respect copyright.PENANAwPvcPb7Njm
唉,都是時代的眼淚呀!
最後一個選項老實說也是我重新摸索的程式語言,29Please respect copyright.PENANALpXakuDm7K
那就是C++29Please respect copyright.PENANABvK1g29NJN
當年學C++是為了影像處理,29Please respect copyright.PENANAHwIkgH19tG
我也沒想到當年使用openCV,29Please respect copyright.PENANApDKm2v4NOk
現在2025年了,大家還是繼續使用openCV。29Please respect copyright.PENANAtFyo9Fhr3H
儘管都這麼久語法應該都更新了,29Please respect copyright.PENANAICwEgv16Am
你們如果當年好好學習openCV,29Please respect copyright.PENANAdPcQEQ1Oay
10年後還是受用呀!(對,我2012年大學畢業的)29Please respect copyright.PENANANqDGYIzgJt
會選擇C++的原因是因為我曾經聽過有人這樣比喻C++:29Please respect copyright.PENANArAU74KudIt
發明出C++的人,對於(現在的)C++掌握程度也只有70%29Please respect copyright.PENANA1CYs4sQ2uY
因此如果在面試的時候,29Please respect copyright.PENANAkT0IhmnlCC
面試官問你,你對於C++的掌握度有多少?29Please respect copyright.PENANAtuVdRc8riW
會回答超過70%的人不是真的有實力,就是過份有自信...29Please respect copyright.PENANA9l9uhbuICA
會這樣有感而發是因為,29Please respect copyright.PENANAh9adCKBVxr
今天已經是這個系列的第83篇了,29Please respect copyright.PENANACgHD6Fn2Lx
不過我對於學長的理解,29Please respect copyright.PENANA7WU0RTW8B0
就跟對C++的理解一樣,29Please respect copyright.PENANAX5TlOxZVMr
還是只有淺層的程度~29Please respect copyright.PENANAsX5auYF3b6
除此之外,29Please respect copyright.PENANAqE7SWL9teT
C++也是懶人程式語言之一,29Please respect copyright.PENANAJGaWPggpek
前提是你要很熟練~29Please respect copyright.PENANAp4D5a3DcmV
怎麼說呢?29Please respect copyright.PENANA6zdF8sjViO
C++會在背後幫你做一堆的記憶體管理,29Please respect copyright.PENANAEL04SzaPET
使你程式碼的效能提升~29Please respect copyright.PENANAgwrk70xgTG
不過它的這個特性有時候也會是兩面刃,29Please respect copyright.PENANAqrfrvnvtgh
就是因為他擅自做了你沒預料的事情,29Please respect copyright.PENANAIhyoRmcvkl
當你要解BUG的時候,29Please respect copyright.PENANATxvQa6bYZx
就不得不懷疑他根本是愛搞事的學長呀!
再分析下去會沒完沒了~29Please respect copyright.PENANABzH77ecroV
畢竟還有至少3種以上的程式語言沒列出來呢,29Please respect copyright.PENANAaNsGocJRhv
如果私心想要再追加一個我心中代表學長的程式語言,29Please respect copyright.PENANAzDx9BywAzU
那就是被淘汰的Flash了~29Please respect copyright.PENANAEZUbAEOFiH
嚴格來說應該是叫做ActionScript。29Please respect copyright.PENANA7nuOcy9YOH
不過我知道大家對於這個名稱不熟,29Please respect copyright.PENANAqiDtC8cyn2
因此後續我還是用Flash稱呼。29Please respect copyright.PENANAqEWOPUMftT
然而程式語言的部分其實都是指AS~(註3)
Flash是我完全從書本上自學起來的程式語言。29Please respect copyright.PENANAwdFtnfpvDw
過往老師只有教多媒體的觀點,29Please respect copyright.PENANAPeR3ksz6al
只把Flash當動畫的工具~29Please respect copyright.PENANAyfEPi9C9gZ
但是我真的很想學習做遊戲,29Please respect copyright.PENANA1zoetvLAlg
國小又看到同學用Flash做遊戲,29Please respect copyright.PENANAUjPgnf9J0d
因此我人生有一大段時間,29Please respect copyright.PENANA2sjyQdanpp
每年至少有一款Flash遊戲~29Please respect copyright.PENANAKKboIa2vys
懷舊完,說明一下為什麼選Flash吧!
Flash有一種特性是目前所有程式語言望塵莫及的,29Please respect copyright.PENANAh3iTPktHrK
那就是即時性!29Please respect copyright.PENANAT3jve4eqbj
各位也許對於現在的通訊軟體的lag或者延遲覺得無傷大雅,29Please respect copyright.PENANAYGbI18ytQu
但若真的要做到一比一的實時性,29Please respect copyright.PENANAlz67k8wmEr
好比你在畫布上畫一條線,29Please respect copyright.PENANAS5boNjAYsU
那每一點都同時間顯示在朋友的螢幕上,29Please respect copyright.PENANAEO6L5HKwc8
全部的程式語言中,29Please respect copyright.PENANAc9scDNp8oF
就只有Flash可以做到~29Please respect copyright.PENANAdo7Hu7Bk27
剩下的號稱可以的,29Please respect copyright.PENANAMmFB8V7H3l
拍謝~都只是因為影像計算快速,29Please respect copyright.PENANAawjum1QkGP
讓你誤以為是即時的感覺~29Please respect copyright.PENANAloy903ckCD
然而它之所以能做到這點,29Please respect copyright.PENANALgaHGutVet
歸因於其特性,而這特性也是它被淘汰的原因之一;29Please respect copyright.PENANARpiNVGu9Gh
那就是它有太多的漏洞了~29Please respect copyright.PENANAJXg5WQEEOt
Flash程式語言繞過了很多安全問題,29Please respect copyright.PENANAd1ZBPtQYeI
使得駭客能透過Flash(SWF檔案)來執行任意程式碼,29Please respect copyright.PENANAUBic5a3pAT
同時Flash又能被嵌入在網頁上,29Please respect copyright.PENANAGaexnJc5JR
等於把這種危險性又擴散出去~29Please respect copyright.PENANA1TV6XHp6zB
(因為人們可能會點這些Flash動畫進而電腦中毒)29Please respect copyright.PENANAa19oRuHlHq
但也因為繞過了安全問題,29Please respect copyright.PENANAtKbmSGHdmA
才能將資訊即時的送到對方電腦上~29Please respect copyright.PENANAbsemFDSxXp
(其他程式語言還在做安全加密或應對措施)
基於讓人又愛又恨的特性,29Please respect copyright.PENANA0gAsD0pnba
讓我想到學長給人兩極的印象~29Please respect copyright.PENANADUrxL3y9Sa
但這邊我是偏向愛多一點,29Please respect copyright.PENANA0opRw3yPX9
因為我還是很懷念Flash,29Please respect copyright.PENANAtuYiOe4gW2
在那之後我就跑去Unity,重回C#懷抱,29Please respect copyright.PENANAxobDho0HAO
爾後又被收費嚇到,而去學Godot(也是用C#)29Please respect copyright.PENANAzIFiDqrho0
(雖然後來Unity不收費了,但我也回不去了)
此外,29Please respect copyright.PENANAHR8WxoPepS
Flash在初學者學習做動畫這部分真的很友善,29Please respect copyright.PENANAdzcxEVNjtu
我在做遊戲中的動畫時,29Please respect copyright.PENANAXq0Wj9yM4z
也都是思索著如果是Flash會怎麼處理?29Please respect copyright.PENANALmA0ebxBHB
那親切的像是學長和我們打成一片,29Please respect copyright.PENANAVsHVOcTgN3
甚至四天王對決時,還特別不收取我們的BP~29Please respect copyright.PENANAUE1u39cQxY
當我們打贏其他人時,29Please respect copyright.PENANACfI2ZglGZr
還會幫我們說明其他人的心路歷程一樣~
學長也像Flash一樣,29Please respect copyright.PENANAnQshzw5Ndh
是我們的老朋友~29Please respect copyright.PENANAoPBx3mgJZi
那些年的小朋友齊打交、夢遊先生等等小遊戲,29Please respect copyright.PENANAByyGd2J1Db
陪伴了我們無數的時光~29Please respect copyright.PENANAwDHgERQMZy
而我現在使用的Newgrounds遊戲平台,29Please respect copyright.PENANAWWPWhEhL7S
有專門的軟體可供用戶繼續玩Flash遊戲。
當然我也知道,29Please respect copyright.PENANADBwWm1TMsx
觀念要改,29Please respect copyright.PENANA0XjhYFp1AV
新的技術還是要學。29Please respect copyright.PENANANyhzuDlmQx
就像同事和主管提到的Rust或許會成為未來的趨勢~29Please respect copyright.PENANAjRTJqy6YV9
而今我不再每天跟學長對戰了,29Please respect copyright.PENANAz7ou68kXEo
接觸寶可夢Z-A後,29Please respect copyright.PENANAqNvTH5LmBE
也不好說會不會有其他人取代學長在我心中的位子...29Please respect copyright.PENANAQEPKFGepZ1
但是為了學長而寫的這些每日日記,29Please respect copyright.PENANAOW7N4sbvQt
讓我有機會透過這種方式反覆思索著29Please respect copyright.PENANAc8qrOWrHZo
過去現在未來的點點滴滴~29Please respect copyright.PENANAYOxip0rPT4
進而讓自己有人生方向以及動力!29Please respect copyright.PENANAj70iS7inHq
同時還增廣見聞~29Please respect copyright.PENANAJkCLPI09UL
真的很感謝當年Flash的啟蒙,29Please respect copyright.PENANA4N0amqc26y
曾經,我以為自己是空有夢想,29Please respect copyright.PENANAjzR8Tv8zep
而無法做遊戲的人~29Please respect copyright.PENANAxlu9jVz4nF
也是因為認識了學長,29Please respect copyright.PENANAhvIspgciJa
讓我能有主題參加每日日記挑戰~29Please respect copyright.PENANAvbcbMhYGC6
給自己每天創作的契機!29Please respect copyright.PENANAC69ptXQiHk
雖然結束後我會重新整頓自己的創作步伐~29Please respect copyright.PENANAEK4XZf0YPq
很高興自己還願意持續的創作!
7/19 完29Please respect copyright.PENANAUHgsrWNpK9
註: 我人生第一個學習的程式語言其實是Visual Basic,29Please respect copyright.PENANANTEEMY1qI8
還曾經做一個猴子接香蕉的小遊戲,29Please respect copyright.PENANAlIAzzjsQ3E
那是我國小的事情。29Please respect copyright.PENANAflTZ4z7ugY
以前網路空間或者備份的概念都很差,29Please respect copyright.PENANAiEbRUz0sDs
最終因為電腦重灌就清掉我的努力了~
註2: 原則上我們都是希望有人能看懂我們的程式碼,29Please respect copyright.PENANAyZV59fKgVy
讓大家都能共同維護和開發功能~29Please respect copyright.PENANAuf2mJmC4Qw
但也有人反其道而行─29Please respect copyright.PENANAzRONKn2Hsz
我偏不走這路線~所有人都看不懂我的程式碼,29Please respect copyright.PENANAg3CDoqBO1s
就沒人能取代我了!29Please respect copyright.PENANAXWvKth9Lie
主管也不敢趕我走!29Please respect copyright.PENANAjrIu1eQ3oS
不過這種短視近利的想法,29Please respect copyright.PENANAn8sXgLcAYR
其實害人又害己~29Please respect copyright.PENANAFzBUFNt50B
總不太可能專案都是一個人完成,29Please respect copyright.PENANA41VRDhVvNX
如果是那樣的專案,29Please respect copyright.PENANAoi44Yms6ma
大抵也不是太大的專案...29Please respect copyright.PENANA3BVc2eMWuY
如果哪一天有什麼你很難完成的任務,29Please respect copyright.PENANAO7wJ70CNp6
其他人也幫不了你(因為別人看不懂你的程式碼)~
註3: Flash你可以想像是一個做動畫的開發軟體,29Please respect copyright.PENANAaqrnmCsj8j
當你在畫面上拉出一個按鈕時,29Please respect copyright.PENANABAfziBMX59
按下按鈕會發生什麼事情呢?29Please respect copyright.PENANAlUD3MICMCY
這時就要透過ActionScript撰寫程式碼,29Please respect copyright.PENANAAQe3wpgUkH
綁定事件在按鈕中,29Please respect copyright.PENANAeKNIUSxGBB
使得按下按鈕後,會跳轉到下一個場景。29Please respect copyright.PENANAClawzuMIV3
這之間的關係大概是這樣~