Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Bezpečnosť v kontexte RIA

              EurOpen

                Želiv
             5.10. 2011



         Mgr. Juraj Mic...
Niečo o mne
Obsah



          RIA

    Flex, Flash, PDF

HTML5, JavaScript, Mobile
Rich Internet Applications




       Ako to vzniklo?

       Výlet históriou
Rok 2005




Zložitejší JavaScript uvaril browser
Adobe




   3. 12. 2005

Kupuje Macromediu
FlashPlayer




Najrozšírenejšia platforma

      Win, Mac, Lin
ActionScript 2



S rastúcou aplikáciou

exponenciálne rástla

     pracnosť.
ActrionScript 3 a MXML




    Veľmi podobné Jave.

 Bez historickej ťarchy Javy.
Open source framework Flex



      Adobe dodáva nástroj

   pre vývoj na Flash Platforme.

      A definuje skratku RIA.
Microsoft



        Nočná mora web vývojárov: IE6


http://georgik.sinusgear.com/2011/03/05/ie-6-countdown/
Adobe má úspech




Flash platforma získava popularitu.
Microsoft




Vidí potenciál a spúšťa Silverlight
Flash Platforma má náskok




 FlashPlayer a ActionScript je starší
a kopec problémov u má vyriešených.

       Microsoft ...
Sun




Silverlight aj Flash vytláčajú Java applety.

             Vzniká Java FX.
JavaFX




           Sunu sa nedarí.


Dôležití vývojári odchádzajú do Adobe.
Apple




       iPhone je populárny.

Iná platforma na iPhone predstavuje
         riziko straty kontroly.
Adobe Max 2010



Hlavná téma – Flash Player pre iPhone.

      Dlho očakávaná novinka.

      Bude ohlásené v pondelok
  ...
Rana pod pás




V piatok pre Adobe Max
Apple zmení jeden riadok
        v licencii
Zmena

 3.3.1 — Applications may only use Documented
APIs in the manner prescribed by Apple and must
  not use or call any...
FP pre iPhone




     Zostáva v labáku Adobe.

Než Apple zmení svoje rozhodnutie.
iPad a iPhone




Jobs hlása: HTML5 je tá správna cesta
Google


        Úzko spolupracuje s Adobe.


    Zabuduje Flash Player do Chromu.


Zároveň výrazne zlepší podporu JavaSc...
Vic Gundotra - Google



The platform that is not owned by anyone

      truely belongs to everyone.

                HTML5
A znova objavenie kolesa




HTML5 reimplemetuje nanovo väčšinu
            vecí z FP.
Otvorený kód



Flex – postupne uvoľnený pod
    Mozilla Public Licence

         Silverlight

          JavaFx
Flash Builder



         Eclipse based


študenti a akademický pracovníci
        - licencia zdarma
MXMLC, COMPC

    shell, ant task

 FlexMojos – Maven
(Lin, Win, Mac, BSD)

Intellij Idea (Ultimate)
Architektúra RIA aplikácii



 Paralela s desktop aplikáciami

      Jeden kód v pamäti

     Komunikácia cez API
Permanent cookie




FP si udržiaval vlastné cookie.

       Security issue.
FP 10.3




Mazanie cookie je konečne možné
          kontrolovať.
Crossdomain




 FP umožňuje GET a POST.

Obmedzenie: rovnaká doména
Prístup na iné domény



crossdomain.xml v roote webu


FP ho kontroluje predtým, než
     odošle požiadavku.
crossdomain.xml



<cross-domain-policy>

  <allow-access-from  domain="*"/>

  <allow-http-request-headers-from  domain="...
REST



        GET a POST
   odosielané cez browser


PUT, DELETE atp. sú blokované
Hlavičky request/response




FP dokáže vytvoriť niektoré hlavičky.

  Nedokáže však načítať žiadne.
Flash Player Sockets




 Priamy prístup k socketu.

      Od FP 9.0.124
Socket Policy




Socket Policy File Server

        port 848
Policy document




<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "/xml/dtds/cross-domain-policy.dtd">
<cross...
Za firewallom




  848 je blokované...

A sme došli stará mama.
Prístup k súborom


  Otvorenie dialógu pre výber súboru

je možné len ako reakcia na uživateľskú

               udalosť....
File Uploader




www.klokantech.com
Transparent SWF




            Overlay


