Enviar pesquisa
Carregar
Oss written in swift
•
Transferir como PPTX, PDF
•
0 gostou
•
1,699 visualizações
Yuki Asai
Seguir
オープンソースライブラリ研究会
Leia menos
Leia mais
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 21
Baixar agora
Recomendados
Introduction of ios-chart in oss-labs#3
Introduction of ios-chart in oss-labs#3
Daisuke Yamashita
できることから始めるOss活動
できることから始めるOss活動
Motoki Narita
ラズパイのおすすめレシピ
ラズパイのおすすめレシピ
ishikawa akira
ゆとりエンジニア交流会_20130706
ゆとりエンジニア交流会_20130706
拓 小林
Swift勉強会2
Swift勉強会2
Hikari Yanagihara
Swiftvol.1
Swiftvol.1
Hikari Yanagihara
サイタマッパー活動報告2015
サイタマッパー活動報告2015
Kazuho Ohta
Swiftで初アプリリリースしてみて振り返り
Swiftで初アプリリリースしてみて振り返り
Hikari Yanagihara
Recomendados
Introduction of ios-chart in oss-labs#3
Introduction of ios-chart in oss-labs#3
Daisuke Yamashita
できることから始めるOss活動
できることから始めるOss活動
Motoki Narita
ラズパイのおすすめレシピ
ラズパイのおすすめレシピ
ishikawa akira
ゆとりエンジニア交流会_20130706
ゆとりエンジニア交流会_20130706
拓 小林
Swift勉強会2
Swift勉強会2
Hikari Yanagihara
Swiftvol.1
Swiftvol.1
Hikari Yanagihara
サイタマッパー活動報告2015
サイタマッパー活動報告2015
Kazuho Ohta
Swiftで初アプリリリースしてみて振り返り
Swiftで初アプリリリースしてみて振り返り
Hikari Yanagihara
IoT初心者(ゥソ)なのでLチカしてみた。
IoT初心者(ゥソ)なのでLチカしてみた。
Takayuki Sugiura
20190531 「運用自動化」のモデルを考える
20190531 「運用自動化」のモデルを考える
Yoshikazu GOTO
クソアプリ作った
クソアプリ作った
Yoshiaki Kitamura
iOSでのFramework導入のおさらい #関モバ
iOSでのFramework導入のおさらい #関モバ
Syo Ikeda
SwiftでAndroidアプリ書けるってよ
SwiftでAndroidアプリ書けるってよ
Syo Ikeda
はじめてのブログ論 Ver臼杵
はじめてのブログ論 Ver臼杵
Shoji Endo
ANSIBLE_KEEP_REMOTE_FILESをTrueにしてみよう!
ANSIBLE_KEEP_REMOTE_FILESをTrueにしてみよう!
Hideki Saito
俺のZabbixがこんなに可愛いわけがない~北海道巡業編~
俺のZabbixがこんなに可愛いわけがない~北海道巡業編~
Seiichiro Ishida
bootsnapはどれくらい早くなるのか
bootsnapはどれくらい早くなるのか
ota42y
ios_startup
ios_startup
Yusuke Arai
増井雄一郎の「wri.pe」を事例に学ぶ、自作サービスの作り方〜サービスデザイン編 先生:増井 雄一郎
増井雄一郎の「wri.pe」を事例に学ぶ、自作サービスの作り方〜サービスデザイン編 先生:増井 雄一郎
schoowebcampus
Router module in VIPER Architecture
Router module in VIPER Architecture
Keisuke Yamaguchi
取り柄のないボクがGinza.rb、社内勉強会、技術書典の出展とか、なんでやってるんだっけ?
取り柄のないボクがGinza.rb、社内勉強会、技術書典の出展とか、なんでやってるんだっけ?
Ken-ichi Kudo
アイマス駆動開発 #shinjukurb
アイマス駆動開発 #shinjukurb
treby
ObjectMapperでJSONマッピング
ObjectMapperでJSONマッピング
Syo Ikeda
デザイナー視点から見たWeb開発する人々
デザイナー視点から見たWeb開発する人々
Miho Matsui
Himotoki: A type-safe JSON decoding library #関モバ
Himotoki: A type-safe JSON decoding library #関モバ
Syo Ikeda
みんな!わちゃわちゃしようぜ!UiPathわちゃわちゃ会inOsaka活動報告
みんな!わちゃわちゃしようぜ!UiPathわちゃわちゃ会inOsaka活動報告
TaichiroHayakawa
キーボード操作をもっと極めたいという件に関して
キーボード操作をもっと極めたいという件に関して
Masataka Kondo
20131216 Android App Inventor and LEGO Robot Mindstorms
20131216 Android App Inventor and LEGO Robot Mindstorms
Kenichi Ohwada
デザイナー→Webエンジニア→iOSエンジニアと渡り歩いた僕なりのSwiftとの向き合い方と生かす戦略
デザイナー→Webエンジニア→iOSエンジニアと渡り歩いた僕なりのSwiftとの向き合い方と生かす戦略
Fumiya Sakai
オプショナル型。〜なんとなく付ける ! ? 撲滅〜 改訂版
オプショナル型。〜なんとなく付ける ! ? 撲滅〜 改訂版
Tomoki Hasegawa
Mais conteúdo relacionado
Mais procurados
IoT初心者(ゥソ)なのでLチカしてみた。
IoT初心者(ゥソ)なのでLチカしてみた。
Takayuki Sugiura
20190531 「運用自動化」のモデルを考える
20190531 「運用自動化」のモデルを考える
Yoshikazu GOTO
クソアプリ作った
クソアプリ作った
Yoshiaki Kitamura
iOSでのFramework導入のおさらい #関モバ
iOSでのFramework導入のおさらい #関モバ
Syo Ikeda
SwiftでAndroidアプリ書けるってよ
SwiftでAndroidアプリ書けるってよ
Syo Ikeda
はじめてのブログ論 Ver臼杵
はじめてのブログ論 Ver臼杵
Shoji Endo
ANSIBLE_KEEP_REMOTE_FILESをTrueにしてみよう!
ANSIBLE_KEEP_REMOTE_FILESをTrueにしてみよう!
Hideki Saito
俺のZabbixがこんなに可愛いわけがない~北海道巡業編~
俺のZabbixがこんなに可愛いわけがない~北海道巡業編~
Seiichiro Ishida
bootsnapはどれくらい早くなるのか
bootsnapはどれくらい早くなるのか
ota42y
ios_startup
ios_startup
Yusuke Arai
増井雄一郎の「wri.pe」を事例に学ぶ、自作サービスの作り方〜サービスデザイン編 先生:増井 雄一郎
増井雄一郎の「wri.pe」を事例に学ぶ、自作サービスの作り方〜サービスデザイン編 先生:増井 雄一郎
schoowebcampus
Router module in VIPER Architecture
Router module in VIPER Architecture
Keisuke Yamaguchi
取り柄のないボクがGinza.rb、社内勉強会、技術書典の出展とか、なんでやってるんだっけ?
取り柄のないボクがGinza.rb、社内勉強会、技術書典の出展とか、なんでやってるんだっけ?
Ken-ichi Kudo
アイマス駆動開発 #shinjukurb
アイマス駆動開発 #shinjukurb
treby
ObjectMapperでJSONマッピング
ObjectMapperでJSONマッピング
Syo Ikeda
デザイナー視点から見たWeb開発する人々
デザイナー視点から見たWeb開発する人々
Miho Matsui
Himotoki: A type-safe JSON decoding library #関モバ
Himotoki: A type-safe JSON decoding library #関モバ
Syo Ikeda
みんな!わちゃわちゃしようぜ!UiPathわちゃわちゃ会inOsaka活動報告
みんな!わちゃわちゃしようぜ!UiPathわちゃわちゃ会inOsaka活動報告
TaichiroHayakawa
キーボード操作をもっと極めたいという件に関して
キーボード操作をもっと極めたいという件に関して
Masataka Kondo
20131216 Android App Inventor and LEGO Robot Mindstorms
20131216 Android App Inventor and LEGO Robot Mindstorms
Kenichi Ohwada
Mais procurados
(20)
IoT初心者(ゥソ)なのでLチカしてみた。
IoT初心者(ゥソ)なのでLチカしてみた。
20190531 「運用自動化」のモデルを考える
20190531 「運用自動化」のモデルを考える
クソアプリ作った
クソアプリ作った
iOSでのFramework導入のおさらい #関モバ
iOSでのFramework導入のおさらい #関モバ
SwiftでAndroidアプリ書けるってよ
SwiftでAndroidアプリ書けるってよ
はじめてのブログ論 Ver臼杵
はじめてのブログ論 Ver臼杵
ANSIBLE_KEEP_REMOTE_FILESをTrueにしてみよう!
ANSIBLE_KEEP_REMOTE_FILESをTrueにしてみよう!
俺のZabbixがこんなに可愛いわけがない~北海道巡業編~
俺のZabbixがこんなに可愛いわけがない~北海道巡業編~
bootsnapはどれくらい早くなるのか
bootsnapはどれくらい早くなるのか
ios_startup
ios_startup
増井雄一郎の「wri.pe」を事例に学ぶ、自作サービスの作り方〜サービスデザイン編 先生:増井 雄一郎
増井雄一郎の「wri.pe」を事例に学ぶ、自作サービスの作り方〜サービスデザイン編 先生:増井 雄一郎
Router module in VIPER Architecture
Router module in VIPER Architecture
取り柄のないボクがGinza.rb、社内勉強会、技術書典の出展とか、なんでやってるんだっけ?
取り柄のないボクがGinza.rb、社内勉強会、技術書典の出展とか、なんでやってるんだっけ?
アイマス駆動開発 #shinjukurb
アイマス駆動開発 #shinjukurb
ObjectMapperでJSONマッピング
ObjectMapperでJSONマッピング
デザイナー視点から見たWeb開発する人々
デザイナー視点から見たWeb開発する人々
Himotoki: A type-safe JSON decoding library #関モバ
Himotoki: A type-safe JSON decoding library #関モバ
みんな!わちゃわちゃしようぜ!UiPathわちゃわちゃ会inOsaka活動報告
みんな!わちゃわちゃしようぜ!UiPathわちゃわちゃ会inOsaka活動報告
キーボード操作をもっと極めたいという件に関して
キーボード操作をもっと極めたいという件に関して
20131216 Android App Inventor and LEGO Robot Mindstorms
20131216 Android App Inventor and LEGO Robot Mindstorms
Semelhante a Oss written in swift
デザイナー→Webエンジニア→iOSエンジニアと渡り歩いた僕なりのSwiftとの向き合い方と生かす戦略
デザイナー→Webエンジニア→iOSエンジニアと渡り歩いた僕なりのSwiftとの向き合い方と生かす戦略
Fumiya Sakai
オプショナル型。〜なんとなく付ける ! ? 撲滅〜 改訂版
オプショナル型。〜なんとなく付ける ! ? 撲滅〜 改訂版
Tomoki Hasegawa
SwiftでSioriを開発した体験記
SwiftでSioriを開発した体験記
yohei sugigami
Swift Scriptingのすゝめ
Swift Scriptingのすゝめ
Yuichiro Takahashi
iOSアプリUIとの触れ合いと歩む僕なりのSwiftの楽しみ方
iOSアプリUIとの触れ合いと歩む僕なりのSwiftの楽しみ方
Fumiya Sakai
カスタムトランジションやジェスチャーを生かしたUIの実装ポイント
カスタムトランジションやジェスチャーを生かしたUIの実装ポイント
Fumiya Sakai
Swiftビギナーズ勉強会 第1回 @Co-Edo
Swiftビギナーズ勉強会 第1回 @Co-Edo
Megumi Otani(Czenhe)
アドベント2015ios基礎
アドベント2015ios基礎
ppengotsu Name
iOS豆知識ver0.0.5
iOS豆知識ver0.0.5
ppengotsu Name
多人数iOSアプリ開発を考える
多人数iOSアプリ開発を考える
sasaron 397
20150514 android
20150514 android
Fujimura Munehiko
iOSアプリ開発で意識すると役立ちそうな「つなぎ目」の部分について
iOSアプリ開発で意識すると役立ちそうな「つなぎ目」の部分について
Fumiya Sakai
第1回 コデアルiOSアプリ勉強会
第1回 コデアルiOSアプリ勉強会
codeal
SwiftによるiOS開発再入門
SwiftによるiOS開発再入門
Tomoki Hasegawa
ライブラリでよくある動きをUIKitのみでDIYしてみる(Part1)
ライブラリでよくある動きをUIKitのみでDIYしてみる(Part1)
Fumiya Sakai
UIPageViewControllerとContainerViewでこんな見た目を実現するTips
UIPageViewControllerとContainerViewでこんな見た目を実現するTips
Fumiya Sakai
あのアプリの動きをUIKitのみでDIYしてみる(part2)
あのアプリの動きをUIKitのみでDIYしてみる(part2)
Fumiya Sakai
Source kittenについて
Source kittenについて
佐藤 俊太郎
できる!スマホアプリ:Webからはじまるアプリ for CMU16
できる!スマホアプリ:Webからはじまるアプリ for CMU16
Masami Yabushita
iOSアプリで気になった動きや表現を上手にアレンジして活用してみる
iOSアプリで気になった動きや表現を上手にアレンジして活用してみる
Fumiya Sakai
Semelhante a Oss written in swift
(20)
デザイナー→Webエンジニア→iOSエンジニアと渡り歩いた僕なりのSwiftとの向き合い方と生かす戦略
デザイナー→Webエンジニア→iOSエンジニアと渡り歩いた僕なりのSwiftとの向き合い方と生かす戦略
オプショナル型。〜なんとなく付ける ! ? 撲滅〜 改訂版
オプショナル型。〜なんとなく付ける ! ? 撲滅〜 改訂版
SwiftでSioriを開発した体験記
SwiftでSioriを開発した体験記
Swift Scriptingのすゝめ
Swift Scriptingのすゝめ
iOSアプリUIとの触れ合いと歩む僕なりのSwiftの楽しみ方
iOSアプリUIとの触れ合いと歩む僕なりのSwiftの楽しみ方
カスタムトランジションやジェスチャーを生かしたUIの実装ポイント
カスタムトランジションやジェスチャーを生かしたUIの実装ポイント
Swiftビギナーズ勉強会 第1回 @Co-Edo
Swiftビギナーズ勉強会 第1回 @Co-Edo
アドベント2015ios基礎
アドベント2015ios基礎
iOS豆知識ver0.0.5
iOS豆知識ver0.0.5
多人数iOSアプリ開発を考える
多人数iOSアプリ開発を考える
20150514 android
20150514 android
iOSアプリ開発で意識すると役立ちそうな「つなぎ目」の部分について
iOSアプリ開発で意識すると役立ちそうな「つなぎ目」の部分について
第1回 コデアルiOSアプリ勉強会
第1回 コデアルiOSアプリ勉強会
SwiftによるiOS開発再入門
SwiftによるiOS開発再入門
ライブラリでよくある動きをUIKitのみでDIYしてみる(Part1)
ライブラリでよくある動きをUIKitのみでDIYしてみる(Part1)
UIPageViewControllerとContainerViewでこんな見た目を実現するTips
UIPageViewControllerとContainerViewでこんな見た目を実現するTips
あのアプリの動きをUIKitのみでDIYしてみる(part2)
あのアプリの動きをUIKitのみでDIYしてみる(part2)
Source kittenについて
Source kittenについて
できる!スマホアプリ:Webからはじまるアプリ for CMU16
できる!スマホアプリ:Webからはじまるアプリ for CMU16
iOSアプリで気になった動きや表現を上手にアレンジして活用してみる
iOSアプリで気になった動きや表現を上手にアレンジして活用してみる
Oss written in swift
1.
OSS written in
Swift yukiasai
2.
・浅井勇樹 28歳 ・Github :
yukiasai ・出身:福井県 福井高専 ・今 : 株式会社マネーフォワード ・マネーフォワード - 自動家計簿アプリ ・過去 : 株式会社ナチュラルスタイル ・ZOZOTOWN - ファッション通販アプリ ・WEAR - ファッションコーディネートアプリ ・得意 : iOS ・趣味 : ディズニーランド 自己紹介
3.
日常のコードリーディング ・Trending repositories -
Github ・最近人気のリポジトリランキング ・Search Github - Github ・使い方がわからないクラスがあったらとりあえず検 索 ・みんながどんな使い方をしているかわかる
4.
社内でコードリーディング ・週1でSwiftコードリーディング会を開催 ・全社のiOSエンジニアに知見を共有するのが目的 ・有名どころから自作まで様々 ・Alamofire ・Bond ・ObjectMapper ・SwiftTask ・などなど、、、
5.
最近までOSSをリリースしようとは 思わなかった
6.
弊社技術顧問の松田明さんに 言われたこと
7.
「コミュニティに還元しよう」
8.
「ただ乗りイクナイ」
9.
紹介するOSS ・Shoyu - yukiasai/Shoyu ・UITableViewをもっと簡単に ・Gecco
- yukiasai/Gecco ・ビューにスポットライトをあてたい ・Kaiseki - yukiasai/Kaiseki ・JSONのパースを自動で
10.
すみません半分iOS系です
11.
Shoyu UITableViewをもっと簡単に
12.
UITableViewを普通に使うとこうなる func numberOfSectionsInTableView(tableView: UITableView)
-> Int { return 3 } func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int { switch section { case 0: return 5 case 1: return 3 default: fatalError() } } func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { switch (indexPath.section, indexPath.row) { case (0, _): let cell = tableView.dequeueReusableCellWithIdentifier("MemberCell") as! MemberTableViewCell return cell case (1, _): let cell = tableView.dequeueReusableCellWithIdentifier("GroupCell") as! GroupTableViewCell return cell default: fatalError() } }
13.
UITableViewあるある ・デリゲートメソッドがswitch文(if文)地獄になる ・ビューの見た目とコードの見た目が乖離している ・どのセクションにどのローが表示されているか追うのが 大変 ・switch文を一箇所いじるとほぼ全箇所に影響する ・バグの温床となる可能性が極めて高い ・カスタムセルを使う場合デリゲートメソッド内でいちいちキャ ストしてやる必要がある
14.
Shoyuだとこうなる tableView.source = Source() .createSection
{ section in section.createRows(5) { (_, row: Row<MemberTableViewCell>) in row.height = 52 row.configureCell = { cell, _ in } row.didSelect = { _ in } } } .createSection { section in section.createRows(3) { (_, row: Row<GroupTableViewCell>) in row.height = 52 row.configureCell = { cell, _ in } row.didSelect = { _ in } } } tableView.reloadData()
15.
Shoyuの利点 ・switch文(if文)地獄から開放される ・ビューの見た目とコードの見た目が近い ・セクションの追加、ローの追加がとっても楽ちん
16.
Gecco ビューにスポットライトをあてたい
17.
・こんなのできないの?とよく聞かれる ・円、長方形、角丸長方形をサポート ・ModalViewControllerで表示 ・そうじゃなくてもいい Kaisekiで使われているテクニック
18.
Kaiseki JSONのパースを自動で
19.
Kaisekiを使うとこうなる こんなオブジェクトを宣言 class Object: Entity
{ // Basic let int = Property<Int>() let string = Property<String>() // Array let array = Property<[Bool]>() // Optional let optional = Property<Int?>() // Entity let object = Property<Object?>() } 使い方 let json: [String: AnyObject] = [“int”: 1, “string”: “aaa”, “array”: [true, false], “optional”: null, ....] let obj = Object.fromJSON(json: jsonData) obj.int.value // -> 1 obj.string.value // -> aaa
20.
Kaisekiで使われているテクニック ・Mirrorを用いた自動マッピング ・プロトコルで構造体(Int,Optional,Array)を拡張
21.
Thank you! yukiasai
Baixar agora