Sisällysluettelo:
- Mikä on HTML5-sovellus?
- HTML5-sovellusten todellisuus
- Joten haluan nähdä lisää HTML5-sovelluksia vai ei?
Oletko kuullut? HTML5-sovellukset muuttavat kaiken, todennäköisesti ensi vuonna. Ainakin siitä HTML5: n ja alkuperäisten sovellusten välisen keskustelun toinen puoli on puhunut jo jonkin aikaa. Se on viesti, joka kulkee tielle parrasvaloon joka toisinaan, ja se tulee olemaan sellainen ikuisesti. Tai ainakin, kunnes se todella tapahtuu ja kaikki parhaat sovellukset ovat HTML5-sovelluksia. Ei ole epätavallista, että kehittäjillä on tällaisia keskusteluja ja puoltajien puolia, jotka selittävät heidän versionsa olevan parempi versio, mutta kun asiat menevät kehittäjäkeskustelujen ulkopuolelle ja valtavirtaan, missä sinä ja minä kuulemme ne, he voivat saada meidät turhiin. Pitäisikö meidän todella välittää siitä, mitä kuulemme?
Tässä tapauksessa kyllä. Vaikka utopia, jossa jokainen sovellus on kirjoitettu HTML5: ään ja jokaisella käyttäjällä on sama kokemus, on silti hyvä tapa, jos se koskaan tapahtuu, hybridi-muodossa oleva HTML5 on jo aika iso asia. Meidän pitäisi tietää ja ymmärtää mitä tahansa, mikä on aika iso juttu.
Mikä on HTML5-sovellus?
Ensimmäinen kerta, kun useimmat ihmiset kuulivat HTML5: n mainitsemisen, oli silloin, kun Steve Jobs kertoi meille kaikille, että se olisi verkon tulevaisuutta, eikä Flash tiennä. Hänen lausuntonsa todettiin osittain siksi, että Apple esti pääsyn kaikenlaisiin Flash-soittimiin iOS: lla, mutta se ei ottanut minkäänlaista visionääriä tietääkseen tämän olevan tulossa, koska HTML5: n tavoitteena on paljon enemmän kuin Flash koskaan. Ja juuri niin tapahtuu, että verkon tulevaisuus on myös aika hyvä tapa koodata sovelluksia.
HTML on HyperText Markup Language, ja olemme standardin 5. versiossa. Mutta kun kuulet termin HTML5-sovellus, tarkoittaako se web-sovellusta tai sovellusta, jonka voit asentaa puhelimeesi, käsittelet todellakin kolmen tyyppisiä koodeja.
- HTML tarjoaa puitteet, joissa kehittäjät voivat laittaa koodinsa, ja sovellus voi muuttaa sen jotain, jonka voimme nähdä ja olla vuorovaikutuksessa.
- CSS tarjoaa tavan asettaa kuinka yksittäiset koodibitit näyttävät, kun ne on renderoitu ja näytetty näytöllä.
- JavaScript on se, joka tekee siitä kaiken interaktiivisen ja kykyä "tehdä" mitä tahansa.
HTML5 tekee hienosta, että kaikki ymmärretään yhdellä sovelluksella, jota sovelluskehittäjän ei tarvitse ylläpitää. Se kaikki toimii millä tahansa laitteella, jolla on näyttö, jolla on oma versio kyseisestä sovelluksesta. Puhumme web-selaimesta, mutta ei itse selainsovelluksesta. Selain, joka voi ottaa kaiken tämän koodin ja tehdä siitä jotain, jota voimme käyttää lennossa, on melko kannettava ja osa monista sovelluksista, joita jo käytät Web-näkymänä.
Mozilla-insinööri sanoi kerran "Koodin suorittaminen missä tahansa ei tarkoita karkaamista. Optimointi on avain." Älykkäät kaverit, nuo Mozilla-insinöörit.
Tämä tarkoittaa, että kehittäjä voi kirjoittaa koodinsa ja hienosäätää sitä, sitten ottaa sen käyttöön kaikkialla. Se on paljon erilaista kuin erillisen koodin kirjoittaminen Androidille, iOS: lle, MacOS: lle, Windows: lle ja HTML: lle webOS: lle ja BlackBerry 10: lle. Kehittäjä voi kirjoittaa koodin valitsemallaan kehitysympäristöllä, olipa kyse sitten Notepadista tai jotain monimutkaista, kuten Visual Studio tai Adobe Dreamweaver, debug ja viritä se missä tahansa selaimessa, jonka he valitsevat, ja se toimii silti vain kaikkialla.
Se sisältää myös puhelimesi. Olemme kaikki nähneet HTML5-sovelluksia käyttävän verkkosivuina. Paikat, kuten Twitter tai Gmailin mobiiliversio, ovat erinomaisia esimerkkejä HTML5-työstä. Mutta koska HTML5: n voi tuottaa Web-näkymäkomponentti, ikkunan pudottaminen perussovelluskehyksen sisälle puhelimeesi tosiasiallisesti asennettavan sovelluksen luomiseksi on yksinkertaista ja nopeaa. On jopa kolmansien osapuolien työkaluja, jotka tekevät kaiken työn puolestasi, kuten Apache Cordova. Tämä auttaa uusia kehittäjiä tuomaan ideoitaan kaikille sekä kokeneille kehittäjille, joilla on nyt aika unelma asioista, joita emme ole aiemmin nähneet. Natiiviin sovellukseen upotettu HTML5 voi suorittaa koodin ja käyttää Internetistä saatuja resursseja, mutta kehittäjä voi myös asentaa nämä paikallisesti ja osoittaa koodin siellä rehellisyydestä offline-luontaisissa sovelluksissa.
Mutta kaikki ei ole hienoa HTML5: ssä.
HTML5-sovellusten todellisuus
Asiat saattavat hämmentyä täällä. Kun ajattelemme verkkosivua, unohdamme usein, että verkkosivu lähettää koodinsa vain selaimen moottorille ja laitteen toimii se. Tämä tarkoittaa, että muun muassa paikannus, reaaliaikainen ääni- ja videopuhelu, 3D-kiihdytetty grafiikka ja paljon muuta ovat kehittäjälle paitsi mahdollisia myös yksinkertaisia toteuttaa HTML5: n avulla. Tämä johtuu siitä, että standardointielin on sanonut: "Hei kaverit, meidän kaikkien on tehtävä tämä tietty asia tällä tietyllä tavalla, ja kehittäjä voi pyytää meitä tekemään näin."
Se on tavoite joka tapauksessa. Todellisuus voi olla hiukan erilainen, ja meidän on tarkasteltava videotoistoa vain loistava esimerkki miksi. Jokainen selain, jota haluat käyttää, tukee HTML5: Chrome, Opera, Internet Explorer, Edge, Firefox ja Safari ovat HTML5-selaimia ja tukevat videotoistoa, kun kehittäjä kirjoittaa vain muutaman videota osoittavan sanan. Minkä tahansa kannettavan web-näkymän komponentit, jotka näillä sovelluksilla on, tekevät saman asian, koska ne käyttävät samaa renderointimoottoria.
Kun et noudata sääntöjä, niistä tulee ehdotuksia; sellaisia, joita kukaan ei halua seurata.
Mutta ne eivät kaikki tue samantyyppisiä videoita, koska HTML5 on alustojenvälinen, avoin eikä omistama, joten kukaan ei pakota heitä tukemaan kaikkia formaatteja. Ogg Theora on suosittu videomuoto, jota kaikki selaimet tukevat lukuun ottamatta Internet Exploreria, joka sattuu oletuksena olevana selaimena monissa tietokoneissa. H.264 on vielä suositumpi, mutta se ei ole avoin tai ilmainen käyttää, joten Firefox ei tue sitä. VP8 ja WebM ovat vapaasti käytettäviä ja avoimia, ja jokainen selainmoottori tukee niitä, mutta Internet Explorer ja Safari vaativat käyttäjän hakemaan ja asentamaan tuen. Teknisesti HTML5 tukee HD-videotoistoa ja on erittäin helppo kehittäjälle toteuttaa se. Todellisessa maailmassa vain oikean tyyppistä videota tuetaan.
YouTube toistaa kaikki videot HTML5: llä, koska Googlella on rahaa lataamiesi videoiden muuntamiseen.
HTML5 riippuu myös käytetystä laitteistosta ja siitä, kuinka osaava kehittäjä on koodin kirjoittamisessa. Väärän JavaScript-kirjaston valitseminen saattaa silti tuottaa saman tuloksen, mutta se voi johtaa myös muistivuotoihin ja DOM-manipulaation käsittelyyn (Document Object Model - luotu sivun tai sovelluksen latautuessa, ja se sisältää kaikki sivun tai sovelluksen elementit) erillinen "asiakirja") voi tehdä HTML5-sovelluksesta turhauttavaa hidasta jopa parhaassa laitteistossa. Puhelimissa, jotka eivät ole yhtä kykeneviä, se johtaa käyttäjien nopeasti poistamaan sovelluksesi.
Se ei ole ainoa asia. Kun luot HTML5-sovelluksen, joka vetää kaiken Internetistä, sinun on käsiteltävä latausaikoja. Tämä lisää käyttäjän yhteydenopeuden luetteloon asioista, jotka voivat saada sovelluksesi toimimaan hitaasti, samoin kuin laitteiston fyysiset ominaisuudet (monet puhelimet käyttävät suorittimia, jotka eivät ole aivan nopeita) ja koodin optimointi. Jos koodisi näyttäminen käyttäjän laitteella kestää yhden sekunnin ja sen hakeminen Internetistä 10 sekuntia, sinulla on paljon onnettomia käyttäjiä.
Facebook-sovellus on esimerkki HTML5: n virheistä samoin kuin Instagram on esimerkki siitä, mikä on oikein.
Tästä on saatavilla erinomainen esimerkki, ja melkein kaikki meistä ovat olleet tyytymättömiä käyttämäsi puhelintyyppiin riippumatta: Facebook-sovellus. Facebook-sovellus on pohjimmiltaan web-näkymä, joka on upotettu kehykseen, joka pitää painikkeita ja auttaa hallitsemaan tilisi käyttöoikeustietoja tai työntämään viestejä tavalla, jonka käyttöjärjestelmä hyväksyy. Kaikki sovelluksen sisällä tapahtuvat asiat tehdään HTML5: llä, ja sen käsittely on aivan liikaa, kun olet hakemassa kaikkia tietojaan Internetistä. Kehittäjät lisäävät yhä enemmän Facebookiin, käyttäjät lähettävät suuria tiedostoja, jotka ovat isännöidyt osoitteessa paikkoja Facebookin ulkopuolella, ja miljoonia ja miljoonia ihmisiä lyö Facebookin palvelimia kerralla, ympäri vuorokauden. Tämä tekee sovellusten hitaasta päivityksestä, erittäin nälkäisestä ja aiheesta paljon valituksia.
Facebookin mobiilisivusto on kirjoitettu myös HTML5-muodossa, mutta se on suunniteltu resurssikirjalliseksi, koska se on tarkoitettu mobiililaitteille. Tämän ansiosta haluamasi sisällön lataaminen on nopeampaa, vaikka kaikkea kyseistä sisältöä ei näytetä niin mukavana kuin se on koko näkymässä. Siksi myös mobiilisivusto ja Facebookin "lite" -sovellukset, jotka viittaavat siihen, toimivat paljon paremmin kuin Facebookin virallinen sovellus. Eikä tämä ole vain Facebook-ongelma - on paljon sovelluksia, joiden kaikkia ominaisuuksia tuettaisiin HTML5: llä, mutta jotka ovat yhtä monimutkaisia (mukava sana paisuneisiin, koska ne ovat olleet jonkin aikaa ja ovat jatkuvasti muuttumassa) kuin Facebook ja toimisi samalla tavalla.
Joten haluan nähdä lisää HTML5-sovelluksia vai ei?
Joo! Mutta eivät kaikki sovellukset.
HTML5 on todella hyvä monissa asioissa ja on hieno tapa kehittäjälle käyttää aikansa ajatella luovia ideoita sen sijaan, että juurtuisi Objective-C- tai C ++ -käsikirjan läpi. Mutta joskus kehityskielten jäykkä rakenne, joka pakottaa kehittäjän tekemään asioita tietyllä tavalla, on se, mikä saa lopputuloksen toimimaan paremmin puhelimissamme.
HTML5-sovellukset voivat olla painajaisia, kuten näemme Facebook-sovelluksesta, tai ne voivat olla aika mahtavia, kuten näemme mobiililaitteiden Gmail-sivustolla. Tai Uber. Tai Instagram. Tai mikä tahansa sadasta HTML5-sovelluksesta, jota käytämme päivittäin. Se ei ole asia, josta meidän olisi pitänyt huolehtia, mutta kehittäjien on täysin asia keskustella loputtomasti. Ja nyt kun he keskustelevat ja yrittävät vakuuttaa sinulle, mikä on parempi, tiedät vähän siitä, miksi he sanovat sanoja, joita he sanovat.
Voimme ansaita palkkion ostoista linkkien kautta. Lue lisää.