Web項目開發流程 PC端

  一直再作前端,忽然想到若是有一天領導讓本身獨立承擔一個web 項目的話是否有足夠的能力去接這個任務,要學會本身去搭建一些基礎的工具信息。全部的這一切在內心都要有個大體的流程,否則真正作的時候不免會手忙腳亂起來,接不了這個活不免失去了一個表現本身的機會,接下來作的差了,則更影響了錢途,前途啊。因此本文對作PC端的項目進行了一個過程的總結。
   1、瞭解、明確需求。
  這個應該是第一步了,不瞭解需求你就不知道爲何要作,要怎麼去作這個項目的工做。
  (1)明確需求是至關重要的,頗有必要去和產品經理、設計人員去溝通,須要明白每個按鈕,每個開關存在的意義,這個須要設計人員足夠的瞭解項目的需求。以前作的一個項目就是這樣,工資花了好多錢請了一個UI設計公司設計了一個十分高大上的產品,各類頁面各類炫酷,領導以爲很滿意,趕忙讓咱們去作,結果,真正到了咱們開發人員手裏去開發的時候,才發現有些東西雖然在這裏很炫酷,可是根本不該該存在在這裏啊,例如你把添加人員的按鈕放在人員分組的管理下面,而不是人員管理下面有什麼意義呢?結果可想而知,不只一些功能白設計了並且因爲項目時間關係還得咱們開發去擔任設計,從新設計功能的展現位置,這無疑耽誤了項目的進度。
  (2)後臺接口問題,通常大的公司前臺和後臺是分離的,若是分離須要去跟後臺肯定各類接口的方式,要有一個文檔去管理這些後臺接口,要有示例、測試數據。如今的通常都是Restful風格的API方便調用。管理的平臺第一家公司用的是一個內部的叫OSG的接口管理系統,這裏是一個全部接口的中轉站,各個部門的接口都從這裏走,還有的用的是showdoc進行管理。要是先後端不分離的話,後臺便要本身開發,這個用node仍是其餘語言,也要作好相應的處理。
  (3)、明確功能點,作好任務分配。
  若是你是一個leader,那這一部分工做可能須要你去作了,列舉好全部的業務功能點,列成一個Excel文件,明確每一個功能的負責人,完成時間,技術難度等。這一步也是很重要的一步。
  (4)開發時間肯定
  這個要確保開發時間的充足,否則匆匆忙忙作完一堆的bug改起來也是很痛苦的。這個並且先後臺一塊兒進行確認,否則前端作完了,發現後端的接口尚未完善,也是很耽誤時間的。
   2、明確技術選型。
  這一步也很是重要,須要去根據設計人員設計,去確認這個工做到底應該去用什麼框架去作。
  (1)最基本的頁面佈局工做,是用bootstrap、flex仍是手寫css進行佈局或者其它,須要去一開始就肯定,否則真正作的時候,不一樣的開發人員用的不一樣的東西,顯然會形成項目代碼的混亂。
  (2)頁面的Css 是純手寫的仍是使用Less或者Sass?這個根據項目的狀況酌情處理,一旦使用的話就須要對這些腳本進行編譯工做,這個工做能夠用一些自動化工具例如Gulp webpack進行,也能夠用Sublime(我用習慣這個了)、webstorm 等編輯器自帶的插件進行,再或者使用考拉編譯進行編譯。
  (3)、js的模塊化是用sea.js仍是require.js ?仍是不進行模塊化。不進行模塊化當項目很大的時候,代碼將變得很難維護,因此建議進行模塊化,至於究竟是用sea.js仍是require.js這個就看本身的喜歡的,二者的區別主要是一個是異步一個是同步的,具體區別問問度娘、谷歌。
  (4)、圖表模塊、table等用什麼實現。圖表有:echarts、highCharts等、table有bootstrap table 、jgGrid,datatables等等。
   3、自動化工具的使用。
  如今各類自動化的工具不少,例如:webpack, gulp, grunt等等,(技術更新實在太快了),到目前我只會gulp有點low了,感受跟不上時代的感受。這一步工做主要是減小一些重複的工做,好比壓縮js、css、頁面實時刷新等工做。我最近的一個項目是使用的gulp進行項目裏的html、js文件進行多語種的處理,用gulp讀取了language.js裏的每句話對應的變量,而後再頁面裏進行替換後變成一個英文版和中文版的兩份,這樣的工做確定也必須是要自動的工具去處理的,否則寫兩份的話不得痛苦死。
   4、基礎代碼的模塊化。
  以上都是準備工做,但也是很重要的部分。這一步開始就能夠真的開始就進行工做了。
  (1)、若是使用了自動化,自動化的腳本是要寫的,具體去如何實現你須要的自動化工做,如何減小重複的,枯燥的工做將極大的提升開發效率,縮短開發時間。
  (2)、再者就是頁面的 alert、對話框(confirm)、模態窗(layer,boostrap modal)、驗證模塊(例如:郵箱,電話號碼的驗證,不爲空的驗證等),日期處理(如:date add 、format等),這些須要有人去專門的進行模塊化,並且必定要在真正的業務代碼開始以前完成,不然後面修改起來將十分費勁。
  (3)還有就是要有人對項目裏比較棘手的技術難題提早進行攻關,確保真正的業務開始開發時,技術已經能夠實現了。
   5、業務代碼的模塊化。
  這一步開始就要真正的開始接觸業務的東西了。開始這一步以前固然得要有設計的文檔,假設你已經有了。功能代碼也能夠進行模塊化進行,將項目設計文檔裏的出現的比較多的展現的內容進行抽離,例如表格,展現圖,共用樣式,頁面佈局等等、抽離出來,指定專門的一個兩個開發人員進行開發,進行模塊化,而後有一我的進行對這些模塊的調用,組裝。這部分工做讓最熟悉的人去作相應的工做,能夠提升開發效率。這部分裏面包括和後臺進行的接口,因此確保要有接口進行調用。
   6、零碎任務分配。
  大塊的功能完了以後就是各個功能點了,這個應該在分配任務的時候分配好,固然也能夠當前面的工做完了以後看開發人員的工做狀況進行分配,保證每一個人都有工做,保證項目不會拖沓。
   7、當上面的工做進行完了以後,整個項目的功能基本就完成了。最好還要讓各自的開發人員測試下本身的功能。自測完成後再交由測試進行測試,後續就是bug修復的問題了。
   8、項目總結。
  項目完了總要總結一下,能夠開一個內部的會議,將各自開發過程當中的難題難點提出來,你們一塊兒聽聽是怎麼解決的,或者誰對別人開發的東西比較感興趣,想要了解是怎麼實現的及內部原理,在這個時候就能夠進行溝通了交流了,這樣的交流對提升團隊人員的技能仍是頗有幫助的。而後一塊兒聚個餐,增進下團隊的友誼。
  過程當中若是一個開發人員作了過久了一個相似的功能,可能會感到枯燥,因此避免一我的對一個大塊的內容進行開發,連個交流的人都沒有,會很痛苦。由於我就有這樣的經歷。
以上就是個人一些總結,但願對你們能有些許的幫助。若有不一樣意見,歡迎提出。
———完結
相關文章
相關標籤/搜索