Microsoft a lansat codul de bibliotecă standard C ++ care se află în Visual Studio

sigla Microsoft

Sigla Microsoft

La conferința CppCon 2019 care a fost sărbătorit în aceste zile, exponenții Microsoft au profitat de ocazie pentru a face anunțul despre deschiderea codului pentru implementarea sa din Biblioteca standard C ++ (cunoscut și sub numele de STL), care face parte din MSVC Toolkit și din mediul de dezvoltare Visual Studio.

Biblioteca implementează capabilitățile descrise în standardele curente C ++ 14 și C ++ 17, și este, de asemenea, dezvoltat în direcția susținerii viitorului standard C ++ 20, în urma modificărilor din proiectul de lucru actual.

Segun motivele pentru care oamenii de la Microsoft au decis să facă această mișcare, în declarație explică:

Există mai multe motive pentru care facem acest lucru, unul dintre ele este să lucrăm la STL pe GitHub, acest lucru le va permite clienților noștri să urmărească dezvoltarea noastră așa cum se întâmplă, să testeze cele mai noi modificări și să ne ajute să ne îmbunătățim cererile de extragere prin revizuirea lor.

Pe măsură ce standardizarea C ++ se accelerează și se votează caracteristici mai mari în fiecare an, credem că va fi important să acceptăm caracteristicile de bază ca contribuții open source. (De exemplu, formatul C ++ 20 și bibliotecile cronologice sunt potențiali candidați.) De asemenea, dorim să contribuim înapoi la comunitatea C ++, făcând posibilă implementarea funcțiilor noastre de bază. (De exemplu, charconv din C ++ 17)

Cu ce Oamenii Microsoft au făcut cunoscut faptul că intenționează să dezvolte în continuare această bibliotecă ca un proiect deschis care este dezvoltat pe GitHub care va accepta cereri de extragere de la dezvoltatori externi cu remedieri și implementarea de noi caracteristici (pentru a participa la dezvoltare, este necesar un acord CLA pentru a transfera drepturile de proprietate asupra codului transferat).

Se observă că transferul dezvoltării de la STL la GitHub va ajuta clienții Microsoft să urmăriți progresul dezvoltării, experimentați cu cele mai recente modificări și ajutați la examinarea cererilor de inovație primite.

Deschideți și codul permite comunității să utilizeze implementări gata făcute oportunități pentru noi standarde în alte proiecte.

Despre licența codului acestei biblioteci, Este propus ca deschis sub licența Apache 2.0, cu excepții pentru fișierele binare care rezolvă problema includerii bibliotecilor runtime în compoziția fișierelor executabile generate.

A fi clar, MSVC STL nu se combină cu libc ++, deoarece acestea sunt încă biblioteci separate.

Microsoft explică de ce licența codului este selectat în așa fel încât să permită schimbul de cod cu biblioteca libc ++ a proiectului LLVM. STL și libc ++ diferă prin reprezentarea internă a structurilor de date, dar, dacă doresc, dezvoltatorii libc ++ pot transporta funcționalități STL interesante (de exemplu, charconv) sau ambele proiecte pot dezvolta împreună unele inovații.

MSVC STL este distribuit sub licența Apache v2.0 cu excepții LLVM, care a fost creată recent de proiectul Clang / LLVM / libc ++.

Excepțiile adăugate la licența Apache anulează cerința de a menționa utilizarea produsului sursă la livrarea binelor compilate STL utilizatorilor finali.

Această licență open source permisivă a fost aleasă deoarece are aceeași licență ca și libc ++ ceea ce va facilita partajarea codului între biblioteci. Pentru a fi clar, MSVC STL nu este fuzionat cu libc ++; acestea sunt încă biblioteci distincte care acceptă platforme diferite cu reprezentări diferite ale structurii de date.

Pe de altă parte, unul dintre obiectivele cheie ale proiectului se numește respectarea deplină a cerințelor specificații, asigurând performanțe ridicate, ușurință în utilizare (depanare, diagnosticare, instrumente de detectare a erorilor) și compatibilitate la nivel de sursă și ABI cu versiunile anterioare ale Visual Studio 2015/2017.

Printre zonele care Microsoft nu este interesat să dezvolte portabilitatea pe alte platforme și să adauge extensii personalizate.

Dacă doriți să aflați mai multe despre declarația făcută de Microsoft, o puteți consulta În următorul link.


Lasă comentariul tău

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

*

*

  1. Responsabil pentru date: AB Internet Networks 2008 SL
  2. Scopul datelor: Control SPAM, gestionarea comentariilor.
  3. Legitimare: consimțământul dvs.
  4. Comunicarea datelor: datele nu vor fi comunicate terților decât prin obligație legală.
  5. Stocarea datelor: bază de date găzduită de Occentus Networks (UE)
  6. Drepturi: în orice moment vă puteți limita, recupera și șterge informațiile.