【アプリ開発】最低限知っておきたい基礎知識
アプリとは
こちらのサイトをご覧になっているということは、すでにご存じとは思いますが、アプリとは、正式には「アプリケーション」と呼ばれるもので、OS上にインストールして利用するソフトウェアのことです。 スマートフォンはもちろんパソコン・タブレットを使って操作をする際は、アプリケーションを起動して作業をしています。
アプリ開発の種類
①Webアプリ
インターネットのChromeやSafariといったブラウザ上で動くものを指します。ポイントとしては、PCやスマートフォンで特定のURLにインターネットを通して接続するため、アプリをダウンロードすることなくWebブラウザ上でそのまま使うことができます。
②ネイティブアプリ
AndroidアプリやiOSアプリといった、スマートフォンにダウンロードして使うアプリケーションを指します。その為、ネイティブアプリを使用したい時はApp storeやGoogle Play経由でインストールする必要があります。
③ハイブリットアプリ
Web上でも端末上でも操作することのできるアプリケーションのことを指します。先述したWebアプリやネイティブアプリの性質を持っています。
一口に「アプリ」といっても、このような種類があります。 その中でも今回は②のネイティブアプリ、スマートフォン向けのアプリ開発についてお話ししていきたいと思います。
オペレーティングシステムの選択
オペレーティングシステムとは、アプリやデバイスを動作させるためのソフトウェアで、OSと略されます。 OSは、主に「iOS」「Android」に分かれています。
①iOS
アップル社が開発、提供しているOS
②Android
Google社が提供しているスマートフォンやタブレットに代表されるモバイル機器向けのOS
どちらのOS向けにアプリを作りたいかで、必要なプログラミング言語が変わります。
プログラミング知識の習得
こんなアプリが作りたい!となったときに必要なのが、プログラミング言語のスキルです。 OS別の主な使用言語は以下の言語です。
①iOSアプリ
Swift
Apple社が発表したオープンソースのプログラミング言語です。後述するObjective-Cと比較されることが多いのですが、コードの記述しやすさ、アプリやシステム構築をしやすく改良された比較的新しい言語です。今後需要が高まることが予想されています。
Objective-C
C言語を基に開発されたプログラミング言語です。主にアップルのiOSアプリを開発する目的で使用されます。Swiftが主流となった今でもObjective-Cで記述されたiOSアプリは多く存在しています。
②Androidアプリ
Java
世界的に幅広く使われているプログラミング言語です。 特徴としては、OSに関係なく動作するので、汎用的に使用することができる点です。また動作は、OSに関係なく動きますが、主にAndroidアプリで使用されます。
Kotlin
Androidアプリ開発に使用され始めて日が浅く、2017年ごろから開発に使用されはじめたプログラミング言語です。 Kotlinの特徴としては、簡潔なコードの記述ができる点や、開発において安全性の担保をしやすい点などが挙げられます。
上記でお伝えしたように、比較的メジャーになりつつあるのは、iOSアプリであれば「Swift」、Androidアプリであれば「Kotlin」だと言えますが、幅広い知識を持っておくことは大切です。
アプリ開発ツール
上記の言語と併せて使用するのが、アプリ開発ツールです。 こちらもOSにより使用するものが異なります。
①iOSアプリ
Xcode
Apple社が開発しているアプリ開発ツールです。初心者でも使いやすく、開発したアプリのテストなども行うことが出来ます。Swiftを用いた開発でよく用いられるメジャーなツールです。
②Androidアプリ
Android Studio
Googleが提供しているアプリ開発ツールです。Androidアプリの開発では基本的にこのツールを使用し開発を進めます。
比較的簡単なアプリ開発ツール
先ほど、アプリを作るにはプログラミングの知識習得が必要とお話しいたしましたが、実は、プログラミングの知識が無くても、簡単なアプリであれば作ることができるツールもあります。 これは、すでに用意されているプログラムを使う事によって、お手軽にアプリを開発できるツールです。
全くプログラミングの知識が無くてもアプリを作成できるものもあるので、「簡単なアプリをすぐ作りたい!」という方にはうってつけのツールかと思います。ここでは詳しい部分の説明は割愛いたしますが、気になった方はぜひ調べてみてください。
まとめ
どんなものを作りたいか、そして、作るために必要な知識の習得をする。 つまり、アプリでいえば、簡単なアプリでなければ必要な知識として
- ・プログラミング言語
- ・アプリ開発ツール