アプリは、どうやって動くの? プログラムって何?――初めてiPhoneアプリを作る人向け基礎知識まとめ初心者のためのSwiftで始めるプログラミング入門(1)(2/3 ページ)

» 2015年02月26日 18時00分 公開
[諏訪悠紀アンダースコア]

アプリは、さまざまな“動作”をしている

 「アプリ開発」()を知るための一番の方法は、「アプリを使ってみる」ことです。

アプリケーションソフトウエアを作ることは、「開発(development)」と言われることが多いので、以降「開発」と表現することもあります。

 ここで、あらためて自分が普段使っているアプリを動かし、その動きを観察してみましょう。実にさまざまな“動作”をしていることが分かると思います。例えば、次のような感じです。

  • メッセージや画像が表示される
  • 音楽(BGMや効果音)が流れる
  • ボタンをタップすると画面が変わる
  • フリックやキーボードで文字が入力できる

 アプリの動作について、もう少し細かく見てみましょう。例として「ボタンを押したらメッセージが表示される」という動作について考えてみます。アプリを使っていると、よく見かける動作です。

ボタンを押したらメッセージが表示される動作

 このような動作をするために、アプリの中では次のような「処理」がiPhoneの中にあるコンピューターで働いています。

  1. ボタンがタップされたことを検知する
  2. ボタンがタップされたときに動かす処理を実行する
  3. 画面上にメッセージが現れる

 アプリ開発では、このようなある動作をさせるための処理を1つずつ作っていきます。このような動作を作っていくことが、アプリを作る上で中心となる作業です。

絵文字も使える?! 「プログラム」って、何?

 では、この「アプリの動作を作る」という作業は実際には、どのように行うのでしょうか? 順を追ってご説明しましょう。

 アプリは「プログラム(Program)」でできています。プログラムとは、「アプリがどのように動作すれば良いかコンピューターに伝えて理解してもらうための文書」です。また、プログラムを書くことを「プログラミング(Programming)」と言います。

 プログラムとは一体どのようなものなのでしょうか? ちょっと覗いてみましょう。

let message = "こんにちは!"
self.say(message)
プログラムの例

 アルファベットが多く、難しそうなイメージですね。では、もう少し分かりやすく書き換えてみましょう。iPhoneアプリ開発では、次のように“絵文字”を用いることもできます。

let 📄 = "こんにちは!"
😄.say(📄)
絵文字を使ったプログラムの例

 絵文字だと、この記事を見ている“環境”(PC/スマホの種類、OS、Webブラウザーの種類)によって違う絵文字が表示されたり、絵文字になっていなかったりするかもしれませんので、下記に画像も掲載しておきます。

絵文字を使ったプログラムの例(画像)

 ちょっとだけ親しみやすくなったのではないでしょうか? 上記のように、使っている“環境”によって表示が左右されてしまうので、実際には絵文字を使ってプログラミングするのは難しいかもしれません。しかし自分が理解しやすいように書いてみることも、プログラミングを学ぶ上ではとても大切なことなのです。

 とはいっても、プログラムは、ある“決まり”に従って書かなければコンピューターが理解することができません。この“決まり”のことを「プログラミング言語(Programming Language)」と言います。アプリを開発するためにはプログラミング言語の“決まり”(文法・構文)を覚える必要があります。

 世の中にはさまざまなプログラミング言語が存在しており、毎年のように新しい言語が生み出されています。

iPhoneアプリ開発で使うプログラミング言語「Swift」とは

 iPhoneアプリ開発では、「Swift(スウィフト)」または「Objective-C(オブジェクティブシー)」というプログラミング言語でプログラムを書くのが一般的です。

 Swiftは昨年(2014年)生まれたばかりの比較的新しいプログラミング言語です。文法・構文がシンプルで読みやすいプログラムが書けるという特長があります。プログラミングをこれから始める人にとって、非常に取り組みやすい言語といえるでしょう。

 この連載ではSwiftを使ったプログラムの書き方を基礎から解説していきます。初めのうちは難しく感じることもあるかもしれませんが、書き方を一つ一つ理解していけば、すぐに読み書きできるようになります。少しずつステップアップしながら覚えていきましょう。

Copyright © ITmedia, Inc. All Rights Reserved.

スポンサーからのお知らせPR

注目のテーマ

Microsoft & Windows最前線2025
AI for エンジニアリング
ローコード/ノーコード セントラル by @IT - ITエンジニアがビジネスの中心で活躍する組織へ
Cloud Native Central by @IT - スケーラブルな能力を組織に
システム開発ノウハウ 【発注ナビ】PR
あなたにおすすめの記事PR

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。