#はじめに
わたしは過去に入門書を購入しコマンドプロンプトで鶴亀算を実際に作成するところあたりまでやったものの、その後が続かず学習を辞めたということが3回ほどある人間である。
当記事作成時である2015/03時点ではJavaの学習を再開後9ヶ月目、趣味のAndroidアプリを公開しており、次はiOSアプリを作ろうかとしているところだ。
「なんとなく興味はあるけれど学習が続かない」くらいのひとの助けになるかとおもい、わたしが勉強のために参考にさせていただいたサイト等をまとめていく。
#Java学習参考サイト
1.Javaで始めるプログラミング(JavaBook)
過去に学習を中断した原因を考え、「コマンドプロンプトで行う鶴亀算」と「GUIを伴うアプリケーションソフト」間の隔たりが大きすぎて学習初期に持った熱がすぐに冷めてしまうことによるものだとおもい、すぐに「クリックができるもの」を教えてくれるサイトを探して上記サイトに辿り着いた。
Java開発のためのソフト、Eclipseの導入方法も載っておりスムーズに学習を始められるとおもう。
2.JavaDrive
条件分岐、配列等、基本的なことはここで確認できる。
プログラミングを独学で習得しようとした際に一番時間が掛かることは、「こういうことがしたいしたぶんできるとおもうのだけれど、それを何と呼ぶか分からないため検索できない」問題に直面することだとおもうので、少なくともここの目次くらいは読んでおくといいかもしれない。
3.Javaちょこっとリファレンス Listの要素をソートする(独自クラス)
わたしが作りたいモノのために不可欠だったけれど何と呼ぶのか分からず非常に躓いたものを解説していてくれたページ。
当該ページのデータクラスにて社員番号と社員名が載っているが、これを元に手を加えていけば例えば電話番号、基本給、家族構成等の情報を一単位にして操作できるため、これができるようになればデータを記録、検索するような操作ができるようになる。
※これが最適なのかどうかは知らない。
#Android学習参考サイト
1.Androidアプリ開発入門
上記サイトの入門編で「タッチして動くアプリ」の作成をすぐに体験できる。
2.その他
ちょっとまとめ方が思い付かなかったので、欲しい情報に辿り着くまでに時間が掛かった問題やよく使っているものを適当に羅列する。
・文字列の結合:
初心者向けJava講座の多くで文字列の結合は+演算子を用いて行う例が紹介されるが、+演算子を用いた文字列の結合は処理が重いようなのでStringBuilderによって行ったほうがよい。
Androidアプリでcsvファイルの読み書き(特に書き込み)をする際、20万回(1行50セル×4000行)程度の処理に+演算子での文字列結合を加えながら行おうとするとアプリが固まってしまうが、StringBuilderであれば問題なく処理を行うことができる。
・文字コード問題:
csvファイルを読み取ってアプリ内で処理したかったのだが何度やっても文字化けしてしまう。文字コードを変更するという記述を足してみてもうまくいかない。分かってみれば簡単で、BufferReader等でcsvファイルで使われている文字コードを指定して読み込めばいいだけであった。
・GoogleAnalytics:
公開するアプリにGoogleAnalyticsを設定する際、公開するとき以外はAndroidManifestのversionName末尾にx等記号をつけておくと作成時のテスト中に起きたエラーとユーザーの操作で起きたエラーを区分して集計できるため便利である。
他にanalytics.xmlにて集計用のスクリーンネームを設定できるが、複数のアプリを公開する予定ならMain、Setting等重複しそうなスクリーンの区別を考えて設定するのが手間だし、設定しなくてよいとおもう。
・relColors:
カラーコードを参照できる。縁に色をつける場合、縁の中の色から下に6~8個ほどの色を使うとしっくりくる気がする。
・ソフトウェア技術ドキュメントを勝手に翻訳 外形Drawable:
丸角やグラデーションのおしゃれなボタンができる。押下時に色が変わったり、使えないときに色を変えたりするのもこのサイトあたりに載っていた気がする。