Interfață - Care sunt cuvintele atât de simple

Interfață - Care este ceea ce are nevoie, tipuri de interfețe

4 ianuarie 2021.

Bună ziua, dragi cititori de blog ktonanovenkogo.ru. În epoca calculatorului de masă, este important să țineți pasul cu cele mai recente tendințe și să completați în mod constant decalajul în cunoaștere.

Este important ca interfața să corespundă obiectivelor și contextului. Dacă aceasta este interacțiunea unui specialist cu un computer, atunci principalul lucru este capacitatea de a furniza informații și de a îndeplini sarcinile. Pentru un utilizator obișnuit, acesta nu are doar o valoare tehnică, ci și estetică: lucrul cu acesta trebuie să fie confortabil și de înțeles.

Nu vrei să întâlnești nevoia de a se prăbuși? Astăzi considerăm un alt termen asociat cu PC-ul.

Voi încerca să explic un astfel de lucru ca o interfață: Ce este și de ce este necesar. Deci, să începem.

Interfața este ...

Ca toate frazele noi, cuvântul "interfață" a venit la noi din limba engleză. Interfața tradusă indică " Locul de contact "

Interfața este un set de instrumente care permit utilizatorului să interacționeze cu sistemul de operare al computerului, un dispozitiv mobil sau alte tipuri de echipamente.

Interfața este ...

Ca astfel de instrumente Interacțiunile pot acționa:

  1. câmpuri de text;
  2. butoane și căpușe;
  3. liste de drop-down;
  4. Sfaturi pop-up;
  5. Comutatoare;
  6. Elemente ale meniului programului sau al site-ului;
  7. și mult mai mult.

Pentru a fi mai bine clar ce fel de fructe este această interfață, luați în considerare un exemplu vizual. Să presupunem că vă decideți să mergeți în vacanță în margini îndepărtate și să rezervați un hotel în avans prin Internet.

Vino pe site și acolo vă așteptați mai multe interfețe: căutați, afișați rezultatele, introducerea datelor cu caracter personal, plata. În timpul fiecărei etape de interacțiune cu site-ul rezervării hotelului, utilizatorul operează cu date și efectuează anumite acțiuni.

De ce am nevoie de o interfață? Totul este simplu, mai mult decât oricând: cu atât mai convenabil să utilizați programul, site-ul și alt produs, utilizatorii mai fericiți.

Interfața prietenoasă vă permite, de asemenea, să ridicați vânzările pe site-urile comerciale, deoarece vizitatorii nu închid fila în primele secunde de utilizare a site-ului.

Site-urile cu design bun sunt mai populare în rândul utilizatorilor, mai vizitați și, prin urmare, aduc cele mai bune venituri proprietarilor lor.

Tipuri de interfețe

Interfața este obișnuită să se subdivide pe următoarele tipuri:

  1. Linie de comanda . Aceasta este cea mai veche și cea mai consuprinsă a timpului de a interacționa între utilizator și computer personal. În același timp, linia de comandă rămâne cea mai fiabilă tip de interfață.
    Pentru utilizatori, interfața este baza de a lucra cu un PC sau un telefon. Din cât de simplu sau complex acest sistem, confortul de a controla dispozitivul va depinde de. Dezvoltatorii pot schimba structurile de sistem pentru sarcini complexe. Utilizatorii neexperimentați, este mai bine să cumpărați dispozitive cu o interfață clară pentru a facilita munca lor.

    Comunicarea cu mașina are loc în limba sa. Linia de comandă este utilizată în sistemele de operare destinate utilizatorilor profesioniști: de exemplu, în BIOS.

  2. Interfață grafică . Acesta este exact ceea ce se înțelege astăzi sub cuvântul "interfață". Se aplică în toate sistemele de operare, programe, pagini web.
    Smartphone.

    Cu o interfață grafică, absolut toți utilizatorii de PC-uri se confruntă. Pentru o interacțiune mai convenabilă, se recomandă utilizarea unui mouse computer.

  3. Semnează interfața . Dezvoltarea rapidă a tehnologiilor a devenit unul dintre motivele apariției unei interfețe de gest. Aceasta include ecrane senzoriale, joystick-uri, stilou și alte elemente.
  4. Interfață vocală . Vorbind expresia "OK, Google" și, ulterior, pronunțați interogarea de căutare, interacționați cu interfața vocală a sistemului de operare smartphone sau tabletă.
    Linia de comandă

    Acest tip a apărut, de asemenea, recent datorită dezvoltării rapide a tehnologiilor.

    Dar astăzi se bucură de o popularitate considerabilă, deoarece vă permite să rezolvați o serie de sarcini importante și să gestionați dispozitivele (ceea ce este?) - Dispozitive mobile, mașini, aparate de uz casnic, computere - cu comenzi vocale.

Care ar trebui să fie interfața

Sarcina principală a oricărei interfețe - Utilizați cu ușurință Program specific, site-ul sau produsul similar.

De exemplu, atunci când se recomandă dezvoltarea unui portal web Concentrați-vă pe următoarele elemente :

  1. Numărul optim de elemente afișate;
  2. Adaptabilitate la dispozitive desktop și mobile;
  3. prezența butoanelor rețelelor sociale populare;
  4. Pictograme și butoane optime;
  5. formă convenabilă de înregistrare;
  6. Locația intuitivă a elementelor de meniu;
  7. prezența accentelor de culoare sau de informații;
  8. Sistemul de căutare pe site;
  9. Dacă este necesar, disponibilitatea datelor de contact.

Un exemplu luminos al unei interfețe bine gândite este ktonanovenkogo.ru. Pe site, o soluție de culoare bună, un meniu intuitiv, prezența căutării interne, afișează articole până la data publicării, ceea ce face ca utilizarea resurselor să fie rapidă și plăcută.

Asta e tot, dragi prieteni. Acum știți că interfața este, pur și simplu vorbind, coaja externă de programe sau site-uri, ceea ce face mai ușor să le folosească.

Sper că după ce a citit articolul, nu veți mai avea întrebări. În orice caz, vă permite să vă inviți la comentarii pentru a dispune de acest subiect cu alți cititori de blog ktonanovenkogo.ru.

Și pentru a consolida cunoștințele, vă sugerez să vizionați un videoclip despre noua interfață pentru Android de la Samsung:

Multă baftă! Văzând întâlniri rapide pe paginile lui Ktonanovenkogo.ru

Cele mai multe interfețe moderne sunt concepute pentru utilizatorii experimentați. Macaralele nu au devenit imediat pentru toți familiari. Anterior, părțile laterale ale comutatorului au fost cu siguranță etichetate roșie și albastră - pentru a fi limpezi în cazul în care este rece și unde apa fierbinte. Acum suntem obișnuiți și tot mai multe macarale sunt eliberate fără etichetare. Probabil, ei și-au amintit în cele din urmă de ce parte curge.

Cu interfețe web a fost cam la fel. La începutul lui Zero, a existat un skiorfism - grafica a imitat obiectele din lumea reală. Dacă site-ul a fost butonul, arăta ca un buton real volumetric. Era de înțeles pentru majoritatea oamenilor care și-au cumpărat primele computere.

Dar momentul a venit când utilizatorii noi au devenit mai puțin. Oricine a vrut să înceapă să folosească un computer și pe internet a fost deja stăpânită în tehnologie. Iar nevoia de interfețe realiste a dispărut treptat.

Acum, în loc de pictograma detaliată "Meniu", așa-numitul burger este utilizat, de obicei, cu semnătura - trei benzi orizontale. Și știm foarte bine ce înseamnă. Știm, de asemenea, că site-urile citesc de obicei de sus în jos. Și nu au nevoie de săgeți pentru a explica. Interfețele moderne sunt concepute pentru utilizatorii experimentați și mai concise.

Programe

Interfața poate fi considerată un fel de contract între sistem și un mediu extern. Ca parte a programului de calculator, sistemul este funcția sau modulul, iar "mediul" este restul proiectului. Interfața descrie în mod formal ce date pot fi transmise între sistem și mediu. Și "Implementarea" poate fi descrisă ca "sistem de interfață minus". În limbi cum ar fi interfețele Haskell, pot fi extrem de specifice. Și în limbi precum Python, ei, dimpotrivă, sunt foarte obișnuiți. Tipul de interfață selectat poate afecta dimensiunea datoriei tehnice create și a performanței programatorului. Cum se calculează este scris mai jos. O metodă va fi de asemenea propusă pentru evaluarea și compararea diferitelor interfețe. Pe baza acestor comparații, vă puteți viziona pentru a utiliza instrumentul de limbă sau software.

Cel mai important concept în dezvoltarea de software - concept

Interfață

. Acest articol nu se referă la interfețele Java, ci despre interfețele în designul software-ului. Și într-o măsură mai mică - pe interfețe din lumea înconjurătoare. Desigur, o mulțime de alte concepte importante sunt folosite în dezvoltarea software-ului, dar cred că majoritatea sunt într-un fel, în funcție de importanța interfeței.

Care este interfața?

Cei mai mulți dintre noi sunt familiarizați cu două formulări scurte:

Interfața este un contract între sistem și un mediu extern. Interfața este un sistem de asociere cu un mediu extern.

Interfață = Sistemul ∩ Împrejurimi

Definiția cu pereche este potrivită, dacă sistemul este un obiect fizic. Ambele definiții sunt foarte abstracte, astfel încât să le considerăm în exemplul de imprimare de pe tastatură:

Aici sistemul este un laptop, mediul - mâinile (precum și labele pisicii, urcând pe tastatură). În consecință, interfața trebuie să fie o parte a interacțiunii dintre mâini și un laptop, care nu poate fi atribuită numai unele dintre părți, ci numai la ambele. De obicei ne gândim la mâini și tastatura este separată, astfel încât limitele exacte ale interfeței în acest caz fac obiectul litigiului filosofic. Voi decideți: dacă este tastatura ca un atomi întregi sau individuali care interacționează unul cu celălalt atunci când degetele și cheile contact.

Probabil, veți fi surprins de modul în care acest exemplu se corelează cu definiția interfeței ca un contract. În acest caz, acordul se înțelege un acord care în acel moment am cheltuit suficient efort atunci când își amintesc că locația cheilor și memoria musculară a fost refăcută. O serie de nuanțe sunt asociate cu tratatul. De exemplu, apăsarea și menținerea tastei are o valoare diferită în comparație cu o simplă apăsare unică.

Toate acestea sunt raționamente filosofice curioase, dar cum se referă la scrierea software-ului? Ei bine, să începem cu faptul că interfețele din programare vă înconjoară din toate părțile, chiar dacă nu vă acordați atenție. De exemplu, dacă programați pe Java, denumiți în mod explicit interfețele în funcție de scopul lor. Și în alte limbi, ele sunt, de asemenea, prezente. Să luăm în considerare un exemplu de funcție de interfață

:

add_numbers. 

nesemnat int, int); Void Other_Function (VOD) {add_numbers (3.4);} nesemnat int add_numbers (nesemnat int a, nesemnat int b) {return A + B;} INT (VID) {add_numbers (9.99); Retur 0;}

Aplicați aceeași tehnică de diferențiere a culorii

Pantaloni

Toate acestea sunt raționamente filosofice curioase, dar cum se referă la scrierea software-ului? Ei bine, să începem cu faptul că interfețele din programare vă înconjoară din toate părțile, chiar dacă nu vă acordați atenție. De exemplu, dacă programați pe Java, denumiți în mod explicit interfețele în funcție de scopul lor. Și în alte limbi, ele sunt, de asemenea, prezente. Să luăm în considerare un exemplu de funcție de interfață

Pentru a descrie mediul, sistemul

și interfață:

Toate acestea sunt raționamente filosofice curioase, dar cum se referă la scrierea software-ului? Ei bine, să începem cu faptul că interfețele din programare vă înconjoară din toate părțile, chiar dacă nu vă acordați atenție. De exemplu, dacă programați pe Java, denumiți în mod explicit interfețele în funcție de scopul lor. Și în alte limbi, ele sunt, de asemenea, prezente. Să luăm în considerare un exemplu de funcție de interfață

Sistemul având în vedere aici constă într-o funcție

. Dacă spui că poți considera ca metodă principală de sistem separată -

AltăFuncție.

Toate acestea sunt raționamente filosofice curioase, dar cum se referă la scrierea software-ului? Ei bine, să începem cu faptul că interfețele din programare vă înconjoară din toate părțile, chiar dacă nu vă acordați atenție. De exemplu, dacă programați pe Java, denumiți în mod explicit interfețele în funcție de scopul lor. Și în alte limbi, ele sunt, de asemenea, prezente. Să luăm în considerare un exemplu de funcție de interfață

- Atunci vei avea dreptate. Dar pentru simplitate, considerăm o funcție

Toate acestea sunt raționamente filosofice curioase, dar cum se referă la scrierea software-ului? Ei bine, să începem cu faptul că interfețele din programare vă înconjoară din toate părțile, chiar dacă nu vă acordați atenție. De exemplu, dacă programați pe Java, denumiți în mod explicit interfețele în funcție de scopul lor. Și în alte limbi, ele sunt, de asemenea, prezente. Să luăm în considerare un exemplu de funcție de interfață

.

Sistem izolat. De asemenea, este recomandabil să se ia în considerare o parte a interfeței de conversie la

După cum puteți vedea, a patra concept este adăugat aici: "Implementare". Este destul de dificil să discutăm despre subiectul interfețelor fără a lua în considerare implementările specifice. Să definim acest termen: Implementarea este un sistem de interfață minus. Implementare = interfața sistemului ∖

Implementare = System ∖ (System ∩ Mediu)

Trebuie să recunosc că nu am avut niciodată o astfel de definiție a implementării înainte. Dar aceasta este o extensie inevitabilă a unui set de definiții de interfață care au o serie de avantaje. Dacă sunteți un student sărac și pregătiți-vă pentru examen, atunci probabil că profesorul dvs. nu a auzit niciodată de această definiție. Nu voi fi surprins dacă va contrazice orice taxonomie a programului orientat pe obiecte. Dar chiar și în acest caz, nu o voi schimba. Lăsați fanii OOP să-și rescrie rezumatele lor în conformitate cu definiția mea.

El, la rândul său, ne conduce la următoarea concluzie logică: Când vorbim despre interfețele sistemului fizic, ne imaginăm de obicei "implementarea" acestui sistem sub forma unui singur obiect fizic. La urma urmei, ar fi ciudat să luăm în considerare implementarea "reală" fără a lua în considerare butoanele, afișajele sau alte componente. Și ne împinge să luăm în considerare interfața mai mult ca un "acord" și nu o combinație de obiecte fizice. Aceasta este, sub forma unui set de promisiuni, garanții sau ceva de genul ...

.

Contract între sistem și mediu

Interfață ca contract

Toate acestea sunt raționamente filosofice curioase, dar cum se referă la scrierea software-ului? Ei bine, să începem cu faptul că interfețele din programare vă înconjoară din toate părțile, chiar dacă nu vă acordați atenție. De exemplu, dacă programați pe Java, denumiți în mod explicit interfețele în funcție de scopul lor. Și în alte limbi, ele sunt, de asemenea, prezente. Să luăm în considerare un exemplu de funcție de interfață

Dacă luați în considerare interfața funcției

  • Sub forma unui contract, atunci garanțiile vor fi astfel: Toate acestea sunt raționamente filosofice curioase, dar cum se referă la scrierea software-ului? Ei bine, să începem cu faptul că interfețele din programare vă înconjoară din toate părțile, chiar dacă nu vă acordați atenție. De exemplu, dacă programați pe Java, denumiți în mod explicit interfețele în funcție de scopul lor. Și în alte limbi, ele sunt, de asemenea, prezente. Să luăm în considerare un exemplu de funcție de interfață Funcţie
  • Toate acestea sunt raționamente filosofice curioase, dar cum se referă la scrierea software-ului? Ei bine, să începem cu faptul că interfețele din programare vă înconjoară din toate părțile, chiar dacă nu vă acordați atenție. De exemplu, dacă programați pe Java, denumiți în mod explicit interfețele în funcție de scopul lor. Și în alte limbi, ele sunt, de asemenea, prezente. Să luăm în considerare un exemplu de funcție de interfață există. Are doar doi parametri, fiecare dintre acestea fiind nesemnat .
  • Toate acestea sunt raționamente filosofice curioase, dar cum se referă la scrierea software-ului? Ei bine, să începem cu faptul că interfețele din programare vă înconjoară din toate părțile, chiar dacă nu vă acordați atenție. De exemplu, dacă programați pe Java, denumiți în mod explicit interfețele în funcție de scopul lor. Și în alte limbi, ele sunt, de asemenea, prezente. Să luăm în considerare un exemplu de funcție de interfață Int. Are doar doi parametri, fiecare dintre acestea fiind nesemnat .

Returnează doar una nesemnată

  • Interfața acestei funcții nu ne spune nimic: Toate acestea sunt raționamente filosofice curioase, dar cum se referă la scrierea software-ului? Ei bine, să începem cu faptul că interfețele din programare vă înconjoară din toate părțile, chiar dacă nu vă acordați atenție. De exemplu, dacă programați pe Java, denumiți în mod explicit interfețele în funcție de scopul lor. Și în alte limbi, ele sunt, de asemenea, prezente. Să luăm în considerare un exemplu de funcție de interfață ;
  • Privind întreruperea executării Toate acestea sunt raționamente filosofice curioase, dar cum se referă la scrierea software-ului? Ei bine, să începem cu faptul că interfețele din programare vă înconjoară din toate părțile, chiar dacă nu vă acordați atenție. De exemplu, dacă programați pe Java, denumiți în mod explicit interfețele în funcție de scopul lor. Și în alte limbi, ele sunt, de asemenea, prezente. Să luăm în considerare un exemplu de funcție de interfață ;
  • despre complexitatea asimptotică a rangului Toate acestea sunt raționamente filosofice curioase, dar cum se referă la scrierea software-ului? Ei bine, să începem cu faptul că interfețele din programare vă înconjoară din toate părțile, chiar dacă nu vă acordați atenție. De exemplu, dacă programați pe Java, denumiți în mod explicit interfețele în funcție de scopul lor. Și în alte limbi, ele sunt, de asemenea, prezente. Să luăm în considerare un exemplu de funcție de interfață ;
  • Pe numărul de memorie liberă necesară pentru a începe Are doar doi parametri, fiecare dintre acestea fiind nesemnat ;
  • Despre implementarea specifică a nesemnatelor

Pe efectele secundare (alocarea memoriei, modificarea variabilelor globale).

Toate acestea sunt raționamente filosofice curioase, dar cum se referă la scrierea software-ului? Ei bine, să începem cu faptul că interfețele din programare vă înconjoară din toate părțile, chiar dacă nu vă acordați atenție. De exemplu, dacă programați pe Java, denumiți în mod explicit interfețele în funcție de scopul lor. Și în alte limbi, ele sunt, de asemenea, prezente. Să luăm în considerare un exemplu de funcție de interfață

Interfața descrisă mai sus

