SlideShare a Scribd company logo
1 of 53
それ、enumとstructで
やってみましょう!!
自己紹介
株式会社サイバーエージェントにて、プーペガール・スマート
フォン版ピグの開発に従事。
WebフロントエンジニアとしてUI設計、Flashでのアニメーション
開発、ActionScriptでのプログラミング、HTML5ベースでのコー
ディング、Javascriptでのプログラミング・node.jsツール開発など
を経て、昨年よりiOSエンジニアに転向。
現在株式会社アメスタにてSwiftをメイン言語として開発に携
わっている。
本日のメニュー
• Swiftおさらい
• Swift の struct
• struct と class
• それ、struct でやってみましょう!
• Swift の enum
• それ、enum でやってみましょう!
本日のメニュー
• Swiftおさらい
• Swift の struct
• struct と class
• それ、struct でやってみましょう!
• Swift の enum
• それ、enum でやってみましょう!
Swift おさらい
Swift の特徴
・書式がわかりやすい
・オプショナルとか使う
・型推論してくれる
・ジェネリクスとかタプルとか
・Playgroundが使える
・コンパイルが遅い
・ググると車が出てくる
• Swiftおさらい
• Swift の struct
• struct と class
• それ、struct でやってみましょう!
• Swift の enum
• それ、enum でやってみましょう!
本日のメニュー
Swift の struct
Objective-C の struct
・初期化
定義する
プロパティに値を格納
Swift の struct
Swift の struct
・初期化
定義する
定義にinitializerを含むことが
できる
インスタンス生成=初期化
Swift の struct
Swift の struct
・初期化
引数付きinitializerも作れる
インスタンス生成楽!
Swift の struct
Objective-C の struct
・処理
関数定義
hoge から呼び出し
Swift の struct
Swift の struct
・処理
関数を含める事ができるので、判定や値の変換などデータ
に関わる処理をまとめる事ができる&使い回せる
関数定義
インスタンスに対して呼び出し
• Swiftおさらい
• Swift の struct
• struct と class
• それ、struct でやってみましょう!
• Swift の enum
• それ、enum でやってみましょう!
本日のメニュー
struct と class
• class
プロパティやメソッド(関数)をまとめて定義するもの。
• struct
複数の変数をまとめて定義し、カプセル化するもの。
主にデータをまとめて保持する為のもの。
Swiftだと class も struct もあまり見た目かわりませんが、、
なにが違うのでしょう??
• 大きな違い
struct と class
struct は継承を行えない。
class インスタンスは参照型 であり struct は値型↓
• Swiftおさらい
• Swift の struct
• struct と class
• それ、struct でやってみましょう!
• Swift の enum
• それ、enum でやってみましょう!
本日のメニュー
structは色々面倒だと思ってたのでclass使ってました。。。
structは色々面倒だと思ってたのでclass使ってました。。。
◆問題点
・そもそもデータはデータとして扱うべき!!
・また余計なクラスファイルが、、、
・コピーにいちいち新しくインスタンス作って必要なプロパティを代
入せねば、、、
・今後言語仕様が変わったらどうしよう、、、
ex) せっかく struct で便利な機能出たのにうちは class 使ってるか
らダメだ、、
structは色々面倒だと思ってたのでclass使ってました。。。
◆問題点
・そもそもデータはデータとして扱うべき!!
・また余計なクラスファイルが、、、
・コピーにいちいち新しくインスタンス作って必要なプロパティを代
入せねば、、、
・今後言語仕様が変わったらどうしよう、、、
ex) せっかく struct で便利な機能出たのにうちは class 使ってるか
らダメだ、、
それ、struct でやってみ
ましょう!
struct でちゃんとデータとして定義!
思ったよりクラスライクに書ける★
◆注意点
・プロパティを変更する関数には mutating 属性を付与!
struct はカプセル化されているので、「変更するよ!」という宣言をしてあげる
・格納する変数は var に!
struct はインスタンスが定数の時、プロパティを変更することができません。
でもちょっとだけ注意!
struct を使うと構造も分かりやすく書ける!①
Controllerクラスファイル
struct A 実装
class実装
Controllerクラスファイル
class実装
データAクラスファイル
class実装
structファイル
struct B 実装
struct C 実装
データBクラスファイル
class実装
class(データ)実装
classが混在…
classがいっぱい…
◆Before ◆After
struct を使うと構造も分かりやすく書ける!②
ViewControllerクラスファイル
class実装
・viewとモデルの関連
モデルクラスファイル
class実装
・データの生成、複製、削除 = データ管理
・データの集合に関する処理
struct 実装
・データ自体に関する処理
Storyboard
View実装
クラス同様に処理を盛り込めるので、データ自体に関する処理は
structにガンガン盛り込めます!シンプル!!
struct を使うと構造も分かりやすく書ける!②(ぞうさんver)
ElephantViewController.swift
class実装
・画面にリスト分の
ぞうさんを描画
ElephantModel.swift
class実装
・プロパティとしてぞうさんのリストを保持
・ぞうさんを生成してリストに追加する関数
・ぞうさんをコピーしてリストに追加する関数
・リストにいるぞうさんの体重を増やす関数
struct 実装
・ぞうさんの体重と高さを保持
・ぞうさんの体重を増やす関数
Elephant.xib
ぞうさんの絵
やった!!
上手にぞうさん struct を
定義できたぞ!!!
次は黄色のぞうさんを定義するぞ!!
あれ、、
struct って継承できないんだっけ?
ぞうさんstruct のサブクラス的なのつくれない!?
こんな事をやりたかったのですが、、、
黄色ぞうさんは高さが
ぞうさんの2倍になるの
です!!
基本はぞうさんと同じで
すが・・・
結論: struct では継承ができません!!!
そもそも、struct とはつまりデータを格納するための型定義なの
で、
継承させるという考え方自体が少しおかしいかも。。
どうしよう・・・
結論: struct では継承ができません!!!
そもそも、struct とはつまりデータを格納するための型定義なの
で、
継承させるという考え方自体が少しおかしいかも。。
やっぱりクラスかな・・・
結論: struct では継承ができません!!!
そもそも、struct とはつまりデータを格納するための型定義なの
で、
継承させるという考え方自体が少しおかしいかも。。
やっぱりクラスかな・・・
待った!!
それ、enum でやってみ
ましょう!
• Swiftおさらい
• Swift の struct
• struct と class
• それ、struct でやってみましょう!
• Swift の enum
• それ、enum でやってみましょう!
本日のメニュー
Swift の enum
Enumとは?
関連させて扱いたい値を型としてまとめるもの。
色型 {
赤 = 0
青 = 1
黄 = 2
}
Swift の enum
Objective-C の enum
・初期化
定義する
変数に当て込み
Swift の enum
Swift の enum
・初期化
定義する
変数に当て込み
Swift の enum
Swift の enum
・初期化
定義に使う値の型を指定でき
る!
変数に当て込み
Objective-C の enum
・処理
関数定義
hoge から呼び出し
Swift の enum
・処理
関数定義
インスタンスに対して呼び出し
Swift の enum
・処理
クラスメソッドと同様のメソッドを作れる
自分自身の値を変
更するメソッドも作
れる
Swift の enum
・処理
クラスメソッドの様にenumのメソッドを実行
インスタンスに対して実行すると自分自身が変わる
関数を含める事ができるので、enum の値に応じた関数を
盛り込むことができる
• Swiftおさらい
• Swift の struct
• struct と class
• それ、struct でやってみましょう!
• Swift の enum
• それ、enum でやってみましょう!
本日のメニュー
こんな事をやりたかったのですが、、、
黄色ぞうさんは高さが
ぞうさんの2倍になるの
です!!
基本はぞうさんと同じで
すが・・・
こんな事をやりたかったのですが、、、
黄色ぞうさんは高さが
ぞうさんの2倍になるの
です!!
基本はぞうさんと同じで
すが・・・
それ、enum でやってみ
ましょう!
まずは ColorプロパティをElephant structに
組み込む!
考え方をデータ主体に変えてみると・・・
『黄色いぞうさん』 をクラスを使わずに表現するには、『ぞうさん』
というデータに『色』というデータを持たせれば良い!
次に enum を定義し、『黄色いぞうさん』の時に高さが
2倍になるように表現してみる!
enum はクラスで処置が含まれる変数を定義するのと同じ様に
処理が含まれる変数を定義できる!
これを利用して色別にセットされる高さの比率を設定できた!
実際に普通のぞうさんと黄色のぞうさんの高さを
表現するとこんな感じ。
シ、シ、シンプル!!!
やった!!
上手に黄色のぞうさんを表現できたぞ!!
この調子で各色ぞうさんが食事後に
何キロ太るか表現してみよう!
ElephantColor enum に渡された食事数に対して何キロ太るか
計算する関数を追加する!
enum 内の関数は各値のswitch分を含むのがスタンダードとなる。
また Swift は enum に対する switch 文に抜けているケースがあると
エラーを出してくれるので安心!(そして default がいらない!)
Elephant struct に渡された食事数を enum の関数に引き渡し、結
果をプロパティに格納する関数を定義する。
実際に普通のぞうさんと黄色のぞうさんの食事を
表現するとこんな感じ。
スィ、スィ、シンプル!!!
やった!!
色んなぞうさんの食事後体重を表現できたぞ!
ちなみに enum を組み込むとしたらこんな感じ?(ぞうさんver)
ElephantViewController.swift
class実装
・画面にリスト分の
ぞうさんを描画
ElephantModel.swift
class実装
・プロパティとしてぞうさんのリストを保持
・ぞうさんを生成してリストに追加する関数
・ぞうさんをコピーしてリストに追加する関数
・リストにいるぞうさんの体重を増やす関数
struct 実装
・ぞうさんの体重と高さを保持
・ぞうさんの体重を増やす関数
Elephant.xib
ぞうさんの絵
enum 実装
・ぞうさんの色毎の処理
どうだったでしょう!?
思った以上に struct と enum で表現できて
しまったと思いませんか!?
特に enum はこの他にも値に情報を持たせたり、
Tupleを使って複雑にしたり、、
色々できてしまいます!!!
でも時間がないので、本日はここまで。。
さあ!
家に帰ったら早速・・・
それ、enumとstructで
やってみましょう!!
ご清聴ありがとうございました。
http://qiita.com/uin010bm
uin010bm
Qiita

