SlideShare a Scribd company logo
1 of 77
Download to read offline
実践業務を爆速でこなすtipsとgenerics
iosには
プログラミングの概念で
プロトコル指考と
オブジェクト指考がある
概念、思考??
プロトコル指考
オブジェクト指考とは?
アプリケーションを構築する上で、
方針、設計、具体的なコードのこと
そして今回紹介する
genericsは連想型のパラメーターを
使う関数
コードで紹介!!
func DddcountOne<T>(check:T)->T{
return check
}
Tがパラメーターです。
その他の文字が?な方は、
ビギナーズ倶楽部でお伝えします。
なぜ型を指定しないパラメータなのか?
幾つかありますが、一つ目
暗黙の共有を避ける。
objective-cの時代は、
知らず知らず、
インスタンスの共有をしてしまう
場合があった
それは
デットロックへの危機感
デットロックとは
デッドロックとは、
特に計算機科学において、2つ以上のスレッド
あるいはプロセスなどの処理単位が互いの処
理終了を待ち、結果としてどの処理も先に進め
なくなってしまうことを言う。
対応には排他処理を実施。
今回はSwiftのgenericsを説明するので、
排他処理コードは飛ばす。
必要な場合は自分で、そこ調べて。
ただし、
排他制御←
この考えやどういうものか
知っとく必要あります。
スレッド、同期処理、非同期処理などで
電気のメモリの流れなどを考量して、
あらかじめ排他処理を実施する
同時共有するアプリケーションを作成する場合
など、排他処理を実施してスレッドが同時に起
きた場合もindexやindexPathの
データーベースの整合性を保つ場合などに使
用する概念で、今後そういった多数のスレッド
を多様する機会が増えるので、、知っとく必要
あり。
スマフォじゃなくて、
セマフォで調べると良いです。
スマフォじゃなくて、
セマフォで調べると良いです。
もう一度話を戻します。
generics
注力した理由は
オブジェクト指向にあります。
オブジェクト指向の作法は、
クラス化だけど、
クラス化だと多重に継承ができない。
オブジェクト指向言語では、
スーパークラスを
一つしか持つことができず、
機能変更する場合など、
スーパークラスをあとから変更するのは、極め
て困難だ。
オブジェクト指向
プログラミングに関するキーワード
オブジェクト
クラス
インスタンス(実体)
状態と振る舞い
カプセル化(隠蔽)
継承、委譲
インタフェース、抽象化
などなどありますが
このまま行くとオブジェクト指考の話になるの
で、一旦ストップしてまとめると
変数の参照設定
weakやstrongなど
変数を使う場合の初期化設定
alloc initwith〜など
スーパークラス設定
後から変更が困難になる
型関係が損失
ダウンキャストする必要な場合が起きる
今までのオブジェクト指向
objective-cは
いろいろ
対応するのが面倒だった。
genericsは
使用する方で、型を宣言すれば
知らず、知らずのうちに
共有するようなことが起きない。
具体的なコードはリンク先にあります。
Starを押してください。
https://github.com/daisukenagata/
GenericsSample
よろしくお願いします。
class Sample1: NSObject {
//ジェネリックスを作成引数を1つ返す
func DddcountOne<T>(check:T)->T{
return check
}
}
//Buttonの継承
self.view.addSubview
(SampleUIView(frame:self.view.frame))
// あらゆる型に変換するジェネリックス ラベルを一つ返す
print("1111",Sample1().DddcountOne(check:"111"))
print("222",Sample1().DddcountOne(check:222))
print("333",Sample1().DddcountOne(check:1.0))
print("444",Sample1().DddcountOne(check:true))
使う側で選ぶ
genericsを使用する場合に
必要な
プロトコル指考とは
関数型プログラミングが
ヒントになります。
こちらに関数プログラミング紹介があります。
http://www.slideshare.net/DaisukeNagata1/s
ansan-65191797
関数型プログラミングは
複数の式を関数の適用によって組み合わせて
いくプログラミングスタイルである
また
プロトコル思考って?
プロトコル思考、Swiftでは
プロトコルや構造体は初期化の負担がなくモデ
ルにデータを強制しない
開発者が採用した場合に
使用箇所が明示的で明確です。
これは僕のイメージですが、
プログラムメソッドとプログラムメソッドを接続す
る場合で開発者が明確に採択できメモリの管
理など
Swiftがよしなにやってくれる。
generics
//Associatedtypプロトコル 設定
protocol ProtocolBoard {
associatedtype protocolPiece
static var rows: Int { get }
static var columns: Int { get }
//取得用サブスクリプト
subscript(row: Int, column: Int) -> protocolPiece? { get set }
}
//配列設定
struct ArrayBoard<T>: ProtocolBoard {
static var rows: Int { return 7 }
static var columns: Int { return 7 }
// 配列
var board = [T?](repeating: nil, count: 7 * 7)
// 取得用サブスクリプト
subscript(row: Int, column: Int) -> T? {
get {
return board[row * 7 + column]
}
set {
board[row * 7 + column] = newValue
}
}
}
//Associatedtyp プロトコル 設定
var board = ArrayBoard<Bool>()
board[3, 3] = true
board[3, 4] = false
print(board[3, 3]!)
print(board[3, 4]!)
先ほどの<T>がパラメータ
なのでStringにもできます。
var board = ArrayBoard<Bool>()
//先ほどのBoolをStringにしました。
var board = ArrayBoard<String>()
board[3, 3] = "もう一回"
board[3, 4] = "当たり"
print(board[3, 3]!)
print(board[3, 4]!)
具体的なコードはリンク先にあります。
Starを押してください。
https://github.com/daisukenagata/
GenericsSample
よろしくお願いします。
Swiftの場合は
開発者側でコードの型を選び、
使用したら解放される。
objective-cの場合は
コードのメモリの解放なども開発者が
自分で設定しなくてはいけない。
個人的には
genericsを使うと引数や
戻り値をよく考えるので
プログラミングを学ぶ上でも勉強になると思い
ます。
永田大祐
フリーランス
ios歴1.5年
週7日実施(少し他言語も)
1日12時間〜20時間実施
今までの活動
登壇させていただきました。
青葉台 カジュアルSwift勉強会様
Swift愛好会様
ios馬場様
フリースタイルPort もくもく会様
Realm Meet Up 様
AKIBA.swift 様
第2回RxSwift勉強会 @ Sansan 様
iosエンジニア
ニュースアプリ ReacticeCocoa Realm 使用
相続税アプリ CoreData使用
SDK Realmを使用
漫画アプリ Obc
セキュリティアプリ Obc
カメラアプリ Obc
Android
アキパス
仕事を手に入れるためにiosアプリ
Androidアプリがこちら
で
実践業務を爆速でこなすtips
Swift案件は
genericsが多用しています。
class priceRide {
var price = 1
func addPrice(_ price:Int){
self.price += price
}
}
class subRide:priceRide {
var page = 1
}
func addPrice<T:priceRide>(_ data:T) -> T {
data.addPrice(13)
return data
}
genericsが読めないと
自分がデットロックします。
1.コードを読めるようになる。
読めるようになるには
オブジェクト指向と
プロトコル指向を学ぶ
2.読むためのMac操作を覚える
⌘+B = build
⌘+Shift + k = clean
⌘+R = run
⌘+C = copy
⌘+V = past
⌘+Z = 戻る
⌘+Shift + Z = 進む
Xcode内
⌘+Ctr +→= クラスファイルを進む
⌘+Ctr +←= クラスファイルを戻る
⌘+A = Xcodeすべて選択
⌘+I = インテント整形
Xcode内
⌘+Shift + F = キワード検索
⌘+Shift + O = クラス検索
メソッドを選択して
⌘+トラックパッドを押す = スーパクラスに辿れ
る。
option + トラックパッドを押す
パラメーターの紹介
Mac内
⌘+Shift +F4 =スクリーンショット
トラックパット3本指で横にスワイプ=
画面移動
トラックパット3本指で縦にスワイプ=
画面の縮小
もっとありますが
自然とこういう操作が
できるようになること
3.モックとなるコードを記録する。
サイトを用意しておく
github
bitbucket
swift docs
http://blog.personal-factory.com/tag/swift/
リブレoffice
スプレッドシート
googleのメモ帳などなど
4.はまった点など記録する
5.会話をアンラップしない
大人は知らず知らず
会話をgenericsのようなパラメーター
にして抽象化します。
これはビジネスだと
スピードが減速する原因と思います。
いかに率直に伝えれるかがキーポイント
率直になるほど、
アンラップしていないので
それを補うために
態度や行動で言語の
率直さをリカバリーします。
まとめると
単刀直入にしゃべり
態度では気を使う
この比率を場合で調整する。
そうすることにより、
言語が直接的なほどに意味が限定的になり
判断をする思考回路が短くなり
結果として
作業のスピードが早くなります。
覚悟と情熱、ビジョンがある方
この方針をお勧めします。
Swiftビギナーズ倶楽部 #swiftbg |
Doorkeeper 様
コワーキングスペース茅場町 Co-Edo 様
登壇ありがとうございます。

