廈門IT培訓
美國上市IT培訓機構

13429669395

熱門課程

程序高手和菜鳥的區別是什么?

  • 時間:2020-07-08 11:05
  • 發布:廈門達內IT培訓
  • 來源:疑難解答

程序員的價值絕對不在于技術本身,而在于做出好用且好看程序的能力,這是一個開放性的話題,每一個人都是菜鳥過來的,達內希望每一個對技術充滿熱愛的小伙伴都能盡快成為高手。下面說一說程序高手和菜鳥的區別在哪里?

1、命名

從程序代碼的命名,我們就可以看出一個人的水平。最差的命名就是使用中文、拼音、拼音縮寫、中英混搭,接下來要么是模仿式命名,要么干脆就隨意命名。

模仿式命名典型的就是“××DAL”,說實話,我覺得類似于“UserDAL”這樣的名字,我覺得太不美觀了,一般這我就知道這是典型分層架構的模仿者,說明他是有些經驗的人了。

隨意命名,就是寫代碼的時候,名字壓根就沒有意義,比如var list = new List<User>,其實完全可以寫成var users = new List<User>的。想要命名的更有意義,你只需要將每一個類、每一個方法、每一個單詞的名字都用你開發時的意思直接描述出來就行了。

2、模型抽象能力

模型決定一個系統的可用性、穩定性、易用性、可維護性、可擴展性!

這個模型不是UML建模,而是軟件的核心。就是你設計一個軟件時,為其所抽象出來的原理性的描述。模型決定一個軟件的質量、易用性和擴展性。

凡是優秀的軟件,都有一個共同特點,就是其模型構建的非常漂亮,當然也有不怎么優秀的軟件,模型也很漂亮。

3、謙虛隨和

有一個非常有趣的現象,那些懂得尊重別人、比較謙虛的人經過深入接觸后,會發現他們的技術往往都很了不起;而那些說話刻薄無禮,覺得這個技術不怎樣,那個技術也沒什么了不起的,我自己的東西已經挺好的,這樣的人水平、經驗和見識一般都不怎樣。

有不少一般的程序員,大體都是這一類,他們覺得軟件太簡單了,沒有什么了不起的。對于什么思想,也不屑一顧,他們已經覺得自己掌握了很多真正的技術。

4、異常處理

通過異常處理可以看出一個程序員程序設計的嚴謹與扎實的基礎知識。拿Java開發人員舉例,要發現每一個方法都有可能需要強制的處理異常和聲明這個函數需要處理的異常,這種強制的約束,會強迫開發人員來習慣性的考慮和思考它。

不過,對于大部分人來說,它處理異常的方式就是簡單的使用try { … } catch(Exception anyException) { // 忽略異常 },用這種方式來捕捉所有的異常信息。

這樣做的好處就是快,傻。缺點就是一旦出現問題,就不知道問題在哪發生,怎么回事,如果有靠譜的QA還好一些,比如外企,他們都有規范的測試方法和測試流程,一旦發現問題,就會將重現捕捉完整的描述出來給開發者看。

不過,在國內沒有嚴格的測試是很正常的,那么出現問題時,就傻了??蛻羰墙^對不可能把出現問題的方式給你完整的Repro的,一旦出現問題,客戶會干的就是急眼,那接下來怎么辦?你就老老實實加班,老老實實的去猜去找問題。

當“try { … } catch(Exception anyException) { // 忽略異常 }”這樣的代碼充斥整個軟件系統時,你就可以想象有多可怕,這個軟件能穩定就怪了!

關于異常處理,另一面,就是菜鳥程序員在寫代碼或者實現功能的時候,一般不考慮反面情況,一個軟件按照正常步驟可能能走通,但是一旦出點意外,就麻煩了。以下就是一個典型的代碼。

If(*****)

{

// ….do something…

}

這個代碼處理了if,但是萬一出現else的情況呢?可想而知,系統將會出現無法意料的情況。因此,這也是菜鳥程序員做的系統一般都非常不穩定的一個根源,做程序一般只考慮功能實現,忽略掉意外情況。

5、優雅與美觀

菜鳥程序員并不是缺乏審美,缺乏的是優雅和美觀的抽象能力。一個好的系統,要做到兩點,好用,好看!因此,這絕對不是單單功能上的堆砌。

很多國產軟件都深深的烙上了技術人員設計的印子,一看就知道這個軟件是出自一個技術人員的設計和實現,一看就知道這個軟件的實現過程,這簡直是慘不忍睹,不過,小伙伴們,這就是你們的機遇啊。

菜鳥技術人員開發功能的時候,一般都是從實現的角度進行堆砌,怎么簡單,怎么來。不會去仔細分析,用戶在操作這個功能的時候,到底還會做什么事情,各個功能之間怎么進行有機結合來完整的進行結合。相反,一些技術比較好的程序員往往都要直面客戶,經常被客戶罵,罵著罵著,也有點覺悟了。

當然,也有一些程序員因為自尊,直接不干了。不過,我覺得厲害的程序員基本都有用戶意識,也希望自己的軟件能有很好的評價,甚至能夠影響社會。好用,好看,是軟件能夠被普遍采用的前提,因此,我們需要學會抽象優雅。

6、文檔與表達能力

很多技術人員都寫不了文檔。不過,坦白的講,如果要獲得更好的報酬,文檔是絕對關鍵的因素。沒有文檔就沒有溝通,就沒有交易。有人提了,“文檔是第一生產力”,這是非常有道理的。

文檔的類型有很多,針對的對象也各不相同。不同的人,對文檔的理解能力也是完全不一樣的。因此,你的文檔必須適應于你的目標。這個對于搞技術的人太難,他覺得還不如寫代碼來得快。

表達能力決定了你所做的技術的影響范圍,決定了你的影響力,決定你的威信。因此,也絕對的影響到你的報酬。因為這個能力而影響到你的報酬,你可能會心里覺得虧,但沒有辦法,這是硬傷。

這可不僅僅是我只是不擅長寫文檔,但我擅長于搞技術這么簡單。如果哪一天,有一個擅長忽悠,技術不如你的人,爬到你的上面并且領導你,那也是該的。千萬不要去怪別人擅長忽悠,而是要想辦法來彌補自己的硬傷。

如果你想要在短時間內快速入門,順利掌握一門技術,建議還是選擇培訓機構。而達內是你的不二選擇。從達內出來的學員,一直以來深受相關企業的認可,良好的教師團隊和全方位的教學方式,都是培訓出高質量IT人才的關鍵,不要再擔心自己沒有經驗和基礎,一畢業就高薪就業,真的不是幻想,而是真真實實的存在!

預約申請免費試聽課

怕錢不夠?就業掙錢后再付學費!    怕學不會?從入學起,達內定制課程!     擔心就業?達內多家實踐企業供你挑選!

上一篇:初學嵌入式難不難?主要學什么知識?
下一篇:嵌入式軟件開發主要學什么?推薦路線

想學好嵌入式都要學習哪些基礎?

如何理解嵌入式系統開發

DSP是什么?跟嵌入式有什么關系?

嵌入式軟件開發主要學什么?推薦路線

選擇城市和中心
江西省

貴州省

廣西省

海南省

深夜办公室完整版在线观看