who’s watching

はじめに Java Puzzlers Advent Calendar 2016最終日の記事です。 皆さんはこれまでの問題は解けたでしょうか?難しい問題ばかりで僕の正答率はガタガタでしたw というわけで今日が最後の問題になります。1ヶ月ほど前に記事にしていたのですが、結構面白い…

Return or not return

次のコードをコンパイルした時、コンパイルエラーが出るメソッドはどれでしょう?複数あります。 public class Main { String case1() { while (true) { } } private boolean case2 = true; String case2() { while (case2) { } } private final boolean cas…

IntelliJで寿司を回す

はじめに この記事はJetBrains Advent Calendar 2016の記事です。 最近Twitterではエディタで寿司を流すのが流行っているそうです。私の観測した範囲ではvimとemacsで寿司を流している方が居るみたいです。 そんな最近の流行に乗ってIntelliJでも寿司を流す…

Unmodifiable – Java Puzzlers Advent Calendar3日目

import java.util.*; public class Main { public static void main(String[] args) { List<String> strings = new ArrayList<>(Arrays.asList("aaa", "bbb", "ccc")); List<String> unmodifiableList = Collections.unmodifiableList(strings); System.out.print(unmodifiab</string></string>…

Equals Method Overloading - Java Puzzlers Advent Calendar1日目

Equals Method Overloading import java.util.*; class Student { private int id; Student(int id) { this.id = id; } public boolean equals(Student student) { return student != null && student.id == id; } @Override public int hashCode() { return…

弱参照とラムダ式

突然ですがクイズです! 以下のコードを実行した時の出力は何になるでしょうか? truetrue falsefalse falsetrue truefalse

SpongeプラグインでSpringのDIコンテナを使う

MinecraftのSpongeプラグインでSpringを使ってみたのでその時のメモです。 Springを使うメリット ・テストがやりやすくなる ・AOPが使える←個人的にかなり重要 なぜAOPを使いたいか 継承では解決できない同じような処理がサーバーのプラグインでは結構出てく…

痛IntelliJを作ろう

IntelliJを痛くしろという神の啓示を受けたので、痛くしてみました。 今回は上のようなエディタを作ってみます。 今まではSexy Editorというプラグインを使う方法がありましたが、2016.2からは"Set Background Image"というアクションが追加され、そこから設…

JJUG CCC 2016 springに行ってきた

Type safe Annotation #ccc_gh1 桜庭さんのタイプアノテーションの話からスタート JSR-305はずっと通っているものだと思っていたんだけど、ステータスが休止中になっているのをその時知って1年ぶりの衝撃を受けました。 そこで気づいて急いで発表予定のスラ…

IntelliJ IDEAでSteamブロードキャスト

突然ですが最近ItelliJ IDEAというゲームにはまってます。 一般的な方「IntelliJはIDE」 Modder「IntelliJはマイクラのランチャー」 僕「IntelliJはゲーム」 pic.twitter.com/RGBSRVaIij — 俺きう (@orekyuu) 2016年4月23日 最近SteamでIntelliJ IDEAのプレ…

4/2(土) Kotlin 1.0リリース記念勉強会 in 京都に行ってきた

Kotlinの勉強会にSpringBoot+Kotlinネタでしゃべりにいきました。 発表したスライドはこちらになります。 Spring boot劇的ビフォーアフター from orekyuu 会場でAndroid以外でKotlinを使ってる人がどれくらい居るか質問したんですが、予想よりも多くて驚き…

Java8 Postfixプラグインが公式に取り込まれた

以前作っていたJava8のpostfixプラグインがIntelliJ IDEA CEに取り込まれた。 Add a new postfix completion template #303 メール確認した時「マージまじ?」ってなった。 たぶん次のアップデートで使えるようになるのかな? IDEA16 EAPには入ってました。 …

AquaFXがいい感じ

この投稿はJavaFXアドベントカレンダーの22日目の記事です。 JavaFXのライブラリで最近いいなと思ったのがAquaFXというライブラリ。 コンポーネント追加とかではなくて見た目をMac風にしてくれるライブラリです。 使い方 build.gradleに依存関係追加 compile…

IntelliJ IDEAのPostfix補完プラグインを作る

JetBrains IDE Advent Calendar2日目の記事です。前日はlaco0416氏のWebStormのTypeScript統合機能でした。 ところでPostfix補完使ってますか?当然使ってますよね? Postfix補完をキメると気持ちいいですよね?Postfix補完でガシガシコードがかけると何でも…

Javaビーム工房でテキストを読み上げるプラグインを作った話

通っている学校の学祭でJavatterブースをやった時にデモ用に作ったプラグインの話。 内容は/say [読み上げさせたい文章]ってコマンドを追加してその文章を読み上げさせるだけ。 読み上げの音声を作る方法は色々あると思うけど、今回はVoiceText Web APIのJav…

IntelliJのAnalyze機能が便利

Case1 クラッシュの報告でスタックトレースを含むログファイルが送られてきた。 テキストエディタでスタックトレースを開きながらコードを読む? Analyze>Analyze Stacktraceを選択し、ログをコピペ これでOKを押すと、Runウィンドウでログが見れる! もちろ…