偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

工作六年后,對軟件開發(fā)的一些新觀點(diǎn)

開發(fā) 前端
糾結(jié)于代碼風(fēng)格,lint規(guī)則和其他瑣事的人都是瘋子,代碼覆蓋率和代碼質(zhì)量之間沒有關(guān)系,單體倉庫在大多數(shù)情況下更好。

一個(gè)人的智力是否屬于上乘,要看腦子里能否同時(shí)容納兩種相反的思想而無礙其處世行事;今天 pshu 翻譯了一位有 6 年工作經(jīng)驗(yàn)的軟件工程師的觀點(diǎn)。希望這些立場鮮明的觀點(diǎn)可以成為你提高大腦容量的素材。

原文地址 https://chriskiehl.com/article/thoughts-after-6-years 《Software development topics I've changed my mind on after 6 years in the industry》

[[395893]]

以前懷疑但現(xiàn)在認(rèn)同的觀點(diǎn)

當(dāng)你需要和不同經(jīng)驗(yàn)的開發(fā)人員一起合作時(shí),使用強(qiáng)類型語言更適合一些(譯者注:如Typescript)

站立會議(晨會的一種形式)對幫助新人很有用

回顧會(scrum 開發(fā)模式中用來總結(jié)前一次迭代中得失的會議)還是有其存在意義的,因?yàn)樗軒兔ξ覀兗m正開發(fā)過程中的錯(cuò)誤;它并不是敏捷開發(fā)中 scrum master 想出來浪費(fèi)時(shí)間多余的會議。

軟件架構(gòu)很重要。一個(gè)好的抽象配上一個(gè)糟糕的實(shí)現(xiàn)不會對代碼造成多嚴(yán)重的影響;但是一個(gè)錯(cuò)誤的抽象和分層遺漏,就導(dǎo)致代碼很容易變爛。

Java 并不垃圾。

投機(jī)取巧、奇技淫巧的代碼不是好代碼;代碼的可讀性最重要。

不要迷信編程范式,任何編程范式中都可能寫出爛代碼。

所謂的“最佳實(shí)踐”都是有具體場景的,并不是萬金油。如果盲目地追求“最佳實(shí)踐”,那很有可能成為最佳笨蛋。

如果沒有必要,合格的工程師是不會主動(dòng)去設(shè)計(jì)一個(gè)可擴(kuò)展的系統(tǒng)。

代碼的靜態(tài)分析很有用(譯者注:比如 lint,但是糾結(jié)具體的規(guī)則,參見后面“始終認(rèn)同的觀點(diǎn)”的第一條)

DRY(Don’t Repeat yourself )只是用來規(guī)避一類特殊的問題,而不是一個(gè)目標(biāo)。

一般情況下,關(guān)系型數(shù)據(jù)庫(RDBMS)比非關(guān)系型數(shù)據(jù)庫(NoSQL)好。

函數(shù)式編程只是一個(gè)工具,不是靈丹妙藥

新學(xué)習(xí)到的觀點(diǎn)

編程時(shí)遵循的原則應(yīng)該按照以下順序:YAGNI, SOLID, DRY。

YAGNI:You aren't gonna need it, 不要去寫你目前不需要的功能,大部分預(yù)測未來是無效的;

SOLID:面向?qū)ο笤O(shè)計(jì)中的 5 個(gè)原則:

  • Single-responsibility principle單一職責(zé)原則
  • Open–closed principle 對擴(kuò)展開放對修改掉封閉原則,也簡稱開閉原則
  • Liskov substitution principle 李氏替換原則
  • Interface segregation principle 接口隔離原則
  • Dependency inversion principle 依賴翻轉(zhuǎn)原則

DRY:Don't repeat yourself, 只做一次原則

如果你這三個(gè)縮寫都懂,那么可以嘗試用自己的想法和這個(gè)觀點(diǎn)PK下,如果這些名詞都不懂,最好空杯心態(tài)先接受學(xué)習(xí)下。

紙和筆仍舊是最好的編程工具,但他們?nèi)晕幢淮罅渴褂?/strong>

在純粹主義和實(shí)用主義之間做一個(gè)折中,通常都會是個(gè)好主意

增加更多的技術(shù)棧并不是一個(gè)好主意

直接和用戶溝通往往能花更少的時(shí)間并且更加準(zhǔn)確地了解問題。

“可擴(kuò)展性”這個(gè)詞在程序員心中是種神秘的迷信;只要提了這個(gè)詞就會驅(qū)使他們進(jìn)入癲狂的瘋狂狀態(tài);做再殘酷的事情好像都是合理的。

盡管戴著“工程師”這個(gè)高帽,但是他們大部分工程師決策都是盲目地使用現(xiàn)有的技術(shù)框架或者編程模式,不做任何技術(shù)分析和調(diào)研。

90%甚至 93%的項(xiàng)目經(jīng)理在項(xiàng)目中其實(shí)可有可無;即使明天他們突然消失了,也不會對項(xiàng)目有任何負(fù)面影響,甚至可能還能提高效率。

在進(jìn)行了 100 多場面試之后,我發(fā)現(xiàn)面試是完全沒有用的;但我也不知道如何更好地面試。

始終認(rèn)同的觀點(diǎn)

糾結(jié)于代碼風(fēng)格,lint規(guī)則和其他瑣事的人都是瘋子

代碼覆蓋率和代碼質(zhì)量之間沒有關(guān)系

單體倉庫在大多數(shù)情況下更好。

TDD純粹主義者最菜。他們脆弱的小腦袋里面容不下其他現(xiàn)存的工作方式。

在工作10年后,我們再看看這些看法有什么改變。

翻譯完。

責(zé)任編輯:未麗燕 來源: 碼農(nóng)英語課堂
相關(guān)推薦

2021-03-27 00:00:01

軟件開發(fā)語言

2012-11-06 10:40:24

軟件開發(fā)傳統(tǒng)開發(fā)代碼

2022-12-27 09:56:34

架構(gòu)系統(tǒng)

2013-04-07 10:40:55

前端框架前端

2024-08-30 10:02:06

事務(wù)HTTP編碼

2009-02-23 11:22:29

系統(tǒng)架構(gòu)師軟件開發(fā)經(jīng)驗(yàn)

2021-06-17 09:20:51

華為工作三十而立

2016-12-19 13:35:03

Oracle非付費(fèi)用戶

2021-12-15 10:05:25

軟件開發(fā) 技術(shù)

2012-05-02 10:08:19

軟件開發(fā)開發(fā)

2015-10-16 15:38:38

程序員建議

2009-03-04 09:59:04

職場心情痛苦

2015-09-24 14:56:17

變革平臺開發(fā)云開發(fā)

2009-03-30 16:01:54

敏捷開發(fā)需求分析重構(gòu)

2017-06-29 09:17:43

建行信息技術(shù)互聯(lián)網(wǎng)

2022-07-19 16:31:29

軟件開發(fā)Kubernetes容器

2012-12-18 09:24:18

軟件開發(fā)

2013-03-08 10:02:17

開發(fā)人員程序員

2012-08-27 13:42:07

軟件測試

2025-04-18 09:31:19

點(diǎn)贊
收藏

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