日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

《面向对象是怎样工作的》读书笔记

發(fā)布時間:2024/1/18 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 《面向对象是怎样工作的》读书笔记 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

本文為《面向?qū)ο笫窃鯓庸ぷ鞯摹返淖x書筆記

目錄

  • 導(dǎo)圖
  • 第3章 編程語言的歷史
  • 第4章 OOP的三大要素
  • 第5章 OOP運行時的機制
  • 第6章 兩種可重用技術(shù):可重用構(gòu)建群和設(shè)計模式
  • 第9章 支持業(yè)務(wù)分析和需求定義的建模
  • 第10章 面向?qū)ο笤O(shè)計
  • 第11章 迭代式開發(fā)流程

導(dǎo)圖


面向?qū)ο缶哂袃蓚€方面,下游工程的“編程技術(shù)”和上游工程的“通用的歸納整理法”

第3章 編程語言的歷史

二進制的機器語言
--> 人類容易理解的符號:匯編語言
--> 人類更容易理解的“高級”形式:高級語言, eg:FORTRAN(適合于做科學(xué)計算)
--> 簡單易懂的結(jié)構(gòu)(循序、選擇、重復(fù)):結(jié)構(gòu)化編程, eg:Pascal、C語言
--> 可維護性(全局變量)和可重用性:面向?qū)ο缶幊?OOP), eg:JAVA, Python

第4章 OOP的三大要素

結(jié)構(gòu)將緊密關(guān)聯(lián)的子程序(函數(shù))和全局變量匯總在一起,創(chuàng)建大粒度的軟件構(gòu)件,多態(tài)繼承能夠?qū)⒐米映绦驘o法很好處理的重復(fù)代碼進行整合,徹底消除代碼的冗余。

1.類

類的功能:匯總、隱藏和“創(chuàng)建很多個”

  • "匯總"子程序和變量
  • “隱藏”只在類內(nèi)部使用的變量和子程序
  • 從一個類“創(chuàng)建很多個”實例

匯總

OOP中將由類匯總的子程序稱為方法,將全局變量稱為實例變量

優(yōu)點:

  • 構(gòu)件的數(shù)量會減少
  • 方法的命名變得輕松
  • 方法變得容易查找

隱藏

能對其他類隱藏類中定義的變量和方法(private)

創(chuàng)建很多個

一旦定義了類,在運行時就可以創(chuàng)建很多個實例。

2.繼承

繼承是將類定義的共同部分匯總到另一個類中,并去除重復(fù)代碼的結(jié)構(gòu)。在OOP中,這種共用類稱為超類,利用超類的類稱為子類。

3.多態(tài)

多態(tài)是統(tǒng)一調(diào)用子程序端的邏輯的結(jié)構(gòu),即創(chuàng)建公用主程序的結(jié)構(gòu)。

4.更先進的OOP結(jié)構(gòu)

進行匯總的容器

異常

采用與返回值不同的形式,從方法返回特殊錯誤的結(jié)構(gòu)。

垃圾回收

刪除內(nèi)存中不再需要的實例

第5章 OOP運行時的機制

1.虛擬機

解釋中間代碼并將其轉(zhuǎn)化為CPU能夠直接運行的機器語言的結(jié)構(gòu)

2.線程

線程:程序運行的單位
進程:表示的單位比線程大,一個進程可以包含多個線程
多個線程同時并發(fā)進行:CPU交替執(zhí)行多個線程的處理,但處理速度快,在使用者眼中像同時執(zhí)行多個作業(yè)一樣(單CPU)

3.內(nèi)存的使用方法

靜態(tài)區(qū)、堆區(qū)、棧區(qū)

1.靜態(tài)區(qū)

從程序開始時產(chǎn)生,在程序結(jié)束前一直存在。

2.堆區(qū)

程序運行時動態(tài)分配的內(nèi)存區(qū)域,供多個線程使用。

3.棧區(qū)

用于線程的控制的內(nèi)存區(qū)域,每個線程準(zhǔn)備一個。

類型靜態(tài)區(qū)堆區(qū)棧區(qū)
用法在應(yīng)用程序開始運行時分配開始時分配一定的區(qū)域,之后會根據(jù)需要再為應(yīng)用程序分配后入先出方式
存儲的信息全局變量、運行代碼任意(取決于應(yīng)用程序)調(diào)用的子程序的參數(shù)、局部變量和返回位置
分配單位為整個應(yīng)用程序分配一個為一個系統(tǒng)或應(yīng)用程序分配一個為每個線程分配一個

4.變量的存儲

變量中存儲的并不是實例本身,而是實例的指針。當(dāng)將存儲實例的變量賦給其他變量時,只是復(fù)制指針,堆區(qū)中的實例本身并不會發(fā)生變化。

5.垃圾回收

如何判斷實例不被需要:發(fā)現(xiàn)孤立的實例

第6章 兩種可重用技術(shù):可重用構(gòu)建群和設(shè)計模式

第9章 支持業(yè)務(wù)分析和需求定義的建模

建模的目的:

  • 業(yè)務(wù)分析:整理現(xiàn)實世界的工作的推進方法(why使用計算機)
  • 需求定義:確定交給計算機的作業(yè)范圍(what)
  • 設(shè)計:確定軟件的編寫方法(how)

第10章 面向?qū)ο笤O(shè)計

即上一章講述的設(shè)計模式

設(shè)計的目標(biāo)

  • 去除重復(fù)
  • 提高構(gòu)建的獨立性:起一個能用一句話表示的名稱、創(chuàng)建許多秘密、創(chuàng)建的小一點
  • 避免依賴關(guān)系發(fā)生循環(huán)

第11章 迭代式開發(fā)流程

開發(fā)流程的兩種類型:瀑布式開發(fā)流程和迭代式開發(fā)流程

1.瀑布式開發(fā)流程

前提:軟件的修改會產(chǎn)生很大的成本,編寫文檔的成本要比編寫軟件低得多。

2.迭代式開發(fā)流程

第13章 函數(shù)式語言

有時間了解一下Haskell或者Scala

?長按點贊,等你來干

總結(jié)

以上是生活随笔為你收集整理的《面向对象是怎样工作的》读书笔记的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。