sbtã®è¨å®ã¨ä½¿ãæ¹ ã¯ããã« sbtã¯ã³ã³ãã¤ã«ãããã±ã¼ã¸ã³ã°ããã¹ãå®è¡ãä¾åã©ã¤ãã©ãªã®ç®¡çãªã©ããã£ã¦ãããScalaåãã®ãã«ããã¼ã«ã§ãã æ¬è¨äºã§ã¯ãã¤ã³ã¹ãã¼ã«ããç°¡åãªä½¿ãæ¹ãè¨å®æ¹æ³ã説æãã¾ãã å¾åã§ã¯ããã©ã°ã¤ã³ã®å°å ¥ããã«ãããã¸ã§ã¯ãã®ç®¡çãªã©ã説æãã¾ãã è¾¼ã¿å ¥ã£ããã¨ã¯çç¥ãã¦ããã®ã§ã詳細ãç¥ãããå ´å㯠æ¬å®¶ãåç §ãã¦ä¸ããã ã¤ã³ã¹ãã¼ã« JDKãå¿ è¦ã§ããJDKã¯ã¤ã³ã¹ãã¼ã«æ¸ã¿ã¨ãã¾ãã(1.7以éãã¤ã³ã¹ãã¼ã«ããã¦ããã°åé¡ããã¾ããã) MacOS $ brew install sbt ä»ã®ãã©ãããã©ã¼ã ã¯ãæ¬å®¶ ãåèã«ãã¦ä¸ããã 以éãsbtã®ãã¼ã¸ã§ã³ã¯0.13.8ãåæã¨ãã¦è©±ãããããã¾ãã æåã®ä¸æ© ã¾ãã¯ãHello world. ããã ä½æ¥ç¨ã®ãã£ã¬ã¯ããªãé©å½ã«ä½æãã¦ä¸ããã $ mkdir sbt-samp
class: center, middle # Refactoring with Functional Programming Style Scalaé¢è¥¿Summit 2015/08/01 --- class: middle ## èªå·±ç´¹ä» * ä¸æ å¦(Nakamura Manabu) * [@gakuzzzz](https://twitter.com/gakuzzzz) * æ ªå¼ä¼ç¤¾ Tech to Value * [Scala Matsuri 2016](http://scalamatsuri.org/) ãããããããããã¾ãï¼ --- class: middle ## ä»æ¥ã¯å®£ä¼ã«æ¥ã¾ãã ![t2v](http://www.t2v.jp/images/logo.png) --- class: middle ## Scalaã³ã¼ãã¬ãã¥ã¼ ãµã¼ãã¹ * GitHub(oré¡ä¼¼ãµã¼
2. èªå·±ç´¹ä» åå ã 㪠ä¼å¥ ããããã æ太éâ (id:tarao @oarat) 2008-08 ã¯ã¦ãªã¤ã³ã¿ã¼ã³ 2008-10 ã¯ã¦ãªã¢ã«ãã¤ã (ããã¯ãã¼ã¯ãã¼ã ) 2010-04 æ¥æ¬å¦è¡æ¯èä¼ ç¹å¥ç ç©¶å¡ (DC1) 2013-04 ã¯ã¦ãªæ£ç¤¾å¡ 2013-12 ããã¯ãã¼ã¯ãã¼ã â® ã¢ã«ã´ãªãºã å±ãã â® æ¤ç´¢æè¡ > æ©æ¢°å¦ç¿ â« ã¢ãã㯠⮠æè¿ã¯è¨è¨ãããåºç¤å¯ããªé¨åãæ å½ããã 3. èªå·±ç´¹ä» åå ã 㪠ä¼å¥ ããããã æ太éâ (id:tarao @oarat) Scala æ´: 4ã¶æ â® slick-jdbc-extension â® åã¬ãã«ã®ã©ã ãè¨ç® â® Software Design 2015 å¹´ 8 æå· å¤§å¦æ代㯠⮠ç 究室: åçè«, ããã°ã©ã æå³è«, 証ææ¯æ´ç³» â® OCaml ãå ¬ç¨èª â® gradual typing
19. "Future" must { import scala.concurrent.ExecutionContext.Implicits.global "map and flatMap" in { val futureMessage = Future { Thread.sleep(1000); 1 }.flatMap(value => Future { Thread.sleep(1000); value + 1 }).map(s => s"This is a value of future after $s seconds") Await.result(futureMessage, 5 seconds) must be("This is a value of future after 2 seconds") } "for comprehension" in { val futureMe
è² è·ãã¼ã«ã¨ãã¦Gatlingã®ãã¨ãå°ãåããè³ã«ããæ©ä¼ãå¢ããã®ã§ãå©ç¨ãã¦ã¿ããã¨ã«ããã è²ã æ¢åºã ã¨ã¯æãããå ¬å¼ã®Quickstartã«å¾ã£ã¦è©¦ãã¦ã¿ãã®ã§ã¡ã¢ã GUIãå¿ è¦ã ã£ãã®ã§ãä»åã¯æå ã®Macã§å®è¡ã Gatlingã¨ã¯ Java/Scala製ã®è² è·ãã¹ããã¼ã«ã JMaterã¨ä¼¼ãæãã®ãã¼ã«ã§ã¯ãããã ãã¤ããã©ã¼ãã³ã¹ è¦ãããã¬ãã¼ãHTML developerãã¬ã³ããªã¼ãªã·ããªãªãã¡ã¤ã« ã¨ããã®ãã¦ãªã¨ãã¦è¬³ã£ã¦ããã ãã¶ãã3é ç®ã¨ã対JMater(éãã»ã¬ãã¼ãè¦ã¥ããã»XMLã®ã·ããªãªã¤ãã)ãæèããã¡ãªããã ãããªã¼ã ãªããã·ããªãªãã¡ã¤ã«ã¯ããã Gatling simulation scripts are written in Scala, but donât panic! ãããã ã¨ããããã§ã触ã£ã¦ã¿ã Install J
ã¯ããã« NEScala 2013 ã§ã® Daniel Spiewak (@djspiewak) ããã®åºèª¿è¬æ¼ "Cake Pattern: The Bakery from the Black Lagoon"ï¼ã¹ã©ã¤ããåç»ï¼*1ã®æ訳ã§ããæ¬è¨äºã®å ¬éã«ã¤ãã¦ã¯ãè¬æ¼è ã® Spiewak ãããããã³é ä¿¡å ã§ãã Marakana Inc. ããã«è¨±å¯ãé ãã¦ãã¾ããThank you for your great kindness! è¬æ¼è ã® Spiewak ããã¯ãScala ã®ãã£ã¼ããªæ´»ç¨ã§æå㪠Precog ã®éçºã«æºãã£ã¦ããæ¹ã§ããâã¢ããã¯ã¡ã¿ãã¡ã¼ã§ã¯ãªã (Monads Are Not Metaphors)âã®èè ã§ãããã¾ãã ãã®è¬æ¼ã¯ãæ¨å¹´ã®ããã°è¨äº "Existential Types FTW" ã®è°è«ãããã«æãä¸ãããã®ã§ãPrecog ã§ã® "Ca
warãã¡ã¤ã«ããµã¼ãã¬ããã³ã³ããã«ãããã¤ããã ãã§å©ç¨å¯è½ãªGithubã¯ãã¼ã³ãGitBucket 1.0ããªãªã¼ã¹ãã¾ããã https://github.com/takezoe/gitbucket å½åã®ç®æ¨ï¼6ææ«ï¼ããã¯å°ãé ãã¦ãã¾ãã¾ããããGitãªãã¸ããªã®ä½æããªãã¸ããªãã¥ã¼ã¢ãWikiãIssuesãªã©ã¯ä¸éãå®è£ ãã¦ããããªãã¨ãå®ç¨ã«èãããæ©è½ã¯æã£ã¦ããã®ã§ã¯ã¨æãã¾ãããã©ã¼ã¯ããã«ãªã¯ã¨ã¹ããã¿ã¤ã ã©ã¤ã³ããã¼ã 管çãã¡ã¼ã«éç¥ãªã©ã¾ã ã¾ã æªå®è£ ã®æ©è½ã¯å¤ãã§ãããä»å¾ã®ãã¼ã¸ã§ã³ã¢ããã§éææ©è½ã追å ãã¦ããã¾ãã ãã¬ã¼ã ã¯ã¼ã¯ã¨ã å°ã話ã¯å¤ããã¾ãããGitBucketã¯Scalaã§æ¸ããã¦ããããã¬ã¼ã ã¯ã¼ã¯ã¨ãã¦ä»¥ä¸ã®ãã®ãçµã¿åããã¦ä½¿ç¨ãã¦ãã¾ãã Scalatra scalatra-formsï¼Play2ã®ãã©ã¼ã ã®ãããªããªãã¼ã·
ç¬ç¿ Scalaz ããã¾ã§ããã¤ã®ããã°ã©ãã³ã°è¨èªãç¾ã®è¡£ãçã Lisp ã«å©ããããã ããã? Java ã¯é¦´æã¿è¦ªããã C++ ã®ãããªææ³ã« GC ãæã¡è¾¼ãã ãããã¾ã§ä»ã«ã GC ãè¼ããè¨èªã¯ãã£ããã©ããç¾å®çã« C++ ã®ä»£æ¿ã¨ãªãããè¨èªã« GC ãè¼ã£ããã¨ã¯ 1996å¹´ã«ã¯ç»æçã«æããããããã¦æã¯çµã¡ã人ã ã¯èªåã§ã¡ã¢ãªç®¡çãããªããã¨ã«æ £ãã¦ãã£ããJavaScript 㨠Ruby ã®ä¸¡è¨èªããã®ç¬¬ä¸ç´é¢æ° (first-class function) ããããã¯æ§æãæã¤ãã¨ããç¾ã®è¡£ãçã Lisp ã¨å¼ã°ãããã¨ããããSå¼ã®åå³åæ§ããã¯ãã«é©ãããã¨ãã Lispç³»ã®è¨èªã¯ã¾ã é¢ç½ãã¨æãã è¿å¹´ã®è¨èªã¯ããå°ãæ°ããé¢æ°åè¨èªããæ¦å¿µãåããããã«ãªã£ã¦ãããåæ¨è«ããã¿ã¼ã³ãããã³ã°ã¯ ML ã«ããã®ã¼ããã¨ãã§ããã¨æããæãçµã¦ã°ã人
ãã¬ã³ã¿ã¨ããã®ã¯ã¬ã³ã¿ã«ãã¬ã³ãã¨å¼ã°ãã¦ãããµã¼ãã¹ã§ããããã¤ãã®ããã«å«ãªææãªã©ããªã楽ãã¿ãªãã稼ããã¨ãã§ãããã¨ãã話ãèããæ¹ãããã¨æãã¾ããããããããè¨ããã¦ãã©ããªæãã§ç¨¼ãã®ãã¤ã¡ã¼ã¸ã湧ããªãæ¹ãå¤ãã§ãããã...
ãã®ã¦ã§ããµã¤ãã¯è²©å£²ç¨ã§ãï¼ twiwt.org ã¯ãããªãããæ¢ãã®æ å ±ã®å ¨ã¦ã®ææ°ãã¤æé©ãªã½ã¼ã¹ã§ããä¸è¬ãããã¯ããããããæ¤ç´¢ã§ããå 容ã¯ãtwiwt.orgãå ¨ã¦ã¨ãªãã¾ããããªãããæ¢ãã®å 容ãè¦ã¤ãããã¨ãé¡ã£ã¦ãã¾ãï¼
å»å¹´ã®å¤§æ¦æ¥ã以ä¸ã®ãããªã¨ã³ããªãæ¸ãã¾ãããéè¦ããããã¨ããã¨ããã¾ããªãããã§ãããä»å¹´ã®é²æãå ±åãã¹ããç¶ç·¨ãæ¸ããã¨ã«ãã¾ããã seratch.hatenablog.jp ä»å¹´ã®æ¯åã¨ã®éã³ ã¬ã³ãã©ã¤ã¸ã³ã°ã¯ 2 æãããã¾ã§ã¯ãã£ã¦ãã¾ããããããªããªã£ãçç±ã¯ãæ¯åã IC ã«ã¼ããç´å¤±ããã¨ãã失æ ããããã¦ãã¾ã£ãããã§ãã å¤ã¯æµè¡ãã«ã®ã£ã¦ããã±ã¢ã³ GO ããããªãã«ãã£ã¦ããããã§ããé»åã¢ã·ã¹ãèªè»¢è»ã§æ¯åã¨åºããã¦ã¯ãå ¬åãªã©ãå·¡ã£ãããã¦ãã¾ããã ããããã½ã¦ã«ã¨ã¯ bs.gashapon.jp www.youtube.com ä»å¹´ã® 8 æããå§ã¾ã£ãæ°ããã¬ã·ã£ãã³ã²ã¼ã ã§ããå¦æªã¦ã©ããããåç¥ã®æ¹ã§ããã°ããã¿ããç¥ç¤¾ããããªã¼ã ã«ã¼ã¬ãããã¨åããããªãã¤ã ã¨æã£ã¦ããã ãã°ã¨ï¼ããããæ¹ããã®ããã°ãèªãã§ãããè¬ã§ããï¼ã éã¶ãã¨èª
æ¼éãTwitterã®ã¿ã¤ã ã©ã¤ã³ãçºãã¦ããããä»æ¥ã¯Scalaä¼è°ã¨ããåå¼·ä¼ãéããã¦ããã¿ããã ã partake.in http://www.ustream.tv/channel/scala-kaigi Ustreamã§ãæµãã¦ããã®ã§ãã¡ãã£ã¨è¦ãããªãã ãããããããããªè©±é¡ãããããã ã£ãã scala-kaigi1-sbt çºè¡¨è ã®ãããæºåããããã¡ãã®è³æã¨sbtã®ãã¼ã¸ãåèã«ããã¦ããã£ã¦ãèªåãsbtãã¤ãã£ã¦ã¿ãããã¡ããã©ãMavenãåå¼·ããªãããã¨ããã§ããã«ããã¼ã«ã«ã¡ãã£ã¨èå³ãã§ã¦ããã Home · harrah/xsbt Wiki · GitHub sbtã¯Scalaã®ãã«ããã¼ã«ãããã¤ãGithubãªã®ããGithubããã¿ããããªãã sbtã®ã¤ã³ã¹ãã¼ã« sbt 0.12 ã¤ã³ã¹ãã¼ã« 2012-11-04 è¿½è¨ sbtãããããã¤ä½¿ã
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}