Play/Scala as application platform  (for http://wbcamp.in.ua 2013)
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

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

on

  • 520 views

Hight level overview of play/scala as development platform

Hight level overview of play/scala as development platform

Statistics

Views

Total Views
520
Views on SlideShare
486
Embed Views
34

Actions

Likes
0
Downloads
1
Comments
0

1 Embed 34

https://twitter.com 34

Accessibility

Categories

Upload Details

Uploaded via as OpenOffice

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

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