做爲初入職場的咱們,在學習與工做中,老是會遇到不一樣的挫折。雖然有些錯誤與某一個具體的行爲相關,但有些錯誤倒是全部Web開發人員都須要面對的挑戰。所以,經過研究,體驗和觀察,總結了Web開發人員常犯的5個錯誤——以及如何避免這些錯誤分享給你們。前端
錯誤一web
轉件所謂「應該能行」的代碼瀏覽器
錯誤:不管是JavaScript,仍是在服務器上運行的代碼,開發人員都須要測試並確認它是否能夠正常工做,而不是在部署了以後,就認爲它應該就能從一而終地運行。服務器
影響:不通過適當錯誤檢查的網站就是對最終用戶耍流氓。不只會極大地影響用戶體驗,並且其錯誤消息內容的類型可能會給黑客線索來滲透這個站點。框架
如何避免:是人都會犯錯,這個哲理一樣適用於編碼。使用JavaScript,必定要實施好的技術來防止並抓住錯誤。雖然這篇文章描繪了用JavaScript編碼Windows應用程序,可是大部分的內容也適用於web開發,許多提示都很不錯!另外一種能讓代碼變得可靠又能在將來變化中存活下來的方法是單元測試。編輯器
若是咱們夠仔細,那麼就能捕捉到服務器端的代碼失敗,而不被用戶發現。只顯示必要的信息,而且必定要確保設置友好的錯誤頁面,如HTTP 404s。前端學習交流企鵝qun:784783012,學習方法,學習建議,系統規劃均可以隨時來問我工具
錯誤二性能
寫分叉代碼單元測試
錯誤:本着支持全部瀏覽器和版本的崇高理念,開發人員立志建立可對任意可能狀況做出迴應的代碼。代碼中if語句成堆,全部方向都有分叉。學習
影響:隨着瀏覽器新版本的更新,代碼文件會變得愈來愈笨拙和難以管理。
如何避免:實現代碼的功能檢測和瀏覽器/版本檢測。功能檢測技術不只能夠顯著減小代碼量,還更易於閱讀和管理。不妨考慮使用如Modernizr這樣的庫,不只有助於功能檢測,還能自動幫助提供不能跟上HTML5和CSS3速度的舊版瀏覽器的反饋支持。
錯誤三
非響應式設計
錯誤:假設開發/設計人員在相同尺寸的顯示器上開發網站。
影響:當在移動設備或在很是大的屏幕查看網站時,用戶體驗要麼很難看到頁面的重要方面,要麼甚至要時刻注意着不導航至其餘網頁。
如何避免:響應式的思惟方式。在網站中使用響應式設計。這裏有一些關於這方面的實用教程,包括響應式圖片,還有一個很是受歡迎的庫,那就是Bootstrap。
錯誤四
網站過多刷新
錯誤:建立的網站須要爲每個互動而全面刷新頁面。
影響:相似於頁面臃腫(參見#4),頁面加載時間的性能會受到影響。用戶體驗缺少流暢性,而且每次互動均可能致使網頁短暫(或長時間)的復位。
如何避免:快速避免這種狀況的一個方法就是,經過測定回發到服務器的內容是不是真正須要的。例如,當不依賴服務器端資源的時候,客戶端腳本可用於提供直接結果。你也能夠應用AJAX技術或進一步使用單頁的應用程序「SPA」方法。流行的JavaScript庫/框架,如JQuery、KnockoutJS和AngularJS,能讓這些方法的採用變得容易得多。
錯誤五
作了太多的無用功
錯誤:開發人員花了很長的時間來建立web內容。大量的時間花在了重複的任務上,或者本身敲代碼寫了不少。
影響:初始網站的發佈和後續的更新時間過於冗長。若是其餘開發人員也在在作一樣的工做,卻用了更少的時間和精力,那麼你的開發價值顯然就低了。手動勞動很容易出現錯誤,而排除故障錯誤須要更多的時間。
如何避免:探索你的選擇。在開發的每個階段考慮使用新的工具和新的流程技術。例如,你目前使用的代碼編輯器相比SublimeText和Visual Studio,如何?無論你使用的是什麼樣的代碼編輯器,你最近有好好鑽研它的功能嗎?也許只投入稍稍一點時間去仔細閱讀文檔,就能夠發現作事的新方法,爲從此節省一個又一個小時的時間。例如,在這篇文章中,擴展Visual Studio能夠爲web開發人員提升生產效率。前端學習交流企鵝qun:784783012,學習方法,學習建議,系統規劃均可以隨時來問我
不要錯過網上可用的幫助工具!例如,檢查在dev.modern.ie上的工具以簡化測試(跨多個平臺和設備)以及排除故障。
你也能夠經過實現流程自動化以減小時間和錯誤。這方面的例子是使用Grunt工具,例如它的自動化功能能夠減少文件(見第4點)。另外一個例子是Bower,能夠協助管理庫/框架。至於web服務器自己?在例如Microsoft Azure Web Apps的幫助下,你能夠快速建立一個網站,幾乎全部的開發場景均可以很輕輕鬆鬆地規模化到你的業務中!
最後結語
經過識別這些常見的錯誤,web開發人員能夠避免不少讓其餘人飽受煎熬的挫折。咱們不只須要認可錯誤,還應該清楚錯誤的影響,並採起措施避免錯誤,這樣纔能有更好的開發表現——並有信心完成任務!