More Related Content

Viewers also liked

Bittarget digital marketing-campaign in noida
Bittarget digital marketing-campaign in noidaBittarget digital marketing-campaign in noida
Bittarget digital marketing-campaign in noidabittarget1
 
agentmate-booklet-insurance-2016 (1)
agentmate-booklet-insurance-2016 (1)agentmate-booklet-insurance-2016 (1)
agentmate-booklet-insurance-2016 (1)Amarit Franssen
 
Yuliana carrero hardware.ppt
Yuliana carrero hardware.pptYuliana carrero hardware.ppt
Yuliana carrero hardware.pptyuliana carrero
 
Representing Students in the University Setting
Representing Students in the University SettingRepresenting Students in the University Setting
Representing Students in the University SettingLatavia Alexander
 
Caso solucionado electiva vi coaching luis armas
Caso solucionado electiva vi coaching luis armasCaso solucionado electiva vi coaching luis armas
Caso solucionado electiva vi coaching luis armasluis armas
 
พศิน โครงงาน
พศิน โครงงานพศิน โครงงาน
พศิน โครงงานFluke Mak
 
Video In The Mobile Age, Wayne Bickerton, Facebook & Instagram
Video In The Mobile Age, Wayne Bickerton, Facebook & InstagramVideo In The Mobile Age, Wayne Bickerton, Facebook & Instagram
Video In The Mobile Age, Wayne Bickerton, Facebook & InstagramThe Drum
 
