黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

054 Python程序設(shè)計(jì)思維

系統(tǒng) 1978 0

目錄

  • 一、單元開篇
  • 二、計(jì)算思維與程序設(shè)計(jì)
    • 2.1 計(jì)算思維
      • 2.1.1 第3種人類思維特征
      • 2.1.2 抽象和自動(dòng)化
      • 2.1.3 計(jì)數(shù)求和:計(jì)算1-100的計(jì)數(shù)和
      • 2.1.4 圓周率的計(jì)算
      • 2.1.5 漢諾塔問題
      • 2.1.6 天氣預(yù)報(bào)
      • 2.1.7 量化分析
      • 2.1.8 抽象問題的計(jì)算過程,利用計(jì)算機(jī)自動(dòng)化求解
    • 2.2 計(jì)算思維與程序設(shè)計(jì)
  • 三、計(jì)算生態(tài)與Python語言
    • 3.1 計(jì)算生態(tài)
    • 3.2 計(jì)算生態(tài)與Python語言
    • 3.3 計(jì)算生態(tài)的價(jià)值
    • 3.4 計(jì)算生態(tài)的運(yùn)用
  • 四、用戶體驗(yàn)與軟件產(chǎn)品
    • 4.1 用戶體驗(yàn)
    • 4.2 提高用戶體驗(yàn)的方法
      • 4.2.1 方法1:進(jìn)度展示
      • 4.2.2 方法2:異常處理
      • 4.2.3 其他類方法
  • 五、基本的程序設(shè)計(jì)模式
    • 5.1 從IPO開始…
    • 5.2 自頂向下設(shè)計(jì)
    • 5.3 模塊化設(shè)計(jì)
    • 5.4 配置化設(shè)計(jì)
    • 5.5 應(yīng)用開發(fā)的四個(gè)步驟
  • 六、單元小結(jié)

一、單元開篇

  • 計(jì)算思維與程序設(shè)計(jì)
  • 計(jì)算生態(tài)與Python語言
  • 用戶體驗(yàn)與軟件產(chǎn)品
  • 基本的程序設(shè)計(jì)模式

二、計(jì)算思維與程序設(shè)計(jì)

2.1 計(jì)算思維

2.1.1 第3種人類思維特征

  • 邏輯思維:推理和演繹,數(shù)學(xué)為代表,A->B B->C A->C
  • 實(shí)證思維:實(shí)驗(yàn)和驗(yàn)證,物理為代表,引力波<-實(shí)驗(yàn)
  • 計(jì)算思維:設(shè)計(jì)和構(gòu)造,計(jì)算機(jī)為代表,漢諾塔遞歸

2.1.2 抽象和自動(dòng)化

  • 計(jì)算思維:Computational Thinking
  • 抽象問題的計(jì)算過程,利用計(jì)算機(jī)自動(dòng)化求解
  • 計(jì)算思維是基于計(jì)算機(jī)的思維方式

2.1.3 計(jì)數(shù)求和:計(jì)算1-100的計(jì)數(shù)和

邏輯思維(數(shù)學(xué)家高斯的玩兒法):

\[ S=\frac{(a_1+a_n)n}{2} \]

計(jì)算思維(現(xiàn)代人的新玩兒法):

          
            s = 0
for i in range(1, 101):
    s += i
          
        

2.1.4 圓周率的計(jì)算

邏輯思維:

\[ \pi = \sum_{k=0}^\infty[\frac{1}{16^k}(\frac{4}{8k+1}-\frac{2}{8k+4}-\frac{1}{8k+5}-\frac{1}{8k+6})] \]

計(jì)算思維:

054 Python程序設(shè)計(jì)思維_第1張圖片

2.1.5 漢諾塔問題

邏輯思維( \(2^n-1\) ):

054 Python程序設(shè)計(jì)思維_第2張圖片

計(jì)算思維:

          
            count = 0
def hanoi(n, src, dst, mid):
    … (略)
hanoi(3, "A", "C", "B")
print(count)
          
        

2.1.6 天氣預(yù)報(bào)

054 Python程序設(shè)計(jì)思維_第3張圖片

2.1.7 量化分析

054 Python程序設(shè)計(jì)思維_第4張圖片

