• Like
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.

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

  • 303 views
Published

Hight level overview of play/scala as development platform

Hight level overview of play/scala as development platform

Published in Technology
  • 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
303
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. 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