Tecnologia formacao profissional_unidade1
Tecnologia formacao profissional_unidade1Tecnologia formacao profissional_unidade1
Tecnologia formacao profissional_unidade1Ramon Lucena
 

Viewers also liked (18)

Bittarget digital marketing-campaign in noida
Bittarget digital marketing-campaign in noidaBittarget digital marketing-campaign in noida
Bittarget digital marketing-campaign in noida
 
Victimologia
VictimologiaVictimologia
Victimologia
 
Chignahuapan pueblo magico
Chignahuapan pueblo magicoChignahuapan pueblo magico
Chignahuapan pueblo magico
 
Chignahuapan
ChignahuapanChignahuapan
Chignahuapan
 
Preso RB engl 2016
Preso RB engl 2016Preso RB engl 2016
Preso RB engl 2016
 
agentmate-booklet-insurance-2016 (1)
agentmate-booklet-insurance-2016 (1)agentmate-booklet-insurance-2016 (1)
agentmate-booklet-insurance-2016 (1)
 
Yuliana carrero hardware.ppt
Yuliana carrero hardware.pptYuliana carrero hardware.ppt
Yuliana carrero hardware.ppt
 
Tugas sim kurniawan
Tugas sim kurniawanTugas sim kurniawan
Tugas sim kurniawan
 
