Kuinka suosittu JavaScript on vuonna 2019?

Kuva: Rus - mustakaulainen parves mansikkamatka (CC BY 2.0)

Kun ihmiset kysyvät minulta, minkä kielen heidän tulisi oppia, sanon heidän aloittavan JavaScriptillä. Miksi? JavaScript on verkon vakio ohjelmointikieli, ja JavaScriptillä kirjoittamasi ohjelmisto on kaikkien käytettävä.

Ohjelmistot söivät maailmaa, verkko söi ohjelmistoja ja JavaScript söivät verkkoa.

Tämä riittää minulle. Haluan kirjoittaa ohjelmistoja, joita kuka tahansa voi käyttää, ja käytännössä kaikki, joilla on Internet-yhteyslaite, jossa on näyttö, voivat käyttää JavaScriptin kirjoitettuja sovelluksia.

Ohjelmointikielet voidaan luokitella monella tapaa. Kourallinen indeksejä hallitsee Googlea haulla ”ohjelmointikielen hakemisto”. Valitse suosikki. Nämä hakemistot sijoittavat JavaScriptin nro 7, nro 3 ja nro 1.

Riippumatta siitä, mihin se kuuluu suosikkisi sijoittelussa, JavaScript on huipputason haastaja reaalimaailmassa. Väitän usein, että se on eniten käytetty ohjelmointikieli maailmassa. Tarkoitan tällä sitä, että useampi ohjelmoija kirjoittaa JavaScriptiä kuin mikään muu ohjelmointikieli maailmassa. Jos kasattaisiin kaikki viime vuosikymmenellä kirjoitetut lähdekoodit paaluihin, JavaScript olisi suurin kasa.

Tämä heijastuu ohjelmointikielisten pakettivarastojen käytettävissä olevien pakettien lukumäärässä. JavaScriptin vakiopaketinhallinnassa on enemmän paketteja kuin Java ja PHP yhdessä:

Tämä suuntaus heijastuu myös GitHubiin:

GitHub-kielet ajan myötä

Mutta eikö näillä muilla kielillä ole parempia vakiokirjastoja? Eikö se siksi, että JavaScriptille tarvitaan paljon enemmän paketteja? Varma. Ehdottomasti. Minä annan sinulle sen. Ja se saattaa olla muutama tuhat pakettia. Mutta emme puhu muutamasta tuhannesta. Npm: llä on yli 800 000 pakettia, suurin osa niistä on käytettävissä avoimen lähdekoodin käyttöön sovelluksissasi. On selvää, että tässä määräävässä asemassa on paljon enemmän kuin standardikirjaston laatu.

Vahvistetaan tämä vielä muutamilla tiedoilla. Kuten mainitsin, JavaScript on verkon tavallinen ohjelmointikieli, ja verkko on käytetyin laskentaalusta, jota koskaan rakennettu.

Maailmassa on yli 1,6 miljardia verkkosivustoa, ja JavaScriptiä käytetään 95%: issa verkkosivustossa (1,52 miljardia web-sivustoa JavaScript). Tämän perusteella käytännössä jokaisessa nykyään käytössä olevassa tietokoneessa käytetään JavaScriptiä, mukaan lukien iPhonet, Android-puhelimet, Apple Mac OS, Microsoft Windows, Linux, älytelevisiot jne.

Maailmassa on asennettu noin 800 miljoonaa Windows 10 -laitetta ja Windows Store -sovelluksessa noin 800 000 sovellusta. Tämä tarkoittaa kuitenkin radikaalisti aliarviointia Windowsissa toimivien sovellusten määrää. Windows-sovellusjakelu hallitsi suoraa lataamista kauan ennen kuin virallisten sovelluskauppojen käsite tuli suosituksi, ja Windows 10 ajaa onneksi Windowsin aiempille versioille kirjoitettuja sovelluksia. On mahdollista, että Windows ajaa jopa 35 miljoonaa sovellusta - kirjoitettu useilla kielillä, hallitsevat C, C ++, Visual Basic .NET ja C #.

Web vs Windows, iOS, Android raa'iden sovellusnumeroiden perusteella. Puuttuvat ovat liian pieniä nähdäkseen verkkosivustoihin nähden.

Java on toinen suosituin ohjelmointikielen tärkein haastaja, koska se on äidinkieli maailman suosituimmalle mobiililaitteille, Android. Haluatko kirjoittaa natiivisovelluksen Android-puhelimeen? Se kirjoitetaan melkein varmasti Java-kielellä ja asennetaan Android-kaupasta.

