Your SlideShare is downloading. ×
SMARTFRONT javascript meetup prez
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

SMARTFRONT javascript meetup prez

394
views

Published on


0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
394
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. INNOVATÍV MEGOLDÁSOK Molnár Gábor, Nyári Zoltán - budapest.js meetup
  • 2. AGENDA SMARTFRONT architektúra overviewjavascript rich-client keretrendszer követelmények meghatározása komponensek bemutatása knock-out how-to implementált szolgáltatások
  • 3. n-tier architectureTöbbrétegű alkalmazás javascript rich-client RESTful interfész JavaEE, SPRING alkalmazás-szerver szerver technológia függetlenskálázható, klaszterezhető stateless szerver
  • 4. 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 :)
  • 5. opciók
  • 6. 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)
  • 7. 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ő?
  • 8. Require.js - promise támogatáspromisify = (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
  • 9. 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
  • 10. 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á
  • 11. 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 komponensekhttp://www.knockmeout.net/2011/06/10-things-to-know-abo
  • 12. Tervek Business Intelligence: mondrian + saiku Grafikonkezelés offline üzemmód támogatása