documentația tehnică

Pagina 3 din 25

Abstracție date

„Date abstractizare“ - un echipament popular și, în general, nu detectează în mod corespunzător
programare. Ideea fundamentală este de a separa neesențial
detaliile de implementare și caracteristicile subrutina pentru materialul pentru
utilizarea corectă.
Această separare poate fi exprimată printr-o „interfață“ specială
concentrează descrierea tuturor aplicațiilor de program.
Un exemplu tipic de astfel de interfață.
- multe funcții care pot avea acces la structurile
date, care este reprezentat de o „abstracție“.
Unul dintre motivele pentru incompletitudinea definiția general acceptată este că
orice construcție de limbaj care acceptă abstracție de date ar exprima
Numai anumite aspecte ale ideilor fundamentale la eșec
expresii ale altora. De exemplu:
1. interfețe Upryatyvanie - Abilitatea de a specificațiile de interfață,
prevenirea corupției și a datelor de exceptare utilizator
Trebuie să știi detaliile de implementare.
2. interfețe Design - Abilitatea specificaiii
interfețe de sprijin și de impunere a unor acorduri
privind utilizarea abstracțiuni.
Exemplele includ operațiuni de mărci suprasarcină și tastare dinamică.
3. Specificarea - Capacitatea de a crea și inițializa
unul sau mai multe „copii“ (variabila obiecte de copii ale versiunilor)
o abstracție.
4. Localizare - Capacitatea de a simplifica punerea în aplicare a unei abstractizare, luând
Având în vedere că toate căile de acces la acesta este rutat prin interfața sa.
Printre exemple se numără simplificarea normelor și convențiilor de vizibilitate de gardă din cadrul
punerea în aplicare.
5. Software-ul Mediu - Abilitatea de a sprijini programul de dezvoltare,
folosind abstractizare. Exemplele includ. incarcator, înțelegere
abstractizare; bibliotecă abstracție; depanatoare, permițând programator
pentru a lucra în termeni de abstractizare.
6 Eficiența - Unele dintre limbaj de design ar trebui să fie
„Suficient de eficient“, în scopul de a fi util.

Domeniul de aplicare estimat - un factor important pentru determinarea,
ce de proiectare ar trebui să fie prezentate în limba. Dimpotrivă,
design eficient determină modul în care acestea în mod liber
Acesta poate fi folosit în acest program ar trebui să eficiență
să fie luate în considerare în trei contexte diferite. atunci când sunt compilate,
legarea și împlinirea.
Accentul principal în proiectarea de abstractizare a datelor capacitate C
a fost pe 2 și 3 dimensiuni, adică acele oportunități care permit
programator oferă o interfețe elegante și eficiente pentru abstractizare.
Cu abstractizare date sprijină abilitatea unui programator pentru a defini
Noi tipuri, numite „clase“. Membrii unei clase sunt doar funcțiile disponibile
dintr-un set de declarate în mod explicit. Informații Doar ascunde pot fi
realizat, de exemplu, cazul.

clasa data_type
/ * Lista de funcții care pot
Descriere de date utilizate
(Funcția "prietenos") * /
>;

în cazul în care numai „funcția de prietenos (* 1) pot avea acces la variabilele
Clasa d a t o _ t y p e în forma în care acestea sunt definite în caietul de sarcini date.

Ca o alternativă, și de multe ori mai elegant, puteți determina tipul de
date în care o multitudine de funcții care au acces la variabilele de clasă,
în sine este o parte integrantă a tipului:

clasa object_type <
/ * Descriere folosit
să pună în aplicare object_type * /
publice:
/ * Descriere specificându
Interfață object_type * /
>;

Un evident nu este un scop trivială a multor proiecte moderne
limbaje de programare este de a permite
utilizatorului să definească „tipuri de date abstracte“ cu caracteristici
Aceste caracteristici sunt fundamentale tipurile de date de limbaj.
Mai jos, vă vom arăta cum să adăugați un tip de date c o m p l e x în limbajul C
și astfel variabile complexe pot fi folosite tehnici convenționale
operații aritmetice. De exemplu.

complex a, x, y, z;
a = x / y + z 3 *;

Ideea de a reprezenta cutia neagră a obiectului în viitor susținut
Mecanismul de clase de proiectare ierarhice din alte clase.
De exemplu:

formă de clasă;
clasa de cerc. forma;

formă de clasă, în plus față de faptul că acesta este utilizat ca o formă de clasă
Acesta poate fi folosit pur și simplu ca un cerc. Ei spun că clasa cerc nu are
clasă derivată (* 2), cu forma de clasă ca și clasa sa de bază.
Este posibil să întârzie soluționarea tipului de obiecte care au un comun
clase de bază până la rulare. Acesta vă permite să manipuleze
Obiecte de diferite tipuri de unele manieră generală.

articole similare