日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > > 嵌入式微處理器
[導讀]來源 :老九學堂 程序員的價值絕對不在于技術(shù)本身,而在于做出好用且好看程序的能力,這是一個開放性的話題,每一個人都是菜鳥過來的,老九君希望每一個對技術(shù)充滿熱愛的小伙伴都能盡快成為高手。 1 命名 從程序代碼的命名,我們就可以看出一個人的水平。最差

來源 :老九學堂


程序員的價值絕對不在于技術(shù)本身,而在于做出好用且好看程序的能力,這是一個開放性的話題,每一個人都是菜鳥過來的,老九君希望每一個對技術(shù)充滿熱愛的小伙伴都能盡快成為高手。


1

命名


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


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


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

2

模型抽象能力


模型決定一個系統(tǒng)的可用性、穩(wěn)定性、易用性、可維護性、可擴展性!


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


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


比如微軟MEF,其模型構(gòu)建非常的漂亮和優(yōu)雅。MEF的核心就是組合基元,如下圖所示,它簡單的定義了動態(tài)組合的支持基礎,然后一層一層的進行擴展。

3

謙虛隨和


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


軟件的問題,并不是簡簡單單解決一個技術(shù)問題,從技術(shù)的角度上看,只要學會了使用技術(shù),那么我們就已經(jīng)掌握了技術(shù),因此,單純的技術(shù)是很簡單的。



相反的是,軟件的協(xié)作開發(fā)、管理,軟件的易用性,軟件是否美觀,這些東西才是最麻煩的,也往往是技術(shù)水平一般、經(jīng)驗短缺的程序員意識不到的東西。


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


4

異常處理


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


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



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


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


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

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


If(*****)

{

// ….do something…

}


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


5

優(yōu)雅與美觀


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


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



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


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


6

基礎扎實


技術(shù)知識決定一個人能做的技術(shù)的層次?;A的知識有計算機組成原理、計算機操作系統(tǒng)、網(wǎng)絡原理、數(shù)據(jù)庫原理、計算機圖形學、編譯原理、數(shù)據(jù)結(jié)構(gòu)、離散數(shù)學、人工智能等等很高深的理論知識。


在這些基礎知識之上,就是軟件開發(fā)語言、類庫、框架,面向過程、面向?qū)ο?、面向服務等編程思想,架?gòu)思想等等。



這些知識不一定會影響你現(xiàn)在的工作,但一定會影響到你的格局,那格局肯定也會影響到你自身的發(fā)展。我碰到過有些理論很差的人,但技術(shù)在公司內(nèi)也是有些影響力的,因此,他們對技術(shù)原理就很不屑,甚至為自己不懂太多理論而擅長實戰(zhàn)而沾沾自喜。


這些人會對那些懂理論,但動手能力一般的人顯示出由內(nèi)而外的鄙夷,但是他們卻不知道那些既有基礎知識,也有動手能力的高手做出的東西是怎樣的。就像很多人都想不通,那些技術(shù)天才是如何開發(fā)出一個數(shù)據(jù)庫、操作系統(tǒng)這樣的軟件。


因此,如果你已經(jīng)發(fā)覺自己基礎不夠扎實,那么還是有空就修煉修煉自己的內(nèi)功吧!


7

文檔與表達能力


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


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


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



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


8

積極的心態(tài)


技術(shù)好的人,一般人都壞不到哪去。很簡單的一句話,想要技術(shù)好,就要投入時間,有時間投入到技術(shù),那么就沒有時間投入到其它方面,特別是消極的坑蒙拐騙,因此,技術(shù)人員一般也都比較靠譜。


積極的心態(tài),不僅僅對于技術(shù),對于生活也是如此。一旦有了積極的心態(tài),那么菜鳥到高手的過程,僅僅是時間的問題!



9

覺得軟件不值錢


程序員都特別煩的就是做一個軟件和一些水平不怎么高的技術(shù)人員談費用的問題。只要是想要做好,沒有哪一個事情是簡單的。凡是靠良心和能力謀生的,都是依靠自身的實力來獲取合適的報酬,我們每一個人都需要有收入。


但是,我們很難改變一些技術(shù)人員認為軟件不值錢的想法,他們的理論是,這個功能放我身上,我一天就搞定了,憑什么你要那么多錢?


可是,咱們的做法一樣嗎?一個功能的實現(xiàn)方法有很多種,就像我說的數(shù)據(jù)采集。如果你的數(shù)據(jù)采集實現(xiàn)沒有以下“1、2、3”這些輔助的功能,后臺的實現(xiàn)要簡單的多。



如果沒有指令重試,沒有多線程,沒有異步刷新,沒有7×24小時穩(wěn)定運行,沒有采集數(shù)據(jù)丟失,沒有指令優(yōu)先級排列,沒有多線程和分布式集群采集,沒有支持1天1GB數(shù)據(jù)采集等等這些非功能性的需求。


那么這個軟件會更簡單,我也見過有人用一個控制臺,用一個單線程,顯示的信息都是完全看不懂的二進制數(shù)字,運行一會CPU就100%,內(nèi)存不斷升高的采集軟件。這個也算得上是采集軟件。


不過,菜鳥程序員一般都會按照自己的做事方法來對軟件進行評估,如果沒有好的經(jīng)驗,一般都會認為軟件很不值錢。事實上,做好看的、好用的軟件非常難,做好看、好用、還要好維護以擴展的軟件那就是難上加難。


軟件是一個充滿智慧結(jié)晶的勞動成果,如果說的高尚一點,有些軟件時無價的。


10

工資


這點顯而易見,工資是價值的體現(xiàn),成為高手程序員就意味著你能為自己爭取高報酬。所以小伙伴們,加油吧!比如認真看老九君分享給你們的干貨和徐老師的直播。




-END-




推薦閱讀



【01】好的程序員“借”,偉大的程序員“偷”!你同意否?
【02】30而立,程序員如何跨過年齡這道檻?
【03】干掉過多的if…else:據(jù)說這項技能可以看出程序員的境界!
【04】40個笑到抽筋的神回復,程序員必看?。?!
【05】揭秘!2020年4月全國程序員工資統(tǒng)計,新出爐!(包含地區(qū)和語言排行)


免責聲明:整理文章為傳播相關(guān)技術(shù),版權(quán)歸原作者所有,如有侵權(quán),請聯(lián)系刪除

免責聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺僅提供信息存儲服務。文章僅代表作者個人觀點,不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!

嵌入式ARM

掃描二維碼,關(guān)注更多精彩內(nèi)容

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
關(guān)閉