Representing Students in the University Setting
Representing Students in the University SettingRepresenting Students in the University Setting
Representing Students in the University Setting
 
Presentación1caledonia (1)
Presentación1caledonia (1)Presentación1caledonia (1)
Presentación1caledonia (1)
 
Caso solucionado electiva vi coaching luis armas
Caso solucionado electiva vi coaching luis armasCaso solucionado electiva vi coaching luis armas
Caso solucionado electiva vi coaching luis armas
 
พศิน โครงงาน
พศิน โครงงานพศิน โครงงาน
พศิน โครงงาน
 
Tugas sim kurniawan
Tugas sim kurniawanTugas sim kurniawan
Tugas sim kurniawan
 
Trabajo práctico copia
Trabajo práctico   copiaTrabajo práctico   copia
Trabajo práctico copia
 
CCTyson2016Resume
CCTyson2016ResumeCCTyson2016Resume
CCTyson2016Resume
 
Video In The Mobile Age, Wayne Bickerton, Facebook & Instagram
Video In The Mobile Age, Wayne Bickerton, Facebook & InstagramVideo In The Mobile Age, Wayne Bickerton, Facebook & Instagram
Video In The Mobile Age, Wayne Bickerton, Facebook & Instagram
 
Tecnologia formacao profissional_unidade1
Tecnologia formacao profissional_unidade1Tecnologia formacao profissional_unidade1
Tecnologia formacao profissional_unidade1
 
radiology specialist nurse role
radiology specialist nurse roleradiology specialist nurse role
radiology specialist nurse role
 

Similar to 実践業務を爆速でこなすtipsとgenerics

Mixed RealityとAzure Digital Twinsを組合わせてデジタルツインを可視化するためのTips
Mixed RealityとAzure Digital Twinsを組合わせてデジタルツインを可視化するためのTipsMixed RealityとAzure Digital Twinsを組合わせてデジタルツインを可視化するためのTips
Mixed RealityとAzure Digital Twinsを組合わせてデジタルツインを可視化するためのTipsTakahiro Miyaura
 
クリーンアーキテクチャを試してみた
クリーンアーキテクチャを試してみたクリーンアーキテクチャを試してみた
クリーンアーキテクチャを試してみたTakuya Matsunaga
 
AI とデジタル変革
AI とデジタル変革AI とデジタル変革
AI とデジタル変革Osaka University
 
ChatGPT(LLMによる生成系AI)の追加学習を No Code で行う ~ 概念モデリング教本を元に ~
ChatGPT(LLMによる生成系AI)の追加学習を No Code で行う  ~ 概念モデリング教本を元に ~ChatGPT(LLMによる生成系AI)の追加学習を No Code で行う  ~ 概念モデリング教本を元に ~
ChatGPT(LLMによる生成系AI)の追加学習を No Code で行う ~ 概念モデリング教本を元に ~Knowledge & Experience
 
技術者に必要なもの
技術者に必要なもの技術者に必要なもの
技術者に必要なものyujifukatani
 
コンピュータの舞台裏 Vol.08 - 身近な事例からひも解く人工知能
コンピュータの舞台裏 Vol.08 - 身近な事例からひも解く人工知能コンピュータの舞台裏 Vol.08 - 身近な事例からひも解く人工知能
コンピュータの舞台裏 Vol.08 - 身近な事例からひも解く人工知能TATSUYA HAYAMIZU
 
Code Contracts の紹介
Code Contracts の紹介Code Contracts の紹介
Code Contracts の紹介ゆぽ
 
