Pepsinogen.Blog

ぺぷしのーげん ドット ぶろぐ

iPhoneアプリ開発の超初心者でも開発できる簡単でオススメなサンプルアプリ

f:id:hazakurakeita:20150726114647j:plain

iPhoneアプリ開発を始めたものの、いきなり自分が作りたいものは作れません。作ろうとしてもいいですが、まず挫折します。英語の勉強を始めた人がいきなり通訳の仕事を請け負ったりしないですよね。では最初に何を作ってみるのがいいのか?ここでは簡単に作れる5つのサンプルアプリをまとめてみました。

iPhoneアプリ開発の超初心者でも開発できるアプリ5選

ホームページを表示するアプリ

ホームページを表示する方法は主に2つあります。1つは開発したアプリからSafariに「このホームページを開け!」と命令する方法。もう1つは開発したアプリが自らホームページを表示する方法です。どちらでもいいのですが、ここでは後者を選択します。簡単な上に、動いたときの感動が大きいのでオススメのサンプルアプリです。

qiita.com

この記事なんかは分かり易いのではないでしょうか。基本的に書いてある通りにすれば動くはずです。しかも、ホームページアドレスの行を変えるだけでサンプルアプリの挙動を変えることができます。

www.youtube.com

これなんかも分かり易いですね。映像だけでマネできると思います。

文章を読み上げるアプリ

ユーザーが入力した文章を声に出して読んでくれるアプリです。簡単に作れる上に、実際に動くと楽しいと思います。それに、「俺いまiPhoneアプリを作る勉強してるんだよね~」といって、自分のiPhoneでこのアプリを動かすと結構反応が良いのではないかと笑。

qiita.com

この著者はYoutubeに動画もアップしていました。これは分かり易いかも。

www.youtube.com

上記のサンプルアプリは入力した文章を読み上げますが、アプリの内部で設定した文章を状況に応じて読み上げるようにすると、あたかもiPhoneが話しているように動かすこともできます。こういった汎用性の高さもサンプルとしてオススメする理由の1つです。

ストップウオッチアプリ

ストップウォッチアプリはプログラムの動作の流れを理解するのに良いサンプルとなります。ストップウォッチアプリを作ってみると、「え?こうやってストップウォッチを実現するの?」と思うかもしれません。下記のサイトで紹介されている方法では、設定した時間ごとに処理が実行されるように命令して、処理が実行されたときに設定時間経過したとみなしています。勘の良いひとは全く別の機能で応用できるのではないでしょうか。そんな応用性がある点でもオススメです。

bick.xyz

プログラムだけでなく、作成過程をYoutubeでもアップされていました。動画って意外と良いものだなと今回書いてて思います笑。

www.youtube.com

FacebookやTwitterに投稿するアプリ

自分で開発したアプリでSNSに投稿できると達成感があります。また、自分の開発したアプリが他のサービスと連携させる実績ができるので、自信にもなります。

qiita.com

SwiftにはSocial FrameworkというSNSへの投稿を支援するプログラムがあらかじめ実装されています。もしかしたらエラーが出るかもしれないので、こちらの記事もリンクを貼っておきます。

qiita.com

地図を表示するアプリ

地図といえばGoogle Mapですが、今回はiOS標準のマップの表示を行います。1から説明してるサイトはなかなかありませんでした。一部文章のみですが、ここが一番丁寧に書いてあります。

akira-watson.com

Google Mapは他のサービスを利用することになるので、若干難易度が上がってしまいます。そのため、Google Mapに挫折したらこっちをやってみる流れでもいいかもしれないですね。

さいごに

今回はiPhoneアプリ開発のスタートにオススメのサンプルアプリを紹介しました。超初心者に対してでも開発できるレベルで説明されているサイトを紹介したつもりですが、それでも上手く動かなかったり、挫折してしまう可能性は大いにあります。そのときは、自身で別のサイトを探してみてください。そこでは自分が悩んでいた問題を解決する方法が書いてあったり、まったく別の方法で機能を実現してたりするものです。

また、紹介したサイトで説明されているプログラムは本当に動くかどうか分かりません。当時は動いていたかもしれませんが、Appleの仕様変更により、最新の環境では動作しない可能性もあります。このことからも、「なんで動かないんだ!」と挫折しないように気を付けてください。そもそも「古いサンプルコードだから動かない」が原因の可能性もありますので笑。