女人被狂躁到高潮视频免费无遮挡,内射人妻骚骚骚,免费人成小说在线观看网站,九九影院午夜理论片少妇,免费av永久免费网址

當(dāng)前位置:首頁(yè) > 技術(shù)學(xué)院 > 基礎(chǔ)知識(shí)科普站
[導(dǎo)讀]程序接口是操作系統(tǒng)為用戶提供的兩類接口之一,編程人員在程序中通過(guò)程序接口來(lái)請(qǐng)求操作系統(tǒng)提供服務(wù)。面向過(guò)程語(yǔ)言最基本的單元是過(guò)程和函數(shù)。

程序接口是操作系統(tǒng)為用戶提供的兩類接口之一,編程人員在程序中通過(guò)程序接口來(lái)請(qǐng)求操作系統(tǒng)提供服務(wù)。面向過(guò)程語(yǔ)言最基本的單元是過(guò)程和函數(shù)。

進(jìn)行接口的介紹,必須介紹一下程序語(yǔ)言發(fā)展的歷史才行,魯迅先生說(shuō)過(guò)“治學(xué)先治史”,明白了程序語(yǔ)言發(fā)展的前世今生,才能知道這么多語(yǔ)言為什么會(huì)這樣,為什么會(huì)那樣?計(jì)算機(jī)出現(xiàn)以后,科學(xué)家相繼開發(fā)了多種語(yǔ)言,從smalltalk,Pascal,Basic,C語(yǔ)言,C++,java,.net等等,這些語(yǔ)言的發(fā)展步伐,可以看作是從面向過(guò)程向面向?qū)ο蟀l(fā)展的一段歷史。很多面向?qū)ο蟮臅诮榻B自己的歷史的時(shí)候,都會(huì)給讀者介紹這一段歷史,并鼓吹OO(Object Oriented)編程是多么多么的優(yōu)異。問(wèn)題是,很多剛開始學(xué)程序的人根本不知道為什么要有這個(gè)轉(zhuǎn)變,他們也很難理解OO語(yǔ)言中的虛函數(shù),接口等概念到底為了什么而提出來(lái)。

我們?cè)诹私膺@一段歷史以前,首先給大家介紹一個(gè)概念:“粒度”,什么是粒度?作者認(rèn)為所謂粒度其實(shí)就是一個(gè)程序中使用代碼單元的組合尺度,我們可以舉一個(gè)例子,沙礫??磚塊??房屋模板,我們?cè)O(shè)想去修建一座房子,其實(shí)有很多種修筑方法,如果你不嫌麻煩,可以使用沙礫一點(diǎn)點(diǎn)地建筑,或者將沙礫燒制為磚塊,用磚塊來(lái)砌,甚至直接從工廠購(gòu)買房屋的門,窗,墻組件來(lái)堆砌。這三種不同的方法代表了三種不同的組合尺度。沙礫是最小的單位,使用它搭建小的房子說(shuō)不定還可以,但是毫無(wú)疑問(wèn),我們必須使用很多很多“沙礫”,不便于管理;磚塊比沙礫聚合了一層,可以用來(lái)修建較大的房子了;房屋模板是最高的尺寸,使用它可以快速地搭建大規(guī)模的房屋。這三種尺度的區(qū)別和聯(lián)系,與我們編寫程序概念是有很大的相似之處的。在早期學(xué)習(xí)Pascal,老師告訴我們這種面向過(guò)程語(yǔ)言的最基本的單元是過(guò)程和函數(shù),它們是程序中的最小的組件。過(guò)程和函數(shù)可以實(shí)現(xiàn)最基本的代碼重用,當(dāng)我們把某些固定功能的代碼使用過(guò)程和函數(shù)編寫后,我們可以在程序中調(diào)用它們而不必在任何需要的地方都寫上這樣一段代碼,這樣的好處是顯而易見的。在一些小型的程序里面,使用過(guò)程和函數(shù)是合適的,但是在大中型程序中,它們的弊端就顯示出來(lái),過(guò)程和函數(shù)的粒度太低了,如果我們一個(gè)系統(tǒng),有10000個(gè)函數(shù)和過(guò)程,我們的程序員將不得不花費(fèi)大量的時(shí)間去尋找和維護(hù)它們,10000個(gè)沒有任何關(guān)系的函數(shù)和過(guò)程的管理難度是顯而易見的,就好像10000個(gè)人的企業(yè)一樣,如果沒有部門和職務(wù),這還不亂了套?

