Publicat pe Lasă un comentariu

Platformă versus Cadru

în ultimele 30 de zile am avut plăcerea să lucrez în contextul proiectului openinterface, scriind un document care delimitează modul în care platforma va continua după perioada proiectului. Au crezut că pot ajuta din cauza experienței mele îndelungate cu comunitatea open source. De fapt, a fost grozavexperiență provocatoare cu momente grele și plăcute. Cea mai interesantă a fost în Porto, Portugalia, la granița râului, când am găsit inspirație pentru a scrie câteva propoziții ucigașe.

în timpul elaborării acestui document, mulți oameni din proiect au dat contribuții, comentarii, critici, ceea ce a fost esențial pentru a obține un rezultat mai bun la sfârșit. Dar unul dintre ei mi-a atras atenția. Unul dintre colaboratori, a cerut săschimbați termenul „platformă” în „cadru”, ceea ce a fost amuzant, deoarece numele”platformă” este răspândit prin multe alte documente și pe site-ul web. Dacă persoana avea câteva elemente fundamentale pentru a propune această schimbare, care sunt acestea? Apoi am decis să fac o scurtă cercetare despre diferența dintre ambele concepte și cel mai bun loc pentru a începe este, desigur, dicționarul.

cuvântul „platformă” are multe semnificații, inclusiv cea informatică. În Dicționarul Englez Cambridge:

„platforma descrie tipul de sistem informatic pe care îl utilizați, în legătură cu tipul de software pe care îl puteți utiliza pe acesta.”

aceasta este o definiție foarte generică, care nu mă ajută deloc. Deci, m-am dus laikipedia, unde am găsit o definiție fără nici o alertă cu privire la sursele sale orimpartialitatea:

„în calcul, o platformă descrie un fel de arhitectură hardware sau cadru software (inclusiv cadre de aplicație), care permite software-ului să ruleze. Platformele tipice includ arhitectura unui computer, sistemul de operare, limbajele de programare și bibliotecile de rulare conexe sau interfața grafică cu utilizatorul.”

Doamne! Acesta menționează cadrul privind definirea platformei. Este un fel de definiție recursivă? Ei bine, să mergem la definiția cadrului:

„un cadru software este un design reutilizabil pentru un sistem software (sau subsistem). Un cadru software poate include programe de asistență, biblioteci de coduri, un limbaj de scripting sau alt software pentru a ajuta la dezvoltarea și lipirea diferitelor componente ale unui proiect software. Diferite părți ale cadrului pot fi expuse printr-un API.”

Ei bine, mai bine! Să analizăm diferențele. În primul rând: cadrul se referă numai lasoftware și ignoră complet hardware-ul. Deci, dacă lucrați cu hardware-ul, acesta nu va avea niciodată un cadru. În al doilea rând: o platformă permite rularea unui software, ceea ce estenu o cerință-cadru, deoarece este mai concentrată pe design. De exemplu, Java este o platformă deoarece are o mașină virtuală care permite Javaapplications să ruleze în multe sisteme de operare. Pe de altă parte, Spring este un cadru pentru că simplifică modul în care proiectați software-ul, luând responsabilitatea pentru o mulțime de lucruri pentru a reduce efortul și volumul de cod necesar pentru implementarea aplicației. Deci, o platformă nu își propune să vă salvezetimp, dar pentru a vă oferi una sau mai multe posibilități de a rula aplicația.

revenind la rădăcina discuției, am avut o lungă conversație cu principalul dezvoltator al OpenInterface (OI), Lionel Lawson, și am ajuns la concluzia căoi este, în același timp, o platformă și un cadru. Aceasta înseamnă că, atunci cândplatforma, OI poate rula aplicația pe ea. Când cadru, aplicațiapoate utiliza API OI pentru a accesa alte componente. Apoi, am ajuns la concluzia că OI esteDe fapt o tehnologie, care este mai generică și rezolvă multe probleme de integrare între componentele de nivel scăzut.

Lasă un răspuns

Adresa ta de email nu va fi publicată.