Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

Frontend в enterprise или сказка про WebAssembly

341 Aufrufe

Veröffentlicht am

Рассказ о том, как WebAssembly покоряет мир :)
Статус на ноябрь 2018 года, языки, библиотеки и фреймворки, работающие с WebAssembly

Veröffentlicht in: Software
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Frontend в enterprise или сказка про WebAssembly

  1. 1. Frontend в enterprise или сказка про WebAssembly Артур Дробинский
  2. 2. О Нас МЦЦ Томск Облачная платформа для теле-медицины Microservices Message Broker SOA .Net Core React/Redux F r o n t e n d в e n t e r p r i s e и л и с к а з к а п р о We b A s s e m b l y
  3. 3. О Себе CTO МЦЦ Томск 11 лет .Net Веб с 2003 года Митапы и конференции с 2012 года F r o n t e n d в e n t e r p r i s e и л и с к а з к а п р о We b A s s e m b l y
  4. 4. Disclaimer Tomsk JS - 2016 F r o n t e n d в e n t e r p r i s e и л и с к а з к а п р о We b A s s e m b l y
  5. 5. History of The Web
  6. 6. F r o n t e n d в e n t e r p r i s e и л и с к а з к а п р о We b A s s e m b l y 1995 Netscape Navigator
  7. 7. F r o n t e n d в e n t e r p r i s e и л и с к а з к а п р о We b A s s e m b l y 2001 Internet Explorer 6
  8. 8. F r o n t e n d в e n t e r p r i s e и л и с к а з к а п р о We b A s s e m b l y 2008 Chrome
  9. 9. F r o n t e n d в e n t e r p r i s e и л и с к а з к а п р о We b A s s e m b l y 2009 NodeJS
  10. 10. F r o n t e n d в e n t e r p r i s e и л и с к а з к а п р о We b A s s e m b l y 2018 Город IT
  11. 11. That’s it
  12. 12. Timeline F r o n t e n d в e n t e r p r i s e и л и с к а з к а п р о We b A s s e m b l y
  13. 13. Is it another… Flash v2? Silverlight v5? Java Applet? F r o n t e n d в e n t e r p r i s e и л и с к а з к а п р о We b A s s e m b l y
  14. 14. F r o n t e n d в e n t e r p r i s e и л и с к а з к а п р о We b A s s e m b l y
  15. 15. F r o n t e n d в e n t e r p r i s e и л и с к а з к а п р о We b A s s e m b l y
  16. 16. F r o n t e n d в e n t e r p r i s e и л и с к а з к а п р о We b A s s e m b l y
  17. 17. F r o n t e n d в e n t e r p r i s e и л и с к а з к а п р о We b A s s e m b l y
  18. 18. Why WebAssembly? • Designed by W3C (all browsers) • Portable • Safe F r o n t e n d в e n t e r p r i s e и л и с к а з к а п р о We b A s s e m b l y
  19. 19. Fast
  20. 20. FAST! F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы
  21. 21. Compilation target for other languages
  22. 22. F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы
  23. 23. C# developer is asked to write some JavaScript F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы
  24. 24. Н А З В А Н И Е П Р Е З Е Н ТА Ц И И
  25. 25. Enterprise technologies and Code reuse (backend / desktop) F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы
  26. 26. What For? F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы • Image / video editing • Games • Music (streaming, caching) • Image recognition • Virtual Reality • Augmented Reality • CAD applications • Platform simulation / emulation (ARC, DOSBox, QEMU…) • Virtual machines • Developer tooling (editors, compilers, debuggers, …) • Remote desktop • VPN • Encryption
  27. 27. Н А З В А Н И Е П Р Е З Е Н ТА Ц И И
  28. 28. Availability F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы
  29. 29. Pioneers F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы
  30. 30. Pioneers F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы https://github.com/appcypher/awesome-wasm-langs
  31. 31. Support for low-level functionality F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы • WebGL • User Input API (Keyboard/Mouse) • FileSystem API (MemFS) • Audio • etc. http://kripken.github.io/emscripten-site/docs/api_reference/index.html
  32. 32. Qt F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы • 4.7MB • Non-native UI (no html • https://msorvig.github.io/qt-webassembly- examples/slate/slate.html
  33. 33. Unity F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы • 10MB • Games • https://webassembly.org/demo/Tanks/
  34. 34. How does it work F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы
  35. 35. UNITY F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы
  36. 36. F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы What about?..
  37. 37. How it was before
  38. 38. «Компиляция» в JavaScript F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы • TeaVM + Flavour (Java) • JSIL (.Net) • Kotlin Javascript JSIL
  39. 39. How it is today
  40. 40. Kotlin/Java F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы • No decent UI frameworks
  41. 41. Blazor (and other .Net) F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы
  42. 42. Cross-platform UI F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы • Avalonia UI • Xamarin.Forms  Platform.Uno https://playground.platform.uno /#wasm-start
  43. 43. DEMO
  44. 44. F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы
  45. 45. F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы
  46. 46. F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы
  47. 47. F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы
  48. 48. F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы
  49. 49. F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы
  50. 50. F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы
  51. 51. F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы
  52. 52. F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы
  53. 53. F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы
  54. 54. JAVA & .Net come together
  55. 55. Code reuse F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы • Asmble (Java) • dotnet-webassembly
  56. 56. F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы
  57. 57. F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы
  58. 58. F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы
  59. 59. F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы
  60. 60. F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы
  61. 61. MAIN ISSUES
  62. 62. Issues F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы • IDE support / tooling • Debugging, hot reload • Garbage Collection is not supported
  63. 63. Выводы F r o n t e n d в e n t e r p r i s e : к а к We b A s s e m b l y п о м и р и л . N e t и J a v a м и р ы • Можно использовать математику/бизнес-логику уже сейчас • Можно делать UI на OpenGL • Полноценные фреймворки для построения пользовательского интерфейса пока отсутствуют (или в альфа-версиях)
  64. 64. Спасибо. Вопросы? Артур Дробинский artur.drobinskiy@mcc-tomsk.de http://arturdr.ru
  65. 65. Митап для .Net разработчиков TomskDotNet Точка Кипения 29 ноября, 18:30 https://leader-id.ru/event/12958/

×