More Related Content

What's hot

Fluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターンFluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターンKentaro Yoshida
 
20分くらいでわかった気分になれるC++20コルーチン
20分くらいでわかった気分になれるC++20コルーチン20分くらいでわかった気分になれるC++20コルーチン
20分くらいでわかった気分になれるC++20コルーチンyohhoy
 
TDD のこころ
TDD のこころTDD のこころ
TDD のこころTakuto Wada
 
画像認識モデルを作るための鉄板レシピ
画像認識モデルを作るための鉄板レシピ画像認識モデルを作るための鉄板レシピ
画像認識モデルを作るための鉄板レシピTakahiro Kubo
 
デキるプログラマだけが知っているコードレビュー7つの秘訣
デキるプログラマだけが知っているコードレビュー7つの秘訣デキるプログラマだけが知っているコードレビュー7つの秘訣
デキるプログラマだけが知っているコードレビュー7つの秘訣Masahiro Nishimi
 
MQTTとAMQPと.NET
MQTTとAMQPと.NETMQTTとAMQPと.NET
MQTTとAMQPと.NETterurou
 
【メタサーベイ】基盤モデル / Foundation Models
【メタサーベイ】基盤モデル / Foundation Models【メタサーベイ】基盤モデル / Foundation Models
【メタサーベイ】基盤モデル / Foundation Modelscvpaper. challenge
 
