自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

一個(gè)碼農(nóng)的自我修養(yǎng):5個(gè)高級(jí)開(kāi)發(fā)人員應(yīng)該具備的品質(zhì)

企業(yè)動(dòng)態(tài)
文摘菌通過(guò)觀察周圍一些高級(jí)開(kāi)發(fā)人員,發(fā)現(xiàn)他們身上都有相同的特質(zhì),到底是什么樣的特質(zhì)使得他們開(kāi)發(fā)出來(lái)的代碼復(fù)用性好,漏洞低呢?可能他們都具備如下品質(zhì)吧。

[[274010]]

大數(shù)據(jù)文摘出品

來(lái)源:medium

編譯:張大筆茹、寧?kù)o

前不久,文摘菌曾報(bào)道過(guò),“Python之父”Guido Van Rossum,一位荷蘭程序員邊看電視邊擼代碼,歷時(shí)三個(gè)月開(kāi)發(fā)出了現(xiàn)今廣泛應(yīng)用的Python語(yǔ)言,就有人在后臺(tái)問(wèn)了:“同樣是程序員,我也喜歡宅在家里,為什么收獲的只有身體的橫向發(fā)展?”

那些號(hào)稱“代碼教科書”“程序不通過(guò)編譯器都會(huì)道歉”的高級(jí)開(kāi)發(fā)人員和在搬磚邊緣苦苦掙扎的碼農(nóng)有什么不一樣呢?難道真如學(xué)習(xí)一門樂(lè)器,管類樂(lè)器,老師會(huì)看你嘴唇薄厚,絲弦樂(lè)器,可能會(huì)看你指節(jié)長(zhǎng)度一樣,編程也需要有天賦嗎?

開(kāi)發(fā)人員的技能范圍是很廣的,不能僅根據(jù)工作年限來(lái)評(píng)價(jià)一個(gè)人的才能,五年、十年甚至十五年所謂的“工作經(jīng)驗(yàn)”并不一定是有能力、高效率開(kāi)發(fā)人員的佐證,有些人往往年齡大而能力低,那么是什么讓有些人能在同類中脫穎而出呢?

文摘菌通過(guò)觀察周圍一些高級(jí)開(kāi)發(fā)人員,發(fā)現(xiàn)他們身上都有相同的特質(zhì),到底是什么樣的特質(zhì)使得他們開(kāi)發(fā)出來(lái)的代碼復(fù)用性好,漏洞低呢?可能他們都具備如下品質(zhì)吧。

編程模式

程序化面向?qū)ο?、功能編程與面向?qū)ο笤O(shè)計(jì)、清晰編碼技術(shù)的SOLID是編程模式的“三重奏”,它們很大程度上決定了代碼創(chuàng)建背后的思維模式。

大多數(shù)初級(jí)開(kāi)發(fā)人員在編碼過(guò)程中并沒(méi)有意識(shí)到編程是一種超越了語(yǔ)法規(guī)則的問(wèn)題,可以把它看作可以多種方式完成的通信工具,好的編程模式有助于優(yōu)化代碼間的通信方式。

任何人都可以寫代碼,正如任何人都可以在豆瓣上發(fā)短息和寫書評(píng)一樣,當(dāng)然這肯定不能與斯蒂芬金的小說(shuō)比擬。編程模式作為高級(jí)開(kāi)發(fā)人員代碼背后的指導(dǎo)力量,就像小說(shuō)結(jié)構(gòu)對(duì)于其整體情節(jié)的反映一樣,所有的語(yǔ)言都是有其內(nèi)部架構(gòu)的,高級(jí)開(kāi)發(fā)人員可以在內(nèi)部層面理解并應(yīng)用,這是許多初級(jí)和中級(jí)開(kāi)發(fā)人員做不到的。

創(chuàng)造力

當(dāng)我們?cè)趂or循環(huán)和if else語(yǔ)句中開(kāi)始編程時(shí),我們往往更喜歡用復(fù)制和粘貼的方式解決代碼問(wèn)題。然而,理解代碼的方式?jīng)Q定了你是低級(jí)還是高級(jí)開(kāi)發(fā)人員。