SORACOM Technology Camp 2018 ベーシックトラック1 | 事例で整理!IoTソリューションの開発/導入検討の進め方
SORACOM Technology Camp 2018 ベーシックトラック1 | 事例で整理!IoTソリューションの開発/導入検討の進め方SORACOM Technology Camp 2018 ベーシックトラック1 | 事例で整理!IoTソリューションの開発/導入検討の進め方
SORACOM Technology Camp 2018 ベーシックトラック1 | 事例で整理!IoTソリューションの開発/導入検討の進め方SORACOM,INC
 
デ部会 プロトタイプ
デ部会 プロトタイプデ部会 プロトタイプ
デ部会 プロトタイプNobuhiko Futagami
 
コードを書かずにIoT, IoT without-coding
コードを書かずにIoT, IoT without-codingコードを書かずにIoT, IoT without-coding
コードを書かずにIoT, IoT without-codingHirokazu Tokuno
 
30日でできない!コンピューター自作入門 - カーネル/VM探検隊@つくば
30日でできない!コンピューター自作入門 - カーネル/VM探検隊@つくば30日でできない!コンピューター自作入門 - カーネル/VM探検隊@つくば
30日でできない!コンピューター自作入門 - カーネル/VM探検隊@つくばHirotaka Kawata
 
LightSwitch 結局何ができるの
LightSwitch 結局何ができるのLightSwitch 結局何ができるの
LightSwitch 結局何ができるのYoshitaka Seo
 
XP祭り関西2011 森崎 修司「プラクティスが有効にはたらく前提は明らかになっていますか?」
XP祭り関西2011 森崎 修司「プラクティスが有効にはたらく前提は明らかになっていますか?」XP祭り関西2011 森崎 修司「プラクティスが有効にはたらく前提は明らかになっていますか?」
XP祭り関西2011 森崎 修司「プラクティスが有効にはたらく前提は明らかになっていますか?」Shuji Morisaki
 
AngulaとElixirの新しい関係
AngulaとElixirの新しい関係AngulaとElixirの新しい関係
AngulaとElixirの新しい関係陸 谷出
 
ChainerでDeep Learningを試す為に必要なこと
ChainerでDeep Learningを試す為に必要なことChainerでDeep Learningを試す為に必要なこと
ChainerでDeep Learningを試す為に必要なことJiro Nishitoba
 
テクノアカデミー郡山 現役ソフトウェアエンジニアが語る。IT の今と未来
テクノアカデミー郡山 現役ソフトウェアエンジニアが語る。IT の今と未来テクノアカデミー郡山 現役ソフトウェアエンジニアが語る。IT の今と未来
テクノアカデミー郡山 現役ソフトウェアエンジニアが語る。IT の今と未来Daiyu Hatakeyama
 
Pythonによる機械学習入門〜基礎からDeep Learningまで〜
Pythonによる機械学習入門〜基礎からDeep Learningまで〜Pythonによる機械学習入門〜基礎からDeep Learningまで〜
Pythonによる機械学習入門〜基礎からDeep Learningまで〜Yasutomo Kawanishi
 
ChainerでDeep Learningを試すために必要なこと
ChainerでDeep Learningを試すために必要なことChainerでDeep Learningを試すために必要なこと
ChainerでDeep Learningを試すために必要なことRetrieva inc.
 

Similar to 実践業務を爆速でこなすtipsとgenerics (20)

Mixed RealityとAzure Digital Twinsを組合わせてデジタルツインを可視化するためのTips
Mixed RealityとAzure Digital Twinsを組合わせてデジタルツインを可視化するためのTipsMixed RealityとAzure Digital Twinsを組合わせてデジタルツインを可視化するためのTips
Mixed RealityとAzure Digital Twinsを組合わせてデジタルツインを可視化するためのTips
 
クリーンアーキテクチャを試してみた
クリーンアーキテクチャを試してみたクリーンアーキテクチャを試してみた
クリーンアーキテクチャを試してみた
 
AI とデジタル変革
AI とデジタル変革AI とデジタル変革
AI とデジタル変革
 
