のーずいだんぷ

主に自分用メモですが、もしかしたら誰かの役に立つかもしれません

Scala

複数言語が混在したプロジェクトでlinterとformatterをgit-commitにフックする

はじめに 複数言語をすべてgit-hookで連携するのはしんどい git-hook連携ツール:pre-commitを使用する インストール 設定ファイル 設定の反映 単純な実行 汎用的なチェック 各言語の方針 Python pre-commitへのhook設置 各設定ファイル Node.js 1. pre-commi…

<Scala>await resultによるOOMErrorで苦しんだときに学んだこと

はじめに 遭遇したバグ 発生したバグについて OOMErrorには種類があるということ 調査にはヒープダンプをとるのが最も簡単な方法 結局の原因 await resultのネストの危険性 最後に 参考 はじめに 職場で遭遇したかなり苦しかったバグについて、具体的なコー…

<Scala>SlickでHikariCPのコネクションプールを使用する

具体的にやること 依存ファイルを追加する HikariCP使用のための実装 HikariConfigに設定を保存する。 諸注意 最後に 参考 具体的にやること 以下の環境で実行する Scala(2.11系) slick(3.0.0) h2(1.4.199) マルチスレッドの場合、スレッドプールのサイズは…

Scalaマスターになりたくて ~コレクション(array, list, tuple, set, map)の基本~

はじめに、Scalaはすごい Scalaのコレクションのimutableとmutable 配列(ArrayとList) 宣言と初期化 要素の参照(呼び出し) tuple(タプル) 宣言 値の参照(呼び出し) Set(集合) 宣言 値の参照(呼び出し) map(マップ) 宣言 値の参照(呼び出し) 終わりに 参考 は…

Scalaマスターになりたくて ~変数と関数と条件分岐とループ~

一日一文法シリーズ改め… 変数宣言 関数の定義 例に関する細かい話 Unit型とは Scalaのクオート 条件分岐とループ whileとif-else foreachとforによるループ 参考 一日一文法シリーズ改め… 先日Pythonでやっていたこの一日一文法シリーズ、流石に忙しいとき…

Scalaにおけるobject(static)とは

はじめに staticとはそもそもなにか Javaにおけるstatic Scalaにおけるstatic 参考 はじめに 私の所属する会社ではコードベースがScalaなのだが、方針としてPythonへ移行することになっているため、今の所ちゃんと書いたことがなくこれまで雰囲気で読んでい…

build.sbtのdependenciesに追加したライブラリがダウンロードされない&IntelliJで名前解決できない

どういう問題か 原因 1. build.sbt編集後もなかなかダウンロードされない問題 2. ローカルのライブラリを消してもなかなかダウンロードされない問題 3. IntelliJでライブラリが使用できない(ようにみえる)問題 解決方法 1. build.sbt編集後もなかなかダウン…