cunoscut sub tipul de funcție

Prototip.

. În versiunile anterioare ale K & Rc, a fost utilizată o formă mai slabă de descriere a interfețelor:

nesemnate int add_numbers ();

Definiția interfeței ca un contract este foarte convenabilă pentru programare. La urma urmei, majoritatea sarcinilor programator constau în determinarea și solicitarea seturilor de axiomi. Condițiile primare și finale oferă anumite proprietăți sau comportamente. Înainte de două părți să legeze o relație de afaceri între ele, pregătesc contractul. Ea a formulat rezultatul final, suma și cronologia plății. De asemenea, stipulează condițiile de încetare, rambursare și costuri anticipate. Dacă contractul este încălcat, situația convertește instanța sau arbitrajul. Dar dacă ați uitat ceva de a specifica în contract, atunci pot apărea surprize.

Cu programe de calculator toate la fel. Modulele și funcțiile spun că au nevoie și (uneori) ceea ce vor fi date în schimb. Încălcarea acestui contract va duce la o eroare de compilare, la o eroare de execuție, la eșecul aplicației, a sistemului, a instrumentelor de control al calității și a conducerii manualului. Aș spune chiar că definiția interfeței ca contract nu este metaforică. Iată aceleași principii ca și în contractul comercial, deși nu este atât de detaliat.

Brevete, drepturi de autor și interfețe

Nu vă voi da sfaturi în domeniul dreptului. Poate că ceva de la mine a spus chiar și va contrazice legile. Toate următoarele sunt opinia privată a autorului.

Deci, sunt înclinat

literalmente

Luați în considerare interfața ca un "contract comercial" între două entități. Subliniez - nu o consider o metaforă. Aduc mai ales această interpretare de către specialiști în teoria mașinilor de calcul și protestatarii drepturilor de autor.

În cazul în care brevetul de interfață? Având în vedere definiția sa ca un contract între sistem și mediu, cred că utilizarea brevetelor ar fi o greșeală. Și, aparent, legea existentă acceptă poziția mea. Dar țineți cont de faptul că cuvântul "interfață" este folosit foarte mult și, adesea, în sens, așa cum am descris mai sus.

Ar trebui să protejez interfața cu drepturile de autor? Din nou, având în vedere natura "contractuală", cred că "codul sursă" al interfeței trebuie să fie obiectul dreptului de autor. În același timp, drepturile de autor nu ar trebui să fie aplicate aspectelor legate de interfețele care le fac speciale. Este suficient să protejați codul sursă sau o imagine scrisă de mână, dar nu garanție sau limitări. În cazul în care restricțiile de garanție sau de interfață devin inseparabile din oricare dintre părțile codului său, aceste părți ar trebui să fie private din partea dreaptă a protecției.

Propun un test simplu care vă permite să apreciați dacă este necesar să vă protejați drepturile de autor.

Dacă doriți să protejați un anumit tip de atribut, inclusiv orice componente dintr-o terță parte, în orice mod utilizat de interfață, puteți crea întotdeauna un înlocuitor adecvat. Înlocuirea implementează aceeași interfață și utilizată cu succes în software de la o terță parte, fără modificări ale acestui software în sine, precum și fără încălcarea oricăror drepturi de autor. Dacă orice înlocuire va duce la încălcarea drepturilor de autor sau implică modificarea software-ului de la o terță parte sau se va agrava funcționalitatea, atunci atributul set este prea agresiv și trebuie redus.

Cred că, cu ajutorul acestui test, este recomandabil să verificați chiar și la brevetabilitate. Vă rugăm să rețineți: scopul testului este de a determina extrem de

Inappuneri

protecția drepturilor de autor sau brevet. El nu va ajuta la abordarea asta

urma

Rotiți protecția. În plus, acest test este doar opinia mea, și nu un act de reglementare sau lege.

De asemenea, doresc să observ că orice criteriu considerat ca parte a interfeței în aceeași limbă poate să nu fie că într-o altă limbă. De exemplu, în Java, procedura de declarare a funcțiilor nu afectează executarea programului. Și dacă afirmați accidental că ordinea funcțiilor din dosar nu contează, va fi o eroare în legătură cu programul de pe Python: 

Def Foo (): Imprimare ("ASDF") Def Foo (ABC): Imprimare (ABC) Foo ("LOL")

Toate aceste conversații despre legile mi-au amintit de

Oracle împotriva Google

. Potrivit link-ului dat, puteți găsi detalii interesante pentru dezvoltatori, așa că mă voi baza pe ele în analiza mea. Având în vedere toate aspectele, nu văd motivele pentru care nu sunt de acord cu decizia cazului în favoarea Oracle. Nu pot spune că le sprijină necondiționat, deoarece nu suntem disponibili atât de multe părți ale procedurii.

Cred că mulți îngrijorați de faptul că va fi creat un precedent, permițând elementelor interfeței să protejeze brevetul sau dreptul de autor. Doar cazul în care testul meu nu ar fi trecut. Tribunalul Districtual a luat o decizie: "Structura, secvența și arhitectura API pot fi protejate de drepturile de autor". Nu cred că aceasta este o problemă, deoarece "structura, secvența și arhitectura" în definiția sa va trece complet prin testul meu. Voi da câteva extrase din articol de pe linkul de mai sus:

"Tribunalul districtual a concluzionat că" există doar o singură cale de a scrie "anunțuri pentru interacțiunea cu Java. Dacă da, utilizarea acelorași anunțuri nu este supusă drepturilor de autor. Google nu contestă faptul că își pot scrie propriul API pentru a accesa Java, cu excepția a trei ". În cele din urmă, "în Google a recunoscut că au copiat literalmente anunțuri".

Cred că Curtea a acceptat decizia corectă, concluzionând că proprietățile unice ale interfeței nu ar trebui protejate. În plus, Google a recunoscut copierea "literal". Dacă aceasta înseamnă copiatoare, inclusiv toate lacunele și erorile de ortografie din comentarii, atunci consider că este o încălcare a drepturilor. Chiar dacă interfața nu poate fi protejată, aceasta nu ar trebui să interfereze cu protecția expresiei creative individuale.

Știu despre acest litigiu numai din surse de rețea deschise, dar, aparent, codul original Java a copiat complet către Google, inclusiv interfețe. Se pare că ei înșiși au crezut că este necesar să se permită utilizarea lor de Java, deoarece a făcut obiectul negocierilor privind acordurile de licențiere cu Soarele înainte de 2010. Dar aceste acorduri au eșuat după ce soarele a fost achiziționat de Oracle. Cu toate acestea, Google a continuat să folosească copiile "literale" ale codului, care în mod clar nu a fost în beneficiul ei la proces. Bănuiesc că avocații lor au știut despre slăbiciunea poziției lor, așa că au ales o strategie de protecție bazată pe cererea legitimă de neproliferare a drepturilor de autor la interfețe. Sperau să câștige cazul în detrimentul reprezentării interfeței sub forma codului sursă și asocierea acesteia cu un concept mai filozofic.

Ceea ce este "modul" sau "abstractizare"?

Cu cuvântul "modul" din capul meu există o imagine de capital a postului. Această ilustrare demonstrează bine importanța limitelor modulului și interacțiunea acestuia cu mediul. Interfața cubului limitează destul de multă interacțiune a mediului extern cu conținutul cubului. Nu veți putea să treceți interfața, așa că trebuie să păstrați "regulile jocului" impuse acestuia. În cele din urmă, nu există nimic în interiorul cubului, dar nu contează: este important nu conținutul său, ci o interfață.

Un alt exemplu: structura membranei celulare. Diferitele componente oferă numai substanțele necesare prin membrană și numai atunci când este necesar.

În contextul acestui articol, voi folosi termenii "module" și "abstractizare" ca sinonime. Desigur, dicționarul explicativ nu va fi de acord cu mine, și chiar în diferite limbi de programare, acești termeni au un înțeles diferit. Dar, în acest caz, sunt interesat doar de faptul că ambele entități pot fi privite ca un sistem așa cum se înțelege în acest articol. Asta este că abstracțiile și modurile pot consta într-o interfață și implementare.

Puteți citi o funcție separată a modulului în C, "Modul" - în Python, Clasa sau pachetul - în Java. Ceva, dacă avea doar o interfață externă și o implementare "ascunsă". În plus, poate exista o consecință a regulilor limbii sau chiar a deciziei unui programator.

Uscarea abstracției

Din câte știu, ideea

Abstractiile Dumpy au prezentat Joel Spolski

. În eseul său există câteva exemple bune, dar aș vrea să-mi aduc propria mea. În programare, conceptul de "hărți" este foarte des întâlnit: reprezentând structura de date constând din perechi de chei și valori. Limită importantă: Cardul asigură că toate cheile trebuie să fie unice. O încercare de a înregistra o nouă valoare pentru o cheie existentă va duce la o eroare sau să suprascrie valoarea anterioară. Linia de jos este că cheile nu trebuie duplicate. Cel mai adesea, programatorii necesită dorința de a rezolva toate aceste chei. Și din moment ce hărțile nu pot garanta o anumită ordine de sortare a cheilor, este uneori necesar să se întrebe în ce ordine vor fi după busting? Aceasta este consecința faptului că interfața de card nu permite garanții de sortare. Și, deși se crede că nu contează, dar în practică, încă mai vreau să sortez. Deci, este necesar ca o organizație de date mai eficientă, de exemplu, să faciliteze verificarea cheilor existente.

Datele sortate Forța Brute poate da un rezultat complet diferit în comparație cu datele aleatorii copleșitoare. Să presupunem că trebuie să găsiți valoarea minimă din listă: 

