Test. Succeed. Iterate. Gatling is a powerful load-testing solution for applications, APIs, and microservices.
Play 2.0 が正式リリースされました。Play 1.x が Java 用フレームワークであとから Scala モジュールを加えることで Scala でも利用できていたのに対して Play 2.0 は最初から Scala に対応しています。というよりも、Scala メインと言ってもいいでしょう。 Play 2.0 はとても使いやすい Web アプリケーションフレームワークですが、まだまだ情報が不足しています。今回は公式ドキュメントの Handling form submission の補足を行います。 どんなフォームデータマッピングが使用きるのか? 公式ドキュメントではフォームデータのマッピングは text と number についてだけ少しだけ述べているに過ぎません。ですが、デフォルトでもたくさんのマッピングが利用できます。 text フォームデータを String 型にマッピングし
下記の特性を踏まえた上で質問を2つさせてください。 class と case class を比べたときに次のような特性があります new を書かなくても良い scala> case class Foo() defined class Foo scala> class NoneCaseFoo() defined class NoneCaseFoo scala> Foo() res0: Foo = Foo() scala> new Foo() res1: Foo = Foo() scala> NoneCaseFoo() <console>:8: error: not found: value NoneCaseFoo NoneCaseFoo() scala> case class Card(value:Int) defined class Card scala> class NoneCaseCa
Martin Odersky, Lex Spoon 著 Eugene Yokota 訳 Scala 2.8 の変更点で最も重要なものは新しいコレクションフレームワークだと多くの人が思っている。確かに以前の Scala にもコレクションはあったが、Scala 2.8 になって一貫性があり、包括的な、統一コレクション型のフレームワークを提供することができた。(大部分において新しいフレームワークは旧版と互換性がある) コレクションの変更点は、一見すると微細なものだがプログラミングスタイルに重大な変化をもたらすことができる。コレクション内の要素ではなくコレクション全体を、プログラムを組む時の基本的なパーツとすることで、あたかも一つ上の階層でプログラミングをしているかのように感じるだろう。この新しいスタイルには慣れを必要とするが、幸い新しいコレクションの特長のお陰で楽に適合できるようになっている。
入門記事の一覧 About - case class HatenaDiary(id: Symbol = ’seratch2) Scalaのバージョン この記事が対象とするScalaのバージョンは「2.9.1.final」です。 暗黙の型変換(implicit conversions) Active Support の再発明 これを使うとRuby on Rails の Active Support みたいな事ができるようになります。 Ruby on Rails Guides: Active Support Core Extensions d = Date.current # => Mon, 09 Aug 2010 d + 1.year # => Tue, 09 Aug 2011 d - 3.hours # => Sun, 08 Aug 2010 21:00:00 UTC +00:00 簡単で
引き続きデブサミ2014。 ドワンゴ吉村総一郎氏によるセッション「Play2/Scalaでドメイン駆動設計を利用した大規模Webアプリケーションのスクラム開発の勘所」を聞きました。 いろんなところで良く聞くPHPレガシーコードにどう立ち向かったのか聞いてみたかったです。 案の定というか、想像以上のPHPレガシーコードっぷりにちょっと感動すらしましたがw profile 株式会社ドワンゴ 吉村総一郎氏 ウォーターフォール開発とアジャイル開発の両方のマネージャー経験 スライド ニコニコ生放送を書き直す理由 コードの技術的負債がやばい PHPで書かれている: 300万行! facebookで1000万行と言われているそう 1万行のクラスや4000行のメソッド 循環的複雑度600超のメソッドががが あまりに複雑過ぎて龍の巣と言われている(笑) まさに壊れかけのジェンガのよう 企画やスケジュールを優
Martin Oderskyによる 関数型かつオブジェクト指向プログラミング言語 Java 1.1–1.4コンパイラの開発者 Pizzaの開発者 (Philip Wadlerと共同) オープンソース 活発に開発が行われている 応用 Twitterの分散DBフレームワークGizzardはScalaで記述されている Foursquare, Tumblr, LinkedIn, Amazon, VMware, はてな, ドワンゴなどでも利用されている WebアプリケーションフレームワークとしてPlayなどがある プログラミング言語別年収ランキング 2017年は1位, 2018年は2位 言語の特徴 関数型プログラミング言語とオブジェクト指向プログラミング言語の融合 強力な型推論 高階関数 Immutable Collections 並行計算 Java言語もJava 8から,関数型プログラミングの特徴
概要 Javaの全てのクラスがObjectクラスから派生しているように、ScalaではAnyクラスから派生している。 Anyの直下(直接の子クラス)にはAnyRefとAnyValがある。 AnyValはIntやLong・Double等の値のクラスを表す。(Javaのプリミティブ型に相当) AnyRefはそれ以外のクラスを表す。(Javaの参照型に相当) nullはAnyRefの全てのクラス(の変数)に代入できる。 nullはNullというクラスの値になっており、Null型は全てのAnyRefの子クラスの下に位置づけられる。 (したがって、ScalaではInt等も含めて全ての型がオブジェクトということになっているけれども、Int等(のAnyValの派生クラス)の変数にはnullを代入できない) AnyVal・AnyRefも含めて全てのクラスの子クラスとしてNothingが存在する。 継承関係
scala | 03:36 | | scalaのcase classを使うと、なんと、Javaの200倍生産性が上がります!!!その理由について・・・ 釣りで200倍とか書いてみましたがww一応(ある基準で測った場合)嘘ではありません。case classって何に使うの?っていうと、パターンマッチだったり、いろいろあるわけですが・・・(´・ω・`)いつどういうふうに使うべきなのか?という視点からの解説はしません。case classなんて、結局は誰がなんと言おうと、単なるclassです。Javaからでも、ものすごく普通のクラスとしてつかえます。個人的には、classの前にcaseってキーワード付けると、色々便利なメソッドを、scalaのコンパイラさんが、勝手に定義してくれるよ、っていう捉え方でもいいと思います。その便利なメソッド達を解説していこうと思います。まずは、サンプルのためのわざとら
Write purely functional programs, using recursion, pattern matching, and higher-order functions
Effective Scala Marius Eriksen, Twitter Inc. marius@twitter.com (@marius) [translated by Yuta Okamoto (@okapies) and Satoshi Kobayashi (@scova0731)] Table of Contents 序章 書式: ホワイトスペース, 命名, インポート, 中カッコ, パターンマッチ, コメント 型とジェネリクス: 戻り型アノテーション, 変位, 型エイリアス, 暗黙 コレクション: 階層, 使う, スタイル, 性能, Java コレクション 並行性: Future, コレクション 制御構造: 再帰, Return, forループと内包, require と assert 関数型プログラミング: 代数的データ型としてのケースクラス, Option, パターンマ
xmlとparser-combinatorが別のjarになった http://d.hatena.ne.jp/xuwei/20130726/1374809559 case classやメソッドの22制限がなくなった scala/scala#2305 「value classのvalがpublicでないといけない」という制限がなくなった scala/scala#2965 scala/scala#3113 Java8のようなSingle Abstract Methodの糖衣構文を(experimantalだが)サポート scala/scala#3037 パターンマッチの際に使われるunapplyの戻り値型が、Optionではなく「 isEmpty: Boolean と get: A をもっていればどんな型でもよい」と、制限が緩くなった http://d.hatena.ne.jp/xuwei/20
EXPERIMENTAL Eugene Burmako 著 Eugene Yokota 訳 def マクロは Scala のバージョン 2.10.0 より追加された実験的機能だ。 def マクロ機能の一部が、徹底した仕様が書かれることを条件に将来の Scala のいつかに安定化することが仮予定されている。 追記 このガイドは Scala 2.10.0 向けに書かれたもので、現在は Scala 2.11.x 系リリースサイクルのまっただ中なので当然本稿の内容が古くなっている。 しかしながら、このガイドが廃れたかと言うとそうとも言えなくて、ここで書かれていることの全ては Scala 2.10.x と Scala 2.11.x の両方で動作するため目を通す価値はあるはずだ。 これを読んだ後で、準クォートと マクロバンドルのガイドからマクロ定義を簡略化する最新情報を仕入れてほしい。 さらに詳しい具
2012-08-01 Scala マクロの作者 Eugene Burmako さんが管理する scalamacros.org から “Getting started” を翻訳しました。翻訳の公開は本人より許諾済みです。翻訳の間違い等があれば遠慮なくご指摘ください。 Eugene Burmako 著 2012年7月31日 e.e d3si9n 訳 1. Scala 2.10 を入手する マクロは 2.10.0-M3 以降の Scala で出荷されている。現行のマイルストーンである 2.10.0-M6 などのマクロが入ったコンパイラを直接ダウンロードするか、Maven や sbt などから参照する。好きな方法を使っていい。 訳注: sbt 0.11.3 を使ったプロジェクトを github に用意したので、 git clone -b ja https://github.com/eed3si9n
これと全く同じことをC#版作って、昔Wordでやった、わざとあおり文書いて炎上マーケティングやってやろうかなどという黒いことも考えたものの、C#とScalaってあんまりダイレクトに比較できそうになく断念。 で、結局、C#とScalaの差分にあたる部分がどうなのか、本当に欲しいのか、欲しいならどういう形で入るのが良さげなのかとか考えてみたり。 あくまで個人的意見として。 Actor 直接の競合 .NET関連で構文からして近いのはAxumかな。C#とは別言語だし、正直、これがそのまま製品レベルになる気はしておらず・・・ 製品になりそうなもので、かつC#で使えるものだと、一番近いのはたぶん、TPL Dataflowっていうライブラリ。このライブラリ自体は、おそらく.NET 5に入る。これを使いやすくするための構文糖衣がC#に入るかというと、大分先になりそうな予感。 でも、どうなんだろう、Acto
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く