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

軟件開(kāi)發(fā)中的兩種態(tài)度:約束和信賴

開(kāi)發(fā) 項(xiàng)目管理
一種態(tài)度認(rèn)為,應(yīng)該對(duì)程序員在軟件開(kāi)發(fā)中的行為進(jìn)行約束(DirectingAttitude)。持這種態(tài)度的人認(rèn)為大部分的程序員水平都不高(謠傳說(shuō)有50%的人低于平均水平),所以應(yīng)該對(duì)他們所做的事情進(jìn)行管教約束。

Martin Fowler

一種態(tài)度認(rèn)為,應(yīng)該對(duì)程序員在軟件開(kāi)發(fā)中的行為進(jìn)行約束(DirectingAttitude)。持這種態(tài)度的人認(rèn)為大部分的程序員水平都不高(謠傳說(shuō)有50%的人低于平均水平),所以應(yīng)該對(duì)他們所做的事情進(jìn)行管教約束。要防止他們做一些可能會(huì)給他們正在開(kāi)發(fā)的系統(tǒng)帶來(lái)危害的事情。通常,這種態(tài)度體現(xiàn)在一些系統(tǒng)設(shè)計(jì)和工具中時(shí),你會(huì)發(fā)現(xiàn)它們會(huì)試圖阻止程序員去做某些事情,限制程序員的一些做法,以此避免他們陷入過(guò)于復(fù)雜的境況。

另一種態(tài)度認(rèn)為程序員都是可以信賴的專業(yè)人員,應(yīng)該給他們做自己任何想做的事情的自由。秉持這種態(tài)度的軟件設(shè)計(jì)以好用易用為目標(biāo),但前提假設(shè)是程序員必須知道自己在做什么。所以,遵循這種態(tài)度的軟件設(shè)計(jì)里并不會(huì)特意阻止程序員錯(cuò)誤的使用它們。而你可以不正確的使用它們,但因?yàn)檫@種態(tài)度認(rèn)為你是知道如何正確的使用它,所以,如果你沒(méi)有按正確的方式使用,后果自負(fù)。

軟件開(kāi)發(fā)中的很多爭(zhēng)論的挑起都是因?yàn)橛^點(diǎn)方要么持約束態(tài)度,要么持縱容態(tài)度。這種態(tài)度上的差異影響到了對(duì)編程語(yǔ)言、設(shè)計(jì)方案、開(kāi)發(fā)工具、開(kāi)發(fā)過(guò)程等很多方面的選擇。

下面是這兩種對(duì)立態(tài)度的一些例子:

  • 前不久有一場(chǎng)討論,是由Joel Spolsky的一篇關(guān)于異常(Exceptions)的博客引起的。Joel Spolsky不喜歡異常,因?yàn)樗苋菀滓鹫`用,導(dǎo)致代碼混亂不堪(約束態(tài)度)。而B(niǎo)ill Caputo指出,異常,如果用的好,可以讓你的編程更簡(jiǎn)單方便(縱容態(tài)度)。
  • 一些關(guān)于靜態(tài)/動(dòng)態(tài)類型的爭(zhēng)論也體現(xiàn)了這兩種態(tài)度的差異。喜歡靜態(tài)類型的人會(huì)說(shuō)靜態(tài)類型能防止你犯某些錯(cuò)誤(約束態(tài)度)。而動(dòng)態(tài)類型支持者提出靜態(tài)類型限制了很多有用的語(yǔ)言功能(縱容態(tài)度)。
  • 敏捷開(kāi)發(fā)實(shí)踐指導(dǎo)是面向人的(縱容態(tài)度),而計(jì)劃驅(qū)動(dòng)的開(kāi)發(fā)方法是在確保即使一個(gè)很爛的開(kāi)發(fā)團(tuán)隊(duì)也能完成工作(約束態(tài)度)。

這些態(tài)度未必是持久不變的。在某些情況下人們通常會(huì)持約束態(tài)度,而另外一些情況會(huì)持縱容態(tài)度。但我想是有一個(gè)底層的因素在起作用,通常是個(gè)人性格決定的,是個(gè)人性格在這些關(guān)于應(yīng)該如何開(kāi)發(fā)軟件的討論表象下發(fā)揮著作用。(我是完全屬于縱容類的,也許你沒(méi)看出來(lái)。)

也許你會(huì)認(rèn)為對(duì)一個(gè)程序員的行為的任何限制都反映了一種約束態(tài)度,可事情并不是這么簡(jiǎn)單。比如說(shuō)對(duì)內(nèi)存的管理。也許你會(huì)認(rèn)為這是一種約束的表現(xiàn):不能相信程序員有能力正確的對(duì)內(nèi)存進(jìn)行管理,所以,剝奪他們分配內(nèi)存的權(quán)利。但我卻把內(nèi)存上的這種管理視為一種縱容策略——它拿走了我一些不想為之操心的權(quán)利,反而我可以專注于那些我很關(guān)心的事情。Steve通過(guò)將“問(wèn)題”和“困難”進(jìn)行比較,很好的支持了我的這種觀點(diǎn)。

英文原文:SoftwareDevelopmentAttitude

譯文鏈接:http://www.vaikan.com/softwaredevelopmentattitude/

責(zé)任編輯:林師授 來(lái)源: 外刊IT評(píng)論 編譯
相關(guān)推薦

2020-07-23 07:22:18

開(kāi)發(fā)編程技術(shù)

2015-03-02 09:35:07

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

2020-08-21 07:57:13

軟件開(kāi)發(fā)程序員

2011-06-13 10:28:45

JAVA

2011-06-22 14:14:27

pageEncodincontentType

2012-12-24 13:30:34

iOS

2009-07-06 17:46:41

JSP網(wǎng)站

2010-08-03 13:27:04

FlexBuilder

2009-06-12 11:35:28

模式框架軟件設(shè)計(jì)

2023-02-09 16:48:12

軟件開(kāi)發(fā)測(cè)試結(jié)對(duì)測(cè)試

2021-02-24 13:51:45

BIMAI建筑技術(shù)

2014-01-07 14:29:14

HadoopYARN

2011-08-08 14:13:47

iPhone XML NSXMLParse

2022-02-21 23:12:21

軟件開(kāi)發(fā)網(wǎng)絡(luò)安全互聯(lián)網(wǎng)

2024-04-02 15:04:44

開(kāi)發(fā)人工智能代碼

2023-06-09 19:01:03

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

2011-08-11 09:56:50

模式

2009-07-30 15:09:44

asp.net中Bin

2010-04-01 14:55:04

Oracle約束

2020-02-21 17:33:17

SparkKafka數(shù)據(jù)
點(diǎn)贊
收藏

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