「Scala秋祭り」の登壇資料 https://scala-aki-matsuri.connpass.com/event/142817/ - v1.0.0 に更新 - v0.1.0 をアップロード
この記事はFOLIO Advent Calendar 2018の6日目です。 FOLIOでも使っている「仕様」パターンをScalaで実装する方法について紹介します。 「仕様」パターンとは Eric Evans氏とMartin Fowler氏による仕様パターンに関する論文があります。 https://martinfowler.com/apsupp/spec.pdf ※PDFです また、DDD本では次のように紹介されています。 特殊な目的を持った述語的な値オブジェクトを明示的に作成すること。仕様とは、あるオブジェクトが何らかの基準を満たしているかどうかを判定する述語である。 (中略) オブジェクトを検証して、何らかの要求を満たしているか、何らかの目的のための用意ができているかを調べる。 コレクションからオブジェクトを選択する(期限が超過した請求書を問い合わせる場合など)。 何かの要求に適合する
ここでいうScalaとは https://github.com/scala/scala のScala programming language本体のことです。 以前、以下のようなblogを書きましたが xuwei-k.hatenablog.com その後も同じようなpull reqをずっとして、2018年8月10日の時点で、96 commits で 23 位です。 https://github.com/scala/scala/graphs/contributors?from=2003-02-21&to=2018-08-10&type=c 日本人だと1位のはずです。*1 あと、最近だとおそらくこういうのもあります (無駄に?)ここ数ヶ月細かいpull req大量にしたので、2.13.0-M4以降で2.13.xにmergeされたpull req数だと、もしかすると今のところ自分1位なのでは (
ごきげんよう、かとじゅんです。 某社のiMac Pro 138台導入の件はブルジョア感がハンパないですね…。それとは少し違う方向性で、Scalaのビルド効率化をテーマとして、今回は最新のパーツで自作マシン(OSはUbuntu)を組んでみました。そのマシンとMacとでコスパ比較してみたのでレポートします。 ハードウェア構成 ハードウェア構成は以下です。チップセットはIntell Z370で、CPUはCore i7 6コア(Coffee Lake)です。メモリは64GBです。費用は24万ぐらいです。今回は定格クロックである3.7GHzから5GHzにオーバークロックするので、CPUクーラーは簡易水冷を選びました。 Intel CPU Core i7-8700K 3.7GHz 12Mキャッシュ 6コア/12スレッド LGA1151 BX80684I78700K 【BOX】 出版社/メーカー: イン
以前紹介したように、AtomにIdris用パッケージをインストールするとキーボードショートカットで様々な機能を利用できます。 takezoe.hatenablog.com これがどのように実装されているのかが気になったので調べてみようと思い、Atomパッケージのソースコードを眺めてみました。 github.com どうやらIdrisにはIDEモードというモードがあり、標準入出力を使用してS式でやり取りを行うIDE向けのプロトコルが存在するようです。ちょっと試してみました。 まずはIDEモードでプロセスを起動。 $ idris --ide-mode 000018(:protocol-version 1 0) 入出力は「メッセージの文字数を6桁の16進数にエンコードしたもの+S式のメッセージ」という形式で行われるようです。 こんな感じの作りかけのファイルを用意しておきます。 module Ma
JJUG CCC 2017 Fallでの発表資料です。
2018年4月25日をもちまして、 『CodeIQ』のプログラミング腕試しサービス、年収確約スカウトサービスは、 ITエンジニアのための年収確約スカウトサービス『moffers by CodeIQ』https://moffers.jp/ へ一本化いたしました。 これまで多くのITエンジニアの方に『CodeIQ』をご利用いただきまして、 改めて心より深く御礼申し上げます。 また、エンジニアのためのWebマガジン「CodeIQ MAGAZINE」は、 リクナビNEXTジャーナル( https://next.rikunabi.com/journal/ )に一部の記事の移行を予定しております。 今後は『moffers by CodeIQ』にて、 ITエンジニアの皆様のより良い転職をサポートするために、より一層努めてまいりますので、 引き続きご愛顧のほど何卒よろしくお願い申し上げます。 また、Cod
TL;DR 世間のScalaに関するイメージは、昔のままであることが多い 昔のままどころか、最初から間違ったイメージを持たれていることも多い 実際には、既に解決されている問題は多々あるし、改善に向かっていることも多い プロジェクト管理の問題を言語に押し付けているケースもある はじめに 自分が最初にScalaに触れたのが2005年(Scala 1からカウントした場合)、あるいは2007年(Scala 2以降からカウントした場合)と、Scalaとの付き合いも結構長くなってきましたが、その間に Typesafe社(現Lightbend社)の設立 実質標準ビルドツールとしてのsbtの確立 ライブラリのバイナリ後方互換性に関するポリシーの策定 公式ScalaイベントScala Daysのはじまり Play 2 Frameworkの登場 Scala Center発足 その他色々 がありました。この間、
なんだかTwitterの一部で www.utali.io の記事が話題になってるようですが、はっきり言って誤情報です(というか、何故そんな誤解をしたのか知りたいくらい)。根拠はいくつかありますが Twitterは最近(ここ数ヶ月)にScala CenterのAdvisory Boardにjoinしている 置換えたとされるFinagleのコミットが最近でも活発である そもそも引用元ツイートで一言も、Scalaを捨てたに相当する表現が見られない 1についてですが、Scala作者のMartin Odersky先生が Odersky先生も参戦してる。"For what it's worth Twitter just joined the Scala Center advisory board as a full member. Don't believe the FUD."— 水島宏太(ゆる糖質制
class: center, middle # Implicit 再入門 Scala関西Summit 2016/10/08 --- class: left, middle ## 自己紹介 * 中村 学(Nakamura Manabu) * [@gakuzzzz](https://twitter.com/gakuzzzz) * 株式会社 Tech to Value * Japan Scala Association --- class: left, middle # [Scala Matsuri 2017](http://2017.scalamatsuri.org/) ## CFPとスポンサー募集中! --- class: center, middle ## **Implicit** と聞いて ## まず何を思い浮かべるでしょうか? --- class: center, middle ##
負荷ツールとして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
ScalaでSQLを書くのにSlickで便利にやる話. Slickでは生SQLを補間子(sql"...")で書けるけれど, リストが渡せなくてWHERE column IN ($list)できなかったり, 他にもいくつか不便なところがあったのでなんとかした. 最近になってScalaを書き始めたのでScala力を上げるための練習も兼ねている. なぜ生SQLか 社内では既にMackerelでSlickを使っていて, liftedな書き方をしているけれど, これはぱっと思いつくだけでも以下のような実運用上の課題があった. そもそもどの部分がクエリを表しているのかぱっと見わかりづらい 意図せず複雑なクエリになることがある 非Scalaエンジニアが読めない とくに最後のは, たとえばインフラ系のエンジニアが(クエリログを精査した結果などから)やばいクエリの出所を探そうと思ったときに全く手がつけられな
この記事はScala Advent Calendar 2014の20日目です。 よろしくお願いします。 はじめに latencyが短く、かつ大規模アクセスにも耐えられるサーバー環境の構築が必要になる場合があります。 例えば、広告系のシステムだと入札/応札するようなサーバーでは100msとか50msとか以内にレスポンスを返さなければいけません。 このようなサーバーを書くために、Scalaではいくつか選択肢があるかと思います。 自分の会社では、その中でFinagleを使ってAdServerを書いています。 この記事ではFinagleの簡単な紹介と、Finagleがサーバーをどのように動かしているのかについて書きたいと思います。
こんにちわ、みけです。 表題の通り、勉強会を開催してきました。 このページでは勉強会開催の経緯とか、ハンズオン開催する場合の難しさ、フォローについて書いておきたいと思います。 開催の経緯とかタイトルとか 僕はJava8以降、Javaばっかり書いていて、 ラムダを書いていたりすると、 いろいろと不満に思うことがあったりするわけです。 interface SomeResource<T> { public Optional<T> findByCondition(String cond); } interface Producer<R> { public R produce() throws IOException; } class SomeProcessor<R> { private SomeResource<Producer<R>> resource; public SomeProcessor
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く