なぜ、いざ自分でコードを書こうとなると何も書けないのか
Swift学習を開始してから17日ほどが経過した。
現時点でやったこと
//書籍の内容理解,コードなぞり
//Udemy講座半分まで
【6日で速習】iOS 11 Swift 4アプリ開発入門決定版 20個のアプリを作る
簡単に言うと、文法を覚えてコードをなぞってアプリを作った。
いざ自分で作ろうとする
しかし、動画や参考書といったガイドラインを失ってしまうと何も始められない、なにからすればよいのかわからない。
例として、電卓のアプリを作ろうとしたがStory board上にレイアウトを作成した段階で自分でできることは終わったなと感じた。
なぜ自分でできないのか
考えられる要因
1.文法は理解できているが、そもそも開発を行う時の組み立て方がわからない
(swiftというよりプログラミング全般の問題)
2.文法がきちんと理解できていない
(型キャスティングやデレゲートなど、理解しているようで使う場面や必要性がわかっていないのでは?)
3.swift上で使うクラスの使用法の調べ方がわからない
(機能を実装するための部品が見つけられない、検索能力がない)
(英語力の問題なのか、Swiftの内容理解が足りないのか)
要因に対する解決策
1.開発の流れがわからない
これはSwiftなどのプログラミング言語の問題ではなく、プログラムを作ること全体に通ずるものだと考える。
まずは書籍に書いてあるソースコードなどから以下の内容を汲み取り、紙に書き出してみる。
1.簡易的な文章で、実装したいプログラムの流れを書く(人間だったらどうするか)
2.コンピュータも理解できるような手順を文章で書く
3.必要なデータ(要素)を書き出す
4.1-3を元にフローチャートを書く
参照:
2.文法がきちんと理解できていない
今回の場合における「理解できていない」は、「使い所がわからない」という言い方のほうが正しいと感じる。
すなわち、わからない文法に出くわしてしまった時は、なぜそれを使ったかを文章にして考える必要がある。
課題1:delegateを使用する理由についての記事を1つ書く
課題2:なぜここでこれを使うのか理解できないものをピックアップして記事を書く。
3.部品を探す能力(検索能力)
ちょっとこれどうすればいいのかわからないので優しいそこのあなたアドバイスくれてもいいのよ!
4.Appleが何をいってるかわからない
英語を読める人はSwift開発とてもイージーになると思います。なぜならXcode搭載の便利な機能の説明はほとんどAppleDeveloperに書いてあるから!
AppleDeveloperから汲み取らなくてはいけない内容は、例としてクラスをあげると
- プロパティとその用途
- このクラスの用途
- 用意されているメソッドとその用途
- メソッドの引数
など、結構限られていることがわかります。慣れていけば、どこに何が書いてあるかわかるようになるのかしら!現在Swiftを用いてアプリ開発している人はぜひどうやって情報を得ているのか教えてください!お願いします!
まとめ
自分でコードが書けない理由は
swiftより前の段階でできていないことだらけだから
先走らず基礎から固めていきましょ。
*1:文体がぐちゃぐちゃすぎる