タグ

scalaとScalaに関するsmotokezuruのブックマーク (13)

  • Scala採用を決めて一年たった、CTOの雑感 | チャットワーククリエーターズブログ

    こんにちは!ChatWork CTOの山です。 ChatWorkでは一年前に、PHPの独自フレームワークでつくられた大規模システムを、Scalaを使ってゼロベースでつくりなおすという決断をしました。 Scala採用までの経緯を三行で: カウボーイ開発で約4年間積み上げてきたPHPのシステムがもはや限界ゼロベースでつくりなおそうと開発合宿を開催。満場一致でScalaに決定!しかし社内にScalaを書ける人は誰もいないのであった・・(どうすんの・・?)参考記事: チャットワークの新しい開発言語とフレームワークを決める開発合宿を開催!その全貌を丸公開します。 というわけで勢いのままScala採用を決めたはいいものの、ここからどうしよう・・・という状態でした。 そこから約一年。ChatWorkのScala開発はどうなってるの?とご質問いただく機会も増えましたので、現在の状況含め、Scalaってど

    Scala採用を決めて一年たった、CTOの雑感 | チャットワーククリエーターズブログ
  • Scalaのnull/Nothing/Nil/Noneはやりすぎなのか? - ぐるぐる~

    Twitterしてたら目に入ったので軽く。 Javaにおけるnull。これまでとこれから この後のスライドで、 Scalaにおける「何もないもの」の分類はやり過ぎ感はある と言われているんですが、ある程度は誤解に基づく意見だよなぁこれは、ということを言っておこうかなと。 Scalaについて 日では説明が不要なくらいScalaって有名になってると思うんですが一応。 ScalaはJVMの上で動作する、(クラス指向の)オブジェクト指向プログラミングと関数型プログラミングを融合させた言語です。 そして、Scalaのコア機能はどちらかというとオブジェクト指向プログラミング寄りです。 オブジェクト指向プログラミングをベースに、関数型の色々なものを実現している感じです*1。 オブジェクト指向プログラミング的な機能として真っ先に思いつくのは何でしょうか? 割と上位の方に、「継承」とか「型階層」とか来るん

    Scalaのnull/Nothing/Nil/Noneはやりすぎなのか? - ぐるぐる~
  • ついに国内でも普及し始めたプログラミング言語「Scala」、誕生から10周年

    2014年9月6日、オブジェクト指向の関数型プログラミング言語「Scala」に関する大規模カンファレンス「ScalaMatsuri 2014」が開催され、筆者も参加した(写真1)。当日の様子をレポートしたい。 Scalaについては、名前は聞いたことがある方も多いと思う。2003年に生まれたオープンソースのプログラミング言語で、コンパイル後はJava VM上で動作する。Javaの既存資産を引き継ぎつつ、Javaにはない新たな言語の特徴を生かせることから、今後が期待されている言語の一つである。 Scala海外では、米Twitterや米LinkedInなどが利用していることで知られ、ネット企業を中心に普及しつつあるが、今年の同カンファレンスでの発表を聞いて、国内のネット企業でも、もはや当たり前のように使われる状況になったのだと実感した。 国内でのScalaのユーザーとしては、ドワンゴ、エムスリ

    ついに国内でも普及し始めたプログラミング言語「Scala」、誕生から10周年
  • Play 2.xのScala Templatesでビュー&フォーム操作

    Play 2.xのScala Templatesでビュー&フォーム操作:Scala+Play 2.0でWebアプリ開発入門(6)(1/3 ページ) 2.0からScalaに対応したWebアプリ開発の人気軽量フレームワーク「Play」について解説し、Webアプリの作り方を紹介する入門連載。今回は、Play 2.xでビューを表現するための機能「Scala Templates」と、フォームを用いてデータをやりとりする方法を解説します。 前回の記事「Play 2.1にアップグレードしてコントローラを使いこなす」では、コントローラのいろいろな使い方、さらにセッションやフラッシュスコープの使用方法を紹介しました。 今回はPlay 2.xでビューを表現するための機能「Scala Templates」と、フォームを用いてデータをやりとりする方法を紹介します。 Scala Templatesを使ってビューを作

    Play 2.xのScala Templatesでビュー&フォーム操作
  • Intellij IDEA/Scala/Playframework2.0 での環境構築に関するメモ #play_ja - Diary of absj31

    Play 2.0 Javaはじめて&もくもく会 に参加してきた #playbeya #play_ja - Shinya’s Daily Report 先日参加したPlay2.0もくもく勉強会で『Play2.0/Scalaをやるなら、IntelliJはオススメらしい…』という情報を頂き、当日はそこまで引っ括めて対処出来なかったので別途エントリに起こす形で環境構築内容をメモ。 index. Scala実行環境インストール IntelliJ IDEAインストール Scala プラグインの導入 Scalaプロジェクトの作成 外観等の設定変更 Play2.0アプリケーション構築 Play2.0プロジェクトをIDEAに取り込み Play2.0プラグインの導入 Scala実行環境インストール Play 2.0 Javaはじめて&もくもく会 に参加してきた #playbeya #play_ja - Shi

    Intellij IDEA/Scala/Playframework2.0 での環境構築に関するメモ #play_ja - Diary of absj31
  • 15分で始めるScala - | Scala Cookbook

    これはScalaを使った開発の雰囲気を感じてもらうための文章です。 ここでできるようになること Scalaプロジェクトの作成 簡単なScalaコードの作成 テストコードの実行 ログの表示 コードの実行時間の計測 システムにインストールできる形のパッケージを作成 準備 UNIX環境(LinuxMac OS X、あるいは Cygwin をWindowsでセットアップする) javaコマンドが使えること (環境変数PATHの設定など) その他、curl, GNU makeなどのコマンド インターネット接続 (ここから15分です) Scalaプロジェクトの作成 Scalaプロジェクトの必要最低限のひな形をGitHub上にscala-minとして作成してあります。以下のようにダウンロードしながら展開します。 $ mkdir myproject $ cd myproject $ curl -L h

  • Play framework 2.0の概要/5つの特徴とScalaで作るための環境構築

    Play frameworkの背景と歴史 Ruby on Railsが人気となり、それ以外にもいろいろと軽量フレームワークが出てきた2009年ごろ、Javaのフルスタックフレームワークである「Play framework」の1.0(以下、「Play 1.0」)がリリースされました。 このころよく使用されていた(いまでも十分よく使用されていますが)Javaフレームワークは、SpringやSeasar2などのDIコンテナと、それに付随するORマッパー(Spring DataやS2JDBC)やMVCのフレームワーク(Spring MVCやS2Struts)でした。これらのフレームワークはそれぞれ十分な機能と実績があり、現在でもJavaでWebアプリケーションを開発する際には、まっ先に採用候補に挙がると思います。 しかし、これらのフレームワークは基的にJava EEでの開発用フレームワークなので

    Play framework 2.0の概要/5つの特徴とScalaで作るための環境構築
  • Java開発で泣かないためのPlay frameworkの基礎知識

    Javaの常識を変える「Play framework」とは 「Play framework」は、サーバサイドJavaScalaのためのMVCフレームワークです。この連載では、主にJavaのフレームワークとしてのPlay frameworkを紹介していきます。でも「Javaで、Web向けで、MVCで……」なんて、ありふれた感じですよね。それなら「Scalaで、どう作るのか」という話の方が興味あるという方もいるでしょう。 しかし、Play frameworkはバージョン1まではJavaのフレームワークとして作られていました。また、ScalaJavaVM上で動作するプログラミング言語です。つまり現在の最新バージョンの2でも基礎の部分で動いているのはJavaです。Play frameworkを知るためには、まず基礎から固めていくのが正攻法だと思います。Scalaについて知りたい読者は、以下の記

    Java開発で泣かないためのPlay frameworkの基礎知識
    smotokezuru
    smotokezuru 2012/04/10
    知らなかったので、とりあえずチェック。コマンドライン使うとこはRoRとかRooと似てる。でもインストール紹介だけかよ...。
  • イマドキのIDE事情(121) Scala開発はEclipseに決まり? 「Scala IDE for Eclipse 2.0」登場

    ついにリリースされたScala IDE for Eclipse 2.0 JavaVM上で動作する次世代言語として注目を集めるScalaだが、Eclipse(JDT)という非常に強力なIDEが存在するEclipseと比較すると、決定版と呼べるIDEが存在しないことで言語が持つ特性を最大限に発揮できないことが問題視されていた。 これまでもScalaプログラミングのためのツールとして、Eclipse、NetBeans、IntelliJ IDEAといったJavaベースのIDEで動作するプラグインは存在したものの、いずれもEclipse上でJavaプログラミングを行う場合と比べると満足できるものではなかったのが実情だ。 このように強力な開発環境が存在しないことはScalaのディスアドバンテージの1つとされてきたが、EclipseプラグインであるScala IDE for Eclipse(初期のバージ

    イマドキのIDE事情(121) Scala開発はEclipseに決まり? 「Scala IDE for Eclipse 2.0」登場
  • Java使いをScalaに引き込むサンプル集 | mwSoft

    前書き Scalaという言語をご存知ですか? Javaと同じくコンパイルされるとclassファイルになり、実行時はJVM上で動作する、オブジェクト指向+関数型のプログラミング言語です。 Scalaを開発したのはJavaのgenericsの設計を手がけたり、javacの開発をしていた経歴も持つMartin Odersky氏。 Scalaは後発の言語ということもあって、Javaを書いている時に感じる冗長さに対する様々な解が用意されています。 記事では、ScalaJavaのコードを比較しながら、JavaユーザがScalaに移った際に得られるメリットを提示していきます。 尚、序盤のサンプルコードはJavaユーザに伝わりやすいように、returnを明記したり、メソッドは必ず{ }で囲むなど、極力Javaっぽい記述をしています。 だいたいJavaと同じような書き方ができます ScalaJava

  • ensimeで補完生活 - papamitra

    追記(2010/09/05): ensimeは開発&変化のスピードが早く、ここに掲載されている設定ファイルはすでに一部が無効になっています。正しい設定ファイルの書き方はマニュアルを参照してください。 最近話題になってるemacs上のScala開発環境「ensime」をAndroidプロジェクトで試してみました。 どんな感じかっていうのは言葉よりも画像で見てもらったほうが早いでしょう。 補完してくれたり、 クラスの概要を表示したり、 コンパイルエラーの指摘なんかもしてくれます。 画像を見てもらってもわかるとおりandroidライブラリに対しても補完などが効きます。 インストール方法 http://aemon.com/file_dump/ensime_manual.html#tth_sEc2 事前にscala付属のscala-modeは設定しておいてください。 http://github.co

    ensimeで補完生活 - papamitra
  • 2009-09-08

    素人なのであてにはならないと思いますが。 Scala競技プログラミングを行う際に気をつけることの列挙。 なぜScalaなのか? 速い 静的型付 字面がC++よりましなのでC++よりは速く書けるであろうという期待 同じ理由でJavaよりは速く書けるであろうという期待 OCamlよりも基的なライブラリが充実しているので速く書けるであろうという期待 Haskelは配列を弄繰り回すような場合にコードが冗長になる傾向があるのでそういう場合に比較して速く書けるであろうという期待 プログラム全体の構造 Scalaプログラムの実行方法には二通りある。 scalaコマンドによる直接実行 scalac(fsc)コマンドで.classファイルを生成 → scalaコマンドで.classファイルを指定して実行 注意すべきは、どちらの方法をとるかで書くべきプログラムが変わることである。scalaコマンドで直接実

    2009-09-08
  • GitHub - IBM/japan-technology: IBM Related Japanese technical documents - Code Patterns, Learning Path, Tutorials, etc.

    IBM Related Japanese technical documents - Code Patterns, Learning Path, Tutorials, etc. Please open new issue/pull requests in either English or Japanese if you would have any feedback or you would like to contribute this repo. We provide mainly "Japanese contents" by markdown text. IBM Developerの最新情報は https://developer.ibm.com/ にアクセスし、英語のコンテンツを参照してください。 このリポジトリは、IBM Developer Japan Webサイトで公開していた

    GitHub - IBM/japan-technology: IBM Related Japanese technical documents - Code Patterns, Learning Path, Tutorials, etc.
  • 1