面向?qū)ο笳Z(yǔ)言的出現(xiàn),就是為了解決這個(gè)問(wèn)題,別聽OO語(yǔ)言吹的天花亂墜,其實(shí)它出現(xiàn)就為一個(gè)理由:提高編程的粒度。面向?qū)ο笳Z(yǔ)言的基本單位是類 CLASS,類封裝了很多數(shù)據(jù)成員和成員函數(shù),過(guò)程,將最小組件的粒度提高了一個(gè)等級(jí),我們需要直接操作的不是過(guò)程和函數(shù)了,而是一個(gè)個(gè)更高層次上的類。我們把10000人分了很多部門,不同的部門負(fù)責(zé)不同的事宜,這樣公司終于可以走上正軌了。做成了類CLASS是否就萬(wàn)事大吉了呢?不一定,新的問(wèn)題隨之而來(lái),也許我們有一個(gè)部門的人很多,可以做很多事情,如何在部門內(nèi)部實(shí)現(xiàn)更好的管理呢?好比我們有一個(gè)類,它提供了很多種方法和屬性,這些方法和屬性其實(shí)可以分為一堆堆,為不同的功能服務(wù),但是我們的類并沒有做這個(gè)管理。在AO中,map對(duì)象擁有很多功能,比如管理圖層,管理元素,管理選擇集,進(jìn)行地圖顯示,每種不同的功能都有好多方法和屬性,這些屬性和方法是雜亂無(wú)章,沒有任何區(qū)別堆積在一個(gè)類里面的,當(dāng)我們的程序員需要尋找一個(gè)方法的時(shí)候,不得不一個(gè)個(gè)去尋找,很不方便。這個(gè)時(shí)候,接口interface出現(xiàn)了,C++的發(fā)明者第一次提出純虛函數(shù)(其實(shí)就是接口)概念的時(shí)候,遭到了很多抵制,很多人都不明白接口的意義何在,我們用虛函數(shù)好好的,何必又出來(lái)個(gè)啥東西都沒有的空架子?說(shuō)它是類吧,又不能實(shí)現(xiàn)產(chǎn)生一個(gè)對(duì)象;說(shuō)它是對(duì)象吧,又沒有方法體來(lái)使用。接口出來(lái)干了一件好事,就是將類內(nèi)部進(jìn)行分類。對(duì)于map對(duì)象,我們可以做好幾個(gè)接口,這些接口中定義不同功能的方法,函數(shù)和屬性,map類實(shí)現(xiàn)這些接口,這樣我們可以使用接口定義,實(shí)現(xiàn)對(duì)象。因此,所謂接口就是一系列相關(guān)方法與屬性集合的定義。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

北京——2024年10月29日 亞馬遜云科技日前宣布,通過(guò)與光環(huán)新網(wǎng)與西云數(shù)據(jù)的緊密合作,在亞馬遜云科技(北京)區(qū)域和(寧夏)區(qū)域推出Amazon Lambda SnapStart功能,將基于Java Lambda函數(shù)的...

關(guān)鍵字: 函數(shù) 數(shù)據(jù)處理

北京2024年10月29日 /美通社/ -- 亞馬遜云科技日前宣布,通過(guò)與光環(huán)新網(wǎng)與西云數(shù)據(jù)的緊密合作,在亞馬遜云科技(北京)區(qū)域和(寧夏)區(qū)域推出Amazon Lambda SnapStart功能,將基于Java La...

