最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

華為云社區(qū):程序員從幼稚到成熟的過程是什么?他們這樣回答

2020-11-29 16:26 作者:C語言編程__Plus  | 我要投稿

華為云社區(qū):

想要成為一名堪稱優(yōu)秀的程序員需要花時(shí)間了,而且過程不可謂不艱難——你會(huì)不止一次地想要放棄。雖然很難,但這條路上依舊是熱鬧非凡。眾所周知,程序員的資歷深淺是跟很多方面都有關(guān)聯(lián)的:知識(shí)、閱歷、情商等等。但一個(gè)程序員要想成長為一個(gè)成熟優(yōu)秀的程序員,這些能力或許能幫助到你。



作者:華為云開發(fā)者社區(qū)

鏈接:https://www.zhihu.com/question/411824337/answer/1527294428

1、掌握一門編程語言

作為合格的程序員,精通一門語言是必須的。這種精通,不是說看了一本《24小時(shí)精通XXX》,抄了幾個(gè)程序就能說精通的,要靠長時(shí)間的積累和動(dòng)手敲代碼。

而且,為啥強(qiáng)調(diào)一門語言,主要是怕一些程序員“貪心”,吃多嚼不爛。編程語言雖然有相似的語法,但畢竟是不同的編程語言,之間還是有很多差異的地方。對(duì)于初級(jí)程序員來說,切勿貪多,先把一門編程語言吃透再說,等你有了融會(huì)貫通的本領(lǐng),再去學(xué)新的編程語言也不遲。

現(xiàn)在大部分的程序員都是 Java 語言相關(guān), Java 基礎(chǔ)則是走向 Java 高級(jí)的必經(jīng)之路。所以,這里給大家列舉一些實(shí)際工作中高頻次的東西。

(1)基本容器,如:HashMap、ArrayList、HashSet、LinkedList 等,要會(huì)用還得了解其中的原理,這樣才能在不同的場(chǎng)景選擇最優(yōu)的設(shè)計(jì)。

(2)IO、NIO。日常開發(fā)中大部分是在和磁盤、網(wǎng)絡(luò)(寫日志、數(shù)據(jù)庫、Redis)打交道,這些都是 IO 的過程。

(3)常見的設(shè)計(jì)模式如:代理、工廠、回調(diào)、構(gòu)建者模式,這對(duì)開發(fā)靈活、擴(kuò)展性強(qiáng)的應(yīng)用有很大幫助。

(4)Java 多線程是非常重要的特性,日常開發(fā)很多。能理解線程模型、多線程優(yōu)缺點(diǎn)、以及如何避免。

(5)良好的單測(cè)習(xí)慣,很多人覺得寫單測(cè)浪費(fèi)時(shí)間沒有意義。但正是有了單測(cè)可以提前暴露出許多問題,減少測(cè)試返工幾率,提高代碼質(zhì)量。

(6)良好的編程規(guī)范

那么,在學(xué)習(xí)JAVA語言的初期,程序員就可根據(jù)JAVA學(xué)習(xí)路線規(guī)劃,可以進(jìn)行由淺到深的學(xué)習(xí)、實(shí)訓(xùn),熟練使用Java進(jìn)行面向?qū)ο笤O(shè)計(jì),最終熟悉的掌握J(rèn)AVA語言。Java語言是這樣,其他的語言也是一樣,工作中高頻出現(xiàn)的,在學(xué)習(xí)的時(shí)候一定要掌握好!


2、編碼的能力

當(dāng)你學(xué)會(huì)一門編程語言之后,接下來要考慮的事情就是讓你編寫的代碼變得更整潔,更易于理解,更富有藝術(shù)。

遵守編碼規(guī)范,是一個(gè)程序員最基本的要求,但很多程序員根本沒有意識(shí)到這個(gè)問題的嚴(yán)重性。隨意堆砌網(wǎng)上搜來的代碼,根本不管可讀性和可維護(hù)性,只要能實(shí)現(xiàn)功能就行了。

代碼注釋,要注意不是為了注釋而注釋。例如:對(duì)類,以說明職責(zé)為主;對(duì)方法,以說明意圖為主;對(duì)方法體,以說明實(shí)現(xiàn)思路為主。

