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

淺析.NET設(shè)計(jì)架構(gòu)十條箴言

開發(fā) 后端
本文將介紹.NET設(shè)計(jì)架構(gòu)方面的知識(shí),希望這十條箴言能幫助大家更好的做好.NET程序設(shè)計(jì)。

  這是看《Microsoft .NET Architecting Applications for the Enterprise 》書中摘記下來的,有必要經(jīng)常提醒自己。

  箴言一——凡事無絕對

  凡事無絕對。作為架構(gòu)師,你永遠(yuǎn)不會(huì)對任何事情有百分百的把握,你永遠(yuǎn)無法面面俱到。不過在這個(gè)位置上,你就必須評估所有的可選方案,并作出有足夠預(yù)見性的正確決策。你需要為自己爭取一些時(shí)間,以便慢慢思考,因此首先說“凡事無絕對”,然后解釋為什么是這樣,變數(shù)有哪些。若你還不確定有些變數(shù),那么可以選用這個(gè)通用的回答——“這取決于上下文”。

  箴言2——需求是超越一切存在的

  架構(gòu)僅僅是軟件項(xiàng)目中一個(gè)自然的鏈接部分??蛻魧⒄f出他們需要什么,若是客戶吧清楚自己的需求,那么會(huì)有人引導(dǎo)直至得到明確的答案,這是分析師的職責(zé)。項(xiàng)目經(jīng)理將為這個(gè)已經(jīng)正式確定的項(xiàng)目安排基礎(chǔ)設(shè)施。架構(gòu)師會(huì)得到所有的需求,并為開發(fā)者提供設(shè)計(jì)。開發(fā)者將按照架構(gòu)的意圖開發(fā)。數(shù)據(jù)庫管理員也會(huì)盡力讓數(shù)據(jù)庫能良好支持應(yīng)用程序。你會(huì)認(rèn)識(shí)到,客戶位于這個(gè)鏈條的頂端,且客戶的需求才是最重要的部分,客戶所需要的東西叫做需求。當(dāng)然,沒有幾個(gè)客戶知道他自己真正需要的是什么,因此需求會(huì)不停地變化。

  箴言3——根據(jù)接口編程

  雖然我們是依靠最終實(shí)現(xiàn)代碼來完成需求的,不過仍應(yīng)該盡可能地使用接口。請牢記“沒有接口的話就不要開始實(shí)現(xiàn)”這句話。仔細(xì)分析,你總會(huì)找到可以提取的接口。

  箴言4——保持簡單,但不過與簡單

  你應(yīng)該聽說過KISS(Keep It Simple,Stupid)原則,但這只是我們修改后的觀點(diǎn)。簡潔明了通常就意味著優(yōu)秀。以簡單為目標(biāo),不過要留有自己的底線。若是低于這個(gè)底線,那么你的解決方案將變得過于簡單,這并不是一件好事。

  箴言5——繼承是為了多態(tài),不是重用

  面向?qū)ο缶幊蹋∣OP)讓我們僅編寫一個(gè)類,然后不停地重用并根據(jù)需要擴(kuò)展,這是依靠繼承實(shí)現(xiàn)的。不過這就是類重用的全部嗎?“重用”這個(gè)概念要比你第一眼看上去更加微妙。多態(tài)是面向?qū)ο缶幊痰暮诵墓δ?,意味著你可以互換地使用兩個(gè)繼承類。同時(shí),有些人給出了總結(jié):“蟲咬是繼承的一個(gè)附帶功能。”不過重用不應(yīng)該成為你的根本目標(biāo),換句話說,不要僅為了重用而使用繼承。最好是編寫一個(gè)新的類來滿足需iqu,而不是繼承某個(gè)原本不是完成此工作的現(xiàn)有類。

  箴言6——不要再非數(shù)據(jù)訪問層中使用SQL

  牢記這一條:分離關(guān)注點(diǎn)。將數(shù)據(jù)訪問代碼和細(xì)節(jié)(例如,連接字符串、命令和數(shù)據(jù)表名)先放在一邊。或早或晚你總會(huì)開始處理,不過不是在設(shè)計(jì)業(yè)務(wù)邏輯層和表現(xiàn)層時(shí)。如果可能請將持久化工作交給對象/關(guān)系映射(Object/Relational Mapper)等專門的工具處理。

  箴言7——首先考慮可維護(hù)性

  若你僅能為軟件選擇一個(gè)特性,那么應(yīng)該如何選擇呢?選擇可伸縮性、安全性、性能,可測試性還是可用性?在我們看來,上述這些都不是最重要的,最重要的是可維護(hù)性。有了可維護(hù)性,上述所有特性都可以在日后實(shí)現(xiàn)。

  箴言8——所有的用戶輸入都是罪惡的

  你應(yīng)該早已聽過這種說法。“紙包不知火”,若是有某種途徑讓用戶可以入侵,那么遲早會(huì)被用戶發(fā)現(xiàn)。這似乎是墨菲法則,確實(shí)如此。

  箴言9——事后優(yōu)化

  Donald Knuth曾說過,過早地優(yōu)化時(shí)所有軟件罪惡的根源。我們講該說法更進(jìn)一步——不要優(yōu)化系統(tǒng),而是讓其設(shè)計(jì)盡可能地面對改進(jìn)和擴(kuò)展,僅在系統(tǒng)完成之后,再關(guān)注純粹的優(yōu)化。

  箴言10——在設(shè)計(jì)時(shí)考慮安全性和可測試性

  若你很在乎某個(gè)系統(tǒng)特性,那么在設(shè)計(jì)開始前就應(yīng)該考慮到它。安全性和可測試性也是如此。甚至一個(gè)國際標(biāo)準(zhǔn)化組織(ISO)的規(guī)范也明確地闡述了這一點(diǎn)。

原文鏈接:http://www.cnblogs.com/xiaopan2010/archive/2011/07/27/2117825.html

【編輯推薦】

  1. 新手軟件項(xiàng)目經(jīng)理該如何入門
  2. 項(xiàng)目經(jīng)理的力量應(yīng)該從哪里來?
  3. 當(dāng)你從程序員變?yōu)轫?xiàng)目經(jīng)理
  4. 軟件測試項(xiàng)目為什么會(huì)失敗
  5. 項(xiàng)目管理之CVS與SVN日常使用總結(jié)
責(zé)任編輯:彭凡 來源: 博客園
相關(guān)推薦

2022-09-09 16:27:09

微服務(wù)架構(gòu)數(shù)據(jù)存儲(chǔ)

2012-08-02 09:14:13

編程戒律

2025-05-21 00:10:00

2013-01-08 09:25:36

移動(dòng)應(yīng)用產(chǎn)品設(shè)計(jì)

2012-05-15 01:38:18

編程編程技巧編程觀點(diǎn)

2025-03-19 08:21:15

2012-09-28 09:12:39

移動(dòng)Web

2025-05-15 20:55:38

2012-03-06 16:01:04

項(xiàng)目管理

2012-06-07 10:45:12

軟件架構(gòu)設(shè)計(jì)原則

2021-04-21 17:25:16

MySQL關(guān)系型數(shù)據(jù)庫

2011-08-02 21:16:56

查詢SQL性能優(yōu)化

2021-03-18 09:00:00

微服務(wù)架構(gòu)工具

2011-04-14 11:43:47

2025-07-01 00:45:00

2024-08-19 09:04:50

2024-02-19 14:50:42

編碼原則軟件開發(fā)

2009-01-15 09:57:00

2025-07-21 09:00:00

2010-08-02 10:23:44

服務(wù)器虛擬化
點(diǎn)贊
收藏

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