Kotlin vs Java: Va înlocui Kotlin Java?
Publicat: 2021-10-05Un articol menit să descrie toate frumusețile principale ale celor două limbi pentru dezvoltarea dispozitivelor mobile Android - Kotlin și respectiv Java.
Articolul datează din 10 martie 2017 și, în acel moment, Kotlin nu a devenit încă limba oficială a Google.
Când alegeți dezvoltatorii să lucreze la aplicația dvs. Android personalizată, o anumită tehnologie pe care o folosesc este esențială pentru dvs. Cele mai frecvente două limbi folosite acum pentru Google sunt Java și Kotlin (deși încă nu are suport oficial de la Google), așa că pentru dvs. poate părea, la început, o chestiune de mică importanță pe care este codificarea echipei dvs. O analiză suplimentară arată, totuși, că limbajul de programare ar putea reduce, de asemenea, o parte din timpul și cheltuielile dvs.
Citește și: motive de respingere a jocului google
UN fapt interesant: Kotlin a fost numit după o insulă (Insula Kotlin, situată în apropierea orașului Saint-Petersburg); acest limbaj de programare relativ nou al lui Kotlin se transformă treptat într-o forță masivă cu un potențial uriaș pentru ca viitoarele aplicații Android să se bazeze pe dezvoltarea lor.
Întâlnește din punct de vedere tehnic Kotlin de 6 ani, dar cu adevărat de 1 an.
Inițial, în anul 2011, ca versiune dezvăluită, Kotlin a apărut pentru prima dată ca un nou limbaj pentru Java Virtual Machine de la o echipă de programatori Saint-Peterburg numită Jet Brains. Motivul pentru care au decis să vină cu o nouă „roată rotativă” pentru dezvoltarea Android este destul de ușor de înțeles; aparent, există câteva:
Java există deja de 22 de ani (un termen destul de mare pentru un limbaj de programare), motiv pentru care există o mulțime de caracteristici care nu pot fi implementate din cauza masivității și obsolescenței Java.
Java necesită scrierea unor combinații de coduri lungi
Codul scris pe Java durează destul de mult timp pentru a compila
Cu toate acestea, echipa de dezvoltare Kotlin a spus cu blândețe și a fost de acord că o mulțime de limbi nu au amestecul de caracteristici pe care inginerii din toată lumea le doreau, cu excepția Scala; totuși, așa cum a subliniat Dmitry Jeremov, conducătorul tehnic al corporației Jet Brains, timpul de compilare al Scala este lent și insuficient pentru viteza cu care se deplasează serviciile IT contemporane.
În sfârșit, februarie anul trecut a fost o lună specială pentru întreaga corporație JB - întrucât prima versiune Kotlin 1.0 a văzut oficial lumea într-o versiune stabilă.
Din acel moment, Jet Brains de pe blogul lor oficial ne-a sfătuit să rămânem la curent și au promis că noua actualizare 1.1 Kotlin, axată pe remedierea erorilor și pe suportul Java Script, va fi lansată în curând. Pentru data publicării acestui articol (10 martie 2017), versiunea 1.1 Kotlin a fost lansată acum doar o săptămână, dar lumea vorbește deja despre asta. Deci, dacă faceți o comparație Kotlin vs Java, ar exista diferențe semnificative?
Nu o roată reinventează.
Când privim diferențele Kotlin față de Java, apar cu siguranță unele avantaje Kotlin față de Java care ar putea avea un efect dorit pentru cei care doresc să dezvolte o aplicație Android.
Deci, să începem undeva la început.
Motive pentru utilizarea Kotlin:
1) Kotlin necesită mai puțin cod pentru a scrie.
Cu cel puțin 20% mai puțin. După cum sa menționat anterior, Java în vârstă de 22 de ani este deja puțin depășit + Oracle a creat Java pentru a fi un limbaj compatibil cu versiunile anterioare, ceea ce înseamnă practic că fiecare versiune nou lansată trebuie să accepte caracteristicile incluse în versiunea anterioară și, ca urmare, , cu fiecare actualizare devine mai greu să includeți câteva caracteristici noi; în consecință, crește și cantitatea de cod de scris.
Dimpotrivă, arhitectura Kotlin a fost creată de la zero, provocând absența arhitecturii strat la strat.
2) Pe Kotlin apar mai puține zdrobiri.
Kotlin JVM are mult mai puține probleme, numită adesea „greșeala de un miliard de dolari” - problema NullPointerExeption este prevenită acolo. NullPointer este încă prezent în fiecare limbaj de programare, dar modalitățile de lucru cu acesta pot diferi. Pentru înregistrare, în Java trebuie să verificați manual dacă legătura este nulă sau nu. Dacă nulul este ratat - boom, crash, voila! În favoarea lui Kotlin, fiecare obiect este setat automat să fie Null în această limbă + există verificări automate pentru NullPointer - pentru a se asigura că codul funcționează corect fără acesta.
3) Kotlin este un limbaj de siguranță de tip.
Din nou, în Kotlin fiecare clasă este o funcție și invers; mai mult, la fel ca Swift pentru iOS, Kotlin pentru Android are tipuri opționale, care ajută la toate verificările de siguranță.
Citiți și: Avantajele utilizării Siwft peste Objective-C
4) Kotlin vă economisește o parte din timpul prețios.
După cum sa spus deja, mai puțin cod garantează aproape mai puține bug-uri și, respectiv, mai puțin timp este urmărit pe întregul proces de codare. Și destul de des, echipele de dezvoltare software calculează costurile totale ale proiectului în funcție de cantitatea de ore petrecute de dezvoltatori pentru codificare.
Iată câteva dintre avantajele Kotlin față de Java. Deși Kotlin nu este încă acceptat oficial de Google și mai durează câteva secunde în timpul primei compilări de coduri, cu toate aceste puncte acoperite, devine evident că limbajul de programare din Kotlin are o mulțime de frumuseți și ținând cont de viteza pe care o are prinde impuls cu, fără îndoială, este o idee înțeleaptă pentru Kotlin-Switch.
Citiți despre diferențele dintre dezvoltarea Android și iOS
„Și dacă fac o schimbare?”
Lumea în care trăim devine destul de imprevizibilă în multe ocazii, iar în ceea ce privește dezvoltarea aplicațiilor mobile, uneori este nevoie să schimbi echipa cu care ai lucrat. Să presupunem că ați lucrat cu echipa de externalizare, dar acum există o cerere pentru o dezvoltare internă pentru proiectul dvs. Cât de dificil ar fi să faci o „traducere” dintr-o limbă în alta?
Înapoi, răspunsul depinde într-adevăr de tehnologia utilizată de inginerii dvs. anteriori. Dacă luăm ca exemplu trecerea de la Java la Kotlin - atunci există, fără îndoială, o soluție. Jet Brains a creat un convertor Java-Kotlin care ajută la rezolvarea acestei probleme; cu toate acestea, unele erori apar încă în timpul procesului de conversie, deci trebuie monitorizat și unele dintre operațiuni trebuie chiar setate manual.
În partea de jos, conversia de la Java la Kotlin ar fi încă mai stagnantă și mai dureroasă, deoarece nu toate funcțiile, metodele și variabilele ar putea fi convertite. Poate că cea mai rapidă soluție pentru noua echipă cu care colaborați ar fi să continuați să scrieți pe Java, dacă este posibil.
De asemenea, posibilitatea conversiei într-o altă limbă ar depinde de dimensiunea proiectului dvs. Există, în general, 3 tipuri de proiecte: mici , medii și mari .
Proiectele mici durează în jur de 160-200 de ore și, dacă nu există o arhitectură complexă - atunci pot fi transferate în Kotlin;
Proiectele medii constau dintr-o dezvoltare de până la 5 luni și sunt destul de incomode de convertit;
Dezvoltarea proiectelor mari începe de la 5 luni, iar proiectele din această categorie sunt total imposibil de convertit în altă limbă;
Per ansamblu, cea mai bună opțiune pentru un client de „schimbare” este întotdeauna să înceapă să lucreze cu ingineri care folosesc aceeași tehnologie, limbi și cadre pe care au făcut-o titularii de proiecte anteriori. Oricum, când schimbarea este inevitabilă, vă sugerăm cu tărie să alegeți „noul lexicon”; de exemplu, pentru a alege Kotlin peste Java.
Un mod concis de codificare pentru Android într-un mod mai inteligent.
Sau cel puțin așa se citește sloganul lui Kotlin. Fără îndoială, Kotlin ar putea avea avantajele și dezavantajele sale, dar o mulțime de caracteristici au devenit practicabile odată ce Kotlin a intrat. Și cu o versiune proaspăt lansată a Kotlin 1.1, care acum acceptă oficial Java Script, multe funcții visate anterior ar putea fi puse în aplicare de acum și pe.
În Mind Studios, ne-am ocupat și de dezvoltarea Kotlin pentru Android, de când a apărut prima scenă de versiune stabilă. Mi Band Control (un tracker de activitate pentru Mi Band Wristband) este o aplicație dezvoltată complet pe Kotlin. Această experiență a dovedit că Kotlin este, de asemenea, un mod mai inteligent și mai concis de codare pentru Android de către dezvoltatorii noștri. Așadar, alegeți cu înțelepciune limba pentru aplicația dvs., dar nu uitați să rămâneți la curent!
Scris de Vsevolod Kaganovich și Elina Bessarabova.