條款18:讓接口更容易被使用味咳,不容易被誤用 1庇勃、使用外覆類型,預(yù)防客戶參數(shù)寫入錯(cuò)誤 如上函數(shù)聲明莺葫,我們可以通過名稱的命名匪凉,來告知每個(gè)用戶的變量含義。但捺檬,如以下: 我們無法從函...
![240](https://cdn2.jianshu.io/assets/default_avatar/13-394c31a9cb492fcb39c27422ca7d2815.jpg?imageMogr2/auto-orient/strip|imageView2/1/w/240/h/240)
條款18:讓接口更容易被使用味咳,不容易被誤用 1庇勃、使用外覆類型,預(yù)防客戶參數(shù)寫入錯(cuò)誤 如上函數(shù)聲明莺葫,我們可以通過名稱的命名匪凉,來告知每個(gè)用戶的變量含義。但捺檬,如以下: 我們無法從函...
動(dòng)態(tài)選路協(xié)議 靜態(tài)選路:在配置接口時(shí),以默認(rèn)方式生成路由表項(xiàng)贸铜,并通過route命令的方式可以增加表項(xiàng)堡纬,或者通過ICMP重定向生成表項(xiàng)。在網(wǎng)絡(luò)很少蒿秦,且與其他網(wǎng)絡(luò)只有單個(gè)連接點(diǎn)且...
IP選路 下圖是IP層處理過程的簡單流程烤镐,需要進(jìn)行選路的數(shù)據(jù)報(bào)可以由本地主機(jī)產(chǎn)生,也可以由其他主機(jī)產(chǎn)生棍鳖。在后一種情況炮叶,主機(jī)必須被配置成一個(gè)路由器碗旅,否者通過網(wǎng)絡(luò)接口接收到的數(shù)據(jù)...
Traceroute程序 Traceroute程序可以讓我們看到IP數(shù)據(jù)報(bào)從一臺主機(jī)傳到另一臺主機(jī)所經(jīng)過的路由。Traceroute還可以讓我們使用IP源路由選項(xiàng)镜悉。 Trac...
Ping程序 "Ping"這個(gè)名字源于聲吶定位操作祟辟,目的是為了測試一臺主機(jī)是否可達(dá)。該程序發(fā)送一份ICMP回顯請求報(bào)文給主機(jī)侣肄,并等待返回ICMP回顯應(yīng)答旧困。一般來說,如果不能P...
ICMP: Internet控制報(bào)文協(xié)議 ICMP經(jīng)常被認(rèn)為是IP層的一個(gè)組成部分稼锅。它傳遞差錯(cuò)報(bào)文以及其他需要注意的信息吼具。ICMP報(bào)文通常被IP層或更高層協(xié)議(TCP或UDP...
807矩距、保持城市天際線 在二維數(shù)組grid中拗盒,grid[i][j]代表位于某處的建筑物的高度。我們被允許增加任何數(shù)量(不同建筑物的數(shù)量可能不同)的建筑物的高度锥债。 高度 0 也...
RARP:逆地址解析協(xié)議 具有本地磁盤的系統(tǒng)引導(dǎo)時(shí)锣咒,一般是從磁盤上的配置文件中讀取IP地址。但是無盤機(jī),如X終端或無盤工作站赞弥,則需要采用其他的方法來獲得IP地址毅整。網(wǎng)絡(luò)上的每個(gè)...
ARP 地址解析協(xié)議 數(shù)據(jù)鏈路如以太網(wǎng)和令牌環(huán)網(wǎng)都有自己的尋址機(jī)智,這是使用數(shù)據(jù)鏈路的任何網(wǎng)絡(luò)都必須遵從的绽左。 當(dāng)一臺主機(jī)把以太網(wǎng)數(shù)據(jù)幀發(fā)送到位于同一局域網(wǎng)上的另一臺主機(jī)時(shí)悼嫉,是...
IP:網(wǎng)際協(xié)議 IP是TCP/IP協(xié)議族中最為核心的協(xié)議。所有的TCP拼窥、UDP戏蔑、ICMP、IGMP都以IP數(shù)據(jù)報(bào)格式傳輸鲁纠。 IP傳輸有以下特點(diǎn):1.不可靠性总棵。IP傳輸不能保證...
在TCP/IP協(xié)議族中,鏈路層主要有三個(gè)目的:(1)為IP模塊發(fā)送和接受IP數(shù)據(jù)報(bào)(2)為ARP模塊發(fā)送ARP請求和接受ARP應(yīng)答(3)為RARP發(fā)送RARP請求和接收RAR...
第一章 網(wǎng)絡(luò)協(xié)議通常分不同層次進(jìn)行開發(fā)改含,每一層分別負(fù)責(zé)不同的通信功能情龄。一個(gè)協(xié)議族,比如TCP/IP通常被認(rèn)為是一個(gè)四層協(xié)議系統(tǒng)捍壤。 每一層負(fù)責(zé)不同的功能: 鏈路層骤视,有時(shí)也稱為數(shù)...
1.兩數(shù)相加 給定一個(gè)整數(shù)數(shù)組 nums 和一個(gè)目標(biāo)值 target鹃觉,請你在該數(shù)組中找出和為目標(biāo)值的那 兩個(gè) 整數(shù)专酗,并返回他們的數(shù)組下標(biāo)。 你可以假設(shè)每種輸入只會對應(yīng)一個(gè)答...
重構(gòu)第十二章 總結(jié) 本章展示的是整個(gè)系統(tǒng)的整體重構(gòu)盗扇。 1.Tease Apart Inheritance(梳理并分解繼承體系):某個(gè)繼承體系祷肯,同時(shí)承擔(dān)兩項(xiàng)責(zé)任沉填。建立兩個(gè)繼承體...
重構(gòu)第十二章 4.Extract Hierarchy(提煉繼承體系) 你有某個(gè)class做了太多(過多)工作,其中一部分是以大量條件式完成的佑笋。建立繼承體系翼闹,以一個(gè)subcla...
重構(gòu)第十二章 3.Spearate Domain from Presentation(將領(lǐng)域和表述/顯示分離) 某些GUI classes之中包含了domain logic(...
重構(gòu)第十二章 2.Convert_Procedural_Design_To_Objects(將過程化設(shè)計(jì)轉(zhuǎn)化為對象設(shè)計(jì)) 你手上有一些代碼,以傳統(tǒng)的過程化風(fēng)格寫就允青。將數(shù)據(jù)記錄...
重構(gòu)第十二章 1.Tease Apart Inheritance(梳理并分解繼承體系) 某個(gè)繼承體系橄碾,同時(shí)承擔(dān)兩項(xiàng)責(zé)任。建立兩個(gè)繼承體系颠锉,并通過委托關(guān)系讓其中一個(gè)可以調(diào)用另一...
重構(gòu)第十一章 總結(jié) 本章節(jié)主要講了一些關(guān)于處理繼承法牲、委托關(guān)系的重構(gòu)手法。 1.Pull Up Field(值域上移):將class的值域特性向superclass移動(dòng)琼掠。2.P...
重構(gòu)第十一章 12.Replace Delegation with Inheritance(以繼承取代委托) 你在兩個(gè)classes之間使用委托關(guān)系(delegation),...