コミュ障だから明日が僕らをよんだって返事もろくにしなかった

何かを創る人に憧れたからブログをはじめたんだと思うよ

かけだしがやるすからー じつぎ

無能な人間ほど意味のないことをやろうとするっていうのは真実だと思うの

はい、おはようございますごみくずです。今日も生きてしまったこと後悔しながらブログを書いていきます。みなさんは僕のようなごみくずにならないようにしてください。本当に僕みたいななことは絶対にしないでください。人生詰みますよ。

まあいいや。

とりあえず例のアレ完結編ということでやっていきます。
f:id:andron:20200514214210p:plain


今回やったこと!

実技ということで準備の説明が大半だったりする。なにごとも準備が9割なんてよく言いますもんね。ということで準備をざっくり見ていきます。


1. PlayFramework準備します。
Play Framework - Build Modern & Scalable Web Apps with Java and Scala

環境構築の準備っぽいお話し。

以前に確認用に作ったのがあるんで環境構築は大丈夫そう。
GitHub - Andou666/otameshi-playframework: PlayFramework HelloWorldサンプル

 sbt new playframework/play-scala-seed.g8

これで動く!僕は金で動くのに、 play フレームワーク凄いなーコマンド一つで色々やってくれるんだもん。

はい、次行きます。



2. UML図つくります。
シンプルなテキストファイルで UML が書ける、オープンソースのツール

実践ということだけあって相手(チーム)に伝わるような図を作れるようになろうってのが目的っぽい。

準備するツールはこれ
シンプルなテキストファイルで UML が書ける、オープンソースのツール
クソみたいな図書こうと思ったけどなんもネタ思いつかなかったらそれは飛ばします。前回どこかで勝手に触ってるしね。


どうでもいい話なんですが、こういうのってグラフィカルにUML図使ったりして書くのとエクセルなんかにきっちり項目わけした文章として伝えるのとどっちが見やすいかって実は人によって違うらしい…。コミュニケーション難しいね……。

統一モデリング言語 - Wikipedia
まあ人に伝わらなければ意味ないけど、UMLは歴史と伝統があるやつなんで大事。


3. Dockerを使います
やったーDockerだあああ!
Empowering App Development for Developers | Docker

以上を準備します。ImageMagickだけ準備別枠だけどまあ許して。
実践ということですので、チーム内の開発環境を統一しようってのが目的っぽい。

どうせ導入だけだから別にいいかと読み飛ばしたら。

org.im4java.core.CommandException: java.io.FileNotFoundException: convert

あとあと上のエラーだして小一時間詰まった*1。だってImageMagickねじ込んでコード書けば動くと思うじゃん。

# Windowsで確認
# ImageMagick
choco install imagemagick --version 7.0.6.10
# magick に対して convert のシンボリックリンクを作成 
cd C:¥Program Files¥ImageMagick-7.0.6-Q16
mklink convert.exe magick.exe

ImageMagick 上では magick コマンドが利用されるんだけど、Javaで扱う際は convert コマンドが適用されるとのこと。そんなん知らんがな……(自業自得)。

関係ないけどもDocker ToolBoxと一緒に落とせるKitematicって便利ね。稼働状況が目視でわかるのはどこでこけてるか追えて嬉しい。
f:id:andron:20200514221801p:plain

参考
Kitematic



4. コードを書きます。
コードをなんやかんやしてかいていきます。なんやかんやの部分はは下にコード貼ったんでその中身みるか、実際のレッスンやってどうぞ。

ここから種々のJSモジュールを怒涛のごとく詰め込んだり、React使ったり、新しく使うJavaライブラリの説明をしたりと残り数回のレッスンに詰め込みすぎだろってぐらいの構成でなかなか面白かった。まあ、実際に手を動かすところだしね。

テンプレート

種々のJSモジュールなど

まあ、色々とやったなあ……。


5. 完成
f:id:andron:20200514214145p:plain
そんでこんなんできます。前回に同じく動作検証はざっくりとしかしてません。ログイン/ログアウト機能がTwitter使うだったりするんで………(僕は頑なにTwitterを始めない)。画像ドラッグドロップするとテキストつけてくれるやつできます。

GitHub - Andou666/NnoMojipic-N
コードはこちら
設定ファイルはいろいろ書き換えたり中身がこれだけじゃ意味不明なんであとでREADME追記しておきます。

時に、今回はちゃんとチーム開発的なこと意識してバージョン揃えてやったはずなんだけどsbtがうまく更新してくれない…。どうしたらもっとあれは柔軟な感じにできるんだろうか……



感想

かなり駆け足でやりましたがなんとか終了させることができてよかった。Javaのエラーどうするかの訓練には丁度よかったかもしれない。普段、Java書かないからめちゃくちゃしんどかった。あとちゃんとDocker使う作業できたんで、Dockerと仲良くなれたと思った。まあ、作業の9割 Kitematic(DockerのGUIツール)でやってたんですけどねw。Kitematic はいいぞ。




最後にニコニコ再現アプリ講座とかあるけど、あそこまでは終わらせられそうにないかな……。それとニコニコのやつは学習用途でのみ利用していいって規約なんでまあブログ記事になることはないだろうしね……。そしてAndroidとSwiftのやつは手が出せなかった……。あれ間に合うかなー……。

あ、そうだ。Web基礎編だったかそこいらでも書いたけども、ここまでの内容やっても「どうにかなんとかそれ系のインターンやアルバイトにたどり着ける水準」だったりするんで僕みたいな低知能な人間がこういうの終えてもまあ役に立たなかったりします。カナシイネ。

最近はここまでできれば即戦力みたいな情報よくみかけるんでコレ貼っておきますね。
How the most prized degree in India became the most worthless - Rest of World

残念ながらそうはならないよ!現実は厳しいね!



もう少しだけ色々やります……

*1:im4javaはJavaからImageMagick呼び出すときに使うやつ