Telefon er et rammeverk for utvikling av plattformer på HTML/JavaScript, for syv mobile plattformer. I dag kan man lese et betydelig antall artikler dedikert til telefon, skrevet av enten innfødt utviklere, som prøvde ut plattformer programmering, eller front-end utviklere, som prøvde ut mobile utvikling. Deres vurdering av hvor god eller dårlig telefon er, er påvirket av deres opprinnelige feltet av aktiviteter; Derfor kalles telefon enten "kult" eller "feil".
Men det er utviklere som dedikerte sine aktiviteter utelukkende til telefon utvikling, og de studere nyanser av dette kryssplattform-rammeverket. Det er ingen universell løsning, verken i native utvikling, eller i kryss-plattform utvikling. Alt avhenger av programvare prosjektet. og disse nyanser kan hjelpe avgjøre om telefon bør være valgt som plattform for prosjektet.
Krysset-plattform egenskapene til telefon er oppnådd på følgende måte: en innfødt prosjektet er generert, karakteristiske for hver plattform, som inkluderer en nettleser (en innfødt webvisning komponent) som den viktigste komponenten. Denne leseren er i stand til å vise HTML/JavaScript-kode som en vanlig web-side. Filsystemet til dette prosjektet fungerer delen av en filserver, som gir tilgang til siden. Som en ekstra bonus er det et objekt som lar telefon å standardisere tilgang til innfødte funksjoner av mobile enheter som kjører støttede operativsystemer, for eksempel kamera, kompass, akselerometer, kontakter osv.
Hvis standard-API ikke er nok, vil PhoeGap Plugin API tillate for å skrive en kode, som implementerer den manglende funksjonaliteten. Denne koden er skrevet på det opprinnelige programmeringsspråket, som er spesifikk for hver særegne plattform.
I utgangspunktet inneholder en telefon-prosjektet fire funksjonelle deler, som sikrer implementering av HTML/JavaScript-kode:
1) en nettleser (webvisning), innebygd i prosjektet.
2) strukturert API for tilgang til opprinnelig-funksjonalitet på en mobil enhet fra JavaScript kode;
3) API for å skrive innfødte plugins;
4) lagring av filer, som inneholder HTML, JavaScript og andre ressurser av programmet.
Dermed telefon gjør det mulig for å bygge en service-orientert, enkeltside HTML-5 program.
99% av telefon utvikling er layouting og JS-koding med hensyn til miljøet særegenheter (en mobil enhet, begrenset behandling makt, minne, touchscreen etc.) og nettlesere. Under telefon må utvikling en vurdere spesifisiteten av hver plattform, dens retten kikker (som har Web-visning basert på det). Telefon er krevende, når det gjelder arkitektur og optimalisering. Bruker grenseflate har til å være optimalisert for hver plattform; Det er derfor å angi målet plattformene vil påvirke tiden brukt på prosjektet.
Vi har tidligere rørte på spørsmålet om telefon, og skissert fire store problemer mens du bygge et responsive app på telefon: 300 millisekund lag, problemet med rørende, DOM struktur optimalisering og lange lister. Og vi har antydet løsninger for disse problemene. Dermed har vi nådd en konklusjon at det svake meningene av telefon er i utgangspunktet tekniske særegenheter, som bør behandles som sådan.
For å konkludere, er her flere nyttige tips om telefon utvikling - å spare tid og unngå frustrasjon.
1) De færre eksterne bibliotekene brukes, jo bedre. Dette gjelder de begrensede ressursene på en mobil enhet. Det ligger nær å ha en flåte av skip å bære en enkeltboks (business case av programmet). Drivstoff vil bli fortært av hele flåten. Velg bibliotekene tankefullt og prøve å utnytte sine evner;
2) Programmet trenger ikke å se det samme på alle plattformer og OS-versjoner. Det er bedre å foreta en avveining i stil og utseende av en app, for å holde hastighet og funksjonalitet intakt;
3) Bruke CSS bakgrunn til å vise bilder; Derfor lastes et bilde bare hvis et element i listen vises på skjermen.
4) De optimalisering metodene, gjelder for web-sider med klient-server arkitektur, er ikke alltid den beste løsningen for en telefon-programmet. Det er ingen lang nettverksforespørsler for lasting JS/HTML/CSS-filer, så det er ingen grunn til å vurdere størrelsen på en JavaScript-fil, eller for eksempel i minimering av usynlig bildepunktene i et bilde. Velg en måte å takle uunngåelig 250 millisekunder lag før en fil laster; vårt valg var lat preloading og fliser;
5) Sted, input felt på oversiden av skjermen - dermed unngår du forskjeller i virkemåten til sideoppsettet mens tastaturet;
6) Lange lister er et problem som bør unngås - med mindre du har en løsning;
7) Unngå sjatteringer, graderinger og gjennomskinnelighet, der det er mulig. Alle denne stas krever ekstra makt, det er derfor bruker det bare der det er nødvendig;
8) Bruke kraften av grafikk bearbeiding enhet via CSS.