min = null; list = harta.getmapkeys (); pentru (element în listă) {if (min == null) {min = element} altfel (item <min) {min = min; / * Această linie are un bug * /}}

Sucursală

Altfel.

Nu va fi niciodată executat dacă datele sunt sortate ascendente. Chiar dacă începeți să verificați dintr-o locație aleatorie a listei, programul nu se va ciocni niciodată cu acest șir. Și aceasta este o problemă uriașă, deoarece dacă schimbați implementarea cardului și nu se va întoarce tastele sortate, atunci codul dvs. va fi realizat brusc pe un bug de eroare. Și până când veți uita complet de acest cod și bomba ascunsă în interiorul acestuia.

Vreau să-mi ofer propria definiție a scurgerilor de abstractizare.

Scurgerile de abstractizare (scurgeri abstracte) se numește situația în care implementarea poate afecta mediul, deoarece nu a fost prevăzută de interfață.

Conform acestei definiții,

Aproape fiecare

Abstractizare - respirație. La urma urmei, descrierea din interfața tuturor tipurilor de impact asupra mediului are sens numai în cele mai stricte sisteme matematice. Și ca și pentru sistemele fizice, atunci vă puteți aminti

.

Teorema Gödel despre incompletență

Ideea găurilor cele mai multe abstracții nu este nerezonabilă. Acest lucru a însemnat Joel Spolski în "Legea rezumatelor necorespunzătoare":

"Toate abstracțiile non-triviale sunt un Holey într-o anumită măsură."

Odată ce toate abstracțiile se sprijină, despre ce să vorbim? Problemele apar numai atunci când o parte a mediului începe să se bazeze pe una dintre modalitățile neprevăzute de expunere la sistem. Este vorba despre astfel de scurgeri pe care le spune toată lumea.

Acest lucru duce la consecințe profunde, nu numai din punctul de vedere al bug-urilor obișnuite, ci și din domeniul securității. Cu sisteme fizice în care există scurgeri în mediul exterior, compromiterea securității, termenul "

Atac de canal lateral

" În combinație cu o declarație că toate abstracțiile găurilor, ne conduce la concluzia:

Fiecare implementare fizică a criptosistemului este vulnerabilă la atacurile terțe.

Având în vedere toate cele de mai sus, această idee poate fi extinsă nu numai la implementările fizice, ci și asupra implementărilor eminate.

Evaluarea și compararea interfețelor

După cum am văzut deja mai sus, în interfețe pe C sunt seturi precum tipul de valoare de returnare și numărul de parametri care pot fi transmise. Cum rămâne cu Python? Folosesc termenul "interfață" în conformitate cu contextul articolului, adică într-un sens mai larg în comparație cu ceea ce scriu în cărțile despre "interfețe" în Python. 

Def ADD_Numbers (A, B): Returnarea A + Bprint (Add_numbers (3,1)) Imprimare (Add_numbers ("ABC", "Def"))

În această limbă, trebuie să formalizăm tipurile de interfață de funcție. Simplifică definiția și funcția de apel, deoarece este necesar să se proceseze mai puține informații. Pe de altă parte, restricțiile pe care le puteți efectua verificarea pentru căutarea erorilor mai puțin.

Toate acestea sunt raționamente filosofice curioase, dar cum se referă la scrierea software-ului? Ei bine, să începem cu faptul că interfețele din programare vă înconjoară din toate părțile, chiar dacă nu vă acordați atenție. De exemplu, dacă programați pe Java, denumiți în mod explicit interfețele în funcție de scopul lor. Și în alte limbi, ele sunt, de asemenea, prezente. Să luăm în considerare un exemplu de funcție de interfață

Cred că aveți nevoie de ceva de spus despre evaluarea și compararea diferitelor caracteristici ale interfeței din punctul de vedere al metodelor de transmisie a informațiilor. Puteți evalua atât o interfață specifică, cât și un set de interfețe care pot fi implementate în această limbă. Să ne amintim exemplul nostru cu

Și estimăm cât de multe informații putem trece prin interfața și ocupăm-o, cu ajutorul scurgerilor de abstractizare. Prin interfața
Mergând în jurul interfeței Descrierea caracteristicilor Mergând în jurul interfeței Descrierea caracteristicilor
Numărul de stări posibile Tipul parametrului 1. 1 (Int nesemnat) Starea variabilei globale
(Numărul variabilelor globale) * (numărul de stări de variabile globale) Tipul parametrului 1. Tipul parametrului 2. Sistemul de fișiere
Numărul de stare a sistemului de stat Tipul parametrului 1. Tipul valorii returnate Procesor Utilizați ora
Nu este limitat Valoarea parametrului 1. 2 ^ (numărați în int) nesemnate) Starea Kuchi.
Numărul de state Valoarea parametrului 1. Valoarea parametrilor 2. Mulți alții ...
... Valoarea parametrului 1.

Valoare returnată

Toate acestea sunt raționamente filosofice curioase, dar cum se referă la scrierea software-ului? Ei bine, să începem cu faptul că interfețele din programare vă înconjoară din toate părțile, chiar dacă nu vă acordați atenție. De exemplu, dacă programați pe Java, denumiți în mod explicit interfețele în funcție de scopul lor. Și în alte limbi, ele sunt, de asemenea, prezente. Să luăm în considerare un exemplu de funcție de interfață

Și există o serie de lucruri care pot comunica cu

prin interfața Python. Transmisia de informații prin interfața Python
Mergând în jurul interfeței Descrierea caracteristicilor Mergând în jurul interfeței Descrierea caracteristicilor
Numărul de stări posibile Transferul informațiilor ocoliți interfața Python 1 (Int nesemnat) Sistemul de fișiere
(Numărul variabilelor globale) * (numărul de stări de variabile globale) Transferul informațiilor ocoliți interfața Python Tipul parametrului 2. Procesor Utilizați ora
Numărul de stare a sistemului de stat Transferul informațiilor ocoliți interfața Python Tipul valorii returnate Starea Kuchi.
Nu este limitat Transferul informațiilor ocoliți interfața Python 2 ^ (numărați în int) nesemnate) Mulți alții ...
Numărul de state Transferul informațiilor ocoliți interfața Python Valoarea parametrilor 2. Starea variabilei globale
... Transferul informațiilor ocoliți interfața Python

Practic infinit

Și acum aruncați o privire la numărul de tipuri de interfață pe care le putem descrie în Haskell: 

Add_numbers :: Int> Int -> intadd_numbers 3 4 = 7main = Imprimare (add_numbers 3 4)

Toate acestea sunt raționamente filosofice curioase, dar cum se referă la scrierea software-ului? Ei bine, să începem cu faptul că interfețele din programare vă înconjoară din toate părțile, chiar dacă nu vă acordați atenție. De exemplu, dacă programați pe Java, denumiți în mod explicit interfețele în funcție de scopul lor. Și în alte limbi, ele sunt, de asemenea, prezente. Să luăm în considerare un exemplu de funcție de interfață

Având în vedere acest cod, interfața

Pot obține următoarele informații: Transferarea informațiilor prin interfața Haskell
Mergând în jurul interfeței Descrierea caracteristicilor Mergând în jurul interfeței Descrierea caracteristicilor
Numărul de stări posibile Transmiterea informațiilor prin interfața Haskell Tipul valorii returnate Procesor Utilizați ora
(Numărul variabilelor globale) * (numărul de stări de variabile globale) Transmiterea informațiilor prin interfața Haskell 1 (int) Procesor Utilizați ora
Numărul de stare a sistemului de stat Transmiterea informațiilor prin interfața Haskell Efectul asupra procesorului / cache-ului de memorie Mulți alții ...
Nu este limitat Alte ...
Numărul de state 1 (valoarea 3)
... 1 (valoarea 4)

Cel puțin 2 ^ 30 [1]

  • Pentru o anumită interfață în limba dvs. aleasă, puteți evalua, de asemenea, numărul de modalități unice de transfer de informații:
  • prin interfață;

Mergând în jurul interfeței prin scurgeri de abstractizare.

  • De asemenea, puteți acorda atenție următoarelor:
  • Câte restricții puteți utiliza în acest limbaj din punctul de vedere al numărului minim și maxim de informații transmise prin interfață;

Ce instrumente oferă această limbă pentru a preveni interacțiunea cu bypass-ul de interfață.

Programe
Să analizăm în acest fel interfața de utilizator grafică în care este posibilă modificarea dosarelor: Transmiterea informațiilor prin GUI
Mergând în jurul interfeței Descrierea caracteristicilor Mergând în jurul interfeței Descrierea caracteristicilor
Transferul informațiilor Bypassing GUI Faceți clic pe folderul 1 Numărul de pixeli pe ecranul deținut de dosarul 1 * Număr de clicuri Procesor Utilizați ora
Posibilități ascunse UI. Faceți clic pe folderul 2 Numărul de pixeli de pe ecranul deținut de dosarul 2 * Număr de clicuri Combinații de apel rapid non-standard
Numărul de pixeli pe ecran ocupat de butonul 2 Cursor de ghidare la dosarul 1 Numărul de pixeli de pe ecranul deținut de dosarul 1 Mulți alții ...
Alte capabilități UI neașteptate Cursor de ghidare la dosarul 2
Numărul de pixeli de pe ecranul deținut de dosarul 2 Timp între îndrumare și faceți clic pe
Infinit. Evenimente standard de tastatură
Numărul de combinații cheie standard Ecranul de ecran ocupat de GUI

Numărul de pixeli utilizați pentru a afișa GUI

Și acum luați în considerare aceeași sarcină de a schimba folderul folosind linia de comandă și

:

