リブートキャンプ by Swift 目次

 

 テッテレー♪

 前回紹介したIBMのSwift環境は、数多あるSwift入門サイト(Swift 入門 で検索しよう)のサンプルコードを試すことができます。

  しかも、iPhoneのSafariでも使えるので、電車やバスの中、休息中の公園、図書館、あらゆるところでSwiftプログラミングの学習ができるわけですよ。

 ノマド学習!

 

「え、違いますよ~、やだなあ。私もスタバでドヤ顔してみたーい(はあとまーく)」

「ネトゲ廃人がスタバとかマジ笑う」 

 

 ↓例えば、こんな感じ

 

 

 

 こいつはラノベ本に書かれているプログラム、1〜10の総和の縮小版、1〜2の総和ってことになります。何やってるかは、以下を読むべし。

 読んだ後は1〜10の総和を自分で書き込んで試すべし!

 ちなみにIBMのSwift環境は、iPhoneからだと日本語入力できません。なので、文中に出てくるメモを日本語で書くことはできない。そこんとこは諦めるように。

 

ラノベ本の原型から抜粋(102ページ〜部分に相当)


 

 書きながら間違いを確認でき、対話形式で学習ができるわけだ。 例えば、1から10までの数の総和を計算させるプログラムなら、こんな風に書く。  

 最初の1行は無くてもいい。 この1行は、このプログラムを説明しているメモで、コンピュータの振る 舞いには影響しない。 

 役者さんが、台本にメモを書き込むのに似ている。 Swiftには、こんな風にコンピュータの振る舞いとは関係ない文章をプロ グラムコード内に残せる仕組みが用意されている。 振る舞いに影響は及ぼさないが、メモが効果的なのは間違いない。誰が見 たって「これって1から10までの総和のプログラムなんだ」ってなる。

 

§

 実際のプログラムは次の一文から始まる。

 

変数宣言

 

 変数宣言とは記憶容器を用意する一文。

 1から10までの数の総和を計算させるには、整数を記憶し、1を足すと1増 え、2を足すと2増える記憶容器が必要だ。 このような記憶容器は、変数と呼ばれ、varというキーワードで用意される。 変数は必要なだけ用意できるので、プログラマが変数ごとに呼び名をつけ る。ここでは総和を記憶するのでtotalと名付けた。 

 

 

 以後、totalという変数が利用できるようになる。 この時点でのtotalに記憶されている値は1。 この一文を変数宣言という。

§

その次の行が、変数totalの記憶値に2を加算する動作の記述。この記述は演算式とも言う。

 

演算式 

 

 

 演算式を記述どおり実行すると、変数totalの記憶値は3となる。そんな 演算式が10行並んでいる。 

 

 

 変数totalを用意し1を記憶させ、その記憶値に、2、3、4、...と値を加算 しているわけだ。 

 

 最後の行では、10まで足し終わった変数totalの記憶値を結果画面に表示 させている。 

 printは受け取った値を結果画面に表示する関数。 

関数

 Swiftの関数も、数学で使う関数も、なんらかの機能を提供するという点 では同じだ。
 数学で使われる関数は、こんな感じ。 

 

 これで数式中に、f(1)と書けば2を意味するし、f(2)と書けば5を意味する ことになる。関数fはx2+1を計算するという機能を提供しているわけだ。

 Swiftでも、関数名の後ろの ( ) の中に、渡したい引数を書くことで、 その関数の機能を利用できる。 

 

 受け取った値を元に、特定の計算式で新しい値を計算するのが数学の関数 なら、受け取った値を元に何かアクションを起こすのがSwiftの関数。

 print関数が提供する機能は、受け取った引数の値を結果画面に表示する ことなので、これで変数totalの記憶値を結果画面に表示することになる。

 こんな風に関数の機能を使うことを、関数を呼び出すと表現する。 print関数を呼び出し、変数totalの記憶値を画面に表示させたわけだ。 

 

 以上で1から10までの数の総和を計算させ、結果を画面に表示させるプロ グラムを書いたことになる。

 ただし、あまりスマートなプログラムとは言えない。

 想像してみて欲しい。このやり方で10,000までの総和を計算させるプログ ラムを書いてる自分の姿を!

§

 そんな写経のような作業を回避するために、たいていのプログラム言語に はループ文が用意されている。 

 


 

 というわけで、ループ文は次回!

 

 
AD