mike-neckのブログ

JavaかJavaFXかJavaEE(なんかJava8が多め)

JJUG CCC 2016 Fall に行ってきた #jjug_ccc

表題のとおりです。 www.java-users.jp 以下、参加したセッションの独断と偏見によるレポートです。 Prepare for Java 9 : Java9に備えよう Java9先取りのセッションです。 Jigsaw Kullar 非互換情報 ファイル/ディレクトリ構造が変わる話 プロパティファイ…

Kotlinのリフレクション(KClass)を調べた

KuickCheckを作った時にKotlinのリフレクションを一通り触ったが、完全に忘れてしまったのであらためてメモ。 ここではクラスを表すKClassとそのプロパティ、およびそれらが適用できるクラスをまとめてある。 Kotlinコンパイラーが生成するクラス KClassのプ…

KotlinでJSR303(Bean Validation)を使うときの注意

少しハマったのでメモ。 KotlinでBean Validationを使った時に、validationされないので、Stackoverflowなどを読んでいたら、アノテーションの書き方を工夫する旨あった。 まずはvalidationされないパターン data class Person ( @NotEmpty val name: String…

Kotlin用のjunit-quickcheck風なテスティングフレームワークを作った

表記のとおりです。 テストデータをランダムに自動生成して複数回実行させるというライブラリーです。調べてみたところ、Kotlin用のものがないようなので、作ってみました。名前はKuickCheckという名前にしていますが、今後どうなるかわかりません。あと、僕…

Kotlinのコンパイラーが吐き出すクラスまとめ

リフレクションをいろいろいじっていて気になったので中途半端にまとめてみた Kotlin クラスのメモ Kotlinをコンパイルすると生成されるクラス クラス/インターフェース/enum/オブジェクト1つにつき1つのクラス パッケージに所属する関数/プロパティ -> Ktク…

OpenCV/Java 環境構築メモ

JavaでOpenCVをごにょごにょやるのに、少し手間取ったのでメモ。 インストールする環境などは次のとおり。 Mac 10.11.5 インストールにはbrewを使う OpenCV 3.1.0 IntelliJ IDEA 2016.1.2 Java8u92 OpenCVのインストール (1) pythonをbrewでインストール $ b…

Javaの機械学習ライブラリーでFizzBuzzしてみた

FizzBuzzをするのにTensorFlowというネタツイートがあったので、「機械学習 FizzBuzz」で検索したらすでにいくつかあったので、真似してみたくなった。ちなみに機械学習のことは全然わかってません。 qiita.com blog.amedama.jp IT会社面接官:「数字を列挙…

Gradle2.11の新機能を試してみた(1)

Gradle2.11でJavaソフトウェアモデルに対してJUnitによるテストがサポートされたので試してみました。 基本 ディレクトリー構成は以下のとおりです。 root └─src ├─data │ └─java ├─data.test │ └─java ├─exceptions │ └─java └─functions └─java 使用するJa…

Gradle2.11リリースノート意訳(また途中)

gradleのバージョン2.11がとっくの昔に出ていたので、リリースノートを意訳しておきました。 原文はこちら Gradle2.11ではソフトウェアモデルとIDE連携およびコンティニュアスビルドを強化しています。 ソフトウェアモデル改善はGradleの現在の目標となって…

Gradle2.10のリリースノート意訳

久々にパソコンの前に座ったので、リハビリ代わりに先月にリリースされたGradle2.10のリリースノート意訳というか、中途半端に翻訳した。分量が多かったので訳してないところがありますが、引き続き入院してるので、翻訳の続きはありません。 オリジナル(英…

エンジニアが勉強し続ける理由

これはほとんどネタです。 ここ最近、マルクスを再読していました。貧富の格差、貧困の問題とかワーキングプアーなどがニュースになっていることを見るにつけ、マルクスが気になっていたからです。マルクスが資本論を書くための準備していた時期の『経済学・…

Jigsawのモジュールのリスト作ってみた #java #Jigsaw

さっきのエントリー mike-neck.hatenadiary.com で、LTしてきたと書いたのですが、その際に、Jigsawのモジュールがどのように分割されたのか気になったので、調べてみました。 なお、クラス数が膨大なので、このエントリーには載せません。 github.com 上記…

JJUG CCC 2015 Fall にボランティアスタッフとして参加してきた #jjug_ccc

表記の通り、JJUG CCC 2015 Fallにボランティアスタッフとして参加してきました。 JJUG CCC 2015 Fall(11月28日開催) | 日本Javaユーザーグループ jjug.doorkeeper.jp 僕が主に担当したのはCD部屋の16:00〜の会からの空席案内役。 ひとつ前のいろふさんの…

GradleのJVM component modelスタイルのプロジェクトをJigsawでビルドする #gradle #java #jigsaw

前回のエントリーでGradleにおけるJVM component modelの実践的な内容を紹介した。 mike-neck.hatenadiary.com ここで紹介したプロジェクトのビルド成果物はこちらのエントリーでも紹介した、Javaモジュールシステム的な考えが採用された成果物である。つま…

Gradle3におけるJavaプロジェクトのビルド入門(4) -- 実践編 #gradle

Gradle3におけるJavaプロジェクトのビルド入門の一連の記事ではJVM component modelによるJavaプロジェクトのビルド方法について紹介してきた。その過程でJDK9より導入されるJigsawとの関連も指摘しておいた。 この記事では実践的なJVM component modelによ…

Gradle3におけるJavaプロジェクトのビルド入門(3) -- 用語の再確認とJigsawとの関連 #gradle

今回はJVM component modelにおける用語について整理しておく。 前回、前々回とGradle3におけるJavaプロジェクトのビルドにおけるJVM component modelの入門を行っていった。 mike-neck.hatenadiary.com mike-neck.hatenadiary.com また、JVM component mode…

簡単な特徴もないJava用のテスティングフレームワークつくった

諸事情により、JUnitが使えない状況でコードを書いていたのですが、書いたコードが動くかどうか確認したい衝動に駆られて、簡単な特徴もないテスティングフレームワークを作りました。 仕様 最初に書いた仕様がこれ。 github.com public class MaybeTest ext…

Jigsawについて雑にまとめてみた

以前、Gradle3におけるJavaプロジェクトのビルドについてのエントリーを書きましたが、Gradle3のJVM component modelって、まあ、わりと、Java9のJigsawみたいなものなんですね。で、Jigsaw自体知っている人が多いと思いますが、あらためてJigsawが解決した…

コンソールの色を変えて出力する

元ネタはうらがみさんのカラフルバナー backpaper0.github.io 詳しい話はこのあたりが良さそう。 stackoverflow.com ANSI escape code - Wikipedia, the free encyclopedia def esc = 27 as char (30..37).each {t -> (40..47).each {b -> print "${esc}[${t…

あなたは自分の所属している会社の商品を正確に答えられますか?

技術ときおりネタとして開設したこのブログで初めてエンジニアのキャリアについてのエントリーを書きます。 ただし、このエントリーにはかなり偏った次のようなバイアスがかかっていることを私自身が認識しております。 私自身がマルクスの信奉者であるとい…

Gradle-2.9-rc1のリリースノートで訳し忘れてたライブラリーAPI定義について意訳(JDK9にも関連) #gradle

意訳には(僕に)定評のあるGradleのリリースノートですが、前回訳した時に、意図して訳さなかったのか、JavaOne開催中でProject Jigsaw関連に合わせるためにその時には書かれていなかったのか、どっちか定かではありませんが、リリースノートの意訳にExplicit…

Gradle3におけるJavaプロジェクトのビルド入門(2) #gradle

前回は、JVM component modelによるJavaプロジェクトのビルドの入門をおこなった。 mike-neck.hatenadiary.com これまでのjavaプラグインに比べると記述量が増えてしまうが、遜色ないビルドができることは示せたと思う。 複数ライブラリー(コンポーネント) …

Gradle3におけるJavaプロジェクトのビルド入門(1) #gradle

Gradleは元々の作りが非常にブラックボックスなため、設定されたオブジェクトのライフサイクルがわかりづらいなどの問題があり、Gradle3に向けて、それを修正している最中です。その中核となるのがRule Based Model Configurationという仕組みです。 その仕…

Gradle-2.9-rc1が11月4日に利用可能になってました #gradle

10月1日にGradle2.8-rc1が出たという記事を書いてから、1ヶ月、Gradle2.9-rc1が2015/11/4に出ています。 mike-neck.hatenadiary.com というわけで、いつもどおりリリースノートの意訳 Gradle TestKitがもっと便利になった Gradle TestKitがGradle2.6で出てか…

Finagle/finchを試してみた - その1

表記の通り、twitterが作ってるFinagleというwebフレームワークのfinchというのを試してみました(とはいっても、まだgetting started)。 このライブラリーを知ったのは吉田さんのブログエントリー d.hatena.ne.jp Playフレームワークをいろいろといじってい…

五輪にボランティアで働けるエンジニア4万人を調達する手段

数週間前ですが、TLを騒がした記事がありましたね。 japan.zdnet.com 僕のchromeにはAdBlockerPlusが付いているので、zd netの記事開くの大嫌いなのですが、まあ、要点をまとめていくと、こんな感じです。 サイバー攻撃というのは物理的な戦争と同じである。…

世間から4周遅れでSlick3.1完全マスター(一歩手前)した #scala

動機 金曜日くらいにPlay-Slickに入門しようと、ドキュメントを漁りつつ一からいじっていたのですが、Slickがそもそもまったくわからないので(Playも当然まったくわかっていませんが…)、Slick3.1のチュートリアルをやろうと思い立ちました。 Getting started…

今 gradle.org に何が起きているのか?

gradle,org に何か異変っぽいものが起きているらしいです。 Gradleさんどうなってしまったの https://t.co/L1ssx97cY4— Yasuharu Nakano (@nobeans) 2015, 10月 26 僕も昨晩確認してみたところ、こんなページになっていました。 @saba1024 なんか、直ってた …

Gradleからdockerを起動して分散テストさせてみた #gradle #docker

昨日のエントリーの続きです。 mike-neck.hatenadiary.com Gradle万能派の僕には、納得がいかなかったので、最後までやってみることにしました。 切り捨てたこと まず、分散テストは何が目的なのか考えると、テスト結果をマージすることが目的なので、以下の…

Gradleからdockerを起動して分散テストさせようとしたのだけれども

標記の件について、ここ2日間取り組んでいます。もちろん、ボランティアです。 元ネタはじょーたにさんに教えてもらったこのツイート。 JUnitの実行を各クラス毎に並列で実行して、かつそれぞれをDockerで実行してくれるようなものは無いかな..— たむたむ (@…