Să analizăm în acest fel interfața de utilizator grafică în care este posibilă modificarea dosarelor: Transmiterea informațiilor prin GUI
Mergând în jurul interfeței Descrierea caracteristicilor Mergând în jurul interfeței Descrierea caracteristicilor
CD Procesor Utilizați ora Numărul de nume de dosare pe care îl puteți apela Procesor Utilizați ora

Mediu variabil

În cele două mese anterioare, nu am inclus date, cum ar fi numărul de zgomot din semnal. Dacă comparați complexitatea repetării aceleiași secvențe atunci când apăsați tastele (unul după altul) și mișcarea mouse-ului (pixel în spatele pixelului), este evident că în al doilea caz, erorile sunt mult mai mult. În interfețe grafice, acest lucru este compensat făcând o semantică mai puțin strictă. Imaginați-vă dacă pe butoanele "OK" și "Anulare" disponibile în zonă, clicurile au fost doar o lățime de numai 1 pixeli.

Este posibil să complicați în continuare analiza dacă evaluați modificarea ponderii erorilor la utilizatorii cu dizabilități fizice.

  • Deci, am considerat unul dintre modalitățile posibile de a evalua și compara interfețele. Pe baza exemplelor de mai sus și a propriului lor experiență, permiteți-mi să fac mai multe extrapolare:
  • Oamenii preferă interfețe care nu sunt prea stricte la primirea informațiilor, mai ales dacă interfața nu este familiarizată.
  • Interfețele prea stricte sunt mai des utilizate incorect.
  • Interfețe cuprinzătoare care găzduiesc cantități mari de informații arată puternice, dar adesea folosite incorect.
  • Dacă interacțiunea devine obositoare, oamenii încearcă să transfere informații la bypass-ul de interfață.

Atunci când interacționează, ocolind interfața, prin scurgeri de abstractizare, apariția surprizelor neplăcute este extrem de probabilă.

Uscarea și interfețele limitate

Voi descrie mai multe observații bazate pe analiza din secțiunea anterioară. Dar mai întâi voi da câteva definiții:

Interfața Leaky (interfața Leaky) este o interfață care este ignorată în timpul oricăror interacțiuni dintre sistem și mediu.

O interfață limitată (interfață specifică) este o interfață cu un număr relativ mic de intrări și ieșiri posibile.

Un bun exemplu de interfață limitată -

Funcții specificate în bucăți

definit doar pentru un număr mic de date de intrare.

Dacă puteți evalua în mod rezonabil interfețele "găuri" sau "limitare", este logic să subliniem intervalul, la un capăt al căruia va fi interfețe foarte limitate și inactive, iar pe cealaltă - nelimitat și ușor.

Probabil că oferiți pe cineva să se deplaseze la stânga sau la dreapta pe scară, dar cel mai important, ați apucat ideea. Puteți chiar să spargeți în două scale separate: în funcție de gradul de găuri și rigori. Deși, în general, aceste două concepte se corelează bine.

Următoarea corelație pe care vreau să o ofer este derivată din experiența mea. Pe marginea din stânga a scalei "Eroare" sunt mai puțin frecvente și, de obicei, ele apar din cauza eșecurilor

Validare

.

. La marginea dreaptă a scalei de eroare apare mai des, și adesea rațiunea lor se află în eșecurile când

verificare

Complexitatea asimptotică a datoriei tehnice

Voi începe cu declarația:

Partea principală a datoriei tehnice apare în proiect sau datorită asistenței inacceptabile privind scurgerea abstracțiilor sau datorită interfețelor extrem de incredibile, care complică foarte mult prognoza consecințelor.

La început, proiectul conține unul sau două module, și să studieze un acord bun de interfață, va trebui să efectuați cantitatea de lucru la (1). Dacă interfața dvs. este rea, volumul datoriei tehnice va fi, de asemenea, egal cu (1), deci nu va trebui să cheltuiți prea mult timp la aducerea contractului de interfață. Dar, cu o creștere liniară a cantității de module, volumul de legături intermodulice poate realiza O (n ^ 2). Prin urmare, cu o interfață proastă, dacă fiecare modul interacționează cu toate celelalte module, numărul de apeluri la interfață în cel mai rău caz va fi proporțional cu N ^ 2.

După cum se poate observa din grafice, acesta este inițial salvat pe crearea unei interfețe bine gândite. Dar această victorie este rapid pierdută datorită problemelor crescânde asociate cu interacțiunea inter-modulă. Valoarea muncii din cauza acestei creșteri a gradului de cantitate de module, în timp ce cu o interfață bună crește liniar. Cel mai grav scenariu - când fiecare modul comunică cu fiecare modul, există mai multe probleme în procesul de Hendeshka, de aici și de tulpini.

În mod obișnuit, nivelul interacțiunii intermodulice este în creștere mai lentă decât O (n ^ 2), dar este cu siguranță mai rapidă decât aproximativ (n). Există, de asemenea, un factor care trecerea la începutul creșterii rapide în viitor: aceasta este memoria umană. Chiar și atunci când există 20 de module în proiectul dvs., probabil că vă amintiți că face fiecare dintre ele. Deci, din toate contractele aveți nevoie doar de numele de fumuri ale funcțiilor și acordurilor esoterice. Dar, de îndată ce proiectul devine destul de mare, atunci multe detalii sunt uitate sau când începe oamenii noi - și creșterea puternică a costurilor forței de muncă începe.

  • De ce încă folosesc linia de comandă?
  • Veți primi răspunsuri diferite de la oameni la această întrebare, nici unul dintre acestea nu mi se pare cel mai important lucru:
  • Linia de comandă este flexibilă și oferă multe oportunități.

Consumă mai puține resurse.

Acest lucru vă permite să înțelegeți mai bine cum funcționează totul.

Cel mai important lucru este motivul pentru care încă folosim linia de comandă, este

AUTOMATIZARE!

Este greu de supraestimat beneficiile utilizării proceselor automate. Dacă trebuie să conduc un cluster la 100 de servere, nu mă voi conecta la fiecare dintre ele individual și instalând manual software-ul, făcând clic pe o grămadă de butoane în nenumărate GUI. Chiar dacă aveți nevoie să automatizați procesul Clichan în GUI, veți avea nevoie de un alt fișier în care informațiile vor fi salvate unde și cum să faceți clic. Ceva ca un fișier flexibil ... echipe.

Deși am putea implementa automatizarea prin apăsare și pe grabă pe ecran, nu trebuie să uităm că acest tip de interacțiune cu mașina este inventat pentru oameni. Aceasta implică utilizarea unei interfețe non-stricte care nu necesită o precizie ridicată. Prin urmare, clickerul dvs. automat va fi folosit cu siguranță dacă fereastra se mișcă brusc din poziția sa sau se va schimba fontul sistemului. Cu GUI, sunt conectate prea multe variabile. Iar linia de comandă vă permite să acționați cu mult mai precis, interacționați printr-o interfață foarte strictă. Prin urmare, mulți oameni nu-i plac, spre deosebire de programele de calculator.

Desigur, există situații în care acuratețea scăzută a interacțiunii GUI este bună. De exemplu, atunci când creați picturi digitale, nu trebuie să vă faceți griji cu privire la plasarea și culoarea fiecărui pixel. Principalul lucru trebuie să fie

ceva

Special pentru fiecare pixel. Prin urmare, zgomotul transmis prin deplasarea mâinilor Cursorul devine informații importante în produsul final.

Alegerea limbii potrivite

După secțiunea despre complexitatea asimptotică a datoriei tehnice, ați putea crede că orice proiect trebuie să fie scris într-o limbă cu condiții foarte stricte de contracte de interfață, cum ar fi Haskell sau Java. Dar nu este exact ceea ce am vrut să transmit. Răspunsul la următoarea întrebare vă poate ajuta să faceți alegerea potrivită.

Cât de probabil să schimbe cerințele pentru proiectul dvs.?

La începutul noului caz, răspunsul va fi cu siguranță "foarte probabil", mai ales dacă este creat un mic produs și chiar și cu ambiguitatea perspectivelor sale pe piață. Dacă cerințele sunt formulate în mod clar ca, de exemplu, în cazul creării unui compilator sau a dezvoltării unui proiect bazat pe standarde internaționale, răspunsul va fi cu siguranță "nu prea probabil".

Dacă ați răspuns "foarte probabil", utilizați o limbă care vă va permite să pierdeți mai puțin timp la specificarea contractelor de interfață: acestea vor funcționa cu siguranță împotriva dvs. în cazul modificărilor cerințelor. Dar principala sarcină aici nu este de a obține implementarea ideală a cerințelor, dar cerințele ideale care vă permit

a incepe

Creați implementarea finală. O excepție poate fi o situație în care MVP-ul dvs. este un sistem imens cu sute de module. Dacă o mulțime de oameni sunt implicați în proiect, atunci o interfață bună este pur și simplu necesară pentru ca ei să vină unul la celălalt.

Dacă ați răspuns "nu prea probabil", utilizați o limbă cu contracte foarte stricte de interfață. Mai întâi va trebui să lucrați mai mult, dar apoi introducerea de noi oportunități va necesita mai puțin efort. Singura excepție poate fi o situație dacă scrieți un produs mic (câteva sute de șiruri).

