1. 程式人生 > >前端工程師開發進階之路

前端工程師開發進階之路

var str="www.baidu.com/?page";
// 1、字串剪裁
str.substring(0, str.indexof("?page"));
// 2、正則表示式
str.replace(/?page/, "");
// 3、字串分拆、合併
str.split("?page").join("");

能夠解決問題的方法會有很多,但是對於程式設計師來說應該選擇最優秀的。上面這段程式碼從程式碼量來說”正則表示式”最優秀;從程式碼執行效率來說: “字串剪裁”法最高(chrome中”正則表示式”效率最高),split法最次;從可擴充套件性上來說,”正則表示式”法最優。具體使用那種方案視具體的需求環境而定。

“入室”階段,程式設計師應該能夠肯定的回答:對於這個需求而言,我的程式碼就是最優秀的程式碼。

再以”今天是星期幾”為例,”登堂”級的程式碼你敢說是最優秀的程式碼了嗎?

// 計算系統當前是星期幾
var str = "今天是星期" + "日一二三四五六".charat(new date().getday());

對比”登堂”級的示例程式碼,上面這段程式碼給你什麼感受?程式設計師追求的就是完美。”入室”級別追求的就是每一招每一式的完美無缺。

從web前端程式設計來說,通過2年左右的努力,很多人能夠達到這個水平,但是,很大一部分人的程式設計能力也就止步於此。或限於產品的需求單一性,或限於需求開發的時間緊迫性,或限於人的惰性,能夠完美地解決當前的需求就夠了。

由於長期處於技術平臺期,技術上得不到提高,通常這個級別的工程師會比較燥。技術上小有所成;或追求個人的突破;或追求產品差異性帶來的新鮮感;或者只是想換個心情;因此很多此級別的工程師會經常換公司。

戒驕戒躁:

切勿以為自己能寫一手漂亮的程式碼而自滿; 
切莫以為別人”尊稱”你一聲”大俠”你就以 “大俠”自居; 
切莫以為自己積累了一些得意的程式碼就成了框架式開發。

細節決定成敗,優秀的方案並不能保證最終的成功。還以”刪除指定字串”為例,原始字串從格式上來看應該是了個url連結,在去除”pn=0”之後,最末尾處留了一個尾巴”?”;如果原始字串是"http://www.xxx.com/?pn=0&a=1"

,去除”pn=0”之後 ? 和 & 兩個符號緊貼一起,這更是明顯的bug。

進階之路

此階段進階之路就是:切勿心浮氣躁;你不再被需求牽著走,而是你牽著需求走。注重細節,注意那些當前需求裡沒有明文給出的細節:程式碼效能的差異、執行平臺(瀏覽器)的差異、需求的隱性擴充套件、程式碼的向後相容等等。

再通讀幾遍html/css/javascript幫助文件。

我建議這個級別的工程師做一做webtreeview控制元件,要求總節點量一萬左右操作流暢,你的晉升之路就在這個控制元件的編碼過程中。

相關推薦

前端工程師開發

var str="www.baidu.com/?page"; // 1、字串剪裁 str.substring(0, str.indexof("?page")); // 2、正則表示式 str.replace(/?page/, ""); // 3、字串分拆、合併 str.split("?page").join(

前端工程師

有時 exp === 框架設計 例子 最好 接口 概念 產品需求 這篇文章收藏在筆記裏面有幾年了,原文作者無從考究了,侵刪! 最近再翻出來看,依然覺得受益匪淺。這次整理分享出來,希望對大家有所啟示。 背景 如果你是剛進入WEB前端研發領域,想試試這潭水有多深,看這篇文章

從0到1,從無到有:八年阿里Python開發工程師

如果你只能選讀一門程式語言,那麼除了 Python,還是 Python。     小編有個在阿里工作的朋友,這兩天和他在聊Python的發展,其實Python已經在不知不覺中發生了非常大的改變。Python這門語言十分高效,只要是和自動化有關係的,它可以發揮出巨

指尖上行--移動前端開發(讀書筆記)----1.1頁面佈局

