「我」 Javascript 的故事

語言: CN / TW / HK

前言

近幾年各種 Javascript 的框架橫空出世,入門門檻低 、一個本屬於前端的語言不再只能用在前端。我在這篇文章也想紀錄一下我自己接觸Javascript的種種過去。

第一次接觸

我第一次接觸Javascript,是在我11歲的時候。可能大家會覺得有點奇怪,怎麼我11歲就開始接觸寫程式的呢?對的,我那個時候根本完全不懂,我的故事是這樣的..

不知道大家有沒有聽說過一款叫「江湖聊天室」的玩意?江湖聊天室算是我小時候很火的一個線上聊天產品(我到現在也覺得當時候想到這個Idea的人真的很厲害),打怪、聊天、泡點各種功能應有盡有,深深的吸引著小時侯的我。我接觸江湖聊天室的時候大概是在2006年到2008年期間,那個時候家裡的網路還是用那種撥號連線的方式,有電話進的時候網路就會當掉,家裡的人也覺得貴,有時候根本不會開,所以我下課之後都會選擇去政府的活動中心借電腦去玩。那個時候江湖聊天室都有一個機制,使用者可以找站長購買聊天室的職位去使用不同的功能(比如說踢人出去聊天室)。那個時候我就想,為什麼不自己搞一個?那個時候的我,邏輯不好,不懂程式設計,就是想搞。所以就隨便從網上下載了一款江湖聊天室的原始碼去看。

記得那個時候主要還是PHP 加 Javascript實現的,我就拿來改一改名字,圖片,看了一看網上的教程,找了一家免費的 Web Hosting 就部署了,當然最後只有我跟我兩個朋友在玩,但已經足夠滿足,這個就是我第一次接觸Javascript,印象深刻。

var website_name = 'Charles之江湖'; //江湖聊天室主頁的標題 
var version_number = 'v0.1'; //江湖聊天室版本號 
var website_logo = '/img/logo.jpg'; //江湖聊天室Logo 

第「二」發光發亮

對我來說,Javascript一直以來都是一個屬於前端的語言,大學的時候頂多用來做一下 Animation 和 Dynacmic, 直到我在2016年的時候發現了一款叫「Node.Js」的框架,Oh My God,好像發現了新世界一樣。 那個時候接觸的版本已經是 v6.x ,寫後端的可以做它來寫後端,寫前端也可以很快上手,npm的各種Packages包方便快捷,真的讓我欲罷不能。

但....但! ! ! !我持續了兩年還是沒有擺脫 回呼地域(callback hell)在 Javascript的限制。

雖然早在2009年的六月份, Node.js 已經開始引入了JavaScript 的 Promises,但又在 2010年二月就移除掉了。因此不同時期的使用者為了實現類似的功能時,都自行開發了非官方版本的Promise功能。這導致了Node在今天,仍然遍佈著 async/await 和 promise 的不同 async API設計,大大提高了維護成本。現在Node.js API還是基於callback回撥函式,還有Modules黑洞和安全的問題,真的又愛又恨… 尤其是有些人到現在還分不清Java和Javascript的區別 哈哈

未來

現在的我已經較少寫Javascript了,但是 Deno, Vue.js, Ember, Angular, React各種很方便很好用的框架還是把帶我回到Javascript的擁抱,希望未來Javascriptt有更多的十年,Thanks Brendan Eich.