Kuo skiriasi SDK nuo platformos?


Atsakymas 1:

Linijos gali būti šiek tiek neryškios, tačiau pirmosios trys yra (i) griežtai programinės įrangos ir (ii) paprastai taikomosios programos. Platforma yra keista, nes joje (i) gali būti arba nėra aparatinės įrangos, o ii) paprastai yra sistemos lygis.

Biblioteka: klasių / funkcijų / failų / šaltinio kodas, paprastai orientuotas į vieną nedidelę užduotį. Skambinkite į bibliotekas iš savo kodo, kad atliktumėte įvairias universalias užduotis.

- 1 pavyzdys: „java.lang.Math“ biblioteka leidžia atlikti tokius veiksmus kaip logaritmai ir trigonometrija, iš naujo neišradus rato iš standartinių dvejetainių / aritmetinių operatorių.

- 2 pavyzdys: Yra daugybė bibliotekų įvairiomis kalbomis, kurios padeda sukurti „Mock“ klases testavimui.

Karkasas: didelė biblioteka (arba bibliotekų kolekcija), galinti atlikti keletą pasikartojančių užduočių, kurios visos sukasi apie vieną vidutinio dydžio užduotį. Pagalvokite apie karkasą kaip metalinį rėmą, ant kurio viršaus statote savo kodo plytas.

- 1 pavyzdys: „Ruby on Rails“ sistema pirmiausia naudojama interneto užklausoms apdoroti ir į jas reaguoti, tačiau norint pagreitinti procesą, reikia daugybės bibliotekų, kurios atlieka dažniausiai pasitaikančias užduotis, tokias kaip maršruto parinkimas, rengimas ar prisijungimas prie duomenų bazės.

- 2 pavyzdys: „AngularJS“, „JavaScript“ sistema, paprastai naudojama kurti vieno puslapio žiniatinklio programų priekinę dalį. Supaprastina papildomas užduotis, tokias kaip DOM manipuliacija ir AJAX.

SDK: kelių daugiafunkcinių bibliotekų, padedančių atlikti bet kokio vidutinio dydžio užduotis, rinkinys, kurio bendras tikslas - padėti jums sukurti programinę įrangą tam tikroje platformoje.

- 1 pavyzdys: „iOS SDK“. Turi viską, ko reikia norint pradėti kurti programą, skirtą „iOS“.

- 2 pavyzdys: „Unity“ žaidimo variklis. Turi viską, ko reikia norint pradėti kurti žaidimą įvairiose platformose.

Platforma: Šiek tiek dviprasmiškas terminas, bet aš paprastai galvoju apie platformą = Operacinė sistema + Aparatūra.

- 1 pavyzdys: OSX ir „MacBook Air“

- 2 pavyzdys: „Debian“ „Amazon ECS“ virtualioje mašinoje.

daugiau apie lib / framework / sdk:

Kuo skiriasi „Framework“, SDK, NDK, API ir biblioteka?

daugiau platformoje:

Kas yra platforma?


Atsakymas 2:

Nors šie terminai gali reikšti skirtingus dalykus skirtinguose kontekstuose, paprastai kalbant, SDK yra tiesiog biblioteka ar bibliotekų kolekcija, kurioje yra klasių, kurios gali būti vadinamos, kad būtų galima sukurti visą programą. Paprastai tariant, platforma yra visos infrastruktūros, įskaitant bibliotekas, sistemas, SDK, įrankius, IDE, prieglobą ir techninę paramą, derinys, reikalingas kuriant visą produkto ekosistemą. Kaip pavyzdį, „Android“ platformą sudaro AOSP, „Android Framework“, „Android SDK“, „Android Studio“, API, žiniatinklio paslaugos, įrenginiai, „Play Store“ ir visi kiti dalykai, reikalingi pardavėjui sukurti produkto ekosistemą. Tačiau SDK yra tik vienas tos infrastruktūros elementas.