Minecraft はゲームだけで終わらない!

こんにちは、ファイブボックスの齊藤です。
今回は、僕の近況報告と最近読んだ本の紹介を通して、Minecraft プログラミングがプログラミングの技術力を上げるきっかけやモチベーションに繋がるということを伝えたいです。

読んだ本

JUnit 実践入門

JUnit 実践入門

本書を読んだ背景

僕の Minecraft MOD 開発の規模が大きくなり手動でのテストが大変なので、JUnit や Jenkins などで継続的なインテグレーションを実現して、開発の手間を軽減したくなりました。

2月は大学が春休みということで、僕は Minecraft の MOD の開発でずっとコードを書き続けていました。そして、ビルドしたプログラムを海外のフォーラム等で公開しています。これが、思いのほかダウンロードされているようで、今後も機能の追加や保守を続けて、継続的なリリースを行いたいと考えています。

しかし、機能等の追加によってビルド後のテスト項目も増えていくため、今までゲーム内で手動で行ってきたテストが大変になり、見逃しやバグが残る可能性が上がります。なので、JUnit を使ってテストを組み、Jenkins などと連携させ継続的なインテグレーションを実現し、開発の手間を軽減したいと思っています。

実際は、Minecraft Mod 開発用に提供されている API ではインターフェースしか提供されていないものが多いため、実際にプログラムをゲームに導入しないと確認できないものもあります。なので、JUnit だけでのテストでは不十分なのですが、それも先人たちのコードを読み漁ると対処法が見つかったりします。それについては、また僕がコードを書きなぐったら記事にしてみたいです。

本書を読んだ目的

  • 先人たちのテストコードを読むための知識を身につける
  • JUnit の基本的な使い方や便利な使い方、応用方法を知る
  • 連携すると良さそうな他のツールとその連携方法について知る

本書で学んだこと

他の人のコードを読めるようになることが大きな目的だったので、本書はその手段だったと僕は考えています。ですので、学んだことは、コードを読むための基本的な知識です。ここから、他の人のコードを読んで具体的な実践を行なっていきます。

最後に

今回は、Minecraft のプログラムを開発するために JUnit に関連する書籍を読みました。今後も、色々な技術を取り入れた開発を行いたいと思っています。このように Minecraft のプログラミングは、ゲームの中だけで終わらず、幅広くプログラミングの技術を学ぶきっかけになるし、実際にそれを使った開発が経験できます。なので、Minecraft のプログラム開発がプログラミングを学ぶ良いきっかけになるということを、もっと多くの人に知ってもらえたら良いと思います。

QiitaのいいねをIFTTTと連携させるためのChrome拡張

こんにちは、最近IFTTTにはまっているn_atmarkです。

IFTTT(イフト)とは「レシピ」と呼ばれる個人作成もしくは公に共有しているプロフィールを使って数あるWebサービス(Facebook、Evernote、Weather、Dropboxなど)同士で連携することができるWebサービスである。(Wikipediaより引用)

僕は技術系の記事を漁るのによくQiitaを見るのですが、Qiitaで「いいね!」したときに、チームにもこの記事を共有したいと以前から思っていました。

今回、


Chrome拡張開発: 拡張からページにJavaScriptを送り込みたい – Qiitahttp://qiita.com/suin/items/5e1aa942e654bce442f7

こちらの記事を見つけて、Chrome拡張を用いることで、Qiitaのいいねをハンドリングできそうだったので、実際に作ってみました。

Qiitaでいいねを押した時に、IFTTTのMakerEventを発生させるChrome拡張機能 - natmark

GitHubのリポジトリにスターを付けると、TwitterにつぶやくIFTTT1のアプレット https://ifttt.com/applets/112730p-post-github-star-to-twitter があるのですが、これをQiitaのいいねでもやりたい!と思って作ってみました。

ChatWork API を Java で利用するためのラッパーライブラリをリリースした話

こんにちは、ファイブボックスメンバーの齊藤です。

今回は、最近作っていたものをリリースした話をします。

 何を作っていたかというと、まぁタイトルの通りなんですけど、ChatWork API を Java で利用するためのラッパーライブラリです。これを Kotlin という言語で作っていたわけなんですが、それを先日 GitHub 上でリリースして、使い方を Qiita の記事にしました。

作成動機について

  • ChatWork の新着メッセージを Slack に飛ばしたい
  • Kotlin をとにかく書きたい
  • IntelliJ IDEA で Kotlin を書くのが気持ちいい

リリースについて

 最近の Java のライブラリ導入方法は、Gradle や Maven の依存関係で追加されることが多いです。特に Andriod 開発では build.gradle に追加してたと思います。ですので、GitHub を Maven リポジトリとしてライブラリをリリースしました。

 ライブラリを Maven リポジトリにする方法は、Gradle で apply plugin: ‘maven’ して、mavenDeploy するだけです。簡単なので是非触ってみて欲しい。

ChatWork API について

 正直まだまだやれることが限られていて微妙な感じです。あと Webhook が欲しいです。だけどまぁ、これから徐々に良くなっていくそうです。と思っていたら、さっそく v2 に更新されました ( 2017/01/26 – チャットワークAPIバージョンアップのお知らせ )。なので作ったライブラリも更新しないといけないですね。

KituraでWebSocketを動かす

こんにちは、n_atmarkです。

2回目の投稿になります。(メンバーもちゃんと自己紹介がてらブログ記事書いてくれてよかった…)

今回ですがKituraという、SwiftのWebアプリケーションフレームワークを使って、WebSocketサーバを立てて見ました。

KituraはSwift用のWebフレームワークで、IBMが去年2月に公開したものです。

今回、このKituraがWebSocketに対応したということで、早速試してみました。

KituraでWebSocketを動かす - natmark

Twitterを眺めていたら、KituraでWebSockerが使えるようになったというツイートを見かけたので、記事を書いてみることにしました。