this.parentApplication.alpha = 0;
SWF




  SWF obsahuje bajtkód.

Ten je možné dekompilovať.
Assety v SWF




Zo SWF je možné vytiahnuť

         súbory.
Obfuskácia



         Je možná.


Silnejšie riešenie: enkrypcia
          (Nitro LM)
HTTPS




Server MUSÍ mať validný ceritikát.
HTTPS a IE




Warning pri každom requeste.
HTTPS a Google App Engine


          Certifikát zdarma.

  Plne validný len na jednu úroveň.
 https://srobick-server.apps...
Certifikát




Zdarma (slabší)

www.startssl.com
Memory Leak - Flash




        Monitoring Flash Player pamäte

http://georgik.sinusgear.com/projects/flash-memory-monitor...
Bezpečnostné opravy


    Pre administrátorov: Aktualizujte!

Security oprava je vydaná pomerne rýchlo
           od objav...
Bug reporting




https://bugbase.adobe.com/
RIA z webu na desktop

    Zoberme web app.
 Nech je z nej desktop app!

 www.hotrunnermodel.com
AIR Runtime



„Upravený“ FP pre desktop.

Flex SDK + AIR rozšírenia

  Win, Lin, Mac, Mobile
RIA z webu na mobil a TV



      Jeden kód, jeden runtime
  a množstvo cieľových platformiem:


Mac, Win, Lin, Android, i...
Odstránené obmedzenia FP



   Crossdomain nemá význam.

     Socket priamy prístup.

   Prístup na súborový systém.
AIR aplikácia - manifest




<allowBrowserInvocation>true</allowBrowserInvocation>
AIR update aplikácií
AIR a HTTPS



 Platí to isté čo pre web.

Certifikát musí byť validný.

Inak čo request to warning.
RIA v PDF




Aplikácia zabalená do PDF.
Security Sandbox




Každá požiadavka mimo sandbox
     si vyžiada potvrdenie.
Projekt Rome




Tvorba interaktívneho PDF

  http://rome.adobe.com
Kontinuálna integrácia



                Jenkins

Príklad - Open Source AS3/MXML projekty:

         http://ci.sinusgear....
Silverlight




 Konkurent Flexu a FP

Aktuálne zameranie WP7
Komunikačné protokoly


       Nad HTTP

         XML

        SOAP

        JSON

        AMF3
XML a SOAP




Penalizácia (de)serializácie.
AMF3



       Binárny protokol.

    Veľmi rýchly a otvorený.

Klient FP only, server Java only.
AMF3 introspection



                            Toaster Lite

                     Dekódovacia proxy
http://georgik.sinu...
JSON




Rýchlosť, otvorenosť, čitateľnosť.

               F12
HTML5, JavaScript
Canvas, WebGL



http://www.ermannobalzi.com/app/standardslide-2.0/

            http://www.webglearth.org/

             ...
three.js




https://github.com/mrdoob/three.js/
jQuery a jQueryMobile