Dockerfile を書くためのベストプラクティス解説編
Dockerfile を書くためのベストプラクティス解説編Dockerfile を書くためのベストプラクティス解説編
Dockerfile を書くためのベストプラクティス解説編Masahito Zembutsu
 
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織Takafumi ONAKA
 
ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発
ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発
ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発慎一 古賀
 
こわくない Git
こわくない Gitこわくない Git
こわくない GitKota Saito
 
コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門Kohei Tokunaga
 
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話Yuhei Miyazato
 
できる!並列・並行プログラミング
できる!並列・並行プログラミングできる!並列・並行プログラミング
できる!並列・並行プログラミングPreferred Networks
 
テストコードの DRY と DAMP
テストコードの DRY と DAMPテストコードの DRY と DAMP
テストコードの DRY と DAMPYusuke Kagata
 
日曜プログラマーが
1週間くらいで通信対戦ゲームを作ってみた
日曜プログラマーが
1週間くらいで通信対戦ゲームを作ってみた日曜プログラマーが
1週間くらいで通信対戦ゲームを作ってみた
日曜プログラマーが
1週間くらいで通信対戦ゲームを作ってみたYuusuke Takeuchi
 
オブジェクト指向エクササイズのススメ
オブジェクト指向エクササイズのススメオブジェクト指向エクササイズのススメ
オブジェクト指向エクササイズのススメYoji Kanno
 
