《全端Web開發》選譯——總結
《全端Web開發》這本書翻得我如痴如醉:一是作者高屋建瓴,涉及到了Web開發的方方面面,我還沒讀過一本這樣的書,沒見過一個這樣知識面廣的作者;二是思想深刻,很多觀點振聾發聵。我這大半夜翻完一章,有種夜讀聊齋的感覺,忍不住貼上來與大家共享。
生命就是一個分散式系統。人與人之間通過一個分散式、超媒體系統交流,人類的智慧、聲音和手勢、視覺和聽覺、還有想象,都是其中的元件。
—Roy T. Fielding
從一個大概的計劃開始寫一本書,然後現在回頭再看看最終的結果,這是一段令人著迷的經歷。雖然和我的最初預想略有出入,但本書還是忠於早先介紹的主題——變化。在第1章我們指出,由於技術的革新,世界發生了巨大的變化,這在很多領域是顯而易見的。而且變化的速度在最近幾年變得越來越快。一個大型專案,在其上線之日起就變成了一個遺留系統,這種事已經司空見慣了。
去迎合所有的創新,或者選擇完全忽略它們,這兩種極端反應是短視和徒勞無用的。更好的面對方式是找出那些真正改變遊戲規則的因素。本書突出了一些Java開發者會碰到的問題,需要他們仔細研究。如何響應持續改變的Web開發方式?我們應該從更廣大的開發社群和前人的經驗上學習。
14.1 社群
其他語言社群有著完全不同的觀點,因此可以啟發Java開發社群產生不同的創新。總體上來說,Java開發者基礎牢固,但有時候有點固步自封。他們能從圍繞JavaScript、Ruby和Python等其他社群身上學到很多(同時也能貢獻很多)。很多偉大的想法一經實現,便可應用於其他更為廣泛的領域。一個環境下的新奇想法,可能在另一種環境下就成了革命性的概念。
14.2 歷史
第二個來源是對過去的瞭解。當代文化對新事物不加思索的接受,更好的做法是對創新保持開放的心態,從一個更廣闊的視野上評估其價值。電腦科學和軟體開發歷史雖短,但內容卻很豐富。奠定了“物件導向”這一術語、並且發明了Smalltalk語言的電腦科學家Alan Key曾經指出,現代電腦科學和軟體開發的很多方面表現出和流行文化相近的趨勢,不關心,也不瞭解過去。很多重要的、持久的想法其來有自,幾年前甚至幾十年前就已經存在了。如有可能,最好站在巨人的肩膀上,從過去所犯的錯誤中學習:
在過去的大概25年裡,我們有點朝著流行文化的方向發展,就像電視發明之初,一些發明電視的人認為這是一種向大眾普及莎士比亞的新方式。但是他們忘記了那些看電視的人首先要學養豐富,能看得懂莎士比亞。電視所能做的只是讓人們看,能看出什麼來就是他們的事了。
因此我認為現在缺乏真正的電腦科學和軟體工程,部分要歸咎於這種流行文化。
{--:}— Alan Kay
14.3 結尾
我希望讀者或多或少從本書中學到點什麼。能在這樣一個時代從事軟體開發是一件讓人興奮的事,時代的變化帶來了前所未有的機遇。新技術層出不窮,永遠有解決不完的問題。閱讀本書,練習其中的專案能成為其中一步,希望這是你們中某些人的第一步,讓您從中獲益,並且創造出新的系統,讓這個世界變得更加美好。我將引用偉大的數學家和老師喬治·波利亞的話給讀者們留作思考,喬治·波利亞聰明過人,但他認識到人性和個人因素在解決問題中的作用,這對於軟體開發同樣適用:
認為解決問題是一種純粹的“智力活動”是錯誤的,決心和情感在其中起了重要的作用。不溫不火、懶洋洋地費些功夫也許足以去解決一些課堂上遇到的常規問題,但是對於嚴肅的科學問題,唯有意志力才能引領你經受住長年累月的艱辛和挫折…教授如何解決問題,就是在教你如何培養自己的意志力。
{--:} — 喬治·波利亞
相關文章
- 移動web開發總結Web
- Web APP開發技巧總結WebAPP
- web前端開發規範總結Web前端
- web移動開發總結(六)Web移動開發
- Web高效能開發總結Web
- 前後端開發流程總結後端
- 「真®全棧之路」Web前端開發的後端指南全棧Web前端後端
- 全端開發之“兩端開發策略”
- 《Web安全開發指南》讀後總結Web
- 編譯器後端總結編譯後端
- python後端開發面試總結Python後端面試
- 移動端開發適配總結
- #1全職獨立開發兩週總結
- web端功能測試心得總結!Web
- Web移動端適配總結Web
- PC端網站開發總結-css方面網站CSS
- Flask RESTful Web服務的開發套路總結FlaskRESTWeb
- golang 後端技術開發必備總結Golang後端
- 移動社交App服務端開發總結APP服務端
- Web全棧開發有前途嗎?Web全棧
- 提高Web前端開發技能的優化技巧總結!Web前端優化
- 開發總結
- 老虎證券web端PWA實踐總結Web
- 電視機頂盒web開發總結,避免踩坑Web
- Web3 全棧開發完整指南Web全棧
- 全棧式web開發技術-List全棧Web
- 從零開始,開發一個 Web Office 套件(14):複製、貼上、剪下、全選Web套件
- iOS客戶端開發與Web前端開發iOS客戶端Web前端
- 移動端開發的相容問題(自我總結篇)
- 開發中總結
- 微信開發總結
- 移動端web整理 移動端問題總結,移動web遇到的那些坑Web
- CabloyJS全棧開發之旅(1):NodeJS後端編譯打包全攻略全棧NodeJS後端編譯
- Django + DebugToolbar構建全棧WEB開發Django全棧Web
- 總結使人進步,視覺化介面GUI應用開發總結:Android、iOS、Web、Swing、Windows開發等視覺化GUIAndroidiOSWebWindows
- Flask後端開發(二) - 功能實現和專案總結Flask後端
- 一點關於移動端頁面開發的總結
- 移動端h5開發總結不斷更新中....H5