ChatGPT(LLMによる生成系AI)の追加学習を No Code で行う ~ 概念モデリング教本を元に ~
ChatGPT(LLMによる生成系AI)の追加学習を No Code で行う  ~ 概念モデリング教本を元に ~ChatGPT(LLMによる生成系AI)の追加学習を No Code で行う  ~ 概念モデリング教本を元に ~
ChatGPT(LLMによる生成系AI)の追加学習を No Code で行う ~ 概念モデリング教本を元に ~
 
技術者に必要なもの
技術者に必要なもの技術者に必要なもの
技術者に必要なもの
 
コンピュータの舞台裏 Vol.08 - 身近な事例からひも解く人工知能
コンピュータの舞台裏 Vol.08 - 身近な事例からひも解く人工知能コンピュータの舞台裏 Vol.08 - 身近な事例からひも解く人工知能
コンピュータの舞台裏 Vol.08 - 身近な事例からひも解く人工知能
 
Code Contracts の紹介
Code Contracts の紹介Code Contracts の紹介
Code Contracts の紹介
 
SORACOM Technology Camp 2018 ベーシックトラック1 | 事例で整理!IoTソリューションの開発/導入検討の進め方
SORACOM Technology Camp 2018 ベーシックトラック1 | 事例で整理!IoTソリューションの開発/導入検討の進め方SORACOM Technology Camp 2018 ベーシックトラック1 | 事例で整理!IoTソリューションの開発/導入検討の進め方
SORACOM Technology Camp 2018 ベーシックトラック1 | 事例で整理!IoTソリューションの開発/導入検討の進め方
 
デ部会 プロトタイプ
デ部会 プロトタイプデ部会 プロトタイプ
デ部会 プロトタイプ
 
コードを書かずにIoT, IoT without-coding
コードを書かずにIoT, IoT without-codingコードを書かずにIoT, IoT without-coding
コードを書かずにIoT, IoT without-coding
 
30日でできない!コンピューター自作入門 - カーネル/VM探検隊@つくば
30日でできない!コンピューター自作入門 - カーネル/VM探検隊@つくば30日でできない!コンピューター自作入門 - カーネル/VM探検隊@つくば
30日でできない!コンピューター自作入門 - カーネル/VM探検隊@つくば
 
LightSwitch 結局何ができるの
LightSwitch 結局何ができるのLightSwitch 結局何ができるの
LightSwitch 結局何ができるの
 
Bjarne dont speaking
Bjarne dont speakingBjarne dont speaking
Bjarne dont speaking
 
XP祭り関西2011 森崎 修司「プラクティスが有効にはたらく前提は明らかになっていますか?」
XP祭り関西2011 森崎 修司「プラクティスが有効にはたらく前提は明らかになっていますか?」XP祭り関西2011 森崎 修司「プラクティスが有効にはたらく前提は明らかになっていますか?」
XP祭り関西2011 森崎 修司「プラクティスが有効にはたらく前提は明らかになっていますか?」
 
AngulaとElixirの新しい関係
AngulaとElixirの新しい関係AngulaとElixirの新しい関係
AngulaとElixirの新しい関係
 
ChainerでDeep Learningを試す為に必要なこと
ChainerでDeep Learningを試す為に必要なことChainerでDeep Learningを試す為に必要なこと
ChainerでDeep Learningを試す為に必要なこと
 
What's TMCN?
What's TMCN?What's TMCN?
What's TMCN?
 
テクノアカデミー郡山 現役ソフトウェアエンジニアが語る。IT の今と未来
テクノアカデミー郡山 現役ソフトウェアエンジニアが語る。IT の今と未来テクノアカデミー郡山 現役ソフトウェアエンジニアが語る。IT の今と未来
テクノアカデミー郡山 現役ソフトウェアエンジニアが語る。IT の今と未来
 