思維的條理性,寫代碼之前,先簡單計(jì)劃一下,用自然語言把流程寫下來,用于整理實(shí)現(xiàn)思路?;c(diǎn)時(shí)間思考,敲代碼只是最后一個(gè)很簡單的工作,不要把自己變成一個(gè)代碼打字員,編寫邊想,寫了刪,刪了寫。

養(yǎng)成這些好的習(xí)慣,可以極大地提升自己的編程實(shí)力,更快速、更可靠地交付更高質(zhì)量的軟件,從而成為真正的高效程序員。在華為云的云享讀書會(huì)中,華為云資深架構(gòu)師董老師領(lǐng)讀了《程序員修煉之道:通向務(wù)實(shí)的最高境界(第2版)》這本書。讀完這本書,你或能編寫出更好的軟件,或能探究出編程的本質(zhì),而所有收獲均不依賴于特定語言、框架和方法。


3、掌握日常接觸的技術(shù)架構(gòu)

數(shù)據(jù)庫知識(shí)的了解。如果你想要在軟件開發(fā)這條道路上走得更高更遠(yuǎn),懂一些基本的數(shù)據(jù)庫知識(shí)是必須的,比如說:如何將業(yè)務(wù)中的對(duì)象屬性轉(zhuǎn)化為數(shù)據(jù)庫字段;如何從數(shù)據(jù)庫中檢索數(shù)據(jù),并將數(shù)據(jù)集拼接在一起;如何往數(shù)據(jù)庫中插入、修改、刪除數(shù)據(jù);索引的數(shù)據(jù)結(jié)構(gòu)及原理;SQL 語句的優(yōu)化;等等。

如果再懂一些數(shù)據(jù)庫分庫分表的中間價(jià),那你可能就會(huì)成為團(tuán)隊(duì)的寶貝了,畢竟所有的應(yīng)用程序都要與數(shù)據(jù)庫交互,另外,數(shù)據(jù)庫是系統(tǒng)最先出現(xiàn)性能瓶頸的地方——總有你大展身手的時(shí)候。

數(shù)據(jù)結(jié)構(gòu)和算法的學(xué)習(xí)。基礎(chǔ)知識(shí)就像是一座大樓的地基,它決定了我們的技術(shù)高度。數(shù)據(jù)結(jié)構(gòu)和算法就是最重要的基礎(chǔ)知識(shí),學(xué)習(xí)它們的過程就像是在打地基。很多不懂算法和數(shù)據(jù)結(jié)構(gòu)的程序員,就經(jīng)常遇到一些實(shí)際的問題,由于無法充分利用數(shù)據(jù)結(jié)構(gòu)將數(shù)據(jù)之間的關(guān)系通過合適的算法策略進(jìn)行有效地存儲(chǔ)轉(zhuǎn)換,就導(dǎo)致程序的性能很低。

技術(shù)框架的學(xué)習(xí)。技術(shù)框架是一組通用類庫的集合,它幫助我們讓編程任務(wù)變得更簡單,畢竟輪子替我們?cè)旌昧恕<偃缯f沒有技術(shù)框架的話,我們就好像坐著馬車前行,而不是飛機(jī)、高鐵和汽車,開發(fā)效率就要大大降低了。 例如,如果你是Java 后端開發(fā)人員的話,Spring 的系列框架(Spring MVC、Spring Boot、Spring Cloud)就不得不學(xué)了;如果你是一個(gè) C# 開發(fā)人員,.NET Framework 就不得不學(xué)了。

當(dāng)你開始接觸不用方向的技術(shù)和架構(gòu)的時(shí)候,在你持之以恒的學(xué)習(xí)吸收各種技術(shù)知識(shí)的過程中,也正在你從初級(jí)程序員再向更高的階段進(jìn)階。


4、實(shí)踐新技術(shù)

