私はテクノロジー出版業界に 25 年間携わっていますが、だからといって私がプログラマーになるわけではありません。テレビでフットボールを四半世紀見続けた人がクォーターバックになるのと同じです。
コードは私のアキレス腱です。数式に近いと吐き気がします。コードが理解できないわけではありません。高校生の頃、私は幾何学の達人でしたが、化学と三角法でひどくつまずいてしまいました。同様に、私は夏の間 BASIC を学び、信じられないほど単純なプログラムをコーディングしました。 HTML にも取り組んだことがありますが、JavaScript に関しては、いくつかのことはできましたが、ほとんどすべて、他のサイトからコピーして変更したコードに基づいていました。
実際のプログラミングやコードは私を困惑させ、恐怖させます。
数年前、Apple は、より深い Xcode プログラミングのための一種の単純なゲートウェイドラッグとして Swift プログラミング言語を導入しました。これは、形式言語による実際のアプリの基礎となる可能性があります。
WWDC 2014 のスクリーンにコードの一部が表示されたのを初めて見たとき、なんとなく理解できたような気がしました。いくつかの単語と構造を認識しました。
だからこそ、表向きには、Apple の新しい無料コード トレーニング アプリ Swift Playgrounds は、私やよりアジャイル志向の学生向けであるはずです。最近の iPhone 7 の発売中に、Apple は、コード トレーニング、特に Swift コード トレーニングを学校やカリキュラムに取り入れやすくすることを目的とした教育的取り組みである、Everyone Can Code も導入しました。プレイグラウンドはそのプログラムの重要な部分です。
「基本」から始めることをお勧めします。 クレジット: Apple
火曜日、Apple は App Store に Swift Playgrounds を追加しました。私はこの iPad ベースのコード スクールに 1 週間没頭してきました。
今、Swift Playground のレッスンプランを見つめていると、自分が半分正しかったことに気づきました。はい、Swift について本質的に知っていることはありますが、コード理論の飛躍がまだあり、私の頭ではそれを実現するのに苦労しています。
もちろん、これはおそらく私だけです。
コードの内部
Swift Playgrounds は、部分的にはまさにその通りで、さまざまなコマンド、呼び出し、コードのバリエーションを繰り返し試して、面白いアニメーションを何度も推進できるコーディング プレイグラウンドです。本質的に、あなたはここでの暗号解読者であり作成者です。
そして、それを iPad 上で実行しているのですが、このプラットフォームはコードを作成するのではなく、コードの結果を利用する場所として一般に考えられています。
授業計画を先に進めることもできますが、途中で迷子になることを覚悟してください。 クレジット: Apple
プログラミング言語として、Swift は非常に単純に始まります。 クレジット: Apple
Fundamentals of Swift と呼ばれる基本的なレッスン プラン (当然、Beyond the Basics と呼ばれる 2 つ目のプランもあります) は、画面の左側にコードがあり、右側にほぼすぐに動かされるアニメーション環境が表示されるように設定されています。コードによってリアルタイムで。各レッスンでは、Swift コードの基本的な部分を 1 つ教えるように設計された課題が提供されます。コードを変更したり、事前に構築されたゲームやアプリの機能を変更したりできるいくつかのチャレンジを試すこともできます。まばたき。まばたきはシンプルなグリッド -- ほとんどマインスイーパー スタイルのゲーム -- 周囲の立方体が立方体クラスター内に持つことができる種類の色の立方体に影響を与えます。 Apple は、これらの課題を今後さらに追加する予定です。
マッシュ可能な光の速度
ただし、基礎を理解すれば、簡単にコードを作成できます。それはコマンドと、Swift コマンドが記述されるスタイルから始まります。このレベルでは、コマンドは英語の単語を使用し、明確で一貫したパターンに従います。さらに、iPad の仮想キーボードと QuickType の候補は、文字を入力し始めるとすぐに最も近い最適なコード オプションを提供します。たとえば、「t」と入力すると、「turnLeft ()」が表示されます。これは当然、左折コマンドです。 「m」を入力すると「moveForward」が表示されます。コマンドのいずれかをクリックして追加します。
私を見てください、私はコードを書くことができます。 クレジット: Apple
驚いたことに、そしてうれしかったことに、私は一連のコマンドのレッスンをあっという間に理解することができました。アニメーション キャラクターの Byte (3 つのアニメーションの変わり者から選択できます) を運転して前進するたびに、スイッチを切り替えて、正しい順序で、または少なくともアプリが満足するまで宝石を収集します。これは私の進歩を応援するでしょう。
さらに深くなる
Functions では、これらのコマンドやタスクをグループ化できるため、少し複雑になります。関数とそのすべての埋め込みコマンドをプログラムの先頭で定義していることを理解するまでに、しばらく時間がかかりました。その後は、以下の関数を呼び出して、必要なだけ繰り返し一連の処理を実行します。関数の合間に、「moveForward ()」などの小さなコマンドを使用して、より複雑な骨を結合する軟骨のようなものとして、これらのグループを結び付けました。
正直に言うと、私はこの単純な事実に 30 分ほど困惑しましたが、Swift Playgrounds はまったく役に立ちませんでした。理由の 1 つは、コードを作成し、コンパイル (「プログラムの実行」を押すだけで完了) し、Byte が実行されるのを観察しながら、何度も何度も実行することができ、場合によっては、不適切に作成されたコマンドにつまずいてしまうためです。 Byte がアクションを実行しているまさにその瞬間に実行されている正確なコマンドを強調表示しません。これは、コードをデバッグしようとする私にとって非常に貴重なものでした。
物事は急速に進み、関数やループなどのより複雑なプログラミング構造に移行します。 クレジット: Apple
このコードの課題を解決するために、独自の関数を作成し、名前を付けたと誇りを持って言えます。 クレジット: Apple
これを回避するために、コードのチャンクの間にスペースを追加して、コードに関連して Byte が何を行っているかを追跡できるようにしました。これは、関数からループまでやり遂げるのに役立ちました。その後、Loops の最初のレッスンを何とか 1 回で解決しました。正直、1分ほどかかりました。
Swift Playground を使用すると、コードをどこまでも自由に使用できるようになります。最初のレッスンはアルゴリズムにまで踏み込んでいますが、私は怖くなりました。
ただし、「Beyond the Basics」を理解できれば、Playgrounds を使用して iPad のセンサーとカメラにアクセスするコードを書くこともできます。また、独自のビジュアル アセットをインポートしてプログラムすることもできます。これだけで、コーディングに対する不安を克服するのにほぼ十分です。
私が何を選択しても、システム全体が自動で操作し、好きなだけ飛び回れるように設計されています。必要に応じて、プログラムの再生を加速することもできます (Byte はタスクをかなりゆっくりと移動するため、実行する価値があります。ここでは再生速度スライダーが役立ちます)。ただし、これを行う場合の問題は、私がそうであったように、先に進んでしまうと道に迷ってしまうことです。それでも意味をなすものもあれば、理解できないものもあります。コードの学習には忍耐が必要です。だからこそ、アニメーション プログラム プレイグラウンドは非常にスマートです。プログラミングの学習を一連のパズルやゲームに変えます。学びたいという欲求は、パズルを解きたいという欲求によって動かされます。
夜明けの認識
Swift Playgrounds で過ごす時間が増えるほど、このプレイグラウンドはまさに私のような人だけでなく、コードを書きたいと考えている子供やあらゆる年齢の人々向けに書かれていることがわかりました。
コーディングが快適だと感じたことは一度もありませんし、学んだことが脳の隠れた隙間に根付いているとも言えません。そこから半日離れると、途方に暮れたように感じます。ただし、それは完全に真実ではありません。パターンが見え始めています。そして今、昔の HTML と JavaScript のコーディング時代のことを思い出しました。
最初は私も混乱して途方に暮れましたが、まったくの繰り返しと大量の試行錯誤を通じて、最終的には HTML の専門家になり、JavaScript の少なくとも 60% を快適に扱えるようになりました。
まもなく、パターンをネストすることになります。これらの課題の 1 つを解決すれば、コーディングチャンピオンのような気分になれます。 クレジット: Apple
それが Swift Playgrounds があなたに求めていることです。コードを何度も実行し、面白いアバターのニンジンがコード作成を何度も何度も盛り付け、失敗すると悲しそうな顔をし、成功すると大喜びします。
おそらく、これが私の始まりであり、基本的なアプリをコーディングして Xcode を卒業するのかどうかはわかりませんが (おそらくそうではありません)、基礎的なコーディング スキルをしっかりと学び (または教え) 始めたいと考えている人にとっては、タッチベースの環境である Swift Playground は、始めるのに最適な場所です。
Apple Swift のプレイグラウンド
良いところ
非常に簡単に従うことができます
包括的な
時々面白い
無料
結論
年齢やスキルレベルに関係なく、Swift プログラミングを学びたいなら、これはあなたのための無料アプリです。