走一步,再走一步,更進(jìn)一步,可能會(huì)發(fā)現(xiàn)另外一番風(fēng)景,與其復(fù)制粘貼代碼,倒不如整理好自己的思路,創(chuàng)造出有“靈魂”的代碼。

高級(jí)開(kāi)發(fā)人員之于普通開(kāi)發(fā)者,是他們有創(chuàng)造力,而不只是依靠Google知識(shí)庫(kù)的幫助。他們知道自己的代碼要解決的問(wèn)題,看得到風(fēng)險(xiǎn),或者說(shuō)至少預(yù)測(cè)得到代碼運(yùn)行時(shí)候的問(wèn)題,能看得到代碼中的潛在漏洞并想好如何改進(jìn)它們。如果發(fā)現(xiàn)知識(shí)方面的盲點(diǎn),他們不單單會(huì)看表面,而是對(duì)工具箱中的所有內(nèi)容進(jìn)行更深入的了解,總之,高級(jí)開(kāi)發(fā)人員的眼中能看到一個(gè)更加深邃的代碼世界。

保持客觀

每個(gè)人是用自己已有的知識(shí)來(lái)看待現(xiàn)有的問(wèn)題,這也是初中級(jí)開(kāi)發(fā)人員的共同點(diǎn),他們更傾向于根據(jù)個(gè)人經(jīng)驗(yàn)而不是代碼本身的問(wèn)題來(lái)解決問(wèn)題,他們的個(gè)人偏好、風(fēng)格、命名慣例和思維方式是他們提供評(píng)估和建議的出發(fā)點(diǎn)。這是成長(zhǎng)過(guò)程的一部分,沒(méi)什么不對(duì)的,但是沒(méi)有絕對(duì)正確的代碼,只有適用于情境和場(chǎng)景合適的代碼。

高級(jí)開(kāi)發(fā)人員能意識(shí)到這一點(diǎn),接受他們的代碼可能不是最好的,永遠(yuǎn)還有改進(jìn)的空間,面對(duì)不同的處理任務(wù)和問(wèn)題時(shí)都能夠保持樂(lè)觀,整理和改進(jìn)出不同的代碼以解決不同的問(wèn)題。同時(shí)他們也是有效的代碼管理員,能指出同行所做架構(gòu)中的弱點(diǎn)和邏輯思維混亂之處,能高瞻遠(yuǎn)矚,不受任何一種編碼或范式的束縛,從突發(fā)事件中看到問(wèn)題,同時(shí)根據(jù)實(shí)際情況做出最優(yōu)選擇。他們著重點(diǎn)在于解決問(wèn)題而不是選擇工具。

追求卓越,優(yōu)秀還是好用?

作為開(kāi)發(fā)人員,寫代碼是本職工作,一些人寫完即止,打卡下班,不會(huì)考慮代碼復(fù)用性和簡(jiǎn)潔性,而高級(jí)開(kāi)發(fā)人員則會(huì)追求完美。

[[274011]]

多數(shù)老板只關(guān)注軟件是否能正常運(yùn)行,專業(yè)的開(kāi)發(fā)人員知道優(yōu)秀的軟件和能用的軟件之間的差別,在寫代碼時(shí)會(huì)考慮到重構(gòu)問(wèn)題,他們更關(guān)注技術(shù)和代碼風(fēng)格等隱性成本,能在項(xiàng)目的準(zhǔn)時(shí)交付和與老板的洽談這兩者之間做平衡。

廣博的知識(shí)面和對(duì)框架和語(yǔ)言的精準(zhǔn)理解不僅使得他們知道如何創(chuàng)建優(yōu)秀軟件和能用軟件,也使他們能夠在必要時(shí)提出創(chuàng)造性的解決方案。

教的能力

“平庸的老師教導(dǎo),一般的老師解釋,優(yōu)秀的老師展示,偉大的老師啟發(fā)。”

—— 威廉亞瑟沃德

真正的高級(jí)開(kāi)發(fā)人員對(duì)工作充滿熱情,樂(lè)于激勵(lì)并幫助經(jīng)驗(yàn)不足的同行。

