无码国产精品dⅴd在线_亚洲成a人片在线观看网_亚洲乱码中文字幕永久在线_男人天堂av中文字幕在线

藍鷗旗下品牌:鷗課學院
全國咨詢電話:13152008057
您的位置: 首頁 > 最新資訊 > 軟件開發(fā)的七條原則

軟件開發(fā)的七條原則

2018-09-28 藍鷗
3771人 瀏覽:

  原則#1:存在的原因

  軟件系統(tǒng)存在的原因:為用戶提供價值。所有的決定都應該考慮到這一點。在指定系統(tǒng)需求之前,在關注系統(tǒng)的各個功能之前,在確定硬件平臺或開發(fā)過程之前,問問自己以下問題:這是否能為系統(tǒng)真正增加價值?如果答案是否定的,那就不要去做。所有其他原則都以這一條為先。

  原則#2:KISS

  軟件設計不是一個偶然的過程。任何設計工作都需要考慮許多因素。所有的設計應該盡可能簡單,但不要過于簡化。

  復雜性是你的敵人。任何傻瓜都能讓事情變得復雜。反之則很難。

  ——Richard Branson

  這有利于擁有更易于理解和易于維護的系統(tǒng)。但并不是說應該以簡單的名義拋棄功能,甚至是內部功能。當然,通常而言,更優(yōu)雅往往意味著更簡單。

  簡單是終極的復雜。

  ——Leonardo Da Vinci

  簡單也并不意味著快速和骯臟。事實上,為了簡化,我們經常需要大量思考和多次迭代工作。收獲是更易于維護且不易出錯的軟件。

  這一直是我的一個座右銘——集中和簡單。簡單或許會比復雜更難;你必須花很多力氣使自己的思維變得簡單、有條理。

  ——Steve Jobs

  原則#3:維護愿景

  明晰的愿景對于軟件項目的成功至關重要。否則,項目最終基本上都將陷入左右搖擺的境地。沒有概念的完整性,系統(tǒng)就很有可能成為不兼容設計的拼湊物——被錯誤的螺絲釘連接在一起。

  概念完整性是系統(tǒng)設計中要考慮的最重要因素。

  ——Fred Brooks

  建立一個干凈的內部結構對構建一個易于理解、可擴展和重組、并且可維護和可測試的系統(tǒng)而言至關重要。

  ——Stroustrup

  只有清晰認識系統(tǒng)架構,才有可能發(fā)現常見的抽象和機制。利用這種通用性最終將使得系統(tǒng)更簡單,因此也會更輕巧、更可靠。

  - Grady Booch

  妥協(xié)軟件系統(tǒng)的架構愿景會削弱并將最終破壞系統(tǒng),甚至是設計得盡善盡美的系統(tǒng)。擁有一個能夠實現愿景和執(zhí)行合規(guī)性的授權架構師有助于確保軟件項目的成功。

  原則#4:生產其他人消費的東西

  很少有工業(yè)級的軟件系統(tǒng)是在真空中構建和使用的。其他人將以某種方式,或者其他依賴于能夠理解系統(tǒng)的方式使用、維護、記錄。因此,始終指定、設計,以及實現了解他人將有助于了解你在做什么。任何軟件開發(fā)產品的受眾都可能很大。

  指定用戶。設計,牢記實施者。關注那些必須維護和擴展系統(tǒng)的代碼。有的人可能需要調試你編寫的代碼,這使得他們成為你的代碼用戶。方便他們工作可以為你的系統(tǒng)增添價值。

  原則#5:面向未來

  壽命較長的系統(tǒng)具有更大的價值。在今天的計算環(huán)境中,當規(guī)格在剎那間發(fā)生變化并且硬件平臺過幾個月就變得過時時,軟件壽命常常用月來衡量而不是用年。然而,真正的工業(yè)級軟件系統(tǒng)必須能堅持更長時間。要做到這一點,系統(tǒng)必須能夠適應這些改變??梢猿晒崿F這些目標的系統(tǒng)都是從一開始就以這種方式而設計的。切勿在設計時自找麻煩??偸菃枴凹偈惯@樣,那會怎么樣”,并通過創(chuàng)建解決一般問題,而非僅僅是具體問題的系統(tǒng)來準備好所有可能的答案。這很可能促使整個系統(tǒng)的重用。

  濫用這個原則是我看到很多開發(fā)者出錯的地方。擁有多年的經驗和其中許多人致力于單個項目的好處之一是你可以了解YouArentGonnaNeedIt的優(yōu)點。作為開發(fā)者,除非我們也是該領域專家,否則我們經常會猜錯系統(tǒng)將如何改變。

  系統(tǒng)確實發(fā)生了變化,但通常會殊途同歸,因而廣義的解決方案就變成了包袱。

  ——Sal Mangano

  原則#6:預先規(guī)劃重用

  重用可節(jié)省時間和精力。實現高水平的重用可以說是開發(fā)軟件系統(tǒng)最難的目標。代碼和設計的重用已被宣稱為使用面向對象技術的主要優(yōu)勢。但是,這項投資的回報并不是自動的。為了利用面向對象編程提供的重用可能性,我們需要預先考慮和規(guī)劃。在系統(tǒng)開發(fā)過程的每個級別都有很多技術可以用來實現重用。詳細設計和代碼級別的重用技術不但眾所周知而且是有文檔的。

  新的文獻正在以軟件模式的形式尋覓設計的重用。然而,這只是戰(zhàn)斗的一部分。與組織中的其他人交流重用的機會至關重要。如何重用你不知道的東西?提前規(guī)劃重用可降低成本并提高可重用組件及其所在系統(tǒng)的價值。

  原則#7:三思而后行!

  這最后一條原則可能是最容易被忽視的。在行動之前形成一條清晰和完整的思路幾乎總能夠產出更好的結果。只有你考慮到了某個問題,你才更有可能解決它。你還可以從中獲得有關如何再次正確做這件事的知識。

  如果你確實考慮到了某件事情,但仍然做錯了,那么這就是你寶貴的經驗。思考還有一個成果是可以學習到當你不知道某個東西,此時該如何研究答案的過程。

  明確的思想進入到系統(tǒng),就會產出價值。應用前六個原則需要深入的思考,當然潛在的回報也是不可估量。

  1. 廣告1
  2. 廣告2
  3. 廣告3
  4. 廣告4