18video性欧美19sex,欧美高清videosddfsexhd,性少妇videosexfreexxx片中国,激情五月激情综合五月看花,亚洲人成网77777色在线播放

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

幾種軟件架構(gòu)設(shè)計(jì)的思維方式

如意 ? 來(lái)源:軟件工程之思 ? 作者:軟件工程之思 ? 2021-03-08 15:30 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

架構(gòu)設(shè)計(jì)是門(mén)藝術(shù)。

一個(gè)優(yōu)秀的程序員要想成為一名優(yōu)秀的架構(gòu)設(shè)計(jì)師,就改變編程的思維,學(xué)會(huì)使用架構(gòu)設(shè)計(jì)的思維方式。

架構(gòu)設(shè)計(jì)的思維方式有以下幾種:

1. 分而治之的思維方式

分而治之,是把一件籠統(tǒng)模糊的事項(xiàng)變得清晰,把復(fù)雜的事項(xiàng)變得簡(jiǎn)單的思維方式。而這正是我們進(jìn)行架構(gòu)設(shè)計(jì)首要達(dá)成的目標(biāo)。

架構(gòu)設(shè)計(jì)師必須要學(xué)會(huì)架構(gòu)分解,將軟件的功能和非功能需求在架構(gòu)的多個(gè)層面進(jìn)行分解。

架構(gòu)分解的時(shí)機(jī)要恰當(dāng),不要過(guò)早分解、也不要過(guò)度分解,通常的分解時(shí)機(jī)就是架構(gòu)構(gòu)造和演變時(shí)。

架構(gòu)分解應(yīng)當(dāng)遵循以下原則:

高內(nèi)聚、低耦合。

層次性。分解的順序一般是系統(tǒng)→子系統(tǒng)→模塊→組件→類(lèi)。

正交原則。分解出的架構(gòu)元素符合正交原則。

抽象原則。分解出的架構(gòu)元素應(yīng)當(dāng)是架構(gòu)設(shè)計(jì)師抽象的結(jié)果。

穩(wěn)定性原則。應(yīng)當(dāng)將穩(wěn)定架構(gòu)元素和不穩(wěn)定的架構(gòu)元素獨(dú)立。

復(fù)用性原則。架構(gòu)設(shè)計(jì)應(yīng)當(dāng)和軟件一樣,要考慮復(fù)用和可復(fù)用的設(shè)計(jì)。

2. 聚而合之的思維方式

分而治之的目的是降低難度,但軟件的設(shè)計(jì)和實(shí)現(xiàn)最終還是要將分解的各個(gè)元素組合在一起。所以,不能為了分解而分解,在分解的過(guò)程中也要考慮將來(lái)的集成。畢竟如果分解后的內(nèi)容無(wú)法集成在一起,分解得再詳細(xì),再清晰也沒(méi)有任何意義。

3. 動(dòng)靜分離的思維方式

動(dòng)靜分離的思維方式要求將系統(tǒng)中的靜態(tài)資源與動(dòng)態(tài)資源分離,同時(shí)又要注意二者結(jié)合的架構(gòu)設(shè)計(jì)。因?yàn)閯?dòng)態(tài)的流程和用例無(wú)法離開(kāi)靜態(tài)的數(shù)據(jù)和類(lèi)就能自行完成的。

4. 復(fù)用的思維方式

復(fù)用是最佳的軟件工程實(shí)踐,沒(méi)有之一。復(fù)用可以給我們帶來(lái)以下好處:

較高的生產(chǎn)率。

較高的系統(tǒng)質(zhì)量。

改善系統(tǒng)的可維護(hù)性。

所以,我們?cè)谶M(jìn)行架構(gòu)設(shè)計(jì)時(shí)也需要使用復(fù)用思維,將各個(gè)模塊需要用到的共性功能抽取為可復(fù)用的共性組件。

我們可以將復(fù)用分為常規(guī)復(fù)用和系統(tǒng)層復(fù)用。

其中常規(guī)復(fù)用又可分為代碼復(fù)用、算法復(fù)用、數(shù)據(jù)結(jié)構(gòu)的復(fù)用;系統(tǒng)層復(fù)用又可分為設(shè)計(jì)復(fù)用、分析復(fù)用。

5. 分層的思維方式

分層是將各架構(gòu)元素通過(guò)分層重新構(gòu)建的過(guò)程,各層之間要保持獨(dú)立設(shè)計(jì)和松耦合。

分層的思維方式可以使軟件架構(gòu)具有如下優(yōu)點(diǎn):

開(kāi)發(fā)人員可以只關(guān)注某一層。

可以很容易地用新的實(shí)現(xiàn)來(lái)替換原有層的實(shí)現(xiàn)。

可以降低層與層之間的依賴(lài)。

有利于標(biāo)準(zhǔn)化。

有利于各層邏輯的復(fù)用。

6. 模式的思維方式