2.1.8 抽象問題的計(jì)算過程,利用計(jì)算機(jī)自動(dòng)化求解

  • 計(jì)算思維基于計(jì)算機(jī)強(qiáng)大的算力及海量數(shù)據(jù)
  • 抽象計(jì)算過程,關(guān)注設(shè)計(jì)和構(gòu)造,而非因果
  • 以計(jì)算機(jī)程序設(shè)計(jì)為實(shí)現(xiàn)的主要手段

2.2 計(jì)算思維與程序設(shè)計(jì)

編程是將計(jì)算思維變成現(xiàn)實(shí)的手段

054 Python程序設(shè)計(jì)思維_第5張圖片

三、計(jì)算生態(tài)與Python語言

3.1 計(jì)算生態(tài)

從開源運(yùn)動(dòng)說起…

054 Python程序設(shè)計(jì)思維_第6張圖片

開源生態(tài)逐步建立

  • 1991, Linus Torvalds發(fā)布了Linux內(nèi)核
  • 1998, 網(wǎng)景瀏覽器開源,產(chǎn)生了Mozilla

054 Python程序設(shè)計(jì)思維_第7張圖片

開源思想深入演化和發(fā)展,形成了計(jì)算生態(tài)

計(jì)算生態(tài)以開源項(xiàng)目為組織形式,充分利用“共識(shí)原則”和“社會(huì)利他”組織人員,在競(jìng)爭(zhēng)發(fā)展、相互依存和迅速更迭中完成信息技術(shù)的更新?lián)Q代,形成了技術(shù)的自我演化路徑。

054 Python程序設(shè)計(jì)思維_第8張圖片

沒有頂層設(shè)計(jì)、以功能為單位、具備三個(gè)特點(diǎn)

054 Python程序設(shè)計(jì)思維_第9張圖片

3.2 計(jì)算生態(tài)與Python語言

  • 以開源項(xiàng)目為代表的大量第三方庫(kù):Python語言提供 >13萬個(gè)第三方庫(kù)
  • 庫(kù)的建設(shè)經(jīng)過野蠻生長(zhǎng)和自然選擇:同一個(gè)功能,Python語言2個(gè)以上第三方庫(kù)
  • 庫(kù)之間相互關(guān)聯(lián)使用,依存發(fā)展:Python庫(kù)間廣泛聯(lián)系,逐級(jí)封裝、
  • 社區(qū)龐大,新技術(shù)更迭迅速:AlphaGo深度學(xué)習(xí)算法采用Python語言開源

API != 生態(tài)

3.3 計(jì)算生態(tài)的價(jià)值

創(chuàng)新:跟隨創(chuàng)新、集成創(chuàng)新、原始創(chuàng)新

  • 加速科技類應(yīng)用創(chuàng)新的重要支撐
  • 發(fā)展科技產(chǎn)品商業(yè)價(jià)值的重要模式
  • 國(guó)家科技體系安全和穩(wěn)固的基礎(chǔ)

3.4 計(jì)算生態(tài)的運(yùn)用

刀耕火種 -> 站在巨人的肩膀上

  • 編程的起點(diǎn)不是算法而是系統(tǒng)
  • 編程如同搭積木,利用計(jì)算生態(tài)為主要模式
  • 編程的目標(biāo)是快速解決問題

四、用戶體驗(yàn)與軟件產(chǎn)品

4.1 用戶體驗(yàn)

實(shí)現(xiàn)功能 -> 關(guān)注體驗(yàn)

  • 用戶體驗(yàn)指用戶對(duì)產(chǎn)品建立的主觀感受和認(rèn)識(shí)
  • 關(guān)心功能實(shí)現(xiàn),更要關(guān)心用戶體驗(yàn),才能做出好產(chǎn)品
  • 編程只是手段,不是目的,程序最終為人類服務(wù)

4.2 提高用戶體驗(yàn)的方法

4.2.1 方法1:進(jìn)度展示

  • 如果程序需要計(jì)算時(shí)間,可能產(chǎn)生等待,請(qǐng)?jiān)黾舆M(jìn)度展示
  • 如果程序有若干步驟,需要提示用戶,請(qǐng)?jiān)黾舆M(jìn)度展示
  • 如果程序可能存在大量次數(shù)的循環(huán),請(qǐng)?jiān)黾舆M(jìn)度展示

