91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

優秀軟件設計的基本元素有哪些

發布時間:2021-10-26 11:39:00 來源:億速云 閱讀:125 作者:iii 欄目:web開發

這篇文章主要介紹“優秀軟件設計的基本元素有哪些”,在日常操作中,相信很多人在優秀軟件設計的基本元素有哪些問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”優秀軟件設計的基本元素有哪些”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

好的設計很簡單

通常,我遇到的代碼具有完美的結構,并具有適當的接口,并采用了適當的接口,并且采用了特定的代碼模式和代碼樣式工具,這些工具不會返回單個錯誤或警告。  但是,我仍然認為這很糟糕。

每次寫東西時,都應該成比例。 許多開發人員只是為了模式而采用模式。  他們幾乎在大喊:"看看我在采用我剛剛讀過的這種模式方面有多強",而不是真正理解他們為什么選擇特定模式。

好的設計通常很簡單。 我的意思是與他們提供的解決方案的大小成正比。 如果您為應用程序提供僅使用一次的簡單功能,那么您是否應該使用各種花哨的東西?  考慮一下您的代碼復雜度是否與您提供的解決方案成比例。 您的功能將成為應用程序的骨干,還是應用程序中擴展或繼承的基礎? 您最好使其結構合理。  這僅僅是解決您的應用程序中的一個小問題的方法嗎? 最好盡可能地簡單。

我們傾向于過于復雜化我們的功能

與我們的應用程序的項目負責人交談時,我們會檢索需求。 在首先提出實現想法之后,我們常常使方法的初始設計過于復雜。  與幾個開發人員坐下來并深入研究實際需要的東西通常是有益的。 您可以通過幾種方法來確保提供更簡單的解決方案。

正確的問題

作為開發人員,我們經常被要求做某事,而我們只是這樣做。  這種按需行為對于初級開發人員而言可能是正常的,但是隨著您的前進,請嘗試提出明智的問題,并確保在估計或設計解決方案之前已回答了這些問題。  當您一遍又一遍地問某些問題時,您還培訓您的產品負責人或管理人員在請求功能之前考慮這些問題。 像這樣的問題:

  • 此功能的最終目標是什么?

  • 誰將使用它?

  • 有沒有更簡單的方法可以實現相同的目標?

  • 它將使應用程序更大,更復雜嗎? 值得嗎?

將解決方案分為多個部分

我始終要做的第一件事是遠離需要在其中實現功能的應用程序。然后考慮一下您可以制作和交付的最小代碼段,這使您更加接近為此功能設置的目標。  對所有這些都執行此操作,重新評估所有步驟是否必要,并分別估計其開發時間。 另外,請嘗試以盡可能獨立的方式開發這些元素。  交換功能,更改或刪除功能越容易,編寫代碼就越容易。

如果某些必要的小功能真的很重要,請挑戰產品負責人

當您將方法劃分為小部分時,與非技術人員進行討論通常會更容易。 這樣就可以與團隊和產品負責人進行討論,并重新評估是否需要所有部分。  由于您已經估算了它們,因此如果功能值得,則可以做出更好的基于價值的決策。

不要忘記估計它增加的復雜程度以及它如何影響維護應用程序的成本。

好的代碼很容易更改

如果代碼易于更改,則維護成本較低,易于理解,擴展,刪除,甚至可以更改!  就像《實用程序員》一書中所寫:"如果事物能夠適應使用它的人,那么它就是經過精心設計的。" 本質上,所有設計原則都是使代碼更易于更改的一種方式。  解耦,單責任原則,干。 這些都是使您的代碼更好,更容易更改的原則。

為什么我討厭代碼中的注釋

當您需要注釋代碼時,它基本上很爛。 當您需要解釋為什么要執行某項操作時,該代碼并不是不言自明的,因此無論如何都應該對其進行重構。  代碼注釋清楚地表明了錯誤代碼,并且可以采取許多簡單的步驟使代碼更具可讀性。

注釋不能彌補混亂的代碼。 當代碼令人困惑或做出危險的假設時,我們傾向于寫一些額外的注釋。

唯一有意義的注釋是:

  • 法律評論

  • 目的說明

  • 提高可讀性

  • 警告后果

  • 待辦事項

如何編寫更好的代碼

有許多簡單的原則可以幫助您編寫更輕松的代碼,而您的同事會喜歡并喜歡與他們一起工作。  對于其中的每一個,都可以編寫一個完全獨立的文章,因此,這里有一個簡單的清單,可以開始您邁向更好的代碼。

類應該很小。 多么小? 盡可能小。 一個類應該只承擔一個責任,并且其名稱應從該責任派生。  如果您無法想到一個具有邏輯性和描述性的類名,則它可能太大。

方法/功能

像類一樣,它們應該很小,只做一件事,并具有解釋性和簡單的名稱。 注意標識。 許多縮進通常是一種凌亂方法的跡象。  對于Foreach和switch語句,請確保將實際執行的代碼編寫在單獨的函數中,這使其更像是該方法針對不同實現實際執行的操作的索引。

有意義的名字

類,函數和變量都應具有有意義的名稱。 例如,切勿使用$ a = b;。 讓您的代碼成為功能和意圖的文檔。

格式和代碼樣式

確保您的整個應用程序和整個團隊使用完全相同的代碼樣式,并且對此非常嚴格。 每種IDE和語言都有用于此目的的工具。 一致的空格或換行符可以起到很大作用。  如果不一致,則會使您發瘋。 在這方面非常嚴格將立即提高應用程序的整潔度,尤其是在這方面不是很嚴格的語言中。

到此,關于“優秀軟件設計的基本元素有哪些”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

遂平县| 平利县| 宁海县| 古交市| 阳谷县| 祁阳县| 辽中县| 桦南县| 阿荣旗| 青阳县| 若尔盖县| 宜阳县| 岳池县| 福安市| 阳东县| 云阳县| 庆云县| 恭城| 许昌县| 鄂伦春自治旗| 沾益县| 大荔县| 双柏县| 六安市| 大城县| 周口市| 德庆县| 同仁县| 鄄城县| 探索| 永平县| 合水县| 黄浦区| 余干县| 湟源县| 塔河县| 门源| 阿拉善右旗| 南京市| 囊谦县| 广宗县|