タグ

scalaに関するKumatchのブックマーク (9)

  • 実戦での Scala: Cake パターンを用いた Dependency Injection (DI) · eed3si9n

    2011-04-23 Akka の作者として益々注目を集めている Jonas Bonér が 2008年に書いた “Real-World Scala: Dependency Injection (DI)” を翻訳しました。翻訳の公開は人より許諾済みです。翻訳の間違い等があれば遠慮なくご指摘ください。 2008年10月6日 Jonas Bonér 著 2011年4月22日 eed3si9n 訳 さて、実戦での Scala シリーズ第二弾の今回は、Scala を用いた Depenency Injection (DI) の実装をみていきたい。Scala は、備わっている言語機構だけを用いても何通りかの DI を実現できる非常に豊かでディープな言語だが、必要に応じて既存の Java DI フレームワークを使うこともできる。 Triental では、一つの戦略に落ち着くまで三つの異なる方法を試した

  • Play framework ★ Documentation

    Scala supportThe 1.1 release of play will include support for the Scala programming language. Thanks to the flexibility of the play framework architecture, the Scala support is provided with a simple module. You just need to enable the scala module in the conf/application.conf file.module.scala=${play.path}/modules/scala Then you can write all or parts of your play application using scala. You can

  • ScalaによるWebアプリケーションフレームワーク「Lift」とは

    Java仮想マシン上で動くオブジェクト指向+関数型言語として、Scala(スカラ)が最近注目を集めています。Scalaで構築されたWebアプリケーションフレームワークはいくつかありますが、 連載ではその中で比較的歴史のある(といっても2年程度ですが) フレームワークである、Lift(リフト)を紹介したいと思います。 はじめに Java仮想マシン(以下JVM)上で動くオブジェクト指向+関数型言語として、Scala(スカラ)が最近注目を集めています。 Scalaで構築されたWebアプリケーションフレームワークはいくつかありますが、 稿ではその中で比較的歴史のある(といっても2年程度ですが) フレームワークである、Lift(リフト)を紹介したいと思います。 対象読者 Javaは知っているが、Scalaも学んでみたいと思っている方 ScalaでのWebアプリケーション開発に興味がある方 必要な

    ScalaによるWebアプリケーションフレームワーク「Lift」とは
  • Scala DSL

    クラウド時代に向けて: SimpleModel:オブジェクト・メタモデル。クラウド・アプリケーション向けの拡張中。 SimpleModeler:SimpleModelのモデルコンパイラ。 g3:メッセージフロー・フレームワーク。の開発を行っているわけだけれど、これらの技術のキーテクノロジとなるのがDSL(Domain Specific Language)である。 SimpleModelはメタモデルだけれど、Scala DSLで簡潔に記述できることが要件の一つになっている。そして、SimpleModelのモデルコンパイラがSimpleModeler。SimpleModelerはSimpleModelを記述したScala DSLの集まりをソフトウェアリポジトリとして使用する。 またg3は、Scala DSLで記述したメッセージフロー・モデルに基づいて動作する。 このように、このところはScal

  • RubyからScalaに乗り換えた15くらいの理由 - ヽ( ・∀・)ノくまくまー(2010-04-26)

    ● [Scala] RubyからScalaに乗り換えた15くらいの理由 [注意] この文章を読むと、既存のRubyコードをScalaでrewriteしたくなる、 Rubyコードで型チェックをやるのがになる、Ruby案件でやる気が出なくなる、 などの幻覚や異常行動が報告されています。 現在関わっているプロジェクトや家族のことを常に意識し、 気を強く持って冷静に読むとよいでしょう。 「Scalaプログラミング入門」を読みはじめて、いきなり大きく頷いてしまった。 "コーディング時間の半分をテスト作成に費やさなければならなかった"(p.3) "Railsによって得られた生産性の向上は、テスト作成の作業に失われてしまいました"(p.3) まさにここ数年私が抱いてた漠然としたストレスの正体が、的確に文章となっていたからだ。そしてほどなく、「あ、この機能がRubyに欲しかった!」という驚きと共に Sc

  • Scala的な考え方 - Scalaがとっつきにくいと思っている人へ - ( ꒪⌓꒪) ゆるよろ日記

    Javaな人から見ると、「Scalaって難しい」ってイメージがありますね。俺も最初はそう思ってました。今もですけど。 で、考えてみたんですが、何が難しいって考え方・イディオムになじみがないのが原因かと思ったんです。 ここでは、俺が今までScalaをやってきて得た考え方を紹介します。「Scalaをちょっとやってみたんだけど、とっつきにくくて…」と思われている方は、ぜひご一読ください。 参考資料: Scala入門 - Scalaで書きはじめたJava使い向け - Scala勉強会@東北 Dropbox - 404 神は言われた。「リストあれ。」 Lisperは、リストをどう作るかをまず考えるらしいです。適切なリストが出来たら、プログラムはもうできたも同然だと。同じ考え方は、Scalaでも通用すると思います。 大まかに、こんな流れで考えてます。(リストは最初から与えられることもあるでしょう) 「

    Scala的な考え方 - Scalaがとっつきにくいと思っている人へ - ( ꒪⌓꒪) ゆるよろ日記
  • Slim3をScalaで動かすためのいろいろ - ( ꒪⌓꒪) ゆるよろ日記

    「EXILEはクラウド!」 ではなく、appengine ja night #6 Beer Talk : ATNDで発表した内容です。 Slim3をScalaで動かすためのブランクプロジェクトと、ScalaのController/Serviceを生成するSlim3-gen-scalaを作りました。 yuroyoro/slim3-scala-blank · GitHub yuroyoro/slim3-gen-scala · GitHub slim3をscalaで動かしてみたView more presentations from guest16d8e4. 特徴 ScalaでSlim3が動きます。 ScalaのController/Serviceを生成できます。 EntityはJavaで作成しますが、Scalaから問題なく使えます。 テストはSpecsで書けます。( specs - a BDD

    Slim3をScalaで動かすためのいろいろ - ( ꒪⌓꒪) ゆるよろ日記
  • [Scala] Eclipse+GAE/Jで最初にやること

    GoogleAppEngineのアプリをEclipse+Scalaで開発するとき、ScalaとGAEのアドオンを入れた最初の状態では、GAEのEnhancerが失敗する(ファイルを保存する度にコンソールで「エンハンスするクラスファイルが見つからない/CLASSPATH変えろ」と言われ続ける)。 そんなときには、"eclipse\plugins\com.google.appengine.eclipse.sdkbundle_1.2.1.v200905131143\appengine-java-sdk-1.2.1\lib\tools\orm"など、GAEのプラグイン内のライブラリフォルダにScalaのライブラリを入れておくことで解決できます。

    [Scala] Eclipse+GAE/Jで最初にやること
  • 第2回 Scalaの基本的な文法

    大手SIベンダにてSEやPMやアーキテクトとして勤務したのち,現在は株式会社豆蔵のチーフコンサルタント。主に超上流のプロセスである要求開発やオブジェクト指向,アジャイル開発のコンサルタントとして活躍中。開発の現場にこだわり,開発の現場を少しでもよくしたいと日夜奮闘している。要求開発アライアンス 執行委員。著書に『オブジェクト脳のつくり方』や『eXtreme Programming実践レポート』(ともに翔泳社発行。後者は共著)などがある。 前回,Scalaの3種類の実行方法を学びましたので,今回は基的な文法を説明していきます。 Scalaのぶっ飛んだ特徴を早く説明したいところですが,千里の道も一歩から。じっくり楽しみつつ,進んでいきましょう。 1.変数 最初にScalaの変数について説明します。ここでは,すべてscalaの対話式実行環境(連載ではScalaインタプリタと言います)で説明し

    第2回 Scalaの基本的な文法
  • 1