smartfront javascript meetup prez
TRANSCRIPT
![Page 1: SMARTFRONT javascript meetup prez](https://reader036.vdocuments.mx/reader036/viewer/2022081519/558c9b91d8b42a7a018b4703/html5/thumbnails/1.jpg)
INNOVATÍV MEGOLDÁSOK
Molnár Gábor, Nyári Zoltán - budapest.js meetup
![Page 2: SMARTFRONT javascript meetup prez](https://reader036.vdocuments.mx/reader036/viewer/2022081519/558c9b91d8b42a7a018b4703/html5/thumbnails/2.jpg)
AGENDA
SMARTFRONT architektúra overview
javascript rich-client keretrendszer
követelmények meghatározása komponensek bemutatása knock-out how-to implementált szolgáltatások
![Page 3: SMARTFRONT javascript meetup prez](https://reader036.vdocuments.mx/reader036/viewer/2022081519/558c9b91d8b42a7a018b4703/html5/thumbnails/3.jpg)
n-tier architecture
Többrétegű alkalmazás
javascript rich-client RESTful interfész JavaEE, SPRING alkalmazás-szerver
szerver technológia független skálázható, klaszterezhető stateless
szerver
![Page 4: SMARTFRONT javascript meetup prez](https://reader036.vdocuments.mx/reader036/viewer/2022081519/558c9b91d8b42a7a018b4703/html5/thumbnails/4.jpg)
![Page 5: SMARTFRONT javascript meetup prez](https://reader036.vdocuments.mx/reader036/viewer/2022081519/558c9b91d8b42a7a018b4703/html5/thumbnails/5.jpg)
Prezentációs réteg - Elvárások
KOMPLEX ÜZLETI ALKALMAZÁSOK FEJLESZTÉSE
b2b / b2c, front + backoffice igények sok form, sok adat, sok felületi logika (+ sok más)
data binding is a must (two-way binding) validációk, lokalizáció modularitás AppViewModel - single page, multi tab :)
![Page 6: SMARTFRONT javascript meetup prez](https://reader036.vdocuments.mx/reader036/viewer/2022081519/558c9b91d8b42a7a018b4703/html5/thumbnails/6.jpg)
opciók
![Page 7: SMARTFRONT javascript meetup prez](https://reader036.vdocuments.mx/reader036/viewer/2022081519/558c9b91d8b42a7a018b4703/html5/thumbnails/7.jpg)
Komponensek
rich javascript kliens – felhasználói élmény responsive,css, html5, offline
knockout.js – MVVM jquery – UI, AJAX require.js – modularitás less
Tablet, smartphone (phonegap)
![Page 8: SMARTFRONT javascript meetup prez](https://reader036.vdocuments.mx/reader036/viewer/2022081519/558c9b91d8b42a7a018b4703/html5/thumbnails/8.jpg)
Modularizáció
Asynchronous Module Definition gyakorlatilag nincs alternatívája Require.js - probléma : API függőségek
kezelése on-demand betöltés
Modulok közötti kommunikáció szerver oldalra korlátozva
UI modul - > tabok később - ablakkezelő?
![Page 9: SMARTFRONT javascript meetup prez](https://reader036.vdocuments.mx/reader036/viewer/2022081519/558c9b91d8b42a7a018b4703/html5/thumbnails/9.jpg)
promisify = (old_function) -> return -> callback = arguments[arguments.length - 1]
if callback instanceof Function arguments[arguments.length - 1] = -> promise = $.Deferred() $.when.apply($, arguments).then -> $.when(callback.apply(this, arguments)).then (module) -> promise.resolve module return promise; return old_function.apply(this, arguments)
window.define = promisify window.definewindow.require = promisify window.require
Require.js - promise támogatás
![Page 10: SMARTFRONT javascript meetup prez](https://reader036.vdocuments.mx/reader036/viewer/2022081519/558c9b91d8b42a7a018b4703/html5/thumbnails/10.jpg)
Felhasználói felület
Modulok Tabok: formok, listanézetek Egységes
stílus táblák grid rendszer
jQuery (+jQuery modulok) HTML
id-k, name-ek használatának kerülése ha mégis kell: random ID-k generálása
![Page 11: SMARTFRONT javascript meetup prez](https://reader036.vdocuments.mx/reader036/viewer/2022081519/558c9b91d8b42a7a018b4703/html5/thumbnails/11.jpg)
Knock-out how-to #1
Kétirányú adatkötés
Nem magic a fejlesztőknek pontosan tudniuk kell hogyan
működik különben : nehezen felderíthető hibák
Problémák beépített templating elavult (jQuery template)
de nincs is szükség rá
![Page 12: SMARTFRONT javascript meetup prez](https://reader036.vdocuments.mx/reader036/viewer/2022081519/558c9b91d8b42a7a018b4703/html5/thumbnails/12.jpg)
Knock-out how-to #2
ViewModel és nem Model öröklődés nem támogatott szerializálás - deszerializálás dinamikus listák (ajax) + egyedi
komponensek
http://www.knockmeout.net/2011/06/10-things-to-know-about-knockoutjs-on.html
![Page 13: SMARTFRONT javascript meetup prez](https://reader036.vdocuments.mx/reader036/viewer/2022081519/558c9b91d8b42a7a018b4703/html5/thumbnails/13.jpg)
![Page 14: SMARTFRONT javascript meetup prez](https://reader036.vdocuments.mx/reader036/viewer/2022081519/558c9b91d8b42a7a018b4703/html5/thumbnails/14.jpg)
Tervek
Business Intelligence: mondrian + saiku
Grafikonkezelés
offline üzemmód támogatása