こんにちは。きんくまです。
前回のエントリの続きは、次回のエントリに書こうと思います。
今回は、もろもろの日記です。
アプリのアップデートの状況
拙作HabitKeeperのアップデートの申請を先週あたまに申請しました。
うまくいけば今日あたりに、アップデートの完了のエントリがかけると思ったのですが、ささいなことでリジェクトされてしまいまして。
それで、すぐに修正してまたアップロードしたので、また今週末ぐらいには結果がわかるかと。
申請した時点からさらに開発をすすめていたんですけど、gitでブランチ切ってたからすぐに申請時点にソースを戻すことができて良かったです。
一人でgitを使っててもそんなに便利さを実感することがなかったんですが、今回初めて実感できました。
テスト駆動開発とかCIとか
話は変わって、世の中にはいろんな開発手法があるようでして。
テストのやり方を前から調べてたんですが、それに付随していろんな開発手法を目にする機会がありした。
テスト駆動開発(Test-Driven Development = TDD)というのもその一つです。
1. Red(赤)テストを先に書く。この時点ではアプリのコードを書いてないので通らない
2. Green(緑)アプリ側のコードを書く。テストを通るようになる。
3. Refactoring(リファクタリング)効率化だったり、見通しが良くなるようにコードを品質改善する
4. 1に戻る
テストコードを先に書いて、次にアプリ側のコードでそのテストが通るように実装する。そのあとリファクタする。みたいな感じでやります。
なんか2重にコード書くみたいですごくめんどくさい感じです。
が、テストコードを書く時点で何をアプリにさせたいのかを考えるので、アプリ側も整理されて実装できるようです。
また、テストしづらいコードというのは、どこかに問題があるのでそれがわかるのも良いとか。
なんで、少しずつ自分も取り入れてみようと思ってます。
継続的インテグレーション(continuous integration = CI)というのも開発手法というか、開発環境というか。
ちょっと調べてみたところ、複数人で開発するときに特に力を発揮するみたいです。
これをやるためのJenkinsというおっさんのアイコンをよく目にします。
個々人が開発 > git でpush > (ここからJenkins側が自動でやる)Jenkinsでビルド、テスト > エラーがあると全員でメールを送る > 問題なければテスト環境にアップ
みたいな感じにできるらしいけど、まだよくわからないです、、。
とりあえずTDDをためしてみる。
サーバー側とか
アプリでデータベースを扱っているので、DBの扱いの勉強になるかなと思って、今まで避けていたwebのサーバー側の技術を調べてました。
クラウドだVPSだRESTだのと、いろんな用語が出てきて困ってしまったのですが、ひとつずつ調べていけば「ほうほうなるほど」ということが多く面白いです。
言語はPHPにしました。
目下の目標はライブラリなしでメモアプリを作ったあと、SymfonyやCakePHPを試してみたいなと思ってます。
■ 自作iPhoneアプリ 好評発売中!
・フォルメモ - シンプルなフォルダつきメモ帳
・ジッピー電卓 - 消費税や割引もサクサク計算!
■ LINEスタンプ作りました!
毎日使える。とぼけたウサギ