【プログラミング】SwiftUIでアプリ作る【1日目】

MacBook Proを購入した。

最近、iPhoneでアプリを作るためにMacBook Proを14万円ほどで購入しました。

 

なぜWindowsのPCでは駄目かというと、iPhoneのアプリは「Swift」というプログラミング言語でしか制作できず、この「Swift」を扱えるのが「MacBook」などのiOSだけだからです。

 

ぶっちゃけ「MacBook Air」を買えば安く済むのですが、プログラミングの処理の実行には性能の高い「MacBook Pro」の方が良い。とネットでも量販店の店員さんにも言われたので、処理関係でモチベが落ちる方が嫌だと思い、この際だと思って高い「Pro」を購入しました。

 

さて、何はともあれ14万円という買い物は一大学生にとって非常に大きなものですので、自分の尻を叩きながら当面のモチベを保っていきたいと思っております。

 

XcodeをAppStoreからダウンロードした。

Macを触るのが初めてだったので少々手間取りましたが、iPhoneと同じくAppStoreがホームにあるので、そこからアプリ開発のために「Xcode」をダウンロードします。なんとこのXcodeだけでアプリが作れるらしいですね。心が躍ります。

 

6時間ほどXcodeをいじった感想。

買ってきた参考書を手に色々といじってみた正直な感想は、「制約が厳しい」ということです。確かにサンプルコードの通り打ち込めば動作はするようですが、少し自分が変更するとすぐ不具合が生じてしまいます。サンプルコードを理解したつもりで所々変更をするとうまく機能せず、挙句にどこがダメなのか分からないといった具合です。

 

プログラミングは完全に定義された、つまり作られた動きしか想定していないので、それを完全に理解してしっかりと要件を満たしたプログラミングをする必要がありますね。

 

途中、「SwiftUI」「UIKit」「CocoaPods」「RealmSwift」など便利なフレームワークプラグイン?などを調べて(当然ですが)使いこなせなかった結果、頭が混乱してしまった経緯もありますので、段階ごとに目標を立ててしっかり理解を深め、やれること増やしていこうと思います。

 

分かったこと・疑問点など

・配列(Array)

Swift内では「配列」といったデータのようなものを定義できます。

(例)"Pokemon"という配列に"ヒトカゲ","ゼニガメ","フシギダネ"を定義する場合

→ let Pokemon = ["ヒトカゲ", "ゼニガメ", "フシギダネ"]

 

この「配列」をリストに表示させると…

→ List(0..<Pokemon.count) { item in

                 Text(Pokemon[item]) }

ヒトカゲ

 ゼニガメ

 フシギダネ

と綺麗にリストになって並ぶ。

 

分からないのが、

構造体「Data」を定義

→struct Data: Identifiable{

      var id: Int

      var titleName: String

     }

した後に、この構造体でデータを作って配列にするには

→func makeData()->[Data] {

     var dataArray:[Data] = []

     dataArray.append(Data(id: 1, titleName: Pikachu))

    ・・・

     return dataArray}

で良いのかどうか…?理解が足りず突拍子もないことかもしれませんが。

 

・リストから詳細ページに移動(NavigationLink)

別に作ったページに移動できるリンクです。

そのページを「Subview」とすると、

→NavigationLink(destination: Subview){

     Text("リンク先に移動") }

 

眠くなったので、また明日更新します。