Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
20170915-kanjava
Search
KINOKO Matsumoto
September 15, 2017
Programming
0
850
20170915-kanjava
Swiftはろーわーるど・・・のついでにアプリ作ってみた
KINOKO Matsumoto
September 15, 2017
Tweet
Share
More Decks by KINOKO Matsumoto
See All by KINOKO Matsumoto
プログラミング教育のコスパの話
superkinoko
0
190
きのこがこの先生きのこるためにきのこ先生になった話
superkinoko
0
140
鯛焼きの是非 その限界について
superkinoko
0
1.8k
エンジニアをしていてよかった3つのこと
superkinoko
0
110
Dockerってなんやねん
superkinoko
0
510
20180630-アンケート
superkinoko
0
340
20170212勉強会資料
superkinoko
0
530
Other Decks in Programming
See All in Programming
なぜGoのジェネリクスはこの形なのか? Featherweight Goが明かす設計の核心
ryotaros
7
1k
ててべんす独演会〜Flowの全てを語ります〜
tbsten
1
220
AIで開発生産性を上げる個人とチームの取り組み
taniigo
0
130
AI Coding Meetup #3 - 導入セッション / ai-coding-meetup-3
izumin5210
0
590
(Extension DC 2025) Actor境界を越える技術
teamhimeh
1
220
Conquering Massive Traffic Spikes in Ruby Applications with Pitchfork
riseshia
0
150
GraphQL×Railsアプリのデータベース負荷分散 - 月間3,000万人利用サービスを無停止で
koxya
1
1.1k
そのpreloadは必要?見過ごされたpreloadが技術的負債として爆発した日
mugitti9
2
3k
NetworkXとGNNで学ぶグラフデータ分析入門〜複雑な関係性を解き明かすPythonの力〜
mhrtech
3
1k
Django Ninja による API 開発効率化とリプレースの実践
kashewnuts
0
930
『毎日の移動』を支えるGoバックエンド内製開発
yutautsugi
2
180
プログラマのための作曲入門
cheebow
0
540
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
185
22k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
30
2.9k
Side Projects
sachag
455
43k
Build your cross-platform service in a week with App Engine
jlugia
232
18k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.7k
A Modern Web Designer's Workflow
chriscoyier
697
190k
Agile that works and the tools we love
rasmusluckow
331
21k
Raft: Consensus for Rubyists
vanstee
139
7.1k
The Invisible Side of Design
smashingmag
301
51k
The Power of CSS Pseudo Elements
geoffreycrofte
79
6k
Documentation Writing (for coders)
carmenintech
75
5k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.2k
Transcript
4XJGUΖʔΘʔΔͲ …のついでにアプリ作ってみた By 松本キノコ
キノコってどんなやつ? • 子持ちひとづま0x25歳 – 9歳と7歳の娘がいます • いちおうエンジニアっぽい – 「うえだうえおうぇあ」でゆる〜くリ モート勤務とか
– たまに「きのこでーた」名義でフ リーランスっぽいことしたり – 最近は子供のプログラミング教育 に力を入れていたり
親子で やってます むすめ まっつーのマインクラフト キノコせんせいの プログラミングきょうしつ
今日は 作ったものを紹介する・・・ ということで
作品 〜料理〜 #キノコ亭
作品 〜DIY・クラフト〜 #キノコ工務店
製作 つぶやく Dropbox iPhoneで撮影 Twitter カメラアップロードに自動保存
Dropboxの「カメラアップロード」が・・・ • いろんな写真が数年分 • 時々バックアップに移すも、それぞれのフォルダ が数千枚 • 一覧を出すだけでも相当の通信量 • お目当ての画像を探すのにひと苦労
• 手動で整理するとか、考えただけでも死ぬ
製作 つぶやく Dropbox iPhoneで撮影 Twitter ハッシュタグで振り分けて保存 ついでにfacebook
製作 つぶやく Dropbox iPhoneで撮影 Twitter ハッシュタグで振り分けて保存 ついでにfacebook こんなアプリが あったらいい なぁ・・・
アプリがないなら アプリを作れば いいじゃない
ちょうどその折・・・ 仕事でSwiftの勉強をすることになった
よし、作ろう
Swiftはろーわーるど • Kotlinによく似た雰囲気 – extensionめっちゃ便利 – null安全 – 後方互換はほぼ無いが、Xcodeでだいたい修正し てくれる
言語としてのSwift3はとても良い
Xcodeは◯◯ • Swift3のリファクタリングができない – 純正でそれってアリなん? • IntelliJ IDEAに慣れていると、コード補完などが モッサリ感じる –
IntelliJが神なだけかもしれない • とりあえず使いにくい – とりあえずXcodeディスっとけみたいな風潮 • UIだけXcodeのstoryboardで作り込んで、 appcodeを使うといいかもしれない – Jetbrainsは神
とはいえ・・・ • Xcodeのstoryboardは(個人的には)好き – UIで作り込める部分と、コードで作り込める部分 のバランスがいい感じ – UI関係はUIで、機能はコードで
参考にした本① • 手を動かしながら学べる – 初めから最後まで、実際に使え るサンプルアプリを作りながら の学習 • アプリのボリューム調整がす ばらしく、飽きない
– 成功体験が多く積める • 文法の細かい部分は説明不 足感 – 入門書には向いているが、一歩 踏み込むには足りない ISBN: 978-4-7973-8714-8
参考にした本② • 会社から与えられた本 – いわゆる入門書 • 可もなければ不可もない – いわゆる入門書 •
「これからつくる〜」の副読書 としてはちょうど良かった – 文法はかなり詳しく網羅されて いる ISBN: 978-4-8007-1148-9
参考にした本③ • 入門書を一通り読み終えた後 に読むと良い本 – 入門で読むにはしんどい • 言語仕様、文法を徹底解説 – 公開に堪えるアプリを作るなら
必読 – UIについては殆ど触れていない – 「Swift3」でコードを書くことに フォーカスしている ISBN: 978-4-7973-9053-7
色々ありつつ・・・ なんとか個人使用に耐えられる レベルに
もしかしたら これ 需要あるのでは 幻想であると気づくのは ずっと後のことである よし、AppStoreに登録だ
アプリを公開するにあたって 変えたところ • UIを作り込む – 専門家にお願いしていい感じに • とても些細なバグ・不具合を修正する – 自分では起こさないし起こっても気にならないけ
どね・・・っていうやつ – 手持ちの環境で再現できないバグ辛い • iPhoneSE以外の端末にも対応する – サイズによる見え方の違いや操作性にも気を遣 う
ある問題が・・・ UIがダサい!!!!!!
餅は餅屋 領分外のことは専門家に任せる →デザイナーの友人にお願いしました https://www.facebook.com/moyorinodesign/
結果
Before After 쎁쎪썿썛썝썪썿썾썮쎞썝ʂʂʂ
それでは実際のアプリをご覧ください メシシェア https://appsto.re/jp/U5aWjb.i
アプリを公開して大変だったこと • Developerライセンスが高い – 完全に赤字 • 些細なバグでも修正しなければならない – 「仕様です」と言いたい –
手元の環境では再現できないバグの報告 • ITunesConnectを見ては落ち込む日々 – マーケティング能力isどこ • サポートページを作らないといけない – プライバシーポリシーなど、必須事項も • APIによっては別口での申請が必要 – Facebookの申請が通っていないままアプリをリリースして、 Facebookに投稿できず、早速お詫びを流す羽目に
アプリを公開してよかったこと • アプリが名刺代わりになる • 技術力が飛躍的に上がる • やりきることで自信がつく
収益は・・・ 375 2010 2227 2551 2551 375 1635 217 324
0 0 500 1000 1500 2000 2500 3000 5 6 7 8 9 累積広告収入 月別広告収入
ぐぅ鬼畜 広告収入方式より、広告なし有料配布 の方が良かったかも
今後 • Android版の製作 – Kotlinで書けるようになれば、Swiftのコードを使い まわせるのでは?? • 「メシシェア」サポートページの充実 • 娘のお小遣い承認システムを作りたい
– (Firebase+JSかなぁ)
どうぞ気兼ねなくお声掛け下さい♡ ご静聴ありがとうございました