編程本身就是一種思想,有經(jīng)驗(yàn)的人能夠化繁為簡(jiǎn),根據(jù)實(shí)際需要在不同界面和媒介之間交流,就像任何教師都需要精通一定的領(lǐng)域一樣,雖然“經(jīng)驗(yàn)”能以簡(jiǎn)歷上的項(xiàng)目數(shù)量和在不同公司的任職時(shí)間這些標(biāo)準(zhǔn)來(lái)量化,但會(huì)啟發(fā)的高手屬于那些真正了解編程內(nèi)部藝術(shù)的人。

寫在最后的話

上述特征存在于他們的個(gè)性和知識(shí)的深度中。使他們能比普通程序員更快地探索未知代碼區(qū)域,通常能夠顧及全局并以開(kāi)明的心態(tài)審視代碼。高級(jí)開(kāi)發(fā)者提倡并引導(dǎo)同行養(yǎng)成“整理”和“反思”編碼的習(xí)慣,旨在形成思維的正向反饋,是真正問(wèn)題的解決者和思考者。

這些品質(zhì)都是在平時(shí)開(kāi)發(fā)過(guò)程中思考、積累得到的,誠(chéng)如“哪有什么天賦異稟,誰(shuí)不是在苦中作樂(lè)”這句話所描述的一樣,程序開(kāi)發(fā)是一門藝術(shù)設(shè)計(jì),而不是單純的敲代碼,需要我們?cè)陂_(kāi)發(fā)過(guò)程中多做總結(jié),思考是比單純地復(fù)制粘貼要難的多,但是正如電影《三傻大鬧寶萊塢》中的經(jīng)典臺(tái)詞:“追求卓越,成功自然會(huì)追著你跑”,代碼的編程習(xí)慣、編程風(fēng)格、簡(jiǎn)潔性這些方面都是一名優(yōu)秀的開(kāi)發(fā)人員應(yīng)該考慮的問(wèn)題,在追求卓越的過(guò)程中,這些品質(zhì)都會(huì)積累下來(lái),成為后續(xù)開(kāi)發(fā)的財(cái)富!

相信具備了這些品質(zhì)和自我反饋的能力,你也可以修正自己開(kāi)發(fā)過(guò)程中的bug,在編程過(guò)程中少走彎路。

相關(guān)報(bào)道:

https://medium.com/better-programming/the-marks-of-a-true-senior-developer-d5f3b11c3375

【本文是51CTO專欄機(jī)構(gòu)大數(shù)據(jù)文摘的原創(chuàng)譯文,微信公眾號(hào)“大數(shù)據(jù)文摘( id: BigDataDigest)”】

     大數(shù)據(jù)文摘二維碼

戳這里,看該作者更多好文

責(zé)任編輯:趙寧寧 來(lái)源: 51CTO專欄
相關(guān)推薦

2020-10-13 08:41:58

Java開(kāi)發(fā)框架

2011-07-10 15:18:11

開(kāi)發(fā)

2009-09-10 14:18:03

PHP庫(kù)

2018-05-24 11:58:56

軟件開(kāi)發(fā)軟技能碼農(nóng)

2017-10-11 13:20:56

Linux命令工程師

2023-04-07 16:11:56

前端開(kāi)發(fā)

2022-07-04 08:00:00

Web開(kāi)發(fā)人員編程習(xí)慣程序員

2022-11-28 11:42:08

ReactJS開(kāi)發(fā)Web 應(yīng)用程序

2020-04-17 10:58:12

UI設(shè)計(jì)師按鈕

2021-02-05 12:58:18

開(kāi)發(fā)人員CICD

2019-08-14 15:56:23

2021-04-12 22:24:01

Java開(kāi)發(fā)程序員

2021-11-12 06:03:10

開(kāi)發(fā)人員開(kāi)發(fā)安全意識(shí)

2010-06-30 08:52:25

2019-11-07 09:42:39

JavaScript框架語(yǔ)言

2023-10-26 16:56:24

2020-01-27 16:28:57

開(kāi)發(fā)命令遠(yuǎn)程服務(wù)器

2019-09-30 09:00:00

開(kāi)發(fā)者技能工具

2009-04-07 10:55:16

開(kāi)發(fā)技能職場(chǎng)

2014-02-26 11:18:02

Android開(kāi)發(fā)偷懶高效
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)