はじめに
独学でプログラミング学び始めて約1年、業務でプログラムを書き始めて2ヶ月、Swift始めて1ヶ月のSwifterです。
前回の記事で軽く触れましたが、RSSリーダーはアプリ初心者にとって開発のイロハを学ぶのにちょうど良いと思っています。
今回はそのお勧めの理由をいくつかピックアップしました。
作成したサンプルアプリはgithubに公開しましたので参考にしてください。
SampleRSSReader
こんな感じで動作します
- plistにあらかじめ登録しておいた各RSSタイトルが一覧で表示される
- タイトルをタップするとそのRSSの見出しが一覧で表示される
- 見出しをタップするとWebViewで内容が表示される
想定する読者
- アプリ本を見ながら作ってみるものの、自分でやってみようとすると何したら良いか分からない
- buttonとかlabel、textfieldを触ってみて、ある程度理解している
初心者の悩み
私自身もまだまだエンジニア初心者ですが、以下のようなことで悩む事があると思います
- buttonやlabelだけの簡単なものじゃなくて、もっとアプリっぽいものを作りたい
- スタンドアロンなアプリじゃなくて外部と通信してアレコレするアプリが作りたい
- TableViewとかサンプル通りに作ってみるけど、いざ自分でやろうとするとよく分からない
- そろそろフレームワークとかライブラリとか使ってもうちょっと高度な処理を簡単にやりたい
どうでしょう? 私は結構ここら辺で悩みました。
この悩み全てをまるっと綺麗に解決してくれるわけではないですが、ある程度RSSリーダーが作れるとなんとなく初心者から脱出できた気になれます(僕がそうでした笑)
お勧めする理由① TableViewの理解が進む
タイトル → 見出し → 各ページの詳細のページ
という作りが基本なのでTableViewの仕組みやデータの表示、画面の遷移などをまるっと実装することになります。作り終わる頃にはかなりTableViewを使えるようになっているのではないかと思います
お勧めする理由② 配列・辞書の操作に慣れる
TableViewと配列・ディクショナリは切っても切れない関係だと思っています(TableViewに限ったことではないですが・・・)
RSSリーダーを作成するためには否が応でも使わなければならないので、作り終わった頃にはもう配列は怖くない!
お勧めする理由③ ライブラリを使う
RSSのデータを表示するためには色々と処理が必要なのですが、これを自分でやろうとするとクソめんどくさいです。処理をまとめた外部ライブラリを使う事で簡単にすることができるので使わない手はないです ライブラリは慣れが必要ですが、一旦これで慣れてしまえば他のライブラリを使うときの参考にできるはず
お勧めする理由④ 比較的簡単でそれっぽいアプリになる
入門書片手にアプリを作ってると「buttonをタップしたらlabelが変わるアプリを作ってどうなんの?」みたいなところで心折れてしまったりします RSSリーダーは開発してからも色々と拡張できるので「アプリ作った感」は凄くあると思います
お勧めする理由⑤ 色々拡張できる
ある程度作ってみると、色々機能を追加したくなってきます
- お気に入りのRSSをフォルダで管理したい!
- 気に入った記事をお気に入りに登録したい!
- 登録したお気に入りを削除したり編集したりしたい!
- データの登録をCoreDataでやりたい!
- textfieldの入力から新しくRSSを登録したい! などなど
初めから色々とやろうとすると難しくてハマってしまいますが、基本的な動きを理解してからだと比較的スムーズに理解できるのではないかとおもいます
また、上記の機能は基礎的かつ重要な技術なので初心者脱出にはうってつけです!多分!
終わりに
いかがだったでしょうか? アプリ作ろうと始めてみても「こんなことやってて何になるんだろう・・・?」みたいに悩んでしまうこともありますが、「この技術をどう使おうか」って考えてみたり動くものを作ってみるとモチベーションもあがります!ぜひお試しくださいませ!