我們?cè)陂_發(fā)時(shí),會(huì)接觸各種各樣的新技術(shù)。有時(shí)因?yàn)轫?xiàng)目時(shí)間原因,很多技術(shù)只能是走馬觀花的用,解決問題為目的,項(xiàng)目結(jié)束了可能就扔一邊兒去了。但要想讓自己有更大的成長,那我們就應(yīng)該學(xué)多一點(diǎn),用一分學(xué)兩分,廣里一分,深里一分,不能不求甚解一帶而過。對(duì)于用過的技術(shù),最好在當(dāng)時(shí),項(xiàng)目的間隙或者項(xiàng)目結(jié)束時(shí),抽時(shí)間了解它的背景、長處、機(jī)理,讓自己對(duì)用到的技術(shù)都有相當(dāng)程度的了解。惟其如此,我們的知識(shí)面和技術(shù)深度,才會(huì)隨著開發(fā)經(jīng)驗(yàn)而不斷遞進(jìn)。

選擇或者學(xué)習(xí)一門新的技術(shù),必須要實(shí)踐??梢园阉鼞?yīng)用到工作中的項(xiàng)目,如果工作條件限制,那也要自己定義一個(gè)自己喜歡的項(xiàng)目,堅(jiān)持使用你的新技術(shù)做下來。唯有實(shí)踐,你的新技術(shù)才能理解得更為深刻。知道有那么一門技術(shù),與實(shí)際使用過,其間的差異可不止一點(diǎn)。


5、掌握點(diǎn)架構(gòu)知識(shí)

相信大家都有一個(gè)架構(gòu)師的夢(mèng)想。架構(gòu)師給人的感覺就是畫畫圖紙,搭好架子,下面的人員來添磚加瓦最終產(chǎn)出。但其實(shí)需要的內(nèi)功也要非常深厚,就上面列舉的樣樣需要掌握,底層到操作系統(tǒng)、算法;上層到應(yīng)用、框架都需要非常精通。

其實(shí),很多架構(gòu)師都是從開發(fā)人員逐步過渡來的,程序員想要成為架構(gòu)師,應(yīng)當(dāng)具備全面的知識(shí)體系,需要進(jìn)行系統(tǒng)的學(xué)習(xí)和實(shí)踐。平時(shí)就應(yīng)該身負(fù)“架構(gòu)師”職責(zé),用架構(gòu)師的視角來對(duì)待工作。

噴泉之所以漂亮是因?yàn)樗辛藟毫?;水之所以能穿石是因?yàn)橛肋h(yuǎn)在堅(jiān)持。有些東西你只要用心學(xué)習(xí)去做,其實(shí)并不像你想象那么難。要敢于去嘗試,給自己一點(diǎn)點(diǎn)壓力,取得的效果是你自己難以想象的。

如果你依然在編程的世界里迷茫,不知道自己的未來規(guī)劃,亦或你想更好的提升你的編程能力,好好學(xué)習(xí)C/C++編程知識(shí)的話!那么你很幸運(yùn)~

另外,UP在主頁上傳了一些學(xué)習(xí)C/C++編程的視頻教程,有興趣或者正在學(xué)習(xí)的小伙伴一定要去看一看哦!會(huì)對(duì)你有幫助的~

分享(源碼、項(xiàng)目實(shí)戰(zhàn)視頻、項(xiàng)目筆記,基礎(chǔ)入門教程)

歡迎轉(zhuǎn)行和學(xué)習(xí)編程的伙伴,利用更多的資料學(xué)習(xí)成長比自己琢磨更快哦!

編程學(xué)習(xí)書籍:

編程學(xué)習(xí)視頻:


華為云社區(qū):程序員從幼稚到成熟的過程是什么?他們這樣回答的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
镇宁| 香港| 金塔县| 张家川| 江阴市| 家居| 宜章县| 阜新| 渭南市| 眉山市| 天津市| 海盐县| 黑龙江省| 饶河县| 鞍山市| 夏津县| 淮滨县| 阳东县| 新郑市| 青田县| 根河市| 扬州市| 乌兰察布市| 新安县| 青浦区| 麦盖提县| 合江县| 昭觉县| 双流县| 资中县| 巫山县| 江门市| 汪清县| 华安县| 碌曲县| 青州市| 湾仔区| 红安县| 西贡区| 临江市| 乌恰县|