架構(gòu)模式是一套成熟的、通用的、可重用的解決方案,在進(jìn)行架構(gòu)設(shè)計(jì)時(shí),架構(gòu)設(shè)計(jì)師要能夠根據(jù)業(yè)務(wù)需求來(lái)挑選最適合的架構(gòu)模式。

架構(gòu)模式一般有分層模式、客戶(hù)端-服務(wù)器模式、主從設(shè)備模式、管道-過(guò)濾器模式、代理模式、P2P模式、事件總線模式、MVC模式、黑板模式和解釋器模式等。

7. 抽象的思維方式

抽象包括兩個(gè)層面的內(nèi)容:一個(gè)層面是將各種類(lèi)似場(chǎng)景的實(shí)現(xiàn)歸納成一種規(guī)則或方法出來(lái)供以后的設(shè)計(jì)用;另一個(gè)層面是將非類(lèi)似場(chǎng)景中的共性?xún)?nèi)容總結(jié)出來(lái),進(jìn)一步抽象為類(lèi)似的東西。

8. 結(jié)構(gòu)化的思維方式

結(jié)構(gòu)化是一種注重結(jié)構(gòu)完整性的思維方式,它強(qiáng)調(diào)在分析問(wèn)題的過(guò)程中,要考慮整體性,不要馬上陷入細(xì)節(jié)。結(jié)構(gòu)化思維的核心在于對(duì)問(wèn)題進(jìn)行正確界定的基礎(chǔ)上(以終為始),對(duì)問(wèn)題的構(gòu)成要素進(jìn)行合理分類(lèi),并對(duì)其中的重點(diǎn)環(huán)節(jié)進(jìn)行分析(要事第一)。

結(jié)構(gòu)化應(yīng)遵循以下原則:

以終為始。

知道設(shè)計(jì)的目標(biāo),根據(jù)目標(biāo)倒推需要完成的工作和任務(wù)。

不要先入為主,避免陷入細(xì)節(jié)。

各架構(gòu)元素相互獨(dú)立。

各架構(gòu)元素?zé)o遺漏。

迭代的思維方式

沒(méi)有最好,只有更好。架構(gòu)設(shè)計(jì)也要隨著業(yè)務(wù)需求的變化不斷迭代和演化。

這正是:

架構(gòu)設(shè)計(jì)不簡(jiǎn)單,思維方式數(shù)半天