Androidissa on 2,3 miljardia mobiililaitetta ja Androidille kirjoitettuja sovelluksia. Mutta Android-kaupassa on vain 2,1 miljoonaa sovellusta.

Haluatko kirjoittaa natiivisovelluksen iOS: lle? Apple-kaupassa on noin 1,8 miljoonaa sovellusta, joista suurin osa on kirjoitettu Objective C tai Swift -sovelluksilla. Se on kaksi kieltä, jotka kilpailevat dominoinnista maailman toiseksi suosituimmassa mobiililaitteissa.

Palvelinpuolen kielet ovat varmasti suosittuja, kuten Java, Python, PHP, Ruby ja Scala, mutta Node.js on myös erittäin suosittu palvelinpuolella ja käyttää JavaScriptiä.

Maailmassa on noin 7 miljardia Internet-laitetta. Ylätasot ovat AWS IoT (C, JavaScript) ja Google Cloud IoT (JavaScript, C, C ++, Go). Yleisiä kieliä laiteohjelmoinnille IoT: lle ovat C, C ++, JavaScript ja Java. Huolimatta massamarkkinoilla valmistettujen Internet-laitteiden määrästä on, suuruusluokkaa on vähemmän ohjelmistokehittäjiä, jotka ohjelmoivat Internet-laitteita, kuin web-alustalle ohjelmoitavia, ja niille kirjoitetaan suuruusluokkaa vähemmän koodia.

Kaikki tämä sanoi, että noin ensimmäisellä vuosikymmenellä web, JavaScriptiä käytettiin vähän muutakin kuin hiiren hover-animaatioihin ja pieniin laskelmiin saadakseen staattiset verkkosivustot tuntemaan olevansa interaktiivisia. Oletetaan, että 90% kaikista JavaScriptiä käyttävistä verkkosivustoista käyttää sitä triviaalisella tavalla. Se jättää vielä 150 miljoonaa merkittävää JavaScript-sovellusta:

Verkko vs. kaikki muu, olettaen, että 90% verkkosivustoista ei ole ”sovelluksia”.

Vaikka hävittäisimme web-numerot uudelleen, verkkoalusta olisi silti suurempi kuin Android ja iOS yhdessä:

Leikkaa 90 prosenttia verkkosivustoista JS: llä, tee se sitten uudestaan ​​ja se on silti suurempi kuin Android + iOS yhdessä.

Mutta tästä käy nyt hieman naurettavaa, koska nykyään suosituimpia sovelluksia ovat esimerkiksi Facebook Messenger, WhatsApp, Snapchat, Instagram, Netflix, Hulu, Spotify, Uber ja pelit, jotka kokoontuvat useille alustoille (esim. Fortnite), eikä paljon omia Windows-sovelluksia. Mielenkiintoinen trendi: Suurimmalla osalla näistä on verkkoversioita, ja osaa niistä ei löydy Microsoft Storesta.

Suosikkisovellukseni Androidille ovat progressiiviset Web-sovellukset, kuten Twitter (kirjoitettu JavaScript), koska ne ovat kevyitä ja nopeita, ja minun ei tarvitse odottaa niiden asentamista aloittamaan niiden käyttäminen.

Ja tämä on suosikki juttuni JavaScriptissä, koska Twitter PWA toimii Android-puhelimellani, iPadillani, työpöytäselaimellani, eikä minun koskaan tarvitse asentaa sitä mihinkään. Mobiililaitteissani se näyttää ja toimii aivan kuin alkuperäinen sovellus, ja jopa offline-tilassa voin selata jo ladattuja ja välimuistiin tallennettuja tweettejä.

Jos haluat, että sovelluksesi ovat useimpien ihmisten käytettävissä, JavaScript on loistava valinta.

Aloita ilmainen oppitunti EricElliottJS.com-sivustossa

Eric Elliott on kirjojen kirjoittaminen, ”Composing Software” ja “Programming JavaScript Applications”. EricElliottJS.com: n ja DevAnywhere.io: n perustajana hän opettaa kehittäjille välttämättömiä ohjelmistokehitystaitoja. Hän rakentaa ja neuvoo kehitystyöryhmiä salaustekniikkaprojekteihin ja on osallistunut ohjelmistokokemuksiin Adobe Systemsille, Zumba Fitnessille, The Wall StreetJournalille, ESPN: lle, BBC: lle ja parhaimmille äänittäjille, mukaan lukien Usher, Frank Ocean, Metallica ja monille muille.

Hän nauttii kauko-elämäntavasta maailman kauneimman naisen kanssa.