Fenomenálny prielom v možnostiach JavaScriptu.


   $("#zeliv").animate({top:"300px"}).animate({...
Malý web server




python -m SimpleHTTPServer
EmglareMobile



 App: http://www.emglare.com

Mobile app: http://m.emglare.com


   Postavené na PhoneGap
Dreamweaver a PhoneGap




    Deployment na Android
Back button



Užívateľ sa môže vrátiť k predchádzajúcej
               aplikácii.


      Nutné zneplatniť citlivé data.
GET



       Pozor! Na keš.

Každý browser sa chová inak.

    POST sa nekešuje.
Crossdomain




GET/POST request je obmedzený na doménu.
Sanitizácia HTML



         Príklad: diskusný portál

vkladá do stránky nesanitizované príspevky

               <script....
JSON problém




       Incident s Gmailom (fixed)

<script src=“http://gmail.com...“></script>
Ochrana dát proti crossdomain




while (true); &&&START&&&{"Success":true,"
User Tacking DOM
Ochrana JavaScriptu?



            Aspoň kompresia

            YUI-Compressor

http://developer.yahoo.com/yui/compressor/
Memory leak




JavaScript - Circular reference
Captcha :-D




http://www.webdesignbeach.com/beachbar/ajax-fancy-captcha-jquery-plugin
Bezpečnostné výstrahy pre SW




The Open Source Vulnerability Database

           http://osvdb.org/
$(this).close()

             Europen

               Želiv
            5.10. 2011



        Mgr. Juraj Michálek

Twitter...
Upcoming SlideShare
Loading in …5
×

of

Bezpečnosť v kontexte RIA technológií Slide 1 Bezpečnosť v kontexte RIA technológií Slide 2 Bezpečnosť v kontexte RIA technológií Slide 3 Bezpečnosť v kontexte RIA technológií Slide 4 Bezpečnosť v kontexte RIA technológií Slide 5 Bezpečnosť v kontexte RIA technológií Slide 6 Bezpečnosť v kontexte RIA technológií Slide 7 Bezpečnosť v kontexte RIA technológií Slide 8 Bezpečnosť v kontexte RIA technológií Slide 9 Bezpečnosť v kontexte RIA technológií Slide 10 Bezpečnosť v kontexte RIA technológií Slide 11 Bezpečnosť v kontexte RIA technológií Slide 12 Bezpečnosť v kontexte RIA technológií Slide 13 Bezpečnosť v kontexte RIA technológií Slide 14 Bezpečnosť v kontexte RIA technológií Slide 15 Bezpečnosť v kontexte RIA technológií Slide 16 Bezpečnosť v kontexte RIA technológií Slide 17 Bezpečnosť v kontexte RIA technológií Slide 18 Bezpečnosť v kontexte RIA technológií Slide 19 Bezpečnosť v kontexte RIA technológií Slide 20 Bezpečnosť v kontexte RIA technológií Slide 21 Bezpečnosť v kontexte RIA technológií Slide 22 Bezpečnosť v kontexte RIA technológií Slide 23 Bezpečnosť v kontexte RIA technológií Slide 24 Bezpečnosť v kontexte RIA technológií Slide 25 Bezpečnosť v kontexte RIA technológií Slide 26 Bezpečnosť v kontexte RIA technológií Slide 27 Bezpečnosť v kontexte RIA technológií Slide 28 Bezpečnosť v kontexte RIA technológií Slide 29 Bezpečnosť v kontexte RIA technológií Slide 30 Bezpečnosť v kontexte RIA technológií Slide 31 Bezpečnosť v kontexte RIA technológií Slide 32 Bezpečnosť v kontexte RIA technológií Slide 33 Bezpečnosť v kontexte RIA technológií Slide 34 Bezpečnosť v kontexte RIA technológií Slide 35 Bezpečnosť v kontexte RIA technológií Slide 36 Bezpečnosť v kontexte RIA technológií Slide 37 Bezpečnosť v kontexte RIA technológií Slide 38 Bezpečnosť v kontexte RIA technológií Slide 39 Bezpečnosť v kontexte RIA technológií Slide 40 Bezpečnosť v kontexte RIA technológií Slide 41 Bezpečnosť v kontexte RIA technológií Slide 42 Bezpečnosť v kontexte RIA technológií Slide 43 Bezpečnosť v kontexte RIA technológií Slide 44 Bezpečnosť v kontexte RIA technológií Slide 45 Bezpečnosť v kontexte RIA technológií Slide 46 Bezpečnosť v kontexte RIA technológií Slide 47 Bezpečnosť v kontexte RIA technológií Slide 48 Bezpečnosť v kontexte RIA technológií Slide 49 Bezpečnosť v kontexte RIA technológií Slide 50 Bezpečnosť v kontexte RIA technológií Slide 51 Bezpečnosť v kontexte RIA technológií Slide 52 Bezpečnosť v kontexte RIA technológií Slide 53 Bezpečnosť v kontexte RIA technológií Slide 54 Bezpečnosť v kontexte RIA technológií Slide 55 Bezpečnosť v kontexte RIA technológií Slide 56 Bezpečnosť v kontexte RIA technológií Slide 57 Bezpečnosť v kontexte RIA technológií Slide 58 Bezpečnosť v kontexte RIA technológií Slide 59 Bezpečnosť v kontexte RIA technológií Slide 60 Bezpečnosť v kontexte RIA technológií Slide 61 Bezpečnosť v kontexte RIA technológií Slide 62 Bezpečnosť v kontexte RIA technológií Slide 63 Bezpečnosť v kontexte RIA technológií Slide 64 Bezpečnosť v kontexte RIA technológií Slide 65 Bezpečnosť v kontexte RIA technológií Slide 66 Bezpečnosť v kontexte RIA technológií Slide 67 Bezpečnosť v kontexte RIA technológií Slide 68 Bezpečnosť v kontexte RIA technológií Slide 69 Bezpečnosť v kontexte RIA technológií Slide 70 Bezpečnosť v kontexte RIA technológií Slide 71 Bezpečnosť v kontexte RIA technológií Slide 72 Bezpečnosť v kontexte RIA technológií Slide 73 Bezpečnosť v kontexte RIA technológií Slide 74 Bezpečnosť v kontexte RIA technológií Slide 75 Bezpečnosť v kontexte RIA technológií Slide 76 Bezpečnosť v kontexte RIA technológií Slide 77 Bezpečnosť v kontexte RIA technológií Slide 78 Bezpečnosť v kontexte RIA technológií Slide 79 Bezpečnosť v kontexte RIA technológií Slide 80 Bezpečnosť v kontexte RIA technológií Slide 81 Bezpečnosť v kontexte RIA technológií Slide 82 Bezpečnosť v kontexte RIA technológií Slide 83 Bezpečnosť v kontexte RIA technológií Slide 84 Bezpečnosť v kontexte RIA technológií Slide 85 Bezpečnosť v kontexte RIA technológií Slide 86 Bezpečnosť v kontexte RIA technológií Slide 87 Bezpečnosť v kontexte RIA technológií Slide 88 Bezpečnosť v kontexte RIA technológií Slide 89
Upcoming SlideShare
Mobile first! Plynulý workflow - AIR
Next
Download to read offline and view in fullscreen.

0 Likes

Share

Download to read offline

Bezpečnosť v kontexte RIA technológií

Download to read offline

Možnosti RIA technológii a ich bezpečnostné aspekty. Vývoj pomocou Flash Builderu, Visual Studia, Intellij Idei. Prednáška prednesená na konferencii Europen.cz v Želive.

  • Be the first to like this

Bezpečnosť v kontexte RIA technológií

  1. 1. Bezpečnosť v kontexte RIA EurOpen Želiv 5.10. 2011 Mgr. Juraj Michálek Twitter: http://twitter.com/sinusgear Blog: http://georgik.sinusgear.com
  2. 2. Niečo o mne
  3. 3. Obsah RIA Flex, Flash, PDF HTML5, JavaScript, Mobile
  4. 4. Rich Internet Applications Ako to vzniklo? Výlet históriou
  5. 5. Rok 2005 Zložitejší JavaScript uvaril browser
  6. 6. Adobe 3. 12. 2005 Kupuje Macromediu
  7. 7. FlashPlayer Najrozšírenejšia platforma Win, Mac, Lin
  8. 8. ActionScript 2 S rastúcou aplikáciou exponenciálne rástla pracnosť.
  9. 9. ActrionScript 3 a MXML Veľmi podobné Jave. Bez historickej ťarchy Javy.
  10. 10. Open source framework Flex Adobe dodáva nástroj pre vývoj na Flash Platforme. A definuje skratku RIA.
  11. 11. Microsoft Nočná mora web vývojárov: IE6 http://georgik.sinusgear.com/2011/03/05/ie-6-countdown/
  12. 12. Adobe má úspech Flash platforma získava popularitu.
  13. 13. Microsoft Vidí potenciál a spúšťa Silverlight
  14. 14. Flash Platforma má náskok FlashPlayer a ActionScript je starší a kopec problémov u má vyriešených. Microsoft sa „inšpiruje“.
  15. 15. Sun Silverlight aj Flash vytláčajú Java applety. Vzniká Java FX.
  16. 16. JavaFX Sunu sa nedarí. Dôležití vývojári odchádzajú do Adobe.
  17. 17. Apple iPhone je populárny. Iná platforma na iPhone predstavuje riziko straty kontroly.
  18. 18. Adobe Max 2010 Hlavná téma – Flash Player pre iPhone. Dlho očakávaná novinka. Bude ohlásené v pondelok na začiatku konferencie.
  19. 19. Rana pod pás V piatok pre Adobe Max Apple zmení jeden riadok v licencii
  20. 20. Zmena 3.3.1 — Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs. Applications must be originally written in Objective-C, C, C++, or JavaScript as executed by the iPhone OS WebKit engine, and only code written in C, C++, and Objective-C may compile and directly link against the Documented APIs (e.g., Applications that link to Documented APIs through an intermediary translation or compatibility layer or tool are prohibited).
  21. 21. FP pre iPhone Zostáva v labáku Adobe. Než Apple zmení svoje rozhodnutie.
  22. 22. iPad a iPhone Jobs hlása: HTML5 je tá správna cesta
  23. 23. Google Úzko spolupracuje s Adobe. Zabuduje Flash Player do Chromu. Zároveň výrazne zlepší podporu JavaScriptu.
  24. 24. Vic Gundotra - Google The platform that is not owned by anyone truely belongs to everyone. HTML5
  25. 25. A znova objavenie kolesa HTML5 reimplemetuje nanovo väčšinu vecí z FP.
  26. 26. Otvorený kód Flex – postupne uvoľnený pod Mozilla Public Licence Silverlight JavaFx
  27. 27. Flash Builder Eclipse based študenti a akademický pracovníci - licencia zdarma
  28. 28. MXMLC, COMPC shell, ant task FlexMojos – Maven (Lin, Win, Mac, BSD) Intellij Idea (Ultimate)
  29. 29. Architektúra RIA aplikácii Paralela s desktop aplikáciami Jeden kód v pamäti Komunikácia cez API
  30. 30. Permanent cookie FP si udržiaval vlastné cookie. Security issue.
  31. 31. FP 10.3 Mazanie cookie je konečne možné kontrolovať.
  32. 32. Crossdomain FP umožňuje GET a POST. Obmedzenie: rovnaká doména
  33. 33. Prístup na iné domény crossdomain.xml v roote webu FP ho kontroluje predtým, než odošle požiadavku.
  34. 34. crossdomain.xml <cross-domain-policy> <allow-access-from  domain="*"/> <allow-http-request-headers-from  domain="*" /> </cross-domain-policy>
  35. 35. REST GET a POST odosielané cez browser PUT, DELETE atp. sú blokované
  36. 36. Hlavičky request/response FP dokáže vytvoriť niektoré hlavičky. Nedokáže však načítať žiadne.
  37. 37. Flash Player Sockets Priamy prístup k socketu. Od FP 9.0.124
  38. 38. Socket Policy Socket Policy File Server port 848
  39. 39. Policy document <?xml version="1.0"?> <!DOCTYPE cross-domain-policy SYSTEM "/xml/dtds/cross-domain-policy.dtd"> <cross-domain-policy> <site-control permitted-cross-domain-policies="master-only"/> <allow-access-from domain="swf.example.com" to-ports="123,456-458" /> </cross-domain-policy>
  40. 40. Za firewallom 848 je blokované... A sme došli stará mama.
  41. 41. Prístup k súborom Otvorenie dialógu pre výber súboru je možné len ako reakcia na uživateľskú udalosť. Click :-)
  42. 42. File Uploader www.klokantech.com
  43. 43. Transparent SWF Overlay this.parentApplication.alpha = 0;
  44. 44. SWF SWF obsahuje bajtkód. Ten je možné dekompilovať.
  45. 45. Assety v SWF Zo SWF je možné vytiahnuť súbory.
  46. 46. Obfuskácia Je možná. Silnejšie riešenie: enkrypcia (Nitro LM)
  47. 47. HTTPS Server MUSÍ mať validný ceritikát.
  48. 48. HTTPS a IE Warning pri každom requeste.
  49. 49. HTTPS a Google App Engine Certifikát zdarma. Plne validný len na jednu úroveň. https://srobick-server.appspot.com/ Podúrovne sú nevalidné. http://test.srobick-server.appspot.com/
  50. 50. Certifikát Zdarma (slabší) www.startssl.com
  51. 51. Memory Leak - Flash Monitoring Flash Player pamäte http://georgik.sinusgear.com/projects/flash-memory-monitor/ Loitering Objects
  52. 52. Bezpečnostné opravy Pre administrátorov: Aktualizujte! Security oprava je vydaná pomerne rýchlo od objavenia hrozby. Adobe Security Bulletin http://www.adobe.com/support/security/
  53. 53. Bug reporting https://bugbase.adobe.com/
  54. 54. RIA z webu na desktop Zoberme web app. Nech je z nej desktop app! www.hotrunnermodel.com
  55. 55. AIR Runtime „Upravený“ FP pre desktop. Flex SDK + AIR rozšírenia Win, Lin, Mac, Mobile
  56. 56. RIA z webu na mobil a TV Jeden kód, jeden runtime a množstvo cieľových platformiem: Mac, Win, Lin, Android, iOS, BlackBerry
  57. 57. Odstránené obmedzenia FP Crossdomain nemá význam. Socket priamy prístup. Prístup na súborový systém.
  58. 58. AIR aplikácia - manifest <allowBrowserInvocation>true</allowBrowserInvocation>
  59. 59. AIR update aplikácií
  60. 60. AIR a HTTPS Platí to isté čo pre web. Certifikát musí byť validný. Inak čo request to warning.
  61. 61. RIA v PDF Aplikácia zabalená do PDF.
  62. 62. Security Sandbox Každá požiadavka mimo sandbox si vyžiada potvrdenie.
  63. 63. Projekt Rome Tvorba interaktívneho PDF http://rome.adobe.com
  64. 64. Kontinuálna integrácia Jenkins Príklad - Open Source AS3/MXML projekty: http://ci.sinusgear.com
  65. 65. Silverlight Konkurent Flexu a FP Aktuálne zameranie WP7
  66. 66. Komunikačné protokoly Nad HTTP XML SOAP JSON AMF3
  67. 67. XML a SOAP Penalizácia (de)serializácie.
  68. 68. AMF3 Binárny protokol. Veľmi rýchly a otvorený. Klient FP only, server Java only.
  69. 69. AMF3 introspection Toaster Lite Dekódovacia proxy http://georgik.sinusgear.com/2011/01/14/how-to-introspect-amf-communication/
  70. 70. JSON Rýchlosť, otvorenosť, čitateľnosť. F12
  71. 71. HTML5, JavaScript
  72. 72. Canvas, WebGL http://www.ermannobalzi.com/app/standardslide-2.0/ http://www.webglearth.org/ http://www.ro.me/
  73. 73. three.js https://github.com/mrdoob/three.js/
  74. 74. jQuery a jQueryMobile Fenomenálny prielom v možnostiach JavaScriptu. $("#zeliv").animate({top:"300px"}).animate({left:"10px"});
  75. 75. Malý web server python -m SimpleHTTPServer
  76. 76. EmglareMobile App: http://www.emglare.com Mobile app: http://m.emglare.com Postavené na PhoneGap
  77. 77. Dreamweaver a PhoneGap Deployment na Android
  78. 78. Back button Užívateľ sa môže vrátiť k predchádzajúcej aplikácii. Nutné zneplatniť citlivé data.
  79. 79. GET Pozor! Na keš. Každý browser sa chová inak. POST sa nekešuje.
  80. 80. Crossdomain GET/POST request je obmedzený na doménu.
  81. 81. Sanitizácia HTML Príklad: diskusný portál vkladá do stránky nesanitizované príspevky <script.....>
  82. 82. JSON problém Incident s Gmailom (fixed) <script src=“http://gmail.com...“></script>
  83. 83. Ochrana dát proti crossdomain while (true); &&&START&&&{"Success":true,"
  84. 84. User Tacking DOM
  85. 85. Ochrana JavaScriptu? Aspoň kompresia YUI-Compressor http://developer.yahoo.com/yui/compressor/
  86. 86. Memory leak JavaScript - Circular reference
  87. 87. Captcha :-D http://www.webdesignbeach.com/beachbar/ajax-fancy-captcha-jquery-plugin
  88. 88. Bezpečnostné výstrahy pre SW The Open Source Vulnerability Database http://osvdb.org/
  89. 89. $(this).close() Europen Želiv 5.10. 2011 Mgr. Juraj Michálek Twitter: http://twitter.com/sinusgear Blog: http://georgik.sinusgear.com

Možnosti RIA technológii a ich bezpečnostné aspekty. Vývoj pomocou Flash Builderu, Visual Studia, Intellij Idei. Prednáška prednesená na konferencii Europen.cz v Želive.

Views

Total views

2,055

On Slideshare

0

From embeds

0

Number of embeds

890

Actions

Downloads

2

Shares

0

Comments

0

Likes

0

×