Uneori au fost rupte destul de puține exemplare cu privire la ceea ce Twitter a început să creeze pe Ruby pe șine, iar apoi a fost motivul scalării proiectului. Mai târziu, Twitter a fost tradus în Scala. Cineva poate presupune că dezvoltatorii au făcut o greșeală și ar trebui să aleagă imediat scala. Eu nu cred acest lucru. În inima Twitter se află o idee foarte simplă și, în condițiile unui număr mare de concurenți, trebuiau să câștige poziția dominantă pe piață. Trebuiau să crească cât mai repede posibil, în ciuda cheltuielilor. Ciclurile de dezvoltare ale noilor caracteristici ar fi trebuit să treacă cât mai repede posibil, deoarece îi permite în cel mai scurt timp posibil pentru a înțelege exact utilizatorii, ce produs doresc ca rezultat pentru a obține. Dificultățile de scalare sunt un semn de eșec, ci succes. Viziunea lui Twitter a fost formulată ca produs finit și a rămas doar să-și dea seama. Din punctul de vedere al dezvoltatorilor, este doar o Nirvana, toată lumea visează despre un astfel de lucru, dar puțini oameni reușesc să lucreze în astfel de condiții: "Retrigați acest rahat de la zero pe limba dvs. preferată, deoarece este convenabil pentru dvs., dacă numai În viitor, era mai ușor să lucrezi cu el. Este mult mai ușor să rescrieți ceva de la zero, având o implementare mai slabă în fața ochilor noștri decât să încercați să adăugați un aspect de produs, ceea ce va permite companiei să decoleze. Din păcate, majoritatea participanților la piață merg doar prin evitarea costurilor "inutile" pentru a crea de la zero și pentru a petrece o mulțime de putere și timp pe scalare că a fost inițial imposibil de scalat.

De ce este atât de popular Python?

În secțiunea privind găurile și interfețele stricte, am vorbit despre metoda de clasificare a interfețelor, în funcție de tendința lor de scurgeri de abstracții, precum și cât de stricte pot fi definiții de interfață. Și am subliniat faptul că mai multe interfețe "prietenoase" și "productive" sunt mult mai predispuse la scurgeri decât cealaltă parte a spectrului de interfață.

Cred că popularitatea lui Python rezultă din faptul că este o limbă excelentă introductivă care oferă contracte extrem de simple de interfață. Din același motiv, cu o creștere a proiectului pe Python, devine din ce în ce mai dificilă.

Python este foarte popular în comunitatea științifică și în rândul iubitorilor experimentați cu analiza numerică. Însăși esența experimentului necesită o îmbunătățire constantă a produsului creat, iar interfețele stricte încetinesc.

De ce software-ul corporativ scrie de obicei pe Java / C ++?

În secțiunea despre găuri și interfețe stricte, am vorbit despre compromisuri asociate cu diferite tipuri de interfețe. Java și C ++ sunt mai mult la partea strictă a spectrului, spre deosebire de Python sau Ruby. Da, scurgerile pot avea scurgeri și există limbi mai stricte (aceeași haskell), dar Java și C ++ sunt mai echilibrate din punct de vedere al scalabilității, prieteniei și versurilor. În plus, aceste două limbi vă permit să fiți flexibili pentru a controla ledblele interfețelor în funcție de acordurile de proiect. De exemplu, făcând variabile sau funcții cu privat, public sau protejat.

Cum să taie colțurile

Dacă doriți să aduceți ceva din acest articol, vă rugăm să: Când trebuie să tăiați colțurile în proiect, faceți-o înăuntru

Vânzări

și întoarceți-vă în jurul B.

  • foarte bine
  • interfață. Chiar dacă implementarea nu este prea bună și problemele sale curg în alte părți ale sistemului, atunci aceasta este o problemă de interfață proastă! Astfel încât să nu existe neînțelegeri, lăsați lista cu ceea ce vreau să spun sub interfețe:
  • Prototipuri de funcții.
  • "Interfețe" Java.
  • Metode de cursuri publice.
  • Variabile ale componentelor publice.
  • Fișierele de antet (.h) în C / C ++.
  • Puncte de sfârșit de API restabilite.
  • Routing URL.
  • Aspecte publice ale "modelelor" sau "pachetelor".

Structura bazei de date logică (DDL).

Și mult mai mult.

Concluzie

După cum puteți vedea, conceptul de interfață este extrem de important și are un impact foarte mare asupra dezvoltării proiectului în domeniul protecției juridice, a productivității și a numărului de relații filosofice cu alte aspecte ale structurii sistemului. Cereți altor programatori că se gândesc la interfețe și ascultă tot felul de lucruri.

Interfața cu utilizatorul este mijlocul interacțiunii dintre oameni și un computer. Vorbind cu cuvinte simple, interfața este partea externă a programului sau a dispozitivului cu care funcționează utilizatorul. Interfața cuvântului - cartuș cu interfață engleză, adică "legătura de frontieră".

Cel mai adesea, sub interfața Word implică interfața cu utilizatorul. De exemplu, ei spun: "Acest magazin online are o interfață incomodă, confuză". Aceasta înseamnă că magazinul este incomod pentru a interacționa. De exemplu, este dificil să găsiți bunurile necesare, nu este clar cum să plasați o comandă, site-ul nu salvează datele introduse anterior etc.

Exemple de utilizare:

Mulți utilizatori ar dori să returneze interfața veche "Vkontakte", nu-i plac noul.

Programul are o interfață intuitivă - clar imediat unde să apăsați și la ce va duce.

Interfața Windows este foarte complicată: utilizatorii neexperimentați sunt confuzi într-o grămadă de setări.

Interfața Web este o pagină pe Internet care permite utilizatorului să interacționeze cu un anumit serviciu sau dispozitiv direct prin browser. De exemplu, folosind interfața web, puteți utiliza banca online: Mergeți la pagina băncii, introduceți datele de conectare și parola, apoi traduceți bani între conturi, plătiți pentru servicii etc.

Interfață hardware și software. Care este interfața USB și API În plus față de interfața cu utilizatorul, există o interfață software (interacțiunea programelor între ele) și interfața hardware (metode de interacțiune a dispozitivelor fizice, "fier"). Când spun despre interfața hardware, ele înseamnă de obicei conectori prin care dispozitivele pot fi conectate unul cu celălalt. De exemplu, "conexiune prin interfața USB" înseamnă dispozitivele de conectare prin

Anvelopele secvențiale universale

destinate conectării echipamentului periferic. Printr-un USB, de exemplu, puteți conecta o tastatură, mouse, cameră sau smartphone pe un computer.

Interfață hardware - cablu USB

Interfața programului este o modalitate de a interacționa programele între ele. De exemplu, API (interfața de programare a aplicațiilor, interfața de programare a aplicațiilor) este un set de comenzi care permite programelor să schimbe automat datele fără participarea oamenilor. Un program API trimite o cerere, altul răspunde.

De exemplu, pe site-ul de știri indică ratele valutare care se schimbă în timp real. Acest lucru nu înseamnă că editorul site-ului de fiecare dată schimbă manual numerele de pe pagină. Site-ul de știri trimite o solicitare API unui server cu un schimb valutar și primește numerele necesare de acolo.

Tipuri de interfețe de utilizator. Grafic, text și altele

Interfața de text este o modalitate de a comunica o persoană cu un computer utilizând imprimarea comenzii. De exemplu, în sistemul de operare MS-DOS, interfața a fost textuală - Apelați utilizatorul comenzile necesare de pe tastatură și aparatul le-a efectuat.

Interfața Text MS-DOS - Linia de comandă

Problema interfeței de text este că utilizatorul trebuie să cunoască comenzile necesare și de fiecare dată tastați manual fără erori. Parțial din această dificultate a eliminat cochilia pentru MS-DOS - de exemplu, Comandantul Nortonului.

Norton Commander - Manager de fișiere pentru MS-DOS. Nu puteți introduce numai comenzi pe tastatură, ci să lucrați cu fișiere utilizând comenzi rapide de la tastatură.

În curând au apărut interfețe grafice în care utilizatorul interacționează cu obiecte vizuale: butoane, pictograme, imagini de pe ecran. Sistemul de operare Windows utilizează o interfață grafică: utilizatorul face clic pe pictogramele de pe pictograme - pictograme care prezintă fișiere și programe.

Interfață grafică Windows 3.11

Interfața materială este o modalitate de a interacționa cu un computer folosind structuri tangibile. De exemplu, un mouse computer sau un joystick este o interfață materială. Mutarea mouse-ului pe masă, deplasați simultan săgeata cursorului de pe ecran.

Interfață materială - Mouse-ul computerului. Foto: DepozitePhotos.

Interfața vocală este controlul utilizând comenzi de vorbire. Vocea umană astăzi știe chiar și telefoanele mobile. De exemplu, Siri de la Apple, asistentul vocal Google, "Alice" de la Yandex

Interfață vocală - Apple Siri. Siri este o reducere a interfeței de interpretare și recunoaștere a vorbirii (interfață de recunoaștere a vorbirii și interpretare). Foto: DepozitePhotos.

O interfață de instrumente vă permite să oferiți comenzi, făcând gesturi cu degetul, mâna, mouse-ul computerului, controler special etc.

Interfață de instalare - consola de joc Nintendo Wii, a cărei controlori răspund la mișcarea utilizatorului.

Interfața tactilă permite utilizatorului să experimenteze senzații tactile (împingere, vibrație etc.) și să interacționeze cu computerul cu ajutorul lor.

Mănuși de realitate virtuală - un exemplu de interfață tactilă. Foto: NASA.

Interfața neurală vă permite să transmiteți comenzi cu electrozii legați în creier. Interfețele neuronale bidirecționale nu numai că pot lua informații din creier, ci și pentru a le trimite creierului - de exemplu, prin retina ochiului.

Jens Naumann - orb, capabil de "a se vedea" cu o proteză vizuală neuronală. Aparatul foto captează imaginea și trimite versiunea prelucrată în coaja vizuală a creierului prin electrozi.

