BarCamp - Zváračský kurz na Web

  • 1,468 views
Uploaded on

Základný prehľad o technológii Google App Engine a možnosti napojenia Flash Builderu na BlazeDS, pomocou ktorého je možné priamo generovať kód zo serverového API. Výrazné zjednodušenie práce. …

Základný prehľad o technológii Google App Engine a možnosti napojenia Flash Builderu na BlazeDS, pomocou ktorého je možné priamo generovať kód zo serverového API. Výrazné zjednodušenie práce. Nasleduje diskusia o kontinuálnej integrácii a Hudson CI.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
1,468
On Slideshare
0
From Embeds
0
Number of Embeds
2

Actions

Shares
Downloads
1
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. Zváračský kurz na BlazeDS BarCamp Brno - FI 26.6. 2010 Mgr. Juraj Michálek SinusGear Twitter: http://twitter.com/georgiksk Blog: http://georgik.sinusgear.com
  • 2. Upozornenie! Prezentované riešenia nie sú silver bullet ani magický lektvar. Časť problémov vyriešia. Nejaké nové prinesú.
  • 3. Časti kurzu Ako sa vyvíjú klient-server aplikácie? Prínos Google App Enginu. Zvýšenie účinnosti pomocou BlazeDS. Kontinuálna integrácia a PMD.
  • 4. Máme nápad! Vytvoríme skvelú aplikáciu!
  • 5. Klasický model Navrhnúť databázu. Navrhúť dátovú vrstvu. Navrhúť vrstvu s logikou a kontrolérmi. ... ešte sme neskončili
  • 6. Klasický model - klient Navrhnúť rozhranie služby. (Web services, REST) Navrhnúť serializáciu na klientovi. Navhrnúť volanie serverového API. Ešte stále sme neskončili...
  • 7. Klasický model - UI Navrhnúť logiku na klientovi. Navrhnúť GUI na klientovi. Máme hotovo?
  • 8. Klasický model - nasadenie Nie, nie je hotovo! Nájsť/kúpiť hosting. Umiestniť na server. Testovacia a produkčná verzia. Zber logov a chybových hlásení. A aplikácia nám doteraz nezarobila ani groš.
  • 9. We're on the highway to hell!
  • 10. Náklady na klasický model Náklady - server. Náklady - klient. Náklady – komunikácia a hosting. Postupný nárast používateľov
  • 11. Time to market Čo prosím? Nerozumiem syntaxi vášho kmeňa! Vývojár: „Ešte nemáme vyladený komunikačný protokol.“
  • 12. Moment! To ešte nie je všetko! Zmeníme schému v DB? Musíme zmeniť: logiku serverové API dátovú vrstvu klienta klienta
  • 13. Ako spieva Queens Too much (love) features will kill you in the end. Pattern: Feature soup.
  • 14. Hm? Položme si základnú otázku. Prečo vlastne vôbec niekto vyvíja softvér?
  • 15. Skúsme to veselšie a radostnejšie Je vôbec možné zjednodušiť niektoré kroky? A tým znížiť cenu vývoja?
  • 16. Príklad z priemyslu Automatizovať. Potrebujeme systém. A hlavne: Potom potrebujeme ešte lepší systém.
  • 17. Google App Engine
  • 18. Bonusy Free hosting (až 10 app). Škálováteľnosť (nútená). Podpora Python/Java. Deployment, integrácia s IDE, verzovanie aplikácií, SSL cert, sledovanie app, meranie výkonu.
  • 19. GAE + Eclipse
  • 20. GAE admin console
  • 21. Log report
  • 22. Ok, vyrišený hosting Čo môžeme optimalizovať ďalej? Databáza a mapovanie na objekty.
  • 23. ORM a Python
  • 24. ORM a Java
  • 25. Podpora GAE (*.jar) JDO Spring DataNucleus Enhancer Maven GAE Plugin http://www.kindleit.net/maven_gae_plugin/
  • 26. JDO Anotácia z enterprise aplikácii. DB sa vytvára na základe kódu. http://code.google.com/appengine/docs/java/datastore/usingjdo.html
  • 27. Zmena v App JPA replikuje zmenu schémy do DB. Milé :-)
  • 28. Klient / server API. Au. Zmena API? Ste sa zbláznili!
  • 29. Super API na prvý krát? Jedine Chuck Norris!
  • 30. Flash Builder Pripojenie na web aplikáciu? Service discovery.
  • 31. Zadám adresu a...
  • 32. Zázrak Funguje aj drag-n-drop do datagridu.
  • 33. No, ale zmením adresu A všetky parametre operácie povedia pápá :-( Evil Wizard?
  • 34. Remote Discovery Service Podpora pre PHP, LiveCycle a BlazeDS. Zadám URL serveru a...
  • 35. Discovery Dokonca funguje aj update API!
  • 36. Test operácie
  • 37. Vygenerovanie formuláru
  • 38. Drag-n-drop výsledkov do tabuľky
  • 39. Spustíme! Jetty server. Ako to tak chodí u vývojára to ide. A v cloude?
  • 40. Ale veď to poznáte... Error! Duplicated Session.... :-O
  • 41. Drobná úprava Patchneme a prekompilujeme BlazeDS ;-) EngineDS Maven repository Project archetype - JDO http://maven.sinusgear.com
  • 42. Kontinuálna integrácia SCRUM, Agile http://www.agilnikonsorcium.cz/ Hudson CI PMD
  • 43. Plan, Do, Check, Act Návrh Vývoj Kontrola Zlepšenie http://www.goalscape.com
  • 44. Kontinuálna integrácia Hudson CI V spolupráci s Michalom Gronom http://www.sinusgear.com/hosting/hudson-ci
  • 45. PMD – don't shoot the messanger
  • 46. Software Engineering Radio Model driven development http://www.se-radio.net
  • 47. Diskusia Témy: Google App Engine Python, Java, Jetty ORM, JPA, JDO BlazeDS Agile Hudson CI PMD
  • 48. Školenia, konzultácie Adobe technológie Flex, AIR, BlazeDS Google, Clouds Implementácia kontinuálnej integrácie a automatizácia SW projektov. http://www.sinusgear.com/skolenia
  • 49. Ďakujem za pozornosť BarCamp Brno - FI 26.6. 2010 Mgr. Juraj Michálek SinusGear Twitter: http://twitter.com/georgiksk Blog: http://georgik.sinusgear.com