scala

play-slickを使う

先日play-slickを使ってみたのでそのメモ。 play-slickとは その名の通り、playframeworkでslickを使うためのプラグインです。 https://github.com/freekh/play-slick play-slickを使うと playframeworkのデフォルトのDB設定をそのまま使い回せる slickのス…

dispatch(reboot)でoauthを扱う

rebootと呼ばれる新しいdispatchにはoauth exchangeというoauth 1.0aを簡単に扱うための仕組みがあるのですが、公式ドキュメントに解説が載っていないのでメモ。 https://github.com/dispatch/reboot/blob/master/core/src/main/scala/oauth/exchange.scala …

scala用のgitattributesを定義してdiffを見やすくする

ちょっと前に話題になってましたね、gitattributes。 gitのdiffを見やすく表示する - Qiita [キータ] 調べてみましたが案の定scalaは非対応だったので、自分で定義してみます。 before 普通にdiffを出すとこんな感じ。 hunk headerにはクラス名が出てしまい…

scalaの多相いろいろ

scalaでのいろいろな多相の実装方法とそのpimp my library pattern版をいろいろ書いて比較してみたいと思います。 オーバーロード これも一応多相と言うらしい。 // オーバーロードによる多相 class John class Taro def greet(john: John) { println("My na…

playframeworkにpull requestを出す

メモ。あとから追記していきます。 基本 以下のドキュメントをよく読む。TCLAには事前に署名しておくこと。 http://www.playframework.com/documentation/2.2.x/Guidelines https://github.com/playframework/playframework/blob/master/CONTRIBUTING.md 以…

sbtプラグインを作る

開発メモ。 20141002追記 sbtのドキュメントのリンクを最新のものに変更しました。 また0.13.5以降のAuto Pluginの説明には対応してないので、気が向いたら追記します。 作り方 以下の公式ドキュメントがわかりやすい。 sbt Reference Manual — Plugins 必要…

scaladocからdash用のdocsetを出力する

2013-11-08 追記: 手順が一部抜けていました。 背景 macで開発してる割にmacをあまり使いこなせてない感があったので、最近dashとalfredを入れてみました。 で、最近scalazでちょくちょく遊んでるのでscalazのドキュメントが検索できたら幸せだよなーという…

playとmongodbでrest apiを作る

サンプルとして以下のようなブログの投稿データを操作するAPIを作成します。 [ { 'title': '今日の晩ご飯', 'content': '餃子を食べました。', 'category': '日記' 'createdAt': '2013-10-05 20:00:00', }, ] 環境 今回はplay framework 2.2.0と、mongohqと…

今更ながらgiter8を使ってみた

以前playでsalatを使うときにplay-salatを使ったのですが、giter8という名前を見たのはそのときが最初だったと思います。 それからたまに名前を見かけるのですがどういうものか知らずに使っていたので、今更ながらいじってみました。 giter8とは giter8はgit…

leap motionをsbtで動かすときにハマったこと

(2013-08-29 追記) leap motionを買ったのはいいけど放置してたので弄ってみようと思ったのですが、 sbtですんなり動いてくれなかったので備忘録。 sbtに起因した問題だったので、JavaでもScalaでも発生します。 セットアップ 一応leap motion自体のセットア…

play framework2でログイン機能を実装してみる

scala conference in japan 2013までもう1ヶ月足らずですね! 復習がてら久々にplayを触ってみたので備忘録として残したいと思います。ちょっと長くなりすぎてしまいましたが。 目標 play framework2を使って、Webサービスのログイン機能(ユーザ登録とログイ…