この投稿は...
元素について学ぶことができる、コマンドラインインターフェース(CLI)のアプリケーションを開発します。
- アプリケーションの名前は「Elements App」です。
- ボタンや画像ではなく、ユーザーはコマンドラインで操作します。
- ユーザーの名前を入力すると、プログラムが応答します。
- ユーザーは「原子番号から元素を表示するか、ランダムに元素を表示するか」を選べます。
- 元素の説明文を表示したら、アプリケーションは終了します。
このプロジェクトの開発環境は、以下の通りです。
- macOS 14.3 (Sonoma)
- Xcode 15.3
- Swift 5.9
Swiftを基礎から学ぶには
自著、工学社より発売中の「まるごと分かるSwiftプログラミング」をお勧めします。変数、関数、フロー制御構文、データ構造はもちろん、構造体からクロージャ、エクステンション、プロトコル、クロージャまでを基礎からわかりやすく解説しています。
また、Swiftプログラミングを基礎から動画で学びたい方には、Udemyコース「今日からはじめるプログラミング」をお勧めします。
インクリメンタル開発
このプロジェクトでは、インクリメンタル開発 を採用します。
インクリメンタル開発は最初に、それだけで動作する小さな機能を作成することから始めます。
そして、コードのデバッグと動作確認ができたら、次の新しい機能を追加します。
これらの工程を繰り返して開発を進めていくと、最終的に実際のアプリケーションが完成します。
完成したアプリケーションを動作確認して、機能を修正することもできます。
インクリメンタル開発は、途中で動作確認やデバッグを行わずに「全体を一度にまとめて完成させようとする」よりも、優れた手法です。
元素とは
アプリケーションの開発を始める前に、元素について知っておきましょう。
19世紀末に素粒子が発見されるまで、物質の最小単位は原子だと考えられていました。
現在では、原子の中心には「いくつかの中性子と陽子で構成される原子核」があるとわかっています。
原子は「原子核に陽子がいくつあるか」で分類できます。
例えば、陽子が1つだけなら水素原子、陽子が2つあるとヘリウム原子になります。
これまでに118種類の原子が見つかっており、このような原子の種類のことを 元素 といいます。
それぞれの元素は、名前の頭文字をとって 元素記号(element symbol) として表記できます。
例えば、水素(Hydrogen)の元素記号は「H」、ヘリウム(Helium)の元素記号は「He」と表記します。
また、陽子の個数は 原子番号 としても知られています。
元素を原子番号の小さい順に並べると、元素周期表を作成できます。
元素を学ぶことができれば、物理や科学の研究としてだけでなく、一般的な教養としても興味深い知識を得られるでしょう。
ハンズオン
Xcodeでアプリケーションを開発するには、最初にプロジェクトを作成します。
そして、コマンドラインでユーザーとプログラムが対話できることを確認します。
プロジェクトを作成する
新しいXcodeプロジェクトを作成します。
-
Xcodeを起動して、「Create New Project...」を選択してください。
-
作成するアプリケーションの種類を選択します。
macOSのApplicationテンプレートから「Command Line Tool」を選択して、「Next」をクリックしてください。 -
作成するプロジェクトの設定を行います。
「Product Name」にプロジェクト名を「Elements App」と入力してください。
「Source Control」のチェックは外しておきます。
そして、「Language」が「Swift」になっていることを確認してから、「Next」をクリックしてください。 -
プロジェクトの保存場所を選択して、「Create」をクリックしてください。
Xcodeプロジェクトのワークスペースが表示されます。
コードを実行する
コードを書いて、プログラムを実行します。
実行結果を確認する方法も学びます。
-
画面左側のサイドバーは ナビゲータエリア です。
ここで、main.swift ファイルを選択してください。
main.swift は、このプログラムのエントリーポイント(開始点)です。 -
画面中央の エディタエリア で、コードを編集します。
文字列リテラル"Hello World!"
を、以下のように変更してください。print("Welcome to the Elements Illustrated Book!")
-
プログラムを実行します。
そのためには、メニューバーの「Run」ボタンをクリックしてください。(または、⌘+R)
すると、プログラムの実行結果が コンソールエリアに表示されます。
なお、実行結果の最後には「プログラムが無事に完了した」ことが表示されています。Welcome to the Elements Illustrated Book! Program ended with exit code: 0
-
メッセージを追加します。
これは導入パートのメッセージです。print("Welcome to the Elements Illustrated Book!") print("There are 1 element.")
-
プログラムを実行してください。
そして、コンソールに2行のメッセージが出力されることを観察してください。Welcome to the Elements Illustrated Book! There are 1 element.
ユーザーと対話する
ユーザーが入力した名前に対して、挨拶します。
ユーザーの選択に応じたコードを実行して、適切な結果を表示します。
-
プログラムを実行中のユーザーに、氏名を入力するように促します。
「ユーザがコンソールで入力した値」を取得するために、readLine()
関数を使用してください。print("What is your name?") let yourName = readLine()! print("Hi, \(yourName).")
-
プログラムを実行してください。
コンソール上で対話して、「入力された名前に対する挨拶」が出力されることを観察してください。What is your name? Charlie Hi, Charlie.
全体のコード
main.swift
import Foundation
print("Welcome to the Elements Illustrated Book!")
print("There are 1 element.")
print("What is your name?")
let yourName = readLine()!
print("Hi, \(yourName).")
次のステップ
続きは、「【Swift】Xcodeで始めるアプリ開発入門②」で解説。
X(旧Twitter)アカウントのフォローをよろしくお願いします。