徒然エンジニアブログ

徒然エンジニアブログ

理系東大生がプログラミングを中心に様々なことについて情報発信していきます!

【Swift】アプリ開発初心者の私が1ヶ月でアプリを作れるようになったオススメの勉強法

今回は私がアプリを作れるようになるまでにしたことを全部話して行きたいと思います。


iPhoneアプリを作ってみたいけど何をしたらよいかわからないという人はぜひ参考にしてみてください。
一度挫折して諦めた時期もあるので今つまづいてる人は特に参考になるかもしれませんw

時系列でやったことを書いて行きたいと思います。

アプリを作ろうと思った時のプログラミング経験

一番最初にSwiftでアプリを作ろうと思った時は大学の授業でC言語Pythonをやったことがある程度でした。
C言語でターミナルで遊べるオセロを作ったりしていました。

一番最初に買った本

そんな中プログラミングを用いて何かを作ってみたいということでアプリを作ろうと思いました。
Swiftはやったことがないので本を買って勉強することになりました。

その時に買った本がこちらです。

iPhoneアプリ開発講座 はじめてのSwift

iPhoneアプリ開発講座 はじめてのSwift

この本は全編カラーでXcodeのインストールの方法から、Swiftの文法の解説、最後には模擬アプリの作り方まで載っていてとても役に立ちました。

全ページカラーで画面のスクリーンショットなども豊富に乗っているので初心者の方にはよりオススメできます!

クラスという概念で挫折

先ほど書いたようにプログラミング自体は結構やっていたので序盤の変数や配列などは軽くクリアできました。
オプショナルなどはSwiftに特有のもので最初こそ戸惑いましたが何回も説明を読み実際にコードを書いてみることでなんとか理解しました。


つまずいたのはクラスの概念です。
C言語にはクラスという考え方はありません。PythonにはありますがPythonC言語ほどはやっていないためつまづいてしまいました。


それでも何度か読むうちに継承などの部分部分は理解できました。
しかしながらクラスという考えをアプリを作る時にどのように活かすのかがわかりませんでした。
ここで一旦アプリの開発を断念しましたw

Unityでクラスの概念を理解した!

一旦Swiftを諦めた私ですがこの頃新たにUnityでゲームを作り始めました。

Unityにももちろんクラスという考えはあります。
しかしゲームで実際の動きが見てわかるということもありUnityでゲームを作ることを通してクラスというものを理解して行きました。

皆さんももしクラスという考えに戸惑ったらunityをしてみるのもいいかもしれませんw

もう一度Swiftで青売りを作ろうと決心する

クラスの概念を学んだ私はもう一度Swiftを学びなおそうとしました。

前と同じ本でもいいのですがより詳しいものでより深く勉強したいと思い別の本を買うことにしました。
それがこちらの本です。

この本は先ほど紹介したものよりは上級編という感じでとにかくいろいろ乗っています。
今でも何かあったらこれを見てみるほどです。

このように辞書のような使い方もできるのでオススメです。

実際にアプリを作ってみる

一番最初に紹介した本にも模擬アプリは乗っていますが比較的簡単なものが多かったです。
本格的なものを一回作ってみたいと思いyoutubeで勉強することにしました。
その時使ったのがこちらです。


Swift: Firebase 3 - How to Build a Login Page Using iOS9 Constraint Anchors (Ep 1)


この動画はFirebaseを用いてチャットアプリを作るというものです。
ログイン機能などもある本格的なものです。

全25回あって一つ一つも30~60分あるので終わらせるのは結構しんどいですがかなりの力がつきます。
一部今と違う書き方とかも出てきましたがググれば出てきます。

私がstoryboardを使わなくなったのもこの動画の影響ですw
こちらの記事に詳しく書いてあるのでみてみてください。
turedureengineer.hatenablog.com

これをみながらアプリを作った後はもう大体のものは作れるようになりました。

終わりに

今回私がアプリを作れるようになるまでにしたことを全部書いてきました。
ぜひ一度アプリ開発につまずいた人やこれから作ってみたい人は頑張って行きましょう!