Pythonによる機械学習入門〜基礎からDeep Learningまで〜
Pythonによる機械学習入門〜基礎からDeep Learningまで〜Pythonによる機械学習入門〜基礎からDeep Learningまで〜
Pythonによる機械学習入門〜基礎からDeep Learningまで〜
 
ChainerでDeep Learningを試すために必要なこと
ChainerでDeep Learningを試すために必要なことChainerでDeep Learningを試すために必要なこと
ChainerでDeep Learningを試すために必要なこと
 

More from Daisuke Nagata

iOSDC Japan 2019 Reject Conference days1[非公式]
iOSDC Japan 2019 Reject Conference days1[非公式]iOSDC Japan 2019 Reject Conference days1[非公式]
iOSDC Japan 2019 Reject Conference days1[非公式]Daisuke Nagata
 
Swift love party _meeting_materials
Swift love party _meeting_materialsSwift love party _meeting_materials
Swift love party _meeting_materialsDaisuke Nagata
 
Metalプログラミング
MetalプログラミングMetalプログラミング
MetalプログラミングDaisuke Nagata
 
Swiftプログラミングを考える
Swiftプログラミングを考えるSwiftプログラミングを考える
Swiftプログラミングを考えるDaisuke Nagata
 
Realm,rx swift,repro を使ってみて
Realm,rx swift,repro を使ってみてRealm,rx swift,repro を使ってみて
Realm,rx swift,repro を使ってみてDaisuke Nagata
 
Sansan様 登壇資料
Sansan様 登壇資料Sansan様 登壇資料
Sansan様 登壇資料Daisuke Nagata
 
クラスメソッド第4回登壇資料 RxRealm
クラスメソッド第4回登壇資料 RxRealmクラスメソッド第4回登壇資料 RxRealm
クラスメソッド第4回登壇資料 RxRealmDaisuke Nagata
 
Rx swift,Repro framewolrk
Rx swift,Repro framewolrkRx swift,Repro framewolrk
Rx swift,Repro framewolrkDaisuke Nagata
 
キャリアとアプリの アップデート
キャリアとアプリの アップデートキャリアとアプリの アップデート
キャリアとアプリの アップデートDaisuke Nagata
 

More from Daisuke Nagata (12)

iOSDC Japan 2019 Reject Conference days1[非公式]
iOSDC Japan 2019 Reject Conference days1[非公式]iOSDC Japan 2019 Reject Conference days1[非公式]
iOSDC Japan 2019 Reject Conference days1[非公式]
 
Swift love party _meeting_materials
Swift love party _meeting_materialsSwift love party _meeting_materials
Swift love party _meeting_materials
 
Swift愛好会vol37
Swift愛好会vol37Swift愛好会vol37
Swift愛好会vol37
 
Ios machine learning
Ios machine learningIos machine learning
Ios machine learning
 
Metalプログラミング
MetalプログラミングMetalプログラミング
Metalプログラミング
 
Swiftプログラミングを考える
Swiftプログラミングを考えるSwiftプログラミングを考える
Swiftプログラミングを考える
 
Realm,rx swift,repro を使ってみて
Realm,rx swift,repro を使ってみてRealm,rx swift,repro を使ってみて
Realm,rx swift,repro を使ってみて
 
Sansan様 登壇資料
Sansan様 登壇資料Sansan様 登壇資料
Sansan様 登壇資料
 
クラスメソッド第4回登壇資料 RxRealm
クラスメソッド第4回登壇資料 RxRealmクラスメソッド第4回登壇資料 RxRealm
クラスメソッド第4回登壇資料 RxRealm
 
Rx swift,Repro framewolrk
Rx swift,Repro framewolrkRx swift,Repro framewolrk
Rx swift,Repro framewolrk
 
Realm meet up #17
Realm meet up #17Realm meet up #17
Realm meet up #17
 
キャリアとアプリの アップデート
キャリアとアプリの アップデートキャリアとアプリの アップデート
キャリアとアプリの アップデート
 

実践業務を爆速でこなすtipsとgenerics