ゲーム開発者のための C++11/C++14
ゲーム開発者のための C++11/C++14ゲーム開発者のための C++11/C++14
ゲーム開発者のための C++11/C++14Ryo Suzuki
 
TDD のこころ @ OSH2014
TDD のこころ @ OSH2014TDD のこころ @ OSH2014
TDD のこころ @ OSH2014Takuto Wada
 

What's hot (20)

Fluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターンFluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターン
 
20分くらいでわかった気分になれるC++20コルーチン
20分くらいでわかった気分になれるC++20コルーチン20分くらいでわかった気分になれるC++20コルーチン
20分くらいでわかった気分になれるC++20コルーチン
 
TDD のこころ
TDD のこころTDD のこころ
TDD のこころ
 
画像認識モデルを作るための鉄板レシピ
画像認識モデルを作るための鉄板レシピ画像認識モデルを作るための鉄板レシピ
画像認識モデルを作るための鉄板レシピ
 
デキるプログラマだけが知っているコードレビュー7つの秘訣
デキるプログラマだけが知っているコードレビュー7つの秘訣デキるプログラマだけが知っているコードレビュー7つの秘訣
デキるプログラマだけが知っているコードレビュー7つの秘訣
 
MQTTとAMQPと.NET
MQTTとAMQPと.NETMQTTとAMQPと.NET
MQTTとAMQPと.NET
 
【メタサーベイ】基盤モデル / Foundation Models
【メタサーベイ】基盤モデル / Foundation Models【メタサーベイ】基盤モデル / Foundation Models
【メタサーベイ】基盤モデル / Foundation Models
 
Dockerfile を書くためのベストプラクティス解説編
Dockerfile を書くためのベストプラクティス解説編Dockerfile を書くためのベストプラクティス解説編
Dockerfile を書くためのベストプラクティス解説編
 
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
 
ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発
ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発
ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発
 
こわくない Git
こわくない Gitこわくない Git
こわくない Git
 
コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門
 
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話
webSocket通信を知らないiOSエンジニアが知っておいて損はしない(経験談的な)軽い話
 
できる!並列・並行プログラミング
できる!並列・並行プログラミングできる!並列・並行プログラミング
できる!並列・並行プログラミング
 
テストコードの DRY と DAMP
テストコードの DRY と DAMPテストコードの DRY と DAMP
テストコードの DRY と DAMP
 