chapter 1 移動頁面開發 頁面佈局 頁面除錯 常用庫和框架 1.1 頁面佈局 1.1.1 Vieport(視口,檢視視窗) 裝置畫素 物理畫素:螢幕解析度; 裝置獨立畫素:CSS畫素(eg:IPhone5 CSS畫素是320*568p

指尖上行--移動前端開發(讀書筆記)----2.1動畫形式

chapter 2 技術創意形式 動畫形式 移動裝置 Web API 詳解 WebVR 創意點 2.1 動畫形式 2.1.1 CSS3 CSS3 Cascading Style Sheets 層疊樣式表。 CSS3是CSS技術的一個升級版本,

指尖上行--移動前端開發(讀書筆記)----1.3常用庫和框架

chapter 1 移動頁面開發 頁面佈局 頁面除錯 常用庫和框架 1.3 常用庫和框架 1.3.1 jQuery Mobile jQuery Mobile是jQuery 框架的一個元件(而非jquery的移動版本)。這個框架已經很老了,本人

Java開發

為我 變量 kafka 自然 ges 想想 javaweb 目前 沒有 背景一 我接觸Java開發已經一年多了了。 從剛開始生澀地接觸語法,惹得編譯器報各種語法錯誤;到接觸OOD的思想,封裝、繼承、多態,懵懵懂懂地聽說著它們;再到學習Web開發,想著這些也許並不重要,實際用

一個java高階工程師【轉】

巨集觀方面 一、 JAVA。要想成為JAVA(高階)工程師肯定要學習JAVA。一般的程式設計師或許只需知道一些JAVA的語法結構就可以應付了。但要成為JAVA(高階) 工程師,您要對JAVA做比較深入的研究。您應該多研究一下JDBC、IO包、Util包、Text包、JMS、EJB、RMI

聽張老師講運維工程師

evo 技術 緩存 進階之路 架構 lvm 工程師 很難 amp 一、初級運維工程師(監控工程師),技術支持,掌握zabbix,3分鐘/5分/15分的故障處理時間。應急時間內搞不定,趕緊報告。(成長時間大概1~2年)二、中級運維工程師(應用運維),掌握nginx,hapro

專訪任玉剛:從菜鳥到資深工程師

任玉剛,百度公司Android資深工程師,《Android開發藝術探索》作者,熱愛分享和開源,常年活躍在CSDN和Github。除此之外,他還是CSDN部落格專家,2014十大部落格之星。從一名菜鳥演變為資深工程師,在他看來,也有自己的辛酸歷程,儘管他已成為一名資深工程師

一個Java高階工程師

尚學堂AD 想必Java新手們都想知道如何成為一個Java高階工程師,小編整理了一下Java高階工程師必須具備的一些專業技能供大家參考,希望可以幫到大家! 巨集觀方面 JAVA 要想成為JAVA(高階)工程師肯定要學習JAVA。一般的程式設計師或許只需知道

處女作《Web全棧開發》出版了!

基礎 訂單 分享 mvc product 喜歡 想要 代碼 及其 書中源碼下載地址:https://github.com/qinggee/WebAdvanced 01、 當初決定寫博客的原因非常的純潔:只要每個月寫上 4 篇以上博客,月底的績效獎金就多 500 塊。

軟體開發工程師

伺服器方面: 1、web伺服器nginx和apache的對比分析 ①nginx相對於apache的優點: 輕量級,同樣起web 服務,比apache 佔用更少的記憶體及資源 ,抗併發,nginx 處理請求是非同步非阻塞的,而apache 則是阻塞型的,在高併發下nginx 能保持低資源低

iOS初級開發工程師

我覺得是時候,也有必要,承認一下自己的錯,壓制一下趾高氣揚的自己,在知乎上看到一個帖子,有點被打擊到了.帖子中涉及到的問題,我給貼出來,各位小夥伴們一起開探討一下,問題的答案,有知道的請在後面留言 首先帖子的地址:https://www.zhihu.com/quest

前端工程師做事的三重境界:我的

本文轉載於:猿2048網站前端工程師做事的三重境界:我的進階之路 ![v2-fd52450adf6c98b518618bdc74

Android資深工程師

看到一篇文章中提到“最近幾年國內的初級Android程式設計師已經很多了,但是中高階的Android技術人才仍然稀缺“,這的確不假,從我在百度所進行的一些面試來看,找一個適合的高階Android工程師的確不容易,一般需要進行大量的面試才能挑選出一個比較滿意的。為什麼中高階Android程式設計師不多呢?這是一

Spring Cloud -- Eureka的高可用,搭建 Eureka叢集(開發環境和生產環境)

  Eureka 作為註冊中心,必須保障高可用,否則會直接影響有關的整個服務體系。 以下分別進行開發環境和生產環境的多服務中心叢集配置。   目錄 一、開發環境簡易配置: 1、配置Configurations 2、在Configurations 裡

碼奴-碼農-IT民工-IT工程師-IT人才

    隨著社會的發展,時代的進步,IT行業依然是一個朝陽行業,有著強勁的發展動力,很多人也都想在這個行業中分一杯羹。作為一個普通人,進入這個行業最直接的方式就是學習IT技術或者叫做軟體開發技術。學習分為自學和報培訓班學習。其實培訓班也是師傅領進門,修行靠個人。對於計算機專業

【Visual C++】遊戲開發五十一 淺墨DirectX教程十九 網格模型

                最近幾個星期,不停地收到大家的評論和郵件,大家都說希望淺墨早點講骨骼動畫。本來按淺墨擬定的寫作計劃是把骨骼動畫放到很後面,因為骨骼動畫知識需要前面的網格模型知識為基礎,知識量本身有些大,很可能要佔很多次更新的篇幅。但是看到大家一致的評論,都說非常期待骨骼動畫。那就好吧,我們就來

推薦書單2.0:測試工程師

18年年初,寫過一篇部落格:推薦書單1.0:測試工程師成長之路。裡面包含了軟體測試基礎方法論、UI自動化測試、效能測試、python、協議、資料庫、中介軟體、泛產品經理相關的一些書單。 今年我也算看了一些書,型別比較雜,散文小說、雞湯、邏輯思維、社科等等型別,技術類的大概佔比一半左右,其中中介軟體和後臺相關