Play
ããããPlay Framework 2.9.0ãåºããã§ãããã¨ãããã¨ã§èªåã®éã£ãPull Requestãã¾ã¨ãã¦ã¿ã¾ããã 大ããã¨ããã ã¨Twirlã®Scala 3対å¿ã§ãããããæãã«ã¨ã©ã¼ã¡ãã»ã¼ã¸åºãã®ã«dottyã¨ãsbtã¾ã§èª¿ã¹ããã¨ã«ãªã£ã¦æ²¼ã§ããããã¶ããªãã¨ããªãâ¦
Play FrameworkãLightbendã®æããé¢ãã ã¨ããçºè¡¨ãæ¨å¹´ã®10æã«ãã£ããã§ãããããããã£ããã«ããã¨ãã㦠Play Frameworkã®GitHub Team ã«å ¥ãã¦ãããã¾ããã ãã°ããå¾ ã¡ã®ç¶æ ã ã£ããã§ãããå é±ãããããåãåããã¨ããã§ããã¨ãããâ¦
github.com Modules should be fast and side-effect free Modules should be fast and side-effect freeï¼ã¢ã¸ã¥ã¼ã«ã¯éãã¦å¯ä½ç¨ãªãã§ããã¹ãï¼ã¨ Guice ã® Wiki ã«ã¯ããã¾ãã ãã㯠Guice ã¢ã¸ã¥ã¼ã«ã®ä¸ã§ DB ã«æ¥ç¶ãããã¹ã¬ããéå§ãããããâ¦
Play frameworkã¯ãã£ãã·ã¥ã®ããã®APIã play.api.cahe ã¨ããããã±ã¼ã¸ã§æä¾ãã¦ãã¾ããplay.api.cache ã¯ãã®ããã¯ã¨ã³ãã¨ãã¦ãCaffineãEhcacheãé¸æã§ããã¾ããµã¼ããã¼ãã£ã®ã©ã¤ãã©ãªã使ãã°Memcached, Redisãªã©ãããã¯ã¨ã³ãã«ãããã¨â¦
Scalaã¨Javaã®ã³ã¬ã¯ã·ã§ã³ãç¸äºã«å¤æããã«ã¯ scala.collection.JavaConverters ã便å©ã§ããä¾ãã°Javaã®ã³ã¬ã¯ã·ã§ã³ã« .asScala ãã¤ããã°ãJavaã®ã³ã¬ã¯ã·ã§ã³ãã©ããããScalaã®ã³ã¬ã¯ã·ã§ã³ãä½ããã¾ãããã ãããã¤ã .asScala ã§æ¸ãã¨ã¯éãâ¦
taroleoãããéçºãã¦ããAirframeãæè¿Twitterã®ã¿ã¤ã ã©ã¤ã³ã§è©±é¡ã«ãªã£ã¦ãããã¨ãå¤ãã®ã§ããããã触ã£ã¦ã¿ãããã¨æããã¨ããããPlay frameworkã®DIã³ã³ãããGuiceããAirframeã«ç½®ãæããã¨ããã®ããã£ã¦è¦ã¾ãããçµæã¯å¤±æã«çµãã£ããâ¦
play-jsonã¯Reads/Writes/Formatãå®ç¾©ããã®ãé¢åã¨ããè¨ãããã®ã§ãshapelessã®ç·´ç¿ãå ¼ãã¦ä½ã£ã¦ã¿ã¾ããã https://github.com/tototoshi/play-json-generic scala> import play.api.libs.json._ import play.api.libs.json._ scala> case class Perâ¦
Playã触ã£ã¦ããã¨è¬ã®ClassNotFoundExceptionãçºçãããã¨ãããã¾ãã ããããã¦ããã¯DEVã¢ã¼ãã ãã§èµ·ãã¦ã¯ããªãã§ããããï¼ å æ¥ãéçºä¸ã®Playã¢ããªã±ã¼ã·ã§ã³ã§ãããä¾åã©ã¤ãã©ãªããClassNotFoundExceptionãçºçããã¨ããç¾è±¡ã«ãããâ¦
Playã®ããã¥ã¡ã³ããè¦ãã¨ãã«ãå ¬å¼ãµã¤ãã«è¡ããªãã¦ãæå 㧠http://localhost:9000/@documentation ã¨ããURLã«ã¢ã¯ã»ã¹ããã°ããã¥ã¡ã³ããµã¤ããè¦ããã¨ãããã¨ã¯ãåç¥ã§ããããï¼ ããã«ã¯WebCommandsã¨ããä»çµã¿ã§åãã¦ãã¦ãããã¥ã¡ã³ãâ¦
ãã¬ã¼ã ã¯ã¼ã¯ã®ä¾¿å©ãã¨ã³ã¼ãã®æè»æ§ã¨ã®ãã©ã³ã¹ã®è©±ã Playã«ã¯ããããMVCçãªæ©è½ã®ä»ã«ããããã¨ä¾¿å©ã£ã½ãã¢ã¸ã¥ã¼ã«ãä»ãã¦ãã¾ããã å®éããã¤ãã使ã£ã¦ããã¨ä¾åé¢ä¿ãæè»æ§ã®é¢ã§ã¡ããã¡ããå°ããã¨ãããã¾ãã æè¿ä½åº¦ãå°ã£ãã®â¦
ç§ã®ç解ãæ£ãããã°ãPlay2.4ã®ãã©ã°ã¤ã³ã·ã¹ãã ã«ã¯ãã©ã°ã¤ã³ã®èµ·åé ãå¶å¾¡ã§ããªãã¨ãã大ããªæ¬ é¥ãããã¾ããPlay2.3以åã¯play.pluginsãã¡ã¤ã«ã«åªå 度ãè¨è¿°ããã¨ããã¤ã±ã¦ãªãæãæ¼ãããæ¹ã§ã¯ããã¾ããããåé¡ãªãå¶å¾¡ãããã¨ãã§ãâ¦
å é±å¤§éªè¡ã£ã¦ãã¾ããã å 容ã¨ãã¦ã¯ãflyway-playãã¨ãããFlywayã®ç´¹ä»ã£ã½ããªã£ã¦Scalaæåèãã«ãªãã¾ããã
Slick ã³ã¼ããçæã®ã¤ãã©ãªããããå ¬å¼ã®ã»ãã«ããã¤ã使ãæ¹ã®ãµã³ãã«ãããã¾ãããæ¯åã³ããããã®ããªãã¨æã£ã¦ sbt ãã©ã°ã¤ã³ã«ãã¾ãããä»ã®ã¨ãã Slick 2.1.0 ã«ä¾åãã¦ãã¾ããSlick 3.0.0 ãåºããããç¨ã®ãã¼ã¸ã§ã³ãåºããã¨æãã¾â¦
flyway/flyway-play Play 2.1-2.3 åãã«ãµã¼ããã¼ãã£ãã©ã°ã¤ã³ã¨ã㦠play-flyway ãéçºãã¦ãã¾ããããå°ãåã« Flyway ã® GitHub Organization ã«å ãã¦ãããããã§ããå ¬å¼ã¢ã¸ã¥ã¼ã«ã¨ãªãã¾ãããgroupId ã com.github.tototoshi ãã org.flywâ¦
play-json ã使ãã° json ã case class ã«ãããã³ã°ãããã¨ã¯ç°¡åã«ã§ãã¾ãããjson ã®ãã¼ããã®ã¾ã¾ case class ã®ãã£ã¼ã«ãã«å¯¾å¿ãããããsnake_case 㪠json API ã case class ã«ãããã³ã°ããããã«ã¯ãcase class ã®ãã£ã¼ã«ãã snake_case â¦
Play 2.4 ã§ã¯ä»ã¾ã§ã® Plugin ã®ä»çµã¿ã deprecated ã¨ãªãã æ°ãã« Module ã¨ããä»çµã¿ãå°å ¥ããã¦ãã¾ãã Module ã¯ããã¾ãæ°ãã«å°å ¥ããã Runtime Dependency Injection ã®ä¸ã«ä¹ã£ãã£ã¦ãã¾ãã Play ã§ã¯ Guice ãããã©ã«ãã® DI å®è£ ã¨ãã¦â¦
play-scalate ã£ã¦ããååã®ãã©ã°ã¤ã³ã¯ããããªäººãæ¸ãæ£ãããã¦ã¦ github æ¤ç´¢ããã¨ããããåºã¦ãããã§ãããã¤ããã£ãã仲éã«å ãã£ã¦ãã¾ãã¾ããã https://github.com/tototoshi/play-scalate build.sbt ã«è¨å®ããã° libraryDependencies ++â¦
Play 2.3 ãåºãã°ã£ã㧠2.4 ã®è©±ããã¾ãã åç½®ã: Scala ã§ã® DI Scala ã§ã¯ DI ã«ã¤ãã¦ã®ãã¹ããã©ã¯ãã£ã¹ã¨è¨ããæ¹æ³ã¯ãªããã¾ã æè¦ãåããã¦ããç¶æ ã§ãã大ããå²ã㨠DI ã³ã³ãããªã©ã使ã£ãåç㪠DI ã¨ãcake pattern, implicit parametâ¦
Play meetup ã§ã¯ Play ã Scala ã®ãã¬ã¼ã ã¯ã¼ã¯ã®æ´å²ã¿ãããªè©±ããã¦ãã¾ããããæ¬å½ã¯ãã®ãã¿ã§ LT ãããã¤ããã§ããã諸äºæ ã«ããã£ã¦ãã¤ã§ãã ã㦠Play 㧠Scala.js ããµãã¼ãããããã£ã¦è©±ã¯å°ãåããããã¾ãããä»ã®ã¨ããã¾ã é²å±ã¯â¦
#kbkz_tech 㧠play-flyway ã®å®£ä¼ããã¾ããã 大ãããã®ã§ã¯ãªãã§ããè³æä¸ãã¨ãã¾ãããhttp://tototoshi.github.io/slides/kabukiza-tech-goodbye-play-evolutions/
Flyway ã® Play ãã©ã°ã¤ã³ãplay-flyway ã® 0.2.0 ããªãªã¼ã¹ãã¾ãããhttps://github.com/tototoshi/play-flyway ã¤ã³ã¹ãã¼ã« Build.scala or build.sbt libraryDependencies += "com.github.tototoshi" %% "play-flyway" % "0.2.0"play.plugins 1000:coâ¦
https://github.com/tototoshi/play-ascii-art-pluginPlay ã®èµ·åã»çµäºæã«ã¢ã¹ãã¼ã¢ã¼ãã表示ãããã¸ã§ã¼ã¯ãã©ã°ã¤ã³ play-ascii-art-plugin ã® 0.2.0 ãããªãªã¼ã¹ãã¾ãããplay dist ã§ã®ãããã¤ã«å¯¾å¿ãã¾ããã詳ããã¯ååã®ã¨ã³ããªãåç §ãã¦â¦
Play ã§ã¯ conf/ 以ä¸ã«è¨å®ãã¡ã¤ã«ãããã¤ã°ã¬ã¼ã·ã§ã³ç¨ã® sql ãç½®ãã¾ãã å ´åã«ãã£ã¦ã¯ã¡ãã£ã¨ããç»åããã¡ã¤ã«ãç½®ããã¨ãããããããã¾ãããä¾ãã°ãã¢ããªèµ·åæã«ã¢ã¹ãã¼ã¢ã¼ãã表示ããããã«ãã®ç´ æãç½®ãã¨ããããã¨æãã¾ãã ãâ¦
https://docs.google.com/document/d/11sVi1-REAIDFVHvwBrfRt1uXkBzROHQYgmcZNGJtDnA/pubScala ã®éè¦ã¨æãã¨ãã ãããã¯ã¢ããã 2.2 Typesafe Activator Typesafe Activator ã£ã¦ãããã©ã¦ã¶ããããã¸ã§ã¯ãã®ãã³ãã¬ã¼ããä½ã£ãããéçºã§ããããâ¦
Play ã使ããã¨ããããå ¨ç¶ããã©ã¼ãã³ã¹ãã§ãªãããªãã§ï¼ â Akka ã®ãã¥ã¼ãã³ã°ãå¿ è¦ã ã£ãã ã¨ãã話㯠Play 2.0 ã®é ããçµæ§æåãªè©±ã§ãããhttp://qiita.com/items/0c4bb34a420665536db4 http://tech.furyu.jp/blog/?p=2069 http://gendosu.jpâ¦
(ã¾ã Play ãã©ã°ã¤ã³ä½ã£ãã®ããã¨è¨ããããã§ããããã) ãããã¨ç㪠Play ã¢ããªã§ã¯ Fixture æ©è½ãèªåå®è£ ãã¦ãããã§ãã¹ãããã¦ãã¾ããã ãã ãscalikejdbc ã«ä¾åãã¦ãããããããã ãåãåºã㦠Play ãã©ã°ã¤ã³ã«ããã¨ãã¯ãã¦ã¾ããâ¦
å æ¥ Play 2.x ã® QueryStringBindable, PathBindable ã«ã¤ã㦠- tototoshiã®æ¥è¨ 㧠joda-time ç¨ã« QueryStringBindable[T] ãå®ç¾©ãã¦éã³ã¾ãããããããã©ã¤ãã©ãªåãã¾ããããèªç±ã«ã使ãä¸ãããtototoshi/play-joda-routes-binder · GitHub è¨â¦
ããã ããã®ãããªãã¤ã¼ããè¦ãã®ã§ã https://twitter.com/xuwei_k/status/302445064976732160 Play 2.x ã§ã¯ãªã¯ã¨ã¹ãã®å¦çãã©ã®ã³ã³ããã¼ã©ã¼ã®ã©ã®ã¢ã¯ã·ã§ã³ã«ä»»ãããã conf/routes ã¨ãããã¡ã¤ã«ã§å®ç¾©ãã¾ãããã®ã¨ãããã¹ãã¯ã¨ãªã¹ããªâ¦
Play2.0 ã® FakeRequest ã£ã¦ withFormUrlEncodedBody ã¯ãããã© withMultipartFormDataBody ã¯ããã¾ããã ã§ãããFakeRequest[MultipartFormData[TemporaryFile] ] ãå°éã«ä½ã£ã¦ãããã°å¤§ä¸å¤«ã*1 ãããªæãã«ãªãã¾ãã package controllers imporâ¦
ã¹ã©ã¤ã Togetter ustPlay2.0 ããã¨æãã¾ã