iOS開發者的一些前端感悟

很多前端工程師會把自己比作“魔法師”,而對于JavaScript這門語言,我也想把它喚作一門“有魔力的語言”。因為這群有無限想法的人,真的在用它創造各種讓你驚嘆的事物。

Web三件套

一、前言

幾年前,筆者還是一名初涉編程的學生,對于開發的各個領域都倍感新奇。曾經在知乎一個編程相關的問題下,看到一個關于各個領域的詼諧論調,談到前端,他概括為:“前端簡單來說就是畫網頁”。笑談過后,筆者也不經意間留下了前端很簡單、比較低端的印象。
后來有了幾年的移動端開發經歷,后端也有一些實踐。在最近的一份工作經歷中,開始逐漸了解了一直未曾涉足的前端領域。這段經歷切實地印證了“無知者無畏”這句話,因為我逐漸發現了前端的魅力所在,甚至被她所吸引。
這篇文字我分類在了隨筆中,嚴格來說它不算一篇技術文章,寫下來的目的是想記錄一番自己的感悟,也希望和各位前端的前輩以及曾經和我有一樣想法的同學多多交流。

二、移動端的開始。

大學的時候,學院科創基地在項目領域的實踐順序便是先從前端開始入門,完成一個網頁項目之后,開始自由選擇后端、移動端,或者繼續深耕前端。那時對前端有了最初的印象:通過編程創造一個網頁。它的容易入門,讓最初的我覺得這個領域不過如此。各種培訓機構對于前端教學的猛烈勢頭,也造就了我對于這個技術方向“低端”的誤解。所以轉而開始 iOS 開發的學習。
轉眼幾年過去,在移動端學習的過程中,也在不斷地了解著其他領域。由于移動端對后端的依賴,自己也開始了后端開發的實踐,對幾種后端語言都有了嘗試。但是一直以來,對于前端都只是停留在能夠簡單地寫一些 HTML,粗略地讀懂前端的代碼。而對于它的理解,更是和最初無異。

三、大前端的工作經歷

前段時間開始了在某數十人大前端團隊工作的經歷,崗位 iOS 開發,團隊中移動端工程師負責ReactNativeHybrid等項目的 Native 部分。由于工作需要,開始了JavaScript的學習。曾經對這門語言的認識是“操作DOM,從而實現網頁中UI、數據等的動態部分”。
團隊中前端工程師的工作內容,也和我印象中的大大不同。他們會進行React框架的本地化改進,會為ReactNative添加更豐富的功能,他們更會創造一個個有想法的產品,比如根據注釋自動生成標準化文檔的工具、協作管理和測試API的平臺等等,我印象中網頁的畫師竟然也可以是各種富有創意和實用性的產品的創造者。這讓我開始重新認識前端這個領域。

四、對前端的重新認識

隨著了解的加深,我開始接觸到更多開拓了眼界的前端項目,也對前端工程師有了全新的理解。

  • 永遠不熄滅一統三端的雄心

由于任何平臺都必備 Web 運行環境,造就了“每當一個新的平臺出現,都是前端工程師的新舞臺”的局面。
個人電腦普及之后,由于 Windows 和 Mac OS 操作系統都有各自的市場,每當一款軟件推出,開發人員都必須為兩個平臺分別使用不同的語言編寫不同的桌面客戶端。這個時候前端工程師開始站了出來,他們創造了Electron,想要用Web三件套來構建跨平臺的桌面客戶端。
在智能手機風靡的今天,他們又創造出了PhoneGap,想要用Web三件套來開發跨平臺的移動應用程序。他們創造了Weex,甚至想用一套Web代碼構建各移動平臺的原生應用程序。他們還創造了ReactNative,想要用Web代碼編寫各平臺的原生應用程序。
他們為了這個宏偉的目標不斷嘗試,而桌面客戶端或移動端工程師則在不停地追隨他們的工作。(哭

  • 百家爭鳴的開發框架

對于各種設計模式,前端工程師們總是沖在前面進行嘗試,各種前端開發框架也就層出不窮。ReactAngularVue,雖然彼此之間競爭激烈,但無疑他們都各有所長,也深刻改變了前端開發的方式。可以說,對于前端工程師,“與時俱進”是最基本的要求,因為這群人總在不停地創造新東西。

  • 后端?我也可以

誰說前端真的就永遠停留在前端?node.js告訴我們前端工程師也可以進行后端開發。而且由于 JavaScript 的語言、以及對應引擎的特點,node架構的項目在某些場景下還有著優秀的表現。

  • 在各種場景中進行創造

由于前端項目在各種平臺中的通行,以及瀏覽器在個人電腦中的使用方便性,前端工程師創造了各種可以方便我們生活的產品。可以說,很多前端工程師是具有優秀產品經理的想法的。
筆者使用的博客框架Hexo以及同樣非常優秀的Ghost,可以非常方便地進行個人博客網頁的自動化生成。
其他的各種JavaScript項目,筆者不一一列舉了,總之你會發現自己在不斷地發問,“它竟然可以做到這個?”

  • 無所不能的JavaScript
有魔力的JavaScript

很多前端工程師會把自己稱作魔法師,因為它們會創造出各種神奇的項目,滿足各種切實的需求。這一切都是因為它們有 JavaScript 這個有魔力的武器。在 Github 語言排行榜中中雄踞第一,那么多人都在使用它做著各種有趣的事情。又或者說是腳本語言的“無所不能”,另一個出色的腳本語言 Python,也同樣在做著各種神奇的事情。

五、筆者的最終感悟

自己的職業規劃一直都是成為一個全棧工程師,進而成為一個懂技術的產品經理。后端作為一個項目的基石,所以一直在進行著嘗試,也規劃著即將發力學習。移動端是實踐已久的領域。而前端,一直都被自己所忽視。開始了解之后,竟然發現前端這個領域人人都是產品經理,讓我覺得移動端、后端的工程師總是在專注著自己的部分,而前端工程師卻是最有產品視野的,他們總思索著各種新奇的想法。事實也確實如此,相比起來,前端領域是極其有活力的。自己接下來,也將開始大前端的探索。

后記

無知者無畏。曾經覺得前端淺顯,覺得其他領域高端。經過了解才知它的魅力。確實,前端入門門檻很低,然而它的上限確實無窮高。不甚了解的時候,心中有莫名其妙的不屑。了解得越多,越發產生了敬畏。技術的鄙視鏈一直存在,現在卻發現,總是叫囂著鄙視某個領域的人,多半對這個方向不甚了解。只有在某個領域做到頂端的人,才有資格評判高下。哪天尤雨溪要是發話:“嗨,前端這個方向,不過如此。”那我可能就真的會信了吧。(笑

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,422評論 25 708
  • 清澈見底的眼眸 如水般純凈 肆無忌憚的笑容 如鐵般真誠 一塵不染...
    風清揚聊紅塵閱讀 343評論 0 3
  • 昨天,同為92年的一位男生轉了一個帖子,大概說26歲以后的女生不好嫁。看完那么多現實,準確說,瀏覽完,我覺得有點心...
    十一公子爺閱讀 184評論 0 0
  • 一如既往出門,今兒是難得的好天氣,無風無云天高氣爽,嗅在鼻子里的味道都是清清冽冽,陽光灑過來有點晃得睜不開眼。遠處...
    candywater閱讀 574評論 0 0
  • 我坐在電腦面前,寫了幾個開頭都不滿意。打出來又刪除,打出來又刪除,反反復復。 不知該從何寫起,從你們的愛情開始寫起...
    媯_閱讀 537評論 0 0