Your SlideShare is downloading. ×
Play/Scala as application platform  (for http://wbcamp.in.ua 2013)
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

Play/Scala as application platform (for http://wbcamp.in.ua 2013)

327
views

Published on

Hight level overview of play/scala as development platform

Hight level overview of play/scala as development platform

Published in: Technology

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

  • Be the first to like this

No Downloads
Views
Total Views
327
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
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. Scala/Play - web platformRuslan Shevchenko<ruslan@shevchenko.kiev.ua>
  • 2. Scala -- язык программирования:http://www.scala-lang.orgPlay – frameworkhttp://www.playframework.orgOpen SourceСуществует поддерживающаяорганизация (typesafe).http://www.typesafe.org
  • 3. ХорошоЛаконичный языкСтатическая типизацияROR-подобный фреймворкИз коробкт много хороших вещей(less, coffescript, require.js ... etc)Async interfaces. [WebSockers, comet]Developer friendlyПлохоНезнакомый языкROR-подобный фреймворк.................
  • 4. Scala – новый язык
  • 5. ScalaJVM – based (Java byte-code)Статическая типизация, вывод типовФункциональное программированиеОбъектно ориентированное тоже естьМножественное наследование
  • 6. Scala, пример кода:def sumEvens(seq: Seq[Int]) =seq.filter.{ _ % 2 == 0 }.sum
  • 7. Scala, пример кода:int sumEvens(l: ArrayList[Integer]): Int{int sum = 0for(x in l) {if (x %2 == 0) sum += x;}return sum;}def sumEvens(seq: Seq[Int]) =seq.filter.{ _ % 2 == 0 }.sumJava:Java:
  • 8. Scala, пример кода:function sumEvens($seq){$sum = 0foreach($seq as $x) {if ($x %2 == 0)$sum = $sum + x;}return $sum;}def sumEvens(seq: Seq[Int]) =seq.filter.{ _ % 2 == 0 }.sumPHP:PHP:
  • 9. Scala1. Кривая обучения2. Скорость компилятораПроблемы:Достоинства:1. Мощность и лаконичность.2. Параллелизм из коробки3. Интеграция с Java инфраструктурой4. DSL........ (можно рассказывать довольно долго)
  • 10. Синхронно
  • 11. Синхронно
  • 12. Асинхронно
  • 13. Неблокирующее APIAkkaNettyОрганизация взаимодействия с браузеромRequest => ReplyWebSocketComet
  • 14. Поддержка client-side средствlesscoffescriptJavaScript modules
  • 15. LAMPLinuxApacheMySqlPHP (Perl, Python)CPMSCloudPlayMongoScala
  • 16. LAMPLinuxApacheMySqlPHP (Perl, Python)CPMSCloudPlayMongoScalaCPMSCloudPlayMongoScalaCP_SCloudPlayAnyScala/JavaCPMSCloudPlayMongoScala
  • 17. CP_SCloudAmazon, Heroky, CloudBess, Cloud Foundry...Play_NoSQLMongo, Cassandra, ...SQLPostgress ....Scala
  • 18. Легкий (в противовес java традиции)Дружественный к разработчику
  • 19. Использование:https://github.com/guardian/http://engineering.linkedin.com/
  • 20. Scala/Play: ресурсы
  • 21. Scala/Play: ресурсыhttp://www.typesafe.com/ (play activator)http://www.playframework.org(documenation)http://www.scala-lang.org (documentation)http://twitter.github.io/scala_school/
  • 22. Scala в UAgoogle group: scala-uaFB Group: scala ukraine.https://www.facebook.com/groups/256373621041781/https://groups.google.com/forum/?fromgroups#!forum/scala-uaВсе читают – никто не пишет
  • 23. Руслан Шевченкоruslan@shevchenko.kiev.ua@rssh1