Kian Rivz în filmul "Matrix" (1999). Eroii se bucură de neurointerface pentru a intra în realitatea virtuală - matricea.

Cybebeis - interfață sub formă de realitate virtuală. Cadru din filmul fantastic "Johnny Mnemonic" (1995)

Bine ați venit la dvs., prieteni! Cuvântul "interfață" pe zvonul proprietarilor de PC-uri și telefoane, dar nu toată lumea o înțelege. Vom spune pentru ceainici, care este interfața în computer și telefonul smartphone, de ce este necesar, ce se întâmplă cu modul de utilizare corectă. Văzând acest cuvânt pe site, în descriere sau în instrucțiuni, noul venit va înțelege despre ce vorbim și ce să facem în continuare.

Val

Care este interfața pentru care are nevoie

Tradus din interfața engleză - interacțiune. Cum să scrieți în limba rusă: Interfața (uneori sunt scrise Infabes - este incorectă). Definiția normală este o limită comună între două obiecte funcționale. De exemplu, un bărbat se află în spatele roții mașinii sale, comută maneta cutiei de viteze - aceasta este interacțiunea cu sistemul de interfață a mașinii. Cutie de viteze ca conductor între șofer și mașină.

  • În știința calculatoarelor, semnificația cuvântului mai adânc este instrumentele de interacțiune cu utilizatorul cu jocul, programul sau sistemul de operare, metodele de control al funcționării mașinii de calcul. Datorită interfeței, o persoană va afla orice program sau editor de text. Dacă posedăm lucrări cu Editorul Graphics Paint, este ușor să stăpânească alte programe similare, deoarece au o structură similară.
  • Sarcini de interfață de bază:
  • informații de intrare și ieșire;
  • Software de management;

schimbul de date prin intermediul transportatorilor externi;

Comenzi.

Panoul din spate al unității de sistem PC este, de asemenea, o interfață care vă permite să conectați alte dispozitive.

Utilizatorul include un computer și vede icoanele din fața lui: "Computerul meu", "Etichete", "Foto" etc. - Toate aceste elemente de interfață.

Tipuri de interfețe

Interfața poate fi descrisă pe scurt ca clearance-ul: ceea ce o persoană vede în fața lui, folosind un PC sau un telefon. Deși, de fapt, aceasta este o structură de sistem, deoarece prin apăsarea butoanelor făcând clic pe elementul de meniu, utilizatorul merge acolo unde are nevoie: camera, galerie, contacte, mesaje. Scopul său este o utilizare eficientă, plăcută a unui dispozitiv sau a unui site electronic.

Video.

  • Există diferite tipuri de interfețe, fiecare dintre care vom spune mai departe.
  • Cel mai comun:
  • Linie de comanda;
  • Interfață grafică și text;
  • pe tipul de management (gest, voce, tactil și neuronal);
  • program;
  • hardware;
  • Software-ul hardware;
  • utilizator;
  • Web;
  • joc;

material;

Linie de comanda

în telefoane.

Care este cuvintele simple ale interfeței

Dacă aveți nevoie să numiți și să menționați tipurile de interfețe moderne, aceste informații vă vor ajuta să stabiliți totul corect și să faceți o prezentare bună.

Acesta este un software separat care face parte din extraordinare și asigurând relația dintre utilizator și sistemul de operare. Datorită promitului de comandă, puteți efectua comenzi de calculator. Aceasta este o comunicare cu mașina în limba sa.

Din deficiențe - trebuie să cunoașteți comenzile, de fiecare dată când le formați fără o singură eroare. Avantajul este capacitatea de a introduce comenzi fără participarea structurii grafice, care oferă oportunități suplimentare.

Linia de comandă (interfața consola) începe în cochilie, de exemplu, în BIOS. Calea principală a locației sale: C: \ Windows \ System32 \ cmd.exe. YOWSER obișnuit nu trebuie să fie deliberat în cazul în care linia de comandă este localizată și modul în care funcționează și pentru profesioniști este instrumentul principal, deoarece ajută la computerul cu viruși, restaurarea ferestrelor și în alte cazuri.

O metodă simplă de a găsi linia de comandă: în același timp apăsați tastele Câștig + R, în fereastra CMD care apare.

Interfața de comandă

Grafic și text

  • Grafică (Ing. Interfață grafică de utilizator, GUI) este utilizată în toate operațiile, în majoritatea aplicațiilor. Adesea se numește Wimp - aceasta este o abreviere din primele litere ale cuvântului, pictograma, meniul, dispozitivul de indicare (dispozitivul de manipulare).
  • Elemente principale:
  • meniul;

liste;

Pictograme (desene, scheme).

Pe Windows Windows, utilizatorul face clic pe pictograme, pictograme care ilustrează programele și fișierele reprezintă o interfață grafică, care oferă oportunități ample fiecărui utilizator. Nu este nevoie să introduceți comenzi. Pentru o interacțiune convenabilă, se utilizează un mouse computer.

Trebuie să distingeți graficul din interfața vizuală, care reprezintă sistemul ca un set de imagini vizuale - poate fi o pictogramă sau o inscripție situată într-o locație specifică a ecranului. Structura vizuală nu utilizează neapărat mapări grafice. Structura vizuală poate fi grafică și text.

Textul utilizează la introducerea și furnizarea de informații, un set de litere / numere, caractere de pseudografică. Utilizează toate elementele de design grafic de bază: casete de selectare, butoanele de scădere a listelor etc. Diferite cu resurse tehnice mici, date de mare viteză. Interfața de text este un tip de utilizator, în timp ce linia de comandă face parte din text.

În cea mai simplă caz, interfața de text utilizează o linie de comandă, dar multe programe cu elemente interactive fac un design mai prietenos și mai ușor de înțeles, care se apropie de confort pentru grafică.

Unele programe acceptă sistemul de ferestre dezvoltate, cum ar fi Turbo Vision, D-Flat, CSCAPE, mulți au subiecte de design schimbabile (DOS Navigator), precum și capacitatea de a folosi diferite obiecte interactive interactive (joystick, mouse).

Gesturarea, vocea, tactile și neuronale

  • Utilizatorul gestionează computerul și oferă comenzi cu diferite metode: gesturi, voce etc.
  • Prin urmare, tipul de control se distinge:
  • Interfață anuală. Elementele de contact sunt comprimate grafice, ecrane tactile și alte tehnologii care reacționează la mișcările degetelor;
  • Interfața vocală denotă gestionarea discursului. Exemple sunt: ​​Siri de la Apple, Alice de la Yandex;

tactile atunci când interacțiunea se bazează pe senzații tactile, obținând feedback sensibil (vibrații, împingere);

Neuronal - transmiterea comenzilor prin electrozi legați în creier. Informațiile pot fi luate din creier și au fost transmise, de exemplu, prin retina ochiului. În practică, neurointerfacerea este capabilă să ușureze viața pacienților paralizați ai căror creier funcționează bine. Neurointerface le permite să efectueze acțiuni concrete, citirea intențiilor lor cu ajutorul electrozilor care sunt conectați la creier.

Interfață grafică a sistemului

Software, hardware, hardware și software

  • Sistemul de interfață oferă contact chiar între prog-uri și dispozitive.
  • Există 3 grupe:
  • Interfața de programare (interfața de programare) este interacțiunea programelor între ele. În special, interfața de programare API sau aplicații - metode de schimb de date între programele de calculator (se transmite o cerere către API, altul răspunde). Portalul de știri prezintă valute. Nu editorul este responsabil pentru acest lucru (ar fi trebuit să schimbe manual numerele), iar API-ul pe care site-ul trimite o cerere la schimbul valutar, primește un răspuns;

Hardware-ul este conceput pentru a interacționa dispozitive fizice între ele prin sloturi, conectori, gateway-uri. USB (anvelopa secvențială universală) este cel mai familiar exemplu. Prin intermediul se conectează la telefonul PC, camera, mouse-ul;

Hardware-software este interacțiunea nodurilor, elemente sub controlul programului.

Interfața cu utilizatorul

Ceea ce contactează utilizatorul ceea ce vede în fața lui, unde face clicuri - aceasta este interfața cu utilizatorul. Aceasta este partea externă a dispozitivului sau a programului cu care funcționează utilizatorul.

Adesea, sub interfața Word implică utilizator (interfață utilizator). Se întâmplă că vizitatorul site-ului spune: "Există o înregistrare sau un meniu confuz, neplăcut." Deci, site-ul este incomod de contactat: Este dificil să găsiți elementul potrivit, verificați comanda, descărcați documentul. Structura inteligibilă este atunci când o persoană vede imediat de unde să facă clic, știe ce va provoca. Dar cu Windows, multe newbies au probleme, deoarece designul acestui sondaj de OS, utilizatorii neexperimentați sunt confuzi în setări. În platforma 1C, două mecanisme diferite de interfață de utilizator utilizate în diferite clienți 1C.

Linia de comandă, grafică, text, voce, gesturi, tactile, neuronale, procedural - toate acestea sunt incluse în interfața cu utilizatorul. Sub controlul său, utilizatorul intră în datele din PC, sunt afișate informații de pe monitor, imprimanta. Există chiar și o interfață a foii de calcul - acesta este un element pe care o persoană îl vede, de exemplu, aplicația OpenOffice.org Calc.

Dar există mai multe tipuri de interfață de utilizator.

Interfață hardware.

Web, joc