日曜プログラマーが
1週間くらいで通信対戦ゲームを作ってみた
日曜プログラマーが
1週間くらいで通信対戦ゲームを作ってみた日曜プログラマーが
1週間くらいで通信対戦ゲームを作ってみた
日曜プログラマーが
1週間くらいで通信対戦ゲームを作ってみた
 
オブジェクト指向エクササイズのススメ
オブジェクト指向エクササイズのススメオブジェクト指向エクササイズのススメ
オブジェクト指向エクササイズのススメ
 
TLS, HTTP/2演習
TLS, HTTP/2演習TLS, HTTP/2演習
TLS, HTTP/2演習
 
ゲーム開発者のための C++11/C++14
ゲーム開発者のための C++11/C++14ゲーム開発者のための C++11/C++14
ゲーム開発者のための C++11/C++14
 
TDD のこころ @ OSH2014
TDD のこころ @ OSH2014TDD のこころ @ OSH2014
TDD のこころ @ OSH2014
 

Similar to 【Swift】 それ、enumとstructでやってみましょう!!

Swiftビギナーズ勉強会 第1回 @Co-Edo
Swiftビギナーズ勉強会 第1回 @Co-EdoSwiftビギナーズ勉強会 第1回 @Co-Edo
Swiftビギナーズ勉強会 第1回 @Co-EdoMegumi Otani(Czenhe)
 
Swift事情2014夏 ~ Swift入門 beta6対応
Swift事情2014夏 ~ Swift入門 beta6対応Swift事情2014夏 ~ Swift入門 beta6対応
Swift事情2014夏 ~ Swift入門 beta6対応Tomoki Hasegawa
 
iOSアプリ開発のためのSwiftビギナーズ勉強会 第6回 @Co-Edo
iOSアプリ開発のためのSwiftビギナーズ勉強会 第6回    @Co-EdoiOSアプリ開発のためのSwiftビギナーズ勉強会 第6回    @Co-Edo
iOSアプリ開発のためのSwiftビギナーズ勉強会 第6回 @Co-EdoMegumi Otani(Czenhe)
 
Objective-Cプログラマのためのswift導入法
Objective-Cプログラマのためのswift導入法Objective-Cプログラマのためのswift導入法
Objective-Cプログラマのためのswift導入法Tomoki Hasegawa
 
我が家のフロントエンド開発事情
我が家のフロントエンド開発事情我が家のフロントエンド開発事情
我が家のフロントエンド開発事情Naoki Yamada
 
Svgアニメーションを実装してみよう 20150207
Svgアニメーションを実装してみよう 20150207Svgアニメーションを実装してみよう 20150207
Svgアニメーションを実装してみよう 20150207Kanako Kobayashi
 
Bootstrapにちょい足しアニメーション@春のJavascript祭り
Bootstrapにちょい足しアニメーション@春のJavascript祭りBootstrapにちょい足しアニメーション@春のJavascript祭り
Bootstrapにちょい足しアニメーション@春のJavascript祭りMasayuki Abe
 
プロトタイピングでしあわせになろうよ
プロトタイピングでしあわせになろうよプロトタイピングでしあわせになろうよ
プロトタイピングでしあわせになろうよYoshiki Kojima
 
通常の3倍の速度で プログラミング!? 「 Emacsキーバインドのすすめ」
通常の3倍の速度でプログラミング!?「 Emacsキーバインドのすすめ」通常の3倍の速度でプログラミング!?「 Emacsキーバインドのすすめ」
通常の3倍の速度で プログラミング!? 「 Emacsキーバインドのすすめ」KinkumaDesign
 
UXを損ねる静的コンテンツ配信アンチパターン7選
UXを損ねる静的コンテンツ配信アンチパターン7選UXを損ねる静的コンテンツ配信アンチパターン7選
UXを損ねる静的コンテンツ配信アンチパターン7選Yuki Okada
 