4.2.2 方法2:異常處理

  • 當(dāng)獲得用戶輸入,對(duì)合規(guī)性需要檢查,需要異常處理
  • 當(dāng)讀寫文件時(shí),對(duì)結(jié)果進(jìn)行判斷,需要異常處理
  • 當(dāng)進(jìn)行輸入輸出時(shí),對(duì)運(yùn)算結(jié)果進(jìn)行判斷,需要異常處理

4.2.3 其他類方法

  • 打印輸出:特定位置,輸出程序運(yùn)行的過程信息
  • 日志文件:對(duì)程序異常及用戶使用進(jìn)行定期記錄
  • 幫助信息:給用戶多種方式提供幫助信息

軟件程序 -> 軟件產(chǎn)品

用戶體驗(yàn) 是程序到產(chǎn)品的關(guān)鍵環(huán)節(jié)

五、基本的程序設(shè)計(jì)模式

5.1 從IPO開始…

  • I:Input 輸入,程序的輸入
  • P:Process 處理,程序的主要邏輯
  • O:Output 輸出,程序的輸出

  • 確定IPO:明確計(jì)算部分及功能邊界
  • 編寫程序:將計(jì)算求解的設(shè)計(jì)變成現(xiàn)實(shí)
  • 調(diào)試程序:確保程序按照正確邏輯能夠正確運(yùn)行

5.2 自頂向下設(shè)計(jì)

  • I:Input 輸入,程序的輸入
  • P:Process 處理,程序的主要邏輯
  • O:Output 輸出,程序的輸出

5.3 模塊化設(shè)計(jì)

  • 通過函數(shù)或?qū)ο蠓庋b將程序劃分為模塊及模塊間的表達(dá)
  • 具體包括:主程序、子程序和子程序間關(guān)系
  • 分而治之:一種分而治之、分層抽象、體系化的設(shè)計(jì)思想

  • 緊耦合:兩個(gè)部分之間交流很多,無法獨(dú)立存在
  • 松耦合:兩個(gè)部分之間交流較少,可以獨(dú)立存在
  • 模塊內(nèi)部緊耦合、模塊之間松耦合

5.4 配置化設(shè)計(jì)

054 Python程序設(shè)計(jì)思維_第10張圖片

  • 引擎+配置:程序執(zhí)行和配置分離,將可選參數(shù)配置化
  • 將程序開發(fā)變成配置文件編寫,擴(kuò)展功能而不修改程序
  • 關(guān)鍵在于接口設(shè)計(jì),清晰明了、靈活可擴(kuò)展

5.5 應(yīng)用開發(fā)的四個(gè)步驟

從應(yīng)用需求到軟件產(chǎn)品

054 Python程序設(shè)計(jì)思維_第11張圖片

  • 1 產(chǎn)品定義:對(duì)應(yīng)用需求充分理解和明確定義:產(chǎn)品定義,而不僅是功能定義,要考慮商業(yè)模式
  • 2 系統(tǒng)架構(gòu):以系統(tǒng)方式思考產(chǎn)品的技術(shù)實(shí)現(xiàn):系統(tǒng)架構(gòu),關(guān)注數(shù)據(jù)流、模塊化、體系架構(gòu)
  • 3 設(shè)計(jì)與實(shí)現(xiàn):結(jié)合架構(gòu)完成關(guān)鍵設(shè)計(jì)及系統(tǒng)實(shí)現(xiàn):結(jié)合可擴(kuò)展性、靈活性等進(jìn)行設(shè)計(jì)優(yōu)化
  • 4 用戶體驗(yàn):從用戶角度思考應(yīng)用效果:用戶至上,體驗(yàn)優(yōu)先,以用戶為中心

六、單元小結(jié)

  • 計(jì)算思維:抽象計(jì)算過程和自動(dòng)化執(zhí)行
  • 計(jì)算生態(tài):競(jìng)爭(zhēng)發(fā)展、相互依存、快速更迭
  • 用戶體驗(yàn):進(jìn)度展示、異常處理等
  • IPO、自頂向下、模塊化、配置化、應(yīng)用開發(fā)的四個(gè)步驟

更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論