お仕事の依頼はこちらから

【Xcode】Swiftでコードを書いてみた2| Generics・enum

こんにちは、ススムです。

Swift学習者

Swiftについて興味があって、これから勉強したい!

現在、Swift学習中です!

そんな方向けの記事内容となります。

この記事を書いた人はこんな感じです。⇩

著者

  • スポーツの専門学校卒業
  • オーストラリアへ語学留学/スシレストランで就労
  • JICA海外協力隊にてミャンマーで2年間生活
  • Webデザイナー/動画クリエイター/Webエンジニア/Webライター
  • オンラインスポーツコーチ
  • オンライン日本語講師
  • オンラインミャンマー語講師
  • ミャンマー人向けオンラインコミュニティ運営

※この記事を書いている私について詳しくはこちらで紹介しています。

本記事の内容

・Genericsとは

・enumとは

【エンジニアの職探しならこちら🔻】

フリーランスエンジニアに安心保証と豊富な案件紹介を【midworks】

【PR】週3日×高単価案件ならITプロパートナーズ

SwiftのGenericsとは 

genericsとは、定義した要件に応じて、指定したタイプで動作する再利用可能な関数や型を指定できる機能です。

 genericsの関数定義は以下のように書きます。
func 関数名<T>(引数名:型, …)-> 戻り値の型{ 処理
}

genericsの特徴は、関数の後に<T>を指定します。

 <T>を指定すると、関数が呼び出されたときswiftのシステムで自動で適切な型に書 き換えて処理を実行します。

genericsの使い方

genericsを使用するとあらゆる型に対応することができます。
例を見てみましょう。
func samplefunc<T>(num1:T, num2:T)->T{ return num1 + num2
}

しかし、genericsは演算子に対応していないためエラー表記が出てしまします。なので、 「関数名<T:Numeric>」を用います。
func samplefunc<T:Numeric>(num1:T, num2:T)->T{ return num1 + num2
}
print(samplefunc(num1:100, num2:250)) print(samplefunc(num1:120.5, num2:210.2))

genericsのクラス 

クラス名にT型を指定することにより、あらゆる型を指定することができます。

画像1

generic protocol

generic protocolはgenericsを使用したプロトコルです。

画像2


プロトコルでジェネリクスを使用するためには、定義内で「practiceType T」のように任 意の型を指定する必要があります。

Swiftのenumとは

日付をフォーマット

enumとは、データを一つにまとめた定数のような役割があり、簡単にデータ構造管理ができます。

画像1


「case 列挙子」のように記述します。 
このコードの結果では「tennis」が表示されます。

画像2


「.」用いて省力して記述することも出来ます。 続いては、if文を用いて条件分岐のコードを書いてみます。 

画像3


このコードの結果は「I like tennis」が表示されます。 switch文でも同様の処理が出来ます。
enumの中の要素には値も設定することが出来ます。

画像4

ここでは、「rawValue」を使用しています。
結果として「テニス」が表示されます。
enumを入れ子として使用した場合のコードを書いてみます。 

画像5

実行結果は「walk」と「athletics」が表示されます。 enumでは引数の指定も出来ます。

画像6

結果はsushi(110)とokonomiyaki(500)のように表示されます。


プログラミング学習ツール
https://prog-8.com/languages
https://dotinstall.com/


私は、エンジニアの学習にあたってこちらの資料を参考にしました。
http://www5e.biglobe.ne.jp/aji/3min
https://ping-t.com/

【エンジニアの職探しならこちら🔻】

フリーランスエンジニアに安心保証と豊富な案件紹介を【midworks】

【PR】週3日×高単価案件ならITプロパートナーズ

【IT・プログラミング関連記事】

また、何かあったら紹介したいと思います。

質問などがあれば気軽にコメント下さい。

仕事の依頼などがあればメールまたはSNSにてお問い合わせ下さい。

以上が今回のブログとなります。

読んで頂きありがとうございます。

また次回お会いしましょう。

※0円で受けれるプログラミング説明会
今話題のテックキャンプ。
実績、知名度ともに業界最大級の未経験を対象としたテクノロジースクールです。 受講期間中はいつでもメンター(講師)に質問ができ、目的達成のためにトレーナーが徹底的にサポートします。

※【エンジニアを目指すならテックキャンプ!!】今だけ無料カウンセリング受付中!

【ミャンマー写真集】

ミャンマー語学習教材3選】

※ミャンマー語のテスト問題集作成しました。詳しくはこちらから

※ミャンマースポーツコミュニティ【Myanmar Sports/ISPE】

※ミャンマー✖️日本コミュニティー【MyanJapa Life】

企業の方、プレスの方、個人の方など、仕事の依頼に関するお問い合わせは以下の
フォームからお気軽にご連絡下さい

コメント

タイトルとURLをコピーしました