2022_08_10 SaaS.tech #5業務システム開発でデザインとフロントエンドも妥協しない話
2022_08_10 SaaS.tech #5業務システム開発でデザインとフロントエンドも妥協しない話2022_08_10 SaaS.tech #5業務システム開発でデザインとフロントエンドも妥協しない話
2022_08_10 SaaS.tech #5業務システム開発でデザインとフロントエンドも妥協しない話Kazuki Murahama
 
スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向Tsutomu Ogasawara
 
PhoneGapユーザー会@大阪 講演資料
PhoneGapユーザー会@大阪 講演資料PhoneGapユーザー会@大阪 講演資料
PhoneGapユーザー会@大阪 講演資料Monaca
 
Swiftビギナーズ倶楽部 vol.2
Swiftビギナーズ倶楽部 vol.2Swiftビギナーズ倶楽部 vol.2
Swiftビギナーズ倶楽部 vol.2Kanako Kobayashi
 
あなたも出来る!webエンジニアがSwiftでリリースするためにやったこと
あなたも出来る!webエンジニアがSwiftでリリースするためにやったことあなたも出来る!webエンジニアがSwiftでリリースするためにやったこと
あなたも出来る!webエンジニアがSwiftでリリースするためにやったことMasaru Gushiken
 
Webアプリ開発のトレンドとUIライブラリ開発事情(仙台Geek★Night #1)
Webアプリ開発のトレンドとUIライブラリ開発事情(仙台Geek★Night #1)Webアプリ開発のトレンドとUIライブラリ開発事情(仙台Geek★Night #1)
Webアプリ開発のトレンドとUIライブラリ開発事情(仙台Geek★Night #1)masakazusegawa
 
WPFの画面をWebブラウザのように拡大・縮小に追従させる方法(オートスクロールバー付き)
WPFの画面をWebブラウザのように拡大・縮小に追従させる方法(オートスクロールバー付き)WPFの画面をWebブラウザのように拡大・縮小に追従させる方法(オートスクロールバー付き)
WPFの画面をWebブラウザのように拡大・縮小に追従させる方法(オートスクロールバー付き)Study Group by SciencePark Corp.
 
プロ文.com 勉強会 Phase 1
プロ文.com 勉強会 Phase 1プロ文.com 勉強会 Phase 1
プロ文.com 勉強会 Phase 1Hiroki Toyokawa
 
Mochrom - スマートフォンビジネスサミット
Mochrom - スマートフォンビジネスサミットMochrom - スマートフォンビジネスサミット
Mochrom - スマートフォンビジネスサミットKatsuaki Sato
 

Similar to 【Swift】 それ、enumとstructでやってみましょう!! (20)

Swiftビギナーズ勉強会 第1回 @Co-Edo
Swiftビギナーズ勉強会 第1回 @Co-EdoSwiftビギナーズ勉強会 第1回 @Co-Edo
Swiftビギナーズ勉強会 第1回 @Co-Edo
 
Swift事情2014夏 ~ Swift入門 beta6対応
Swift事情2014夏 ~ Swift入門 beta6対応Swift事情2014夏 ~ Swift入門 beta6対応
Swift事情2014夏 ~ Swift入門 beta6対応
 
iOSアプリ開発のためのSwiftビギナーズ勉強会 第6回 @Co-Edo
iOSアプリ開発のためのSwiftビギナーズ勉強会 第6回    @Co-EdoiOSアプリ開発のためのSwiftビギナーズ勉強会 第6回    @Co-Edo
iOSアプリ開発のためのSwiftビギナーズ勉強会 第6回 @Co-Edo
 
Spring.project
Spring.projectSpring.project
Spring.project
 
Objective-Cプログラマのためのswift導入法
Objective-Cプログラマのためのswift導入法Objective-Cプログラマのためのswift導入法
Objective-Cプログラマのためのswift導入法
 
我が家のフロントエンド開発事情
我が家のフロントエンド開発事情我が家のフロントエンド開発事情
我が家のフロントエンド開発事情
 
Svgアニメーションを実装してみよう 20150207
Svgアニメーションを実装してみよう 20150207Svgアニメーションを実装してみよう 20150207
Svgアニメーションを実装してみよう 20150207
 
Bootstrapにちょい足しアニメーション@春のJavascript祭り
Bootstrapにちょい足しアニメーション@春のJavascript祭りBootstrapにちょい足しアニメーション@春のJavascript祭り
Bootstrapにちょい足しアニメーション@春のJavascript祭り
 
プロトタイピングでしあわせになろうよ
プロトタイピングでしあわせになろうよプロトタイピングでしあわせになろうよ
プロトタイピングでしあわせになろうよ
 
通常の3倍の速度で プログラミング!? 「 Emacsキーバインドのすすめ」
通常の3倍の速度でプログラミング!?「 Emacsキーバインドのすすめ」通常の3倍の速度でプログラミング!?「 Emacsキーバインドのすすめ」
通常の3倍の速度で プログラミング!? 「 Emacsキーバインドのすすめ」
 
UXを損ねる静的コンテンツ配信アンチパターン7選
UXを損ねる静的コンテンツ配信アンチパターン7選UXを損ねる静的コンテンツ配信アンチパターン7選
UXを損ねる静的コンテンツ配信アンチパターン7選
 
2022_08_10 SaaS.tech #5業務システム開発でデザインとフロントエンドも妥協しない話
2022_08_10 SaaS.tech #5業務システム開発でデザインとフロントエンドも妥協しない話2022_08_10 SaaS.tech #5業務システム開発でデザインとフロントエンドも妥協しない話
2022_08_10 SaaS.tech #5業務システム開発でデザインとフロントエンドも妥協しない話
 
スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向
 
PhoneGapユーザー会@大阪 講演資料
PhoneGapユーザー会@大阪 講演資料PhoneGapユーザー会@大阪 講演資料
PhoneGapユーザー会@大阪 講演資料
 
Swiftビギナーズ倶楽部 vol.2
Swiftビギナーズ倶楽部 vol.2Swiftビギナーズ倶楽部 vol.2
Swiftビギナーズ倶楽部 vol.2
 
あなたも出来る!webエンジニアがSwiftでリリースするためにやったこと
あなたも出来る!webエンジニアがSwiftでリリースするためにやったことあなたも出来る!webエンジニアがSwiftでリリースするためにやったこと
あなたも出来る!webエンジニアがSwiftでリリースするためにやったこと
 
Webアプリ開発のトレンドとUIライブラリ開発事情(仙台Geek★Night #1)
Webアプリ開発のトレンドとUIライブラリ開発事情(仙台Geek★Night #1)Webアプリ開発のトレンドとUIライブラリ開発事情(仙台Geek★Night #1)
Webアプリ開発のトレンドとUIライブラリ開発事情(仙台Geek★Night #1)
 
WPFの画面をWebブラウザのように拡大・縮小に追従させる方法(オートスクロールバー付き)
WPFの画面をWebブラウザのように拡大・縮小に追従させる方法(オートスクロールバー付き)WPFの画面をWebブラウザのように拡大・縮小に追従させる方法(オートスクロールバー付き)
WPFの画面をWebブラウザのように拡大・縮小に追従させる方法(オートスクロールバー付き)
 
プロ文.com 勉強会 Phase 1
プロ文.com 勉強会 Phase 1プロ文.com 勉強会 Phase 1
プロ文.com 勉強会 Phase 1
 
Mochrom - スマートフォンビジネスサミット
Mochrom - スマートフォンビジネスサミットMochrom - スマートフォンビジネスサミット
Mochrom - スマートフォンビジネスサミット
 

Recently uploaded

プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価sugiuralab
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directoryosamut
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxAtomu Hidaka
 
プレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールプレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールsugiuralab
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000Shota Ito
 

Recently uploaded (8)

プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
 
プレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールプレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツール
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
 

【Swift】 それ、enumとstructでやってみましょう!!