Natívnejší JavaScript pre vývoj aplikácií rubrika: Programování: JavaScript
Zdravím,
teoretické téma... existuje mnoho spôsobov ako pristupovať ku riešeniu "desktopová/mobilná/natívna aplikácia v JavaScripte".
Máme tu Electron, ktorý všetci dobre znajú, podla popisu hovorí o tvorbe natívnych aplikácií, ale povedal by som že sú skôr hybrid. V prípade mobilých platforiem máme technológiu Cordova, ktorá funguje celkom podobne z pohľadu natívnosti, resp v tom že pre vykreslenie používa prehliadač... toto riešenie je dosť hodne pamäťožrútne. Potom tu pre mobily máme NativeScript, ktorý to zobral z iného uhlu, a v podstate sa dajú nazvať reálne natívne. U desktopu tu ďalej máme NW.js, ktorý úplne neznám, ale čo viem, je že je to niekde v polovici medzi natívnosťou akú má NativeScript a Hybrid aplikáciou... tak zaujímalo by ma či neznáte nejaké veľké riešenie, ktoré by bolo v podstate "reálne natívne". Je tu síce rozdiel akým spôsobom funguje Android a akým Windows alebo Linux. Napadlo ma že by to pre vykresľovanie mohlo využívať napríklad GTK.
Ďalšia vec je či by nešlo túto hranicu posunúť ešte ďalej, a z run-time JS, vytvoriť reálne kompilovaný JS do binárneho kódu (spustitelnej binárky) (E: jak pozerám, už niečo také existuje https://nectarjs.com/). Čo myslíte,... ešte pred rokmi by nikoho ani nenapadlo že by vôbec niečo ako beh JS mimo prehliadača bol možný. Tak ma zaujímalo aká b mohla byť budúcnosť JavaScriptu čo sa natívnosti týče, a ako moc je na tom natívnosť, a prípadne aké frameworky by ste odporučili pre čo najnatívnejší a performance focus aplikácie v JS, či už desktopové alebo mobilné, a či už s UI alebo bez.
Neviem sice co je otazka ale treba si upratat v pojmoch JS - jazyk, jeho interpreter/kompilator no a na zaver knicnice ktore mozes pouzivat. Este neviem ci rozumies celkom tomu co je NPM respektive node.js. To nie je prehliadac, to je vyrezany google JS engine napisany v C++, ziadny browser tam nie je (https://v8.dev/). Ked napriklad chces vykreslovat pomocou JS beziaceho v node.js GTK komponenty mozes pouzit https://github.com/romgrk/node-gtk, ako to ale potom dostat na android? To su problemy, preto sa pouzivaju rozne 'kniznice' ktore pouzivaju nativne komponenty danej platformy. Takze pre android mas inu 'kniznicu' ako pre Linux (GTK). Cela sa to samozrejme zvrhlo pri multiplatformovosti GUI na to ze sa tam da proste browser (HtmlView) ktory uz multiplatformovo vykreslovat vie.
Pro plný přístup na Devel.cz se prosím přihlaste:
Nebo se přihlaste jménem a heslem:
Komentáře