學(xué)習(xí)前人獲經(jīng)驗(yàn),優(yōu)秀架構(gòu)不再難
責(zé)編AJX

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 軟件
    +關(guān)注

    關(guān)注

    69

    文章

    5256

    瀏覽量

    90490
  • 架構(gòu)
    +關(guān)注

    關(guān)注

    1

    文章

    532

    瀏覽量

    26457
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    軟件架構(gòu)設(shè)計(jì)教程

    軟件架構(gòu)設(shè)計(jì)教程
    發(fā)表于 09-26 15:27

    【汽車(chē)電氣架構(gòu)設(shè)計(jì)軟件

    因工作需要,求整車(chē)電氣架構(gòu)設(shè)計(jì)軟件——PREEvision(盜版),價(jià)格可議,WetChat/***,非誠(chéng)勿擾
    發(fā)表于 04-18 14:20

    ARM總共有幾種架構(gòu)?ARM各架構(gòu)之間的區(qū)別在哪?

    ARM總共有幾種架構(gòu)?ARM各架構(gòu)之間的區(qū)別在哪?基于各ARM架構(gòu)設(shè)計(jì)的內(nèi)核型號(hào)有哪些?分別有哪些應(yīng)用領(lǐng)域?
    發(fā)表于 07-01 09:10

    STM32軟件架構(gòu)設(shè)計(jì)的意義

    STM32軟件架構(gòu)1、架構(gòu)設(shè)計(jì)的意義(1)應(yīng)用代碼邏輯清晰,且避免代碼冗余;(2)代碼通用性,方便軟件高速、有效的移植;(3)各功能獨(dú)立,低耦合高內(nèi)聚;2、總體
    發(fā)表于 08-04 07:23

    機(jī)甲大師機(jī)器人控制(三):軟件架構(gòu)設(shè)計(jì) 精選資料推薦

    本文是機(jī)甲大師機(jī)器人控制的系列博客之一。在功能分析的基礎(chǔ)上,本文設(shè)計(jì)軟件架構(gòu)。文章目錄1 開(kāi)發(fā)階段2 軟件架構(gòu)設(shè)計(jì)2.1 頂層子系統(tǒng)2.1.1 子系統(tǒng)模型2.1.2 輸入接口2.2
    發(fā)表于 08-18 07:01

    嵌入式軟件架構(gòu)設(shè)計(jì)常見(jiàn)的誤解

    1.常見(jiàn)的誤解1.1小型系統(tǒng)不需要架構(gòu)設(shè)計(jì) 架構(gòu)應(yīng)當(dāng)滿足當(dāng)前需求并適當(dāng)?shù)目紤]重用和變更1.2 敏捷開(kāi)發(fā)不需要框架 極限編程, 敏捷開(kāi)發(fā)的出現(xiàn)使一些人誤以為軟件開(kāi)發(fā)無(wú)需再做架構(gòu)了。 這是
    發(fā)表于 10-27 09:22

    為何要進(jìn)行嵌入式軟件架構(gòu)設(shè)計(jì)?如何設(shè)計(jì)?

    為何要進(jìn)行嵌入式軟件架構(gòu)設(shè)計(jì)?如何進(jìn)行嵌入式軟件架構(gòu)設(shè)計(jì)?
    發(fā)表于 11-01 06:31

    機(jī)甲大師機(jī)器人的軟件架構(gòu)設(shè)計(jì)如何實(shí)現(xiàn)?

    機(jī)甲大師機(jī)器人的軟件架構(gòu)設(shè)計(jì)如何實(shí)現(xiàn)?
    發(fā)表于 11-22 07:55

    嵌入式軟件架構(gòu)設(shè)計(jì)資料分享

    作為程序員,我覺(jué)得如果要走的更遠(yuǎn)必須要成為工程師,畢竟年齡和資歷都擺在那里了。所以就讓我這個(gè)老程序員淺談一下嵌入式軟件架構(gòu)設(shè)計(jì)。我參考的也是一篇博文。原圖如下![在這里插入圖片描述](?x-oss-process=image/watermark,type_ZmFuZ3po
    發(fā)表于 12-24 07:09

    使用Simulink實(shí)現(xiàn)軟件架構(gòu)設(shè)計(jì)

      本文參考ISO26262的要求,同時(shí)考慮AUTOSAR代碼生成的兼容性,給出使用Simulink實(shí)現(xiàn)軟件架構(gòu)設(shè)計(jì)的一些建議。
    發(fā)表于 09-19 14:40 ?38次下載
    使用Simulink實(shí)現(xiàn)<b class='flag-5'>軟件</b><b class='flag-5'>架構(gòu)設(shè)</b>計(jì)

    如何升級(jí)架構(gòu)設(shè)計(jì)思維

    孫玄,江湖人稱(chēng)“玄姐”,前58集團(tuán)技術(shù)委員會(huì)主席,前轉(zhuǎn)轉(zhuǎn)二手交易平臺(tái)首席架構(gòu)師。今天想跟你聊點(diǎn)兒企業(yè)里那些年薪百萬(wàn)的架構(gòu)師,他們的架構(gòu)設(shè)計(jì)思維是如何升級(jí)的。 話不多說(shuō),咱們直接來(lái)聊點(diǎn)兒
    的頭像 發(fā)表于 01-11 10:39 ?2434次閱讀

    SWE.2的軟件架構(gòu)設(shè)計(jì)

    過(guò)程ID:SWE.2 過(guò)程名稱(chēng):軟件架構(gòu)設(shè)計(jì) 過(guò)程目的:軟件架構(gòu)設(shè)計(jì)過(guò)程目的是建立一個(gè)架構(gòu)設(shè)計(jì),識(shí)別哪些
    的頭像 發(fā)表于 01-11 10:36 ?3259次閱讀

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

    STM32軟件架構(gòu)1、架構(gòu)設(shè)計(jì)的意義(1)應(yīng)用代碼邏輯清晰,且避免代碼冗余;(2)代碼通用性,方便軟件高速、有效的移植;(3)各功能獨(dú)立,低耦合高內(nèi)聚;2、總體
    發(fā)表于 11-06 09:05 ?36次下載
    STM32<b class='flag-5'>軟件</b><b class='flag-5'>架構(gòu)設(shè)</b>計(jì)

    架構(gòu)與微架構(gòu)設(shè)計(jì)

    下面將從芯片的架構(gòu)設(shè)計(jì)、微架構(gòu)設(shè)計(jì)、使用設(shè)計(jì)文檔、設(shè)計(jì)分區(qū)、時(shí)鐘域和時(shí)鐘組、架構(gòu)調(diào)整與性能改進(jìn)、處理器微架構(gòu)設(shè)計(jì)策略等角度進(jìn)行說(shuō)明,并以視頻H.264編碼器設(shè)計(jì)為例。
    的頭像 發(fā)表于 05-08 10:42 ?1760次閱讀
    <b class='flag-5'>架構(gòu)</b>與微<b class='flag-5'>架構(gòu)設(shè)</b>計(jì)

    SWE.2軟件架構(gòu)設(shè)計(jì)

    過(guò)程ID : SWE.2 過(guò)程名稱(chēng) : 軟件架構(gòu)設(shè)計(jì) 過(guò)程目的 : 軟件架構(gòu)設(shè)計(jì)過(guò)程目的是建立一個(gè)架構(gòu)設(shè)計(jì),識(shí)別哪些
    的頭像 發(fā)表于 08-24 09:43 ?1462次閱讀