Enviar pesquisa
Carregar
【ヒカ☆ラボ】初心者向けSwiftアプリのリファクタリング
•
3 gostaram
•
5,802 visualizações
L
leverages_event
Seguir
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 52
Baixar agora
Baixar para ler offline
Recomendados
Apple審査を一発通過!iOS開発経験0でも出来るじげん流Swift開発のすべて
Apple審査を一発通過!iOS開発経験0でも出来るじげん流Swift開発のすべて
Masaru Gushiken
既存プロジェクトにSwiftLintを導入した話
既存プロジェクトにSwiftLintを導入した話
akatsuki174
【Swift】 それ、enumとstructでやってみましょう!!
【Swift】 それ、enumとstructでやってみましょう!!
Yu Tanaka
Swiftのプロパティオブザーバを使い倒す
Swiftのプロパティオブザーバを使い倒す
Tomoki Hasegawa
はじめてのiOSアプリ開発 ①
はじめてのiOSアプリ開発 ①
Nagamine Hiromasa
iOS豆知識ver0.0.5
iOS豆知識ver0.0.5
ppengotsu Name
少しずつ手厚くして不具合や仕様漏れを防ぐために
少しずつ手厚くして不具合や仕様漏れを防ぐために
Fumiya Sakai
ReactNative + Redux + NativeBaseでつくるサンプル実装をのぞく
ReactNative + Redux + NativeBaseでつくるサンプル実装をのぞく
Fumiya Sakai
Recomendados
Apple審査を一発通過!iOS開発経験0でも出来るじげん流Swift開発のすべて
Apple審査を一発通過!iOS開発経験0でも出来るじげん流Swift開発のすべて
Masaru Gushiken
既存プロジェクトにSwiftLintを導入した話
既存プロジェクトにSwiftLintを導入した話
akatsuki174
【Swift】 それ、enumとstructでやってみましょう!!
【Swift】 それ、enumとstructでやってみましょう!!
Yu Tanaka
Swiftのプロパティオブザーバを使い倒す
Swiftのプロパティオブザーバを使い倒す
Tomoki Hasegawa
はじめてのiOSアプリ開発 ①
はじめてのiOSアプリ開発 ①
Nagamine Hiromasa
iOS豆知識ver0.0.5
iOS豆知識ver0.0.5
ppengotsu Name
少しずつ手厚くして不具合や仕様漏れを防ぐために
少しずつ手厚くして不具合や仕様漏れを防ぐために
Fumiya Sakai
ReactNative + Redux + NativeBaseでつくるサンプル実装をのぞく
ReactNative + Redux + NativeBaseでつくるサンプル実装をのぞく
Fumiya Sakai
Codeigniter3フレームアップデート
Codeigniter3フレームアップデート
tomohiro kitaura
プログラム組んだら負け!実はHTML/CSSだけでできること2015夏
プログラム組んだら負け!実はHTML/CSSだけでできること2015夏
Yusuke Hirao
俺も受託開発〜準委任契約によるふつうのソフトウェア開発〜
俺も受託開発〜準委任契約によるふつうのソフトウェア開発〜
Koichi ITO
Swift afterbeginner
Swift afterbeginner
Kiminari Homma
Swiftだめ自慢Beta5
Swiftだめ自慢Beta5
今城 善矩
Swiftビギナーズ勉強会 第1回 @Co-Edo
Swiftビギナーズ勉強会 第1回 @Co-Edo
Megumi Otani(Czenhe)
Swiftの実際ダメな所
Swiftの実際ダメな所
S_Shimotori
PHPUnitでリファクタリング
PHPUnitでリファクタリング
Takako Miyagawa
Code igniterを初めて使うときにはまった4つのポイント
Code igniterを初めて使うときにはまった4つのポイント
noldor
エンドツーエンドテストを自動化したらチームがすごく良くなった@XPまつり2015LT
エンドツーエンドテストを自動化したらチームがすごく良くなった@XPまつり2015LT
Taichi Watanabe
Swift 1.2からSwift 2への移行 #cocoa_kansai
Swift 1.2からSwift 2への移行 #cocoa_kansai
Syo Ikeda
Swiftビギナーズ倶楽部 vol.2
Swiftビギナーズ倶楽部 vol.2
Kanako Kobayashi
オプショナル型。〜なんとなく付ける ! ? 撲滅〜 改訂版
オプショナル型。〜なんとなく付ける ! ? 撲滅〜 改訂版
Tomoki Hasegawa
PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9
PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9
Hiroshi Toda
Win32 APIをてなずけよう
Win32 APIをてなずけよう
Kouji Matsui
ほんわかSwift勉強資料
ほんわかSwift勉強資料
kouhei kawamata
Swift afterbeginner
Swift afterbeginner
Kiminari Homma
Xcode and iTC submission topics
Xcode and iTC submission topics
Syo Ikeda
CodeIgniter をモダンに改造してみた
CodeIgniter をモダンに改造してみた
Masaru Matsuo
iOSアプリ開発のテスト環境 - テストをはじめる最初の一歩 -
iOSアプリ開発のテスト環境 - テストをはじめる最初の一歩 -
Toshiyuki Hirata
ブランディングエンジニア資料
ブランディングエンジニア資料
Masaru Gushiken
Swiftビギナーズ
Swiftビギナーズ
Masaru Gushiken
Mais conteúdo relacionado
Mais procurados
Codeigniter3フレームアップデート
Codeigniter3フレームアップデート
tomohiro kitaura
プログラム組んだら負け!実はHTML/CSSだけでできること2015夏
プログラム組んだら負け!実はHTML/CSSだけでできること2015夏
Yusuke Hirao
俺も受託開発〜準委任契約によるふつうのソフトウェア開発〜
俺も受託開発〜準委任契約によるふつうのソフトウェア開発〜
Koichi ITO
Swift afterbeginner
Swift afterbeginner
Kiminari Homma
Swiftだめ自慢Beta5
Swiftだめ自慢Beta5
今城 善矩
Swiftビギナーズ勉強会 第1回 @Co-Edo
Swiftビギナーズ勉強会 第1回 @Co-Edo
Megumi Otani(Czenhe)
Swiftの実際ダメな所
Swiftの実際ダメな所
S_Shimotori
PHPUnitでリファクタリング
PHPUnitでリファクタリング
Takako Miyagawa
Code igniterを初めて使うときにはまった4つのポイント
Code igniterを初めて使うときにはまった4つのポイント
noldor
エンドツーエンドテストを自動化したらチームがすごく良くなった@XPまつり2015LT
エンドツーエンドテストを自動化したらチームがすごく良くなった@XPまつり2015LT
Taichi Watanabe
Swift 1.2からSwift 2への移行 #cocoa_kansai
Swift 1.2からSwift 2への移行 #cocoa_kansai
Syo Ikeda
Swiftビギナーズ倶楽部 vol.2
Swiftビギナーズ倶楽部 vol.2
Kanako Kobayashi
オプショナル型。〜なんとなく付ける ! ? 撲滅〜 改訂版
オプショナル型。〜なんとなく付ける ! ? 撲滅〜 改訂版
Tomoki Hasegawa
PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9
PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9
Hiroshi Toda
Win32 APIをてなずけよう
Win32 APIをてなずけよう
Kouji Matsui
ほんわかSwift勉強資料
ほんわかSwift勉強資料
kouhei kawamata
Swift afterbeginner
Swift afterbeginner
Kiminari Homma
Xcode and iTC submission topics
Xcode and iTC submission topics
Syo Ikeda
CodeIgniter をモダンに改造してみた
CodeIgniter をモダンに改造してみた
Masaru Matsuo
iOSアプリ開発のテスト環境 - テストをはじめる最初の一歩 -
iOSアプリ開発のテスト環境 - テストをはじめる最初の一歩 -
Toshiyuki Hirata
Mais procurados
(20)
Codeigniter3フレームアップデート
Codeigniter3フレームアップデート
プログラム組んだら負け!実はHTML/CSSだけでできること2015夏
プログラム組んだら負け!実はHTML/CSSだけでできること2015夏
俺も受託開発〜準委任契約によるふつうのソフトウェア開発〜
俺も受託開発〜準委任契約によるふつうのソフトウェア開発〜
Swift afterbeginner
Swift afterbeginner
Swiftだめ自慢Beta5
Swiftだめ自慢Beta5
Swiftビギナーズ勉強会 第1回 @Co-Edo
Swiftビギナーズ勉強会 第1回 @Co-Edo
Swiftの実際ダメな所
Swiftの実際ダメな所
PHPUnitでリファクタリング
PHPUnitでリファクタリング
Code igniterを初めて使うときにはまった4つのポイント
Code igniterを初めて使うときにはまった4つのポイント
エンドツーエンドテストを自動化したらチームがすごく良くなった@XPまつり2015LT
エンドツーエンドテストを自動化したらチームがすごく良くなった@XPまつり2015LT
Swift 1.2からSwift 2への移行 #cocoa_kansai
Swift 1.2からSwift 2への移行 #cocoa_kansai
Swiftビギナーズ倶楽部 vol.2
Swiftビギナーズ倶楽部 vol.2
オプショナル型。〜なんとなく付ける ! ? 撲滅〜 改訂版
オプショナル型。〜なんとなく付ける ! ? 撲滅〜 改訂版
PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9
PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9
Win32 APIをてなずけよう
Win32 APIをてなずけよう
ほんわかSwift勉強資料
ほんわかSwift勉強資料
Swift afterbeginner
Swift afterbeginner
Xcode and iTC submission topics
Xcode and iTC submission topics
CodeIgniter をモダンに改造してみた
CodeIgniter をモダンに改造してみた
iOSアプリ開発のテスト環境 - テストをはじめる最初の一歩 -
iOSアプリ開発のテスト環境 - テストをはじめる最初の一歩 -
Semelhante a 【ヒカ☆ラボ】初心者向けSwiftアプリのリファクタリング
ブランディングエンジニア資料
ブランディングエンジニア資料
Masaru Gushiken
Swiftビギナーズ
Swiftビギナーズ
Masaru Gushiken
Yahoo!アフィリエイトソン最優秀賞者に学ぶ Swift講座
Yahoo!アフィリエイトソン最優秀賞者に学ぶ Swift講座
Masaru Gushiken
あなたも出来る!webエンジニアがSwiftでリリースするためにやったこと
あなたも出来る!webエンジニアがSwiftでリリースするためにやったこと
Masaru Gushiken
プロトタイプとMVPの開発上のギャップの大きさ。リンスタ関ヶ原 東軍先鋒 #devlove
プロトタイプとMVPの開発上のギャップの大きさ。リンスタ関ヶ原 東軍先鋒 #devlove
Koichiro Sumi
「なぜクリエイティブ制作は自動化できないのか? 〜広告史を巡って〜」セプテーニ加来幸樹×フクロウラボ林田朋也
「なぜクリエイティブ制作は自動化できないのか? 〜広告史を巡って〜」セプテーニ加来幸樹×フクロウラボ林田朋也
じょいとも
塹壕にいるすべての同朋へ
塹壕にいるすべての同朋へ
toshihiro ichitani
Webエンジニアのサバイバル英会話
Webエンジニアのサバイバル英会話
Jumpei iwamura
リモートチームとふりかえり改善フレームワーク
リモートチームとふりかえり改善フレームワーク
Maehana Tsuyoshi
アジャイルソフトウェア開発の道具箱
アジャイルソフトウェア開発の道具箱
Koichi ITO
Objective-Cプログラマのためのswift導入法
Objective-Cプログラマのためのswift導入法
Tomoki Hasegawa
Photon Enterprise Cloud 事例
Photon Enterprise Cloud 事例
Tomotsune Murata
受託案件を通じてみたWindows8ストアアプリ
受託案件を通じてみたWindows8ストアアプリ
Ikkai Takeshi
【SEOの基本のキホン】title・meta description・h1の付け方講座
【SEOの基本のキホン】title・meta description・h1の付け方講座
ナイル株式会社
UXを損ねる静的コンテンツ配信アンチパターン7選
UXを損ねる静的コンテンツ配信アンチパターン7選
Yuki Okada
受託案件を通じてみたWIndows8ストアアプリ
受託案件を通じてみたWIndows8ストアアプリ
Ikkai Takeshi
20120316 designerworkshoppublished
20120316 designerworkshoppublished
Yoichiro Sakurai
iPhone/Android アプリをまとめて省エネ開発する技術
iPhone/Android アプリをまとめて省エネ開発する技術
vaccho
20120413 nestakabaneworkshop
20120413 nestakabaneworkshop
Yoichiro Sakurai
.NET Lab2022年2月
.NET Lab2022年2月
TomomitsuKusaba
Semelhante a 【ヒカ☆ラボ】初心者向けSwiftアプリのリファクタリング
(20)
ブランディングエンジニア資料
ブランディングエンジニア資料
Swiftビギナーズ
Swiftビギナーズ
Yahoo!アフィリエイトソン最優秀賞者に学ぶ Swift講座
Yahoo!アフィリエイトソン最優秀賞者に学ぶ Swift講座
あなたも出来る!webエンジニアがSwiftでリリースするためにやったこと
あなたも出来る!webエンジニアがSwiftでリリースするためにやったこと
プロトタイプとMVPの開発上のギャップの大きさ。リンスタ関ヶ原 東軍先鋒 #devlove
プロトタイプとMVPの開発上のギャップの大きさ。リンスタ関ヶ原 東軍先鋒 #devlove
「なぜクリエイティブ制作は自動化できないのか? 〜広告史を巡って〜」セプテーニ加来幸樹×フクロウラボ林田朋也
「なぜクリエイティブ制作は自動化できないのか? 〜広告史を巡って〜」セプテーニ加来幸樹×フクロウラボ林田朋也
塹壕にいるすべての同朋へ
塹壕にいるすべての同朋へ
Webエンジニアのサバイバル英会話
Webエンジニアのサバイバル英会話
リモートチームとふりかえり改善フレームワーク
リモートチームとふりかえり改善フレームワーク
アジャイルソフトウェア開発の道具箱
アジャイルソフトウェア開発の道具箱
Objective-Cプログラマのためのswift導入法
Objective-Cプログラマのためのswift導入法
Photon Enterprise Cloud 事例
Photon Enterprise Cloud 事例
受託案件を通じてみたWindows8ストアアプリ
受託案件を通じてみたWindows8ストアアプリ
【SEOの基本のキホン】title・meta description・h1の付け方講座
【SEOの基本のキホン】title・meta description・h1の付け方講座
UXを損ねる静的コンテンツ配信アンチパターン7選
UXを損ねる静的コンテンツ配信アンチパターン7選
受託案件を通じてみたWIndows8ストアアプリ
受託案件を通じてみたWIndows8ストアアプリ
20120316 designerworkshoppublished
20120316 designerworkshoppublished
iPhone/Android アプリをまとめて省エネ開発する技術
iPhone/Android アプリをまとめて省エネ開発する技術
20120413 nestakabaneworkshop
20120413 nestakabaneworkshop
.NET Lab2022年2月
.NET Lab2022年2月
Mais de leverages_event
Ac tsumugu 20170712
Ac tsumugu 20170712
leverages_event
20171206 tsumugu4 人工知能特集_v1.00_抜粋
20171206 tsumugu4 人工知能特集_v1.00_抜粋
leverages_event
【ヒカ☆ラボ】アーキテクト養成講座「入門編」 折田 武己 氏 登壇資料 20171205
【ヒカ☆ラボ】アーキテクト養成講座「入門編」 折田 武己 氏 登壇資料 20171205
leverages_event
【ヒカ☆ラボ】 dely株式会社 梅森 翔氏 登壇資料 20171121
【ヒカ☆ラボ】 dely株式会社 梅森 翔氏 登壇資料 20171121
leverages_event
【ヒカ☆ラボ】 dely株式会社 大竹 雅登氏 登壇資料 20171121
【ヒカ☆ラボ】 dely株式会社 大竹 雅登氏 登壇資料 20171121
leverages_event
【ヒカ☆ラボ】 dely株式会社 深尾 もとのぶ氏 登壇資料 20171121
【ヒカ☆ラボ】 dely株式会社 深尾 もとのぶ氏 登壇資料 20171121
leverages_event
【ヒカ☆ラボ】 dely株式会社 三笠 斉輝氏 登壇資料 20171121
【ヒカ☆ラボ】 dely株式会社 三笠 斉輝氏 登壇資料 20171121
leverages_event
【ヒカ☆ラボ】 株式会社AMG Solution 山口 博史氏登壇資料 20170817
【ヒカ☆ラボ】 株式会社AMG Solution 山口 博史氏登壇資料 20170817
leverages_event
【ヒカ☆ラボ】株式会社ライナフ 登壇資料
【ヒカ☆ラボ】株式会社ライナフ 登壇資料
leverages_event
【ヒカ☆ラボ】株式会社エアー様~ETLツール活用法について~
【ヒカ☆ラボ】株式会社エアー様~ETLツール活用法について~
leverages_event
インスタグラムを活用した、マーケティングについて
インスタグラムを活用した、マーケティングについて
leverages_event
ヒカ☆ラボ ユニティ・テクノロジーズ・ジャパン合同会社 安原 祐二氏登壇資料_20170119
ヒカ☆ラボ ユニティ・テクノロジーズ・ジャパン合同会社 安原 祐二氏登壇資料_20170119
leverages_event
ヒカ☆ラボ 株式会社PR TIMES 山田 和広氏登壇資料 20161129
ヒカ☆ラボ 株式会社PR TIMES 山田 和広氏登壇資料 20161129
leverages_event
ヒカ☆ラボ 株式会社PR TIMES 新井 隆士氏登壇資料 20161129
ヒカ☆ラボ 株式会社PR TIMES 新井 隆士氏登壇資料 20161129
leverages_event
ヒカラボ「自社サービス開発会社で活躍し続けるために必要な○○とは?」開発エンジニア
ヒカラボ「自社サービス開発会社で活躍し続けるために必要な○○とは?」開発エンジニア
leverages_event
ヒカラボ「自社サービス開発会社で活躍し続けるために必要な○○とは?」UIデザイナー
ヒカラボ「自社サービス開発会社で活躍し続けるために必要な○○とは?」UIデザイナー
leverages_event
初心者向けGo言語勉強会
初心者向けGo言語勉強会
leverages_event
DMM.comラボはなぜSparkを採用したのか?レコメンドエンジン開発の裏側をお話します!
DMM.comラボはなぜSparkを採用したのか?レコメンドエンジン開発の裏側をお話します!
leverages_event
Node.js×mongo dbで3年間サービス運用してみた話
Node.js×mongo dbで3年間サービス運用してみた話
leverages_event
株式会社waja 安藤様 登壇資料
株式会社waja 安藤様 登壇資料
leverages_event
Mais de leverages_event
(20)
Ac tsumugu 20170712
Ac tsumugu 20170712
20171206 tsumugu4 人工知能特集_v1.00_抜粋
20171206 tsumugu4 人工知能特集_v1.00_抜粋
【ヒカ☆ラボ】アーキテクト養成講座「入門編」 折田 武己 氏 登壇資料 20171205
【ヒカ☆ラボ】アーキテクト養成講座「入門編」 折田 武己 氏 登壇資料 20171205
【ヒカ☆ラボ】 dely株式会社 梅森 翔氏 登壇資料 20171121
【ヒカ☆ラボ】 dely株式会社 梅森 翔氏 登壇資料 20171121
【ヒカ☆ラボ】 dely株式会社 大竹 雅登氏 登壇資料 20171121
【ヒカ☆ラボ】 dely株式会社 大竹 雅登氏 登壇資料 20171121
【ヒカ☆ラボ】 dely株式会社 深尾 もとのぶ氏 登壇資料 20171121
【ヒカ☆ラボ】 dely株式会社 深尾 もとのぶ氏 登壇資料 20171121
【ヒカ☆ラボ】 dely株式会社 三笠 斉輝氏 登壇資料 20171121
【ヒカ☆ラボ】 dely株式会社 三笠 斉輝氏 登壇資料 20171121
【ヒカ☆ラボ】 株式会社AMG Solution 山口 博史氏登壇資料 20170817
【ヒカ☆ラボ】 株式会社AMG Solution 山口 博史氏登壇資料 20170817
【ヒカ☆ラボ】株式会社ライナフ 登壇資料
【ヒカ☆ラボ】株式会社ライナフ 登壇資料
【ヒカ☆ラボ】株式会社エアー様~ETLツール活用法について~
【ヒカ☆ラボ】株式会社エアー様~ETLツール活用法について~
インスタグラムを活用した、マーケティングについて
インスタグラムを活用した、マーケティングについて
ヒカ☆ラボ ユニティ・テクノロジーズ・ジャパン合同会社 安原 祐二氏登壇資料_20170119
ヒカ☆ラボ ユニティ・テクノロジーズ・ジャパン合同会社 安原 祐二氏登壇資料_20170119
ヒカ☆ラボ 株式会社PR TIMES 山田 和広氏登壇資料 20161129
ヒカ☆ラボ 株式会社PR TIMES 山田 和広氏登壇資料 20161129
ヒカ☆ラボ 株式会社PR TIMES 新井 隆士氏登壇資料 20161129
ヒカ☆ラボ 株式会社PR TIMES 新井 隆士氏登壇資料 20161129
ヒカラボ「自社サービス開発会社で活躍し続けるために必要な○○とは?」開発エンジニア
ヒカラボ「自社サービス開発会社で活躍し続けるために必要な○○とは?」開発エンジニア
ヒカラボ「自社サービス開発会社で活躍し続けるために必要な○○とは?」UIデザイナー
ヒカラボ「自社サービス開発会社で活躍し続けるために必要な○○とは?」UIデザイナー
初心者向けGo言語勉強会
初心者向けGo言語勉強会
DMM.comラボはなぜSparkを採用したのか?レコメンドエンジン開発の裏側をお話します!
DMM.comラボはなぜSparkを採用したのか?レコメンドエンジン開発の裏側をお話します!
Node.js×mongo dbで3年間サービス運用してみた話
Node.js×mongo dbで3年間サービス運用してみた話
株式会社waja 安藤様 登壇資料
株式会社waja 安藤様 登壇資料
【ヒカ☆ラボ】初心者向けSwiftアプリのリファクタリング
1.
初心者向け Swiftアプリの リファクタリング @g08m11
2.
自己紹介
3.
自己紹介 沖縄そば/鶏肉大好きの沖縄出身(28) 趣味はCafe巡り、映画鑑賞 お酒弱いけどお酒好き 暑い所苦手、日焼け苦手 アフィリエイトソン 最優秀賞 2B Hack
企業賞(3社受賞) 10回以上の勉強会や講演会を実施
4.
自己紹介 日立系SIer→Oracleパートナー会社へ 現在は(株)じげんのエンジニア Rails/Swiftの開発がメイン KPIに沿ったGrowth Hackを主導 g08m11でQiitaやってます。 Growth Hack+Webではてなブログやってます。
5.
じげんとは?
6.
じげんとは?
7.
じげんとは?
8.
じげんとは?
9.
• iOS開発、Swift開発を個人で学習してる方 • Swiftで今後もアプリを改善や運用を されていく方 今日のプレゼン対象者
10.
• 基本的なことがメインになっています。 (難しいことはしていません。) • リファクタリング後の生産性の数値など 定量的な数値はありません。 注意
11.
去年アプリを リリースしました!
12.
STEP1 STEP2 AppleSTEP3 Apple STEP4
13.
Gantter
14.
見積もりポーカー
15.
KPT
16.
バーンダウンチャート
17.
詳細はこちらを!
18.
19.
または
20.
「Apple審査 じげん」 で検索
21.
ところが
22.
• ViewControllersが整理されていない • デフォルトの構成(Xcodeの自動生成) に引っ張られ過ぎ •
冗長的な記述による可読性が低下 • キャメルケースと通常の書き方が混在
23.
• ViewControllersにロジック全部書き込ん でいたことでソースの可読性が低下 • 初期化処理の記述が異常に多い •
Array型とDictionary型が混在 • 開発環境と本番環境の差分が 考慮されてない
24.
などなど・・・
25.
オレオレコーディング・・・
26.
このままでは・・・
27.
• 後任者の選定や引き継ぎが困難 • 機能の改善に時間が掛かる •
バグの修正に時間が掛かる • 潜在的なバグが摘めない
28.
開発スピードもサービスも 改善されない
29.
Let s Refactoring!
30.
コーディング規約の策定
31.
• インデントやコメントの書き方 • 変数名や定数名、定数定義の書き方 •
関数やクラスの書き方
32.
例:キャメルケースの統一
33.
参照元:「Swiftコーディング規約@Wantedly」
34.
Stock + 認識のすり合わせ
35.
Xcodeをフル活用
36.
• コーディング規約通りに一括置換 • Info.plistやBuild
Settingsを活用
37.
Info.plist Supported interface orientations GA
ID
38.
Build Settings Debug Release
39.
MVC構成に則る
40.
Xcode MVC
41.
Xcode MVC ViewControllersModels
42.
ViewController Model 意識したこと • Model:アプリケーションの状態を表すもの&状態の加工メ ソッドをまとめたもの •
ViewController:Modelの加工メソッドの操作&Viewの操 作をする人「であり」Modelの状態を参照し視覚表現するもの
43.
ViewController Model Modelでは • 画像の処理はImageManager.swiftというモデルで行う •
GAのカテゴリーやイベントの設定は GoogleAnalyticsManager.swiftというモデルで行う
44.
ViewController Model ViewControllerでは • クリックイベントやナビゲーションボタン押下などのユーザー からの入力に対しての操作 •
modelの関数へ値を渡し、その結果を表示させる。 (ViewControllerのためそのまま表示が可能)
45.
ViewController Model model View
46.
DEMO
47.
デザインパターンを適用する
48.
まとめ
49.
• リリースを急ぎすぎるとつぎはぎのソース になってしまう。 • ちょっとした事でもソースの可読性が格段 に上がる
50.
• ベースとなるコーディング規約はありなが らも自分達に合わせるカスタマイズも大事 • Swiftはデザインパターンを適用しやすい。
51.
• Refactoringは出来るところから始める。 • 遅すぎる技術的負債の還元になる前に、 気づいた所からまずやってみる。
52.
じげんでは絶賛エンジニア/デザイナー募集中です!
Baixar agora