如何成為一個牛逼的Web開發

來源:互聯網
上載者:User

在學校的最後兩年,我就開始往一個Web開發的方向發展,基本上屬於自學成才的全棧Web開發工程師,從前端到後端無一不做,但是沒一個精通的,看到這裡是不是很失望? 確實,如果真是「無一不精」,我也沒空在這裡寫文章了。

現在工作四年多了,我才剛剛有點摸到了成為一個牛逼Web開發的門路。 不敢自珍。 一點看法,與諸君分享。

我感覺,程式設計,整個就是一個抽象的過程,對世界建立抽象的模型,然後讓他們運作起來。 程式設計的抽象,是雙向的,對底層,程式師要去抽象電腦的實現,往上層,程式師要去抽象紛繁複雜的客觀世界。 而更高一級的抽象,往往就是更低一層的抽象的一個組裝。 所以,越是大型的系統,就組裝了越多的抽象。

如果以電腦硬體作為程式的底層來看,越低層次的抽象,對客觀世界的表達能力就越薄弱,越高層次的抽象,表達能力就越強,但是會喪失靈活性。

Web開發從這個角度去理解的話,本質上工作在一個非常高的抽象層次上,因為Web開發下面,有作業系統,瀏覽器,解譯器,引擎,框架,所以,Web開發對客觀世界的表達能力很強。

可是即便如此,我工作這麼多年來發現,我們踏入這個行業以來,學習到的東西,抽象層次還是如此之低,以至於根本沒法做出什麼巨大的,或者眾多的工作成果。

所以,分析到這裡,我就覺得,如果我們希望自己變成一個牛逼的開發,首要變成一個高產的開發,那麼你必須有一個你的工具箱一樣的東西,當然是一個抽象的工具箱,這個工具箱,應該包含了各個層次的抽象元件。 一年又一年的重複工作,我們要做的不是拿一份月薪而已,而是往自己的抽象工具箱裡放入一個又一個抽象元件。 這個叫做積累。

而且,我覺得比較好的方式,是使用拿來主義,千萬別自己發明。 自己發明只有利於你理解原理,但是那不利於你做出一個巨大的或者眾多的工作成果。

比如,有些人問,學哪種語言,語言只是一個表達法,其抽象層次之低,不能幫你構建任何東西。 從這個角度來說,語言應該是最簡單的東西,簡單到了一個普通程式師可以學會任何語言的程度,所以不必問學習什麼語言,哪個好用,就去學會就行了。

語言上面有框架。 哪個框架好用,就去掌握住,然後所有的開發,都盡可能用這個框架。

在框架之上,有系統,系統也需要去積累。 因為人世間的業務模型,無非就是這麼幾個,一旦掌握全了,等於你一個人能構建一個超級系統出來,只要把你掌握的每個系統接駁起來就可以了。

我舉個例子,比如我是PHP程式師,然後用Yii框架,然後我掌握了CMS系統,網店系統,社區系統,CRM系統,銷售支援系統等幾個系統。 然後,任何新型業務,暫時都沒有脫離這幾個東西,於是我可以去説明任何新型業務快速的生產他們的系統。 但是我發現,我在網站或者交互表現上有所欠缺,所以我要掌握類似Bootstrap這樣的前端框架,説明我在前端表現和交互上能有所補全。

所以,後續的工作模式,就是不斷去積累各種層級的抽象工具和系統。 以後我就會成為一個牛逼開發,可以搞定任何系統的開發。

這就是我想與大家分享的。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.