Swift Playgroundsで学ぶiOSプログラミング 第10回
タッチ操作でプログラミング言語「Swift」を学べる注目アプリ
iPad版Swift Playgroundsはダウンロードしないと損
2016年10月17日 17時00分更新
次に「チャレンジ」で腕を磨く
Featuredにあるブックのうち、Challengesのエリアにあるものは、順を追って学ぶプログラミングコースというよりも、サンプルプログラム的な性格が強いものとなっています。とは言え、与えられたプログラムを読んでみたり、動かしてみるだけでなく、学習者がプログラムの一部を変更して、その結果がどのような動きになるかをその場ですぐに確かめられます。これこそがSwift Playgroundsの強みです。
例えば、「Blink」は、昔からよくある「ライフゲーム」の一種です。ライフゲームとは、周囲に他の生物がいるかどうか、といった単純な条件によって、生物の繁殖、絶滅をシミュレーションするものです。このブックでは、その生物がどのような条件で繁殖するか、という基本的な部分のプログラムを修正して、結果の違いを吟味できるようになっています。
考えてみればすぐにわかることですが、LEARN TO CODEシリーズよりもかなり簡素な画面になっているとはいえ、iPadの画面の右側を占めるグラフィックが、それほど単純で短いプログラムで実現できるはずはありません。実はブックには、通常は見えないところに大量のプログラムが隠れているのです。LEARN TO CODEが常に表示している3Dのゲーム風の盤面も、もちろんそうしたユーザーからは直接見えないプログラムによって実現されています。
隠れたプログラムを見る方法がないわけではありません。左側のコード領域の上辺の右端にある「…」ボタンをタップしてみましょう。「Tools」というメニューが現れます。そのいちばん下の「Advanced」をタップすると「View Auxiliary File」つまり外部ファイルを見るという項目があるので、それをタップします。
すると、ブックのパッケージの中身を見るブラウザーのような画面に切り替わります。これはmacOSで、アプリのアイコンなどを右ボタンクリックして「パッケージの内容を表示」を選ぶようなものだと思ってください。この中には、ブックそのものの内容だけでなく、そこから利用する多くのSwiftソースコードが含まれています。
それらのプログラムを読み込めば、かなりの勉強になることは間違いありません。しかしそれはSwift Playgroundsが、利用者として想定するユーザー(学習者)に期待していることではありません。その内容は、iOSやmacOSのアプリ開発に匹敵するレベル、部分的にはそれ以上に高度な内容を含んでいます。Swift Playgroundsの期待ユーザーレベルと、その外部コードのギャップを埋めるのは容易なことではないでしょう。それをSwift Playgroundsのブックによる学習で埋めることは不可能だとは言わないまでも、かなり困難な気がします。
この連載の記事
-
第100回
ASCII倶楽部
SceneKitの物理現象シミュレーションとアニメーションをARKitに持ち込む -
第99回
ASCII倶楽部
「物理学体」と「物理学場」を設定して物理現象をシミュレーション -
第98回
ASCII倶楽部
SceneKitのノードに動きを加えるプログラム -
第97回
ASCII倶楽部
いろいろな形のノードをシーンの中に配置する -
第96回
ASCII倶楽部
SceneKitの基礎シーンビュー、シーン、ノードを理解する -
第95回
ASCII倶楽部
現実世界の床にボールや自動車のモデルを配置する -
第94回
ASCII倶楽部
ARKitを使って非現実世界との融合に備える -
第93回
ASCII倶楽部
ARKitが使えるiPadを識別するプログラム -
第92回
ASCII倶楽部
Swift Playgrounds 2.1での問題点をまとめて解消する -
第91回
ASCII倶楽部
iPadの内蔵カメラで撮影した写真を認識するプログラム -
第90回
ASCII倶楽部
写真に写っているモノを認識するプログラム - この連載の一覧へ