未分類

Swift3

投稿日:

 今日は構造体とクラスの概念から学びはじめました。Swiftでは構造体とクラスで処理に名前をつけることでこの名前のものにこの処理をしているというのがわかるようにコードを書きます。これをオブジェクト指向といって、簡単に言えば現実の世界のものを種類分けしているように、コンピュータの世界でも種類分けをしようということです。例えば、乗り物という種類の中に車や飛行機があるように、Swiftの世界では乗り物が構造体やクラスで車や飛行機がインスタンスです。インスタンスとして生成した変数にメソッドが使えるようになるのですが、構造体とクラスではそのメソッドの使い方が違います。構造体ではインスタンス毎にメソッドの中身を変えて使うことができるのに対して、クラスではメソッドの中身が全部変わってしまいます。あとクラスでは継承があり、スーパークラスとして継承先のクラスをサブクラスに記述することで、スーパークラスの中で定義したメソッドや関数をサブクラスで使うことができるようになります。値ごとに使うメソッドを変えたい場合は構造体を使い、メソッドを共通化して使いたい場合や、サブクラスに継承させてメソッドを使わせたい場合はクラスを使うと認識しています。あとSwiftにはプロトコルといって変数の仕様書みたいなものがあり、これを使うと定義しないといけない変数を強制的に定義させます。おそらく機能の安全性を考慮した仕組みだと思われます。構造体でクラスの継承と同じ使い方をするみたいで、クラスの継承は一つしかできないが、プロトコルでは複数指定することができます。

 最後にビューのところをやって今日は終わりました。変数で定義したbodyの中にテキストだとかimageを入れてビューに表示させます。水平方向にcontentを並べるにはHStackでcontentを囲むと水平に並べて、VStackだと垂直方向、ZStackは重なるようになります。

 今日はモチベーションが下げ下げだったので昼からはYouTubeばかりみてしまいました。これは今考えるともったいないので、せめて本を読むようにしたいと思います。サボるなら、全力でサボる!

-未分類

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

パッケージ

今日は普段使っているパッケージについて学びました。いつもパッケージ管理ソフトのyarnを使ってインストールやら実行やらを行っているのですが、それが内部でどのような動きをしているのかなんて考えたこともあ …

no image

諸々

品質について Q・C・Dはトレードオフだということを学びました。品質を高くすればコストが高くなるし時間だってかかります。コストを安くすれば品質が悪くなります。納期を遅らせれば品質よく安いものが出来上が …

no image

アルゴリズム

ビンゴカードのプログラムが完成できたのでそのアウトプットをしていきます。 リーチとビンゴの数を出力 ビンゴボールクラスとカウントビンゴクラス、ビンゴカードクラスで分けて作成し、ビンゴカードクラスにビン …

no image

java4

 と言いながらjavaの勉強はほとんどしていません。今日の一連の流れを書きます。朝起きて、いつものルーティーン通りで11時くらいからjavaを勉強するぞとやる気になって勉強していたのですが、この前面接 …

no image

typescript

今日から新しくtypescriptという言語を学び始めました。これはjavascriptの上位互換にあたるものでjavascriptの記述で書かれたものは全てtypescriptで記述する事ができます …