ITエンジニアは何を作る人?
ひとくちに「ITエンジニア」「プログラマー」と言っても、作っているものは人によって大きく違います。 このレッスンでは、そのソフトウェアが「どこで動くか」という視点で、作るものの種類を整理します。
1. 全体マップ:「どこで動くか」で4つに分ける
ソフトウェア(アプリ)は、動く場所によって大きく次の4種類に分けられます。 動く場所が違うと、使うプログラミング言語・開発ツール・届け方(配布方法)・気をつけることが変わります。
Webアプリ
ブラウザ(Chrome・Safariなど)で動く。インストール不要。
詳しく →モバイルアプリ
スマホ・タブレットで動く。iOS と Android がある。
詳しく →組み込みアプリ
家電・自動車・機械などのハードウェアの中で動く。
詳しく →デスクトップアプリ
パソコン(Windows / Mac)にインストールして動く。
詳しく →2. Webアプリ
ブラウザでURLを開くと使えるアプリです。ユーザーはインストール不要で、パソコンでもスマホでも同じものを使えます。 作り手は大きく「画面側」と「裏側」に分かれます。
- 身近な例:ネットショップ、ネットバンキング、Gmail、YouTube(ブラウザ版)、勤怠管理・経費精算などの社内システム
フロントエンド(画面側)
ユーザーが見て操作する画面を作ります。ボタン・入力フォーム・レイアウト・見やすさや使いやすさを担当。
バックエンド(裏側・サーバー)
ログイン、データの保存・検索、計算、メール送信など、画面の裏で動く処理を作ります。
インフラ(土台)
アプリを動かすサーバー・ネットワーク・データベースを用意し、止まらないように運用します。最近はクラウドが主流です。
Webアプリの特徴
- 更新が簡単:サーバー側を更新すれば、全ユーザーに即座に反映される(ユーザーのアップデート作業は不要)。
- どの端末でも使える:ブラウザさえあれば OS を問わない。
- 苦手なこと:ネットにつながっていないと基本的に使えない。カメラやセンサーなど端末の機能は使える範囲が限られる。
3. モバイルアプリ(iOS / Android)
スマートフォンやタブレットにインストールして使うアプリです。スマホの OS(基本ソフト)には iOS(Apple の iPhone / iPad)とAndroid(Google ほか各社のスマホ)の2つがあり、 原則としてそれぞれ別々に作る必要があります。
- 身近な例:LINE、各種ゲームアプリ、銀行アプリ、交通系アプリ、フードデリバリーアプリ
iOSアプリ
iPhone / iPad 向け。
- 開発に必要なもの
- Mac(Xcode は Mac でしか動かない)
- 配布方法
- App Store(Apple の審査あり)
Androidアプリ
Android スマホ / タブレット向け。メーカー・機種が多いのが特徴。
- 開発に必要なもの
- Windows / Mac / Linux いずれでも可
- 配布方法
- Google Play(審査あり)
クロスプラットフォーム
1つのコードから iOS と Android の両方を作る方法。開発コストを抑えられる。
- 注意点
- OS 固有の細かい機能は個別対応が必要になることもある
モバイルアプリの特徴
- 端末の機能をフル活用:カメラ・GPS・プッシュ通知・Bluetooth・生体認証などが使える。
- オフラインでも動かせる:端末にプログラムが入っているため。
- リリースに時間がかかる:ストアの審査があり、ユーザーにアップデートしてもらう必要がある。
- 裏側は Web と同じ:データの保存やログインは、多くの場合 Web と同じようなサーバー(バックエンド)とやりとりしている。
5. デスクトップアプリ
パソコン(Windows / Mac)にインストールして使うアプリです。最近は Web アプリに置き換わるものも増えていますが、 高い処理性能が必要なソフトや、社内の業務端末で使うソフトでは今も多く使われています。
- 身近な例:Excel・Word、Teams・Zoom(PC版)、Photoshop、会計ソフト、工場や店舗の専用端末のソフト
6. 比較表
| 種類 | 動く場所 | 主な言語・技術 | ユーザーへの届け方 | 更新のしやすさ | 身近な例 |
|---|---|---|---|---|---|
| Webアプリ | ブラウザ + サーバー | HTML / CSS / JavaScript、Java、PHP、Python など | URLを開くだけ | ◎ サーバー更新で即反映 | ネットショップ、社内システム |
| モバイルアプリ | スマホ・タブレット(iOS / Android) | Swift(iOS)、Kotlin(Android)、Flutter | App Store / Google Play | ○ ストア審査 + ユーザーのアップデート | LINE、銀行アプリ、ゲーム |
| 組み込みアプリ | 家電・機械などのハードウェア | C、C++、組み込み Linux | 製品に搭載して出荷 | △ ファームウェア更新が必要(できない機器も) | 炊飯器、自動車、IoT機器 |
| デスクトップアプリ | パソコン(Windows / Mac) | C#、C++、Electron | インストーラー・ストア | ○ ユーザーのアップデート | Excel、Zoom、会計ソフト |
7. 実際のサービスは「組み合わせ」でできている
世の中のサービスの多くは、ここまでの種類を組み合わせて作られています。 例として、フードデリバリーサービスを分解してみましょう。
(iOS / Android)
運営会社の社内管理画面
8. 確認クイズ
次のソフトウェアはどの種類でしょう? 選択肢をクリックしてください。
Q1. スマホの Safari で開いて使うネットショップ
Q2. 炊飯器の「炊き上がりまであと○分」の計算と火加減の制御
Q3. App Store からダウンロードした家計簿アプリ
Q4. 工場の機械に取り付けて、温度データを自動でクラウドへ送る装置のソフト
Q5. パソコンにインストールして使う Excel
まとめ
- ソフトウェアは「どこで動くか」で、Web・モバイル・組み込み・デスクトップに分けて考えるとわかりやすい。
- Webアプリはブラウザで動き、フロントエンド・バックエンド・インフラに役割が分かれる。
- モバイルアプリは iOS と Android で作り方が違い、ストアを通じて届ける。
- 組み込みアプリはハードウェアの中で動き、リソースの制約と高い品質が求められる。
- 実際のサービスは、これらを組み合わせて作られている。