400-650-7353
您所在的位置:首頁(yè) > IT干貨資料 > python > 【Python基礎(chǔ)知識(shí)】Python軟件設(shè)計(jì)模式是指什么

【Python基礎(chǔ)知識(shí)】Python軟件設(shè)計(jì)模式是指什么

  • 發(fā)布: python培訓(xùn)
  • 來(lái)源:python干貨資料
  • 2020-03-11 14:53:32
  • 閱讀()
  • 分享
  • 手機(jī)端入口

Python軟件開發(fā)中引入設(shè)計(jì)模式是由生活中的一些實(shí)例啟發(fā)而來(lái)的。例如,有2個(gè)小朋友Alice和Jack,去麥當(dāng)勞點(diǎn)餐。Alice不了解麥當(dāng)勞的套餐模式,于是想了一下,跟服務(wù)員說(shuō):“我要一個(gè)麥辣雞腿堡、一個(gè)薯?xiàng)l和一杯可樂(lè)”。而Jack經(jīng)常吃麥當(dāng)勞,他也想點(diǎn)和Alice一樣的餐品。Jack發(fā)現(xiàn)其實(shí)Alice點(diǎn)的就是麥當(dāng)勞的A套餐,于是他直接和服務(wù)員說(shuō):“給我一個(gè)A套餐”。

從上面的事例中可以看出,Jack的點(diǎn)餐效率高,因?yàn)镴ack和服務(wù)員都了解麥當(dāng)勞的套餐模式,溝通起來(lái)效率自然就高。那么在這個(gè)生活案例中,創(chuàng)建套餐是提高點(diǎn)餐效率的可重用解決方案。它會(huì)根據(jù)客戶的需求和餐品的被點(diǎn)頻次制定出符合不同人群的套餐。套餐可以重復(fù)被更多的人去點(diǎn),因此大大提高了顧客與服務(wù)員之間的溝通效率。

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

同理,在軟件開發(fā)世界里,本來(lái)沒(méi)有設(shè)計(jì)模式的,用的人多了,也便總結(jié)出了設(shè)計(jì)模式。這就是設(shè)計(jì)模式的由來(lái)。設(shè)計(jì)模式針對(duì)同一情境,眾多軟件開發(fā)的人員經(jīng)過(guò)長(zhǎng)時(shí)間總結(jié),便得到了最佳可重用解決方案。這個(gè)可重用解決方案解決了軟件開發(fā)過(guò)程中常見的問(wèn)題,擁有固定的術(shù)語(yǔ),因此交流起來(lái)就方便了很多。

綜上,設(shè)計(jì)模式是軟件開發(fā)過(guò)程中共性問(wèn)題的可重用解決方案。設(shè)計(jì)模式的內(nèi)涵第一是一套被反復(fù)使用、多數(shù)人知曉的、經(jīng)過(guò)分類編目的、代碼設(shè)計(jì)經(jīng)驗(yàn)的總結(jié)。第二是用來(lái)解決共性問(wèn)題。設(shè)計(jì)模式的外延有:?jiǎn)卫J健⒐S模式、適配器模式、代理模式等。據(jù)悉,現(xiàn)用的設(shè)計(jì)模式有24種,隨著時(shí)代的發(fā)展,軟件編程可能會(huì)遇到新的場(chǎng)景,設(shè)計(jì)模式會(huì)越來(lái)越豐富。

先看一個(gè)設(shè)計(jì)模式中最基本的單例模式的例子。Windows里面的任務(wù)管理器就是個(gè)典型的單例模式軟件。這是因?yàn)閃indows任務(wù)管理器只能打開一個(gè),就算用戶重復(fù)打開,也只能獲得一個(gè)實(shí)例,這不同于word等軟件可以打開多個(gè)實(shí)例。其中的原因就是如果有2個(gè)窗口同時(shí)都能結(jié)束某進(jìn)程,這就會(huì)造成在窗口A中某進(jìn)程結(jié)束了,在窗口B中該進(jìn)程還保留的;同理反過(guò)來(lái),某進(jìn)程在窗口B中結(jié)束了,而在窗口A中還保留著。這樣就會(huì)造成沖突,系統(tǒng)崩潰。Windows里面的任務(wù)管理器符合單例模式,保證一個(gè)類僅有一個(gè)實(shí)例的設(shè)計(jì)模式。

文章“【Python基礎(chǔ)知識(shí)】Python軟件設(shè)計(jì)模式是指什么”已幫助

>>本文地址:http://liujunjsxg.cn/zhuanye/2020/48470.html

THE END  

聲明:本站稿件版權(quán)均屬中公教育優(yōu)就業(yè)所有,未經(jīng)許可不得擅自轉(zhuǎn)載。

1 您的年齡

2 您的學(xué)歷

3 您更想做哪個(gè)方向的工作?

獲取測(cè)試結(jié)果
  • 大前端大前端
  • 大數(shù)據(jù)大數(shù)據(jù)
  • 互聯(lián)網(wǎng)營(yíng)銷互聯(lián)網(wǎng)營(yíng)銷
  • JavaJava
  • Linux云計(jì)算Linux
  • Python+人工智能Python
  • 嵌入式物聯(lián)網(wǎng)嵌入式
  • 全域電商運(yùn)營(yíng)全域電商運(yùn)營(yíng)
  • 軟件測(cè)試軟件測(cè)試
  • 室內(nèi)設(shè)計(jì)室內(nèi)設(shè)計(jì)
  • 平面設(shè)計(jì)平面設(shè)計(jì)
  • 電商設(shè)計(jì)電商設(shè)計(jì)
  • 網(wǎng)頁(yè)設(shè)計(jì)網(wǎng)頁(yè)設(shè)計(jì)
  • 全鏈路UI/UE設(shè)計(jì)UI設(shè)計(jì)
  • VR/AR游戲開發(fā)VR/AR
  • 網(wǎng)絡(luò)安全網(wǎng)絡(luò)安全
  • 新媒體與短視頻運(yùn)營(yíng)新媒體
  • 直播帶貨直播帶貨
  • 智能機(jī)器人軟件開發(fā)智能機(jī)器人
 

快速通道fast track

近期開班時(shí)間TIME