關(guān)鍵字: START 亞馬遜 PS 函數(shù)

關(guān)于數(shù)據(jù)分析與可視化,以下介紹Pandas讀取數(shù)據(jù)以及保存數(shù)據(jù)的方法,畢竟我們很多時(shí)候需要讀取各種形式的數(shù)據(jù),以及將我們需要將所做的統(tǒng)計(jì)分析保存成特定的格式。

關(guān)鍵字: 函數(shù) Panda

深圳2024年8月15日 /美通社/ -- 近日,知名量化交易平臺(tái)水母量化正式推出了突破性的輪動(dòng)交易策略回測(cè)功能,目前已進(jìn)入公測(cè)階段。該功能實(shí)現(xiàn)了從策略設(shè)計(jì)、歷史回測(cè)到實(shí)盤自動(dòng)交易一體化流程,幫用戶解決了策略驗(yàn)證難、交易...

關(guān)鍵字: 編程 仿真 函數(shù) 開源

Python由荷蘭數(shù)學(xué)和計(jì)算機(jī)科學(xué)研究學(xué)會(huì)的吉多·范羅蘇姆于1990年代初設(shè)計(jì),作為一門叫做ABC語(yǔ)言的替代品。 Python提供了高效的高級(jí)數(shù)據(jù)結(jié)構(gòu),還能簡(jiǎn)單有效地面向?qū)ο缶幊獭?/p> 關(guān)鍵字: python 函數(shù) 對(duì)象編程

測(cè)試數(shù)據(jù)綜合分析的絕佳工具,深受工程師和研究員歡迎

關(guān)鍵字: 后處理分析軟件 向?qū)?/a> 函數(shù)

由上圖中可以知道進(jìn)程地址空間中最頂部的段是棧,代碼中調(diào)用函數(shù)、定義局部變量(但不包含static修飾的變量)或聲明的類的實(shí)例等等都要使用??臻g,當(dāng)函數(shù)執(zhí)行完(也就是程序執(zhí)行超過(guò)了這個(gè)函數(shù)的作用范圍的時(shí)候),操作系統(tǒng)會(huì)把該...

關(guān)鍵字: 進(jìn)程地址 局部變量 函數(shù)

星標(biāo)/置頂?公眾號(hào),硬核文章第一時(shí)間送達(dá)!鏈接|?https://zhuanlan.zhihu.com/p/274473971題很多,先上題后上答案,便于大家思考問(wèn)題點(diǎn):1、C和C的特點(diǎn)與區(qū)別?2、C的多態(tài)3、虛函數(shù)實(shí)現(xiàn)...

關(guān)鍵字: 騰訊 函數(shù) 進(jìn)程 AI

星標(biāo)「嵌入式大雜燴」,一起進(jìn)步!鏈接:https://www.cnblogs.com/jozochen/p/8541714.html一、問(wèn)題復(fù)現(xiàn)穩(wěn)定復(fù)現(xiàn)問(wèn)題才能正確的對(duì)問(wèn)題進(jìn)行定位、解決以及驗(yàn)證。一般來(lái)說(shuō),越容易復(fù)現(xiàn)的問(wèn)...

關(guān)鍵字: 嵌入式開發(fā) 函數(shù) 代碼 寄存器

基本上,沒有人會(huì)將大段的C語(yǔ)言代碼全部塞入main()函數(shù)。更好的做法是按照復(fù)用率高、耦合性低的原則,盡可能的將代碼拆分不同的功能模塊,并封裝成函數(shù)。C語(yǔ)言代碼的組合千變?nèi)f化,因此函數(shù)的功能可能會(huì)比較復(fù)雜,不同的輸入,常...

關(guān)鍵字: 函數(shù) PEN C語(yǔ)言代碼 C語(yǔ)言程序
關(guān)閉