Interfața web este o pagină web (unul sau un set) reprezentând o structură pentru contactul cu un server sau un dispozitiv printr-un protocol HTTP și un browser web. De exemplu, clientul poate merge la pagina băncii, servicii de plată de plată. Avantajul principal - Nu este nevoie să instalați software suplimentar, deoarece sistemul de operare merge cu browserul. Nu este nevoie să vă confundați cu interfața de rețea. În acest termen se înțelege ca un dispozitiv virtual sau fizic, care este destinat să transmită date între programe printr-o rețea de calculatoare (de exemplu, VLAN).

Modul popular de a crea o interfață web este utilizarea HTML cu CSS și JavaScript'a. De asemenea, a folosit Adobe Flash, Applets Java sau Silverlight.

Un alt tip este interfața de joc - este asociată direct cu gamedizayn, deși depășește competența sa. Jucătorul și jocul sunt locuite în diferite universuri, iar structura jocurilor este punctul de contact reciproc. Cu aceasta, jucătorul primește informațiile necesare din joc și ia acțiunile jucătorului.

Material

Materialul sau interfața tactilă este un alt tip de utilizator. Acesta este un contact al unei persoane cu electronice cu structuri tangibile. De exemplu, un mouse în mișcare care, o persoană mișcă simultan săgeata cursorului de pe ecran.

Varietăți de interfețe

Interfață în telefoane

Stilul general al interfeței dispozitivului mobil este caracterizat ca SIMP (ecran-icon-memeniu-pointer). Pe platformele Windows mobile sunt elementele structurii care ocupă întregul ecran. Tranziția dintre ferestre este efectuată de elemente grafice sau trage cu degetul.

  • Caracteristicile designului de SIMP sunt explicate de specificul sistemului de operare.
  • Cel mai comun sistem de operare pentru gadget-uri:
  • Android;
  • Apple iOS;
  • WindowsMobile;
  • Palm OS;

Symbian OS;

BlackBerry OS.

Rusia este populară - Android, Apple iOS, WindowsMobile. Dar producătorii își folosesc tipurile de sisteme de interfață și blocuri, motivul principal este branding. Abilitatea Android la personalizare înseamnă că producătorii de echipamente corporative pot face schimbări software, de exemplu, în domeniul funcționalității și designului.

Diferitele structuri sistemice din dispozitivele mobile nu afectează foarte mult experiența proprietarilor, deoarece acestea sunt create pentru a rezolva sarcini universale. Diferență în setul de aplicații.

Interfața dispozitivului mobil include, de asemenea, mufe pentru căști, încărcare, ajutoare vocale - o mare parte din ceea ce se bazează pe activitatea PC-ului, numai acest lucru este ajustat pentru gadget-uri. Dar în smartphone-uri există multe structuri noi, de exemplu, NFC (NFS) - structura comunicării fără fir.

Ce înseamnă limba interfață

Nu merită confuzie cu limbile instalate la introducerea materialelor text.

  • Limba de interfață este cea utilizată la încărcarea operațiunilor, în meniu, în casetele de dialog, ferestrele de eroare și referințele. Acesta poate fi modificat dacă cel puțin 1 mai suplimentar este instalat în limba principală.
  • O modalitate simplă de a afla ce ferestre de limbă stau pe un PC:
  • Deschideți "panoul de control";

Fila "limbă";

Alocat limba principală utilizată acum. Acesta poate fi schimbat sau adăugați unul nou.

Constatări

Pentru o persoană, interfața este o bază pentru a lucra cu un PC sau un telefon. Și aceasta este o modalitate de a interacționa între programe și echipamente. Simplitatea structurii sistemului depinde, fie că este ușor de gestionat dispozitivul. Dezvoltatorii vin cu design și structuri diferite, făcându-le mai mult sau mai puțin plăcute, intuitive pentru oameni. Experții IT pot face schimbări la unele structuri sau le pot folosi pentru a rezolva sarcini grave, iar utilizatorii neexperimentați pot cumpăra pentru ei înșiși dispozitivul cu un sistem de interfață intuitivă pentru a facilita munca și pentru a economisi timp.

Interfața este adesea spusă când înseamnă interacțiunea unei persoane și a unui computer sau a aplicațiilor. În articol vom analiza definiția interfeței, care este pentru interacțiuni, tipurile și caracteristicile acestora.

  • Care este interfața

  • Interfața este un "dirijor" între om și un program, un sistem de operare, un dispozitiv tehnic sau o metodă de interacțiune între aplicațiile între ele. O persoană oferă comenzi utilizând interfața, dispozitivul le analizează și răspunde. Principalele sarcini pentru care este destinată:

  • Introduceți și afișați informații (sunet, imagine);

  • Gestionarea aplicațiilor individuale;

schimb de date cu alte dispozitive;

Tipuri de interfețe

Interacțiune cu sistemul de operare.

Linie de comanda

Interfața implică interacțiunea nu numai a oamenilor și a tehnologiei, ci și un program de calculator, program de program, dispozitiv de calculator. De exemplu, atunci când dispozitivele sunt conectate la unitatea de sistem computer, deoarece metoda de interacțiune utilizează conectorul.

Unele tipuri de interacțiuni vă permit să obțineți mai mult control asupra unui computer sau a unui smartphone, dar necesită abilități suplimentare. Altele sunt mai confortabile, dar oferă mai puține oportunități. Fiecare tip are propriile caracteristici.

Linia de comandă (interfața consola) începe în cochilie, de exemplu, în BIOS. Calea principală a locației sale: C: \ Windows \ System32 \ cmd.exe. YOWSER obișnuit nu trebuie să fie deliberat în cazul în care linia de comandă este localizată și modul în care funcționează și pentru profesioniști este instrumentul principal, deoarece ajută la computerul cu viruși, restaurarea ferestrelor și în alte cazuri.

Prin linia de comandă, puteți efectua numărul maxim de operațiuni este o modalitate directă de a comunica cu sistemul de operare. Pentru a introduce comanda, trebuie să introduceți textul în computer și apăsați ENTER, computerul va începe să funcționeze.

Metoda minus este că este potrivit numai pentru utilizatorii instruiți. În linia de comandă, nu există elemente grafice auxiliare, va trebui să stăpânească limba pentru interacțiune, iar lucrările de comenzi nu pot fi confundate.

Grafica simplifică interacțiunea cu computerul, este mult mai ușor să lucrați cu el și mai confortabil decât cu textul. În rolul interfeței grafice, astfel de elemente sunt:

În cea mai simplă caz, interfața de text utilizează o linie de comandă, dar multe programe cu elemente interactive fac un design mai prietenos și mai ușor de înțeles, care se apropie de confort pentru grafică.

De exemplu, atunci când interacțiunea cu Windows utilizează pictograme și ferestre, mouse-ul este conectat pentru a intra. Pe telefonul smartphone, dispozitivul de intrare este un afișaj cu ecran tactil.

Interfața de text nu utilizează imaginile: comenzile sunt furnizate folosind text și informațiile sunt furnizate în formularul de text.

Interacțiunea gestului vă permite să oferiți comenzi mișcărilor degetelor. Se aplică atunci când lucrați cu un ecran tactil al unui smartphone. De exemplu, gestul "sus" face ca fereastra pop-up să apară.

Interfața vocală este o gestionare a vocii. Gadgetul recunoaște și efectuează comenzi de sunet.

tactile atunci când interacțiunea se bazează pe senzații tactile, obținând feedback sensibil (vibrații, împingere);

Tactile implică interacțiunea cu ajutorul atingerii: vibrații sau sensibilitate la apăsare.

Interfața neurală transmite comanda direct de la creier la computer, pentru aceasta, electrozii sunt implantați în creier. Este folosit în medicină: astfel încât o persoană paralizată poate comunica cu lumea exterioară.

Hardware-ul este conceput pentru a interacționa dispozitive fizice între ele prin sloturi, conectori, gateway-uri. USB (anvelopa secvențială universală) este cel mai familiar exemplu. Prin intermediul se conectează la telefonul PC, camera, mouse-ul;

Interacțiunea programului între ele oferă o interfață software. Programele trimit solicitări unul altuia și primesc răspunsuri. De exemplu, pentru a afișa în mod constant vremea relevantă într-un widget sau pe un computer, un program trimite în mod constant o cerere către altul și oferă date proaspete.

Hardware-ul este destinat organizării comunicării între dispozitivele fizice prin conectori și sloturi. Și când computerul citește informații de pe un hard disk - aceasta este o lucrare comună a programului și a dispozitivului fizic, adică interfața hardware și software.

Toate, cu care utilizatorul obișnuit interacționează atunci când include un computer, intră pe site-ul web sau în aplicație, tot ceea ce o persoană vede pe ecran este o interfață cu utilizatorul.

Web, site-ul jocului

Modul popular de a crea o interfață web este utilizarea HTML cu CSS și JavaScript'a. De asemenea, a folosit Adobe Flash, Applets Java sau Silverlight.

Interfața web vă permite să lucrați prin browser. Aceasta este interacțiunea programelor de pe Internet. De exemplu, puteți merge la site-ul magazinului și puteți plăti achizițiile. Browserul din acest caz va fi o interfață web, datorită care pagini interacționează.

Material

Jocul este modul în care utilizatorul poate interacționa cu jocul pe care comenzi le pot da, în ce formă este prezentată informațiile despre joc și modul în care jocul va răspunde acțiunilor.

Care ar trebui să fie interfața

Acesta este un contact tactil cu gadget-uri. Acesta include atingerea touchscreenului, acțiuni cu un mouse sau joystick.

Structura bazei de date logică (DDL).

Smartphone-urile utilizează un ecran tactil care implică interfețe gesture și tactile. Utilizatorul atinge elementele, sistemul de operare sau aplicația primește comenzi de la acesta și le efectuați.

Добавить комментарий