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
820
20170915-kanjava
Swiftはろーわーるど・・・のついでにアプリ作ってみた
KINOKO Matsumoto
September 15, 2017
Tweet
Share
More Decks by KINOKO Matsumoto
See All by KINOKO Matsumoto
プログラミング教育のコスパの話
superkinoko
0
130
きのこがこの先生きのこるためにきのこ先生になった話
superkinoko
0
80
鯛焼きの是非 その限界について
superkinoko
0
1.7k
エンジニアをしていてよかった3つのこと
superkinoko
0
110
Dockerってなんやねん
superkinoko
0
500
20180630-アンケート
superkinoko
0
320
20170212勉強会資料
superkinoko
0
510
Other Decks in Programming
See All in Programming
Fluent UI Blazor 5 (alpha)の紹介
tomokusaba
0
170
AtCoder Heuristic First-step Vol.1 講義スライド(山登り法・焼きなまし法編)
takumi152
4
1k
リストビュー画面UX改善の振り返り
splcywolf
0
110
Develop Faster With FrankenPHP
dunglas
2
3.1k
Unlock the Potential of Swift Code Generation
rockname
0
210
パスキーのすべて / 20250324 iddance Lesson.5
kuralab
0
150
Signal-Based Data FetchingWith the New httpResource
manfredsteyer
PRO
0
150
OpenTelemetryを活用したObservability入門 / Introduction to Observability with OpenTelemetry
seike460
PRO
1
410
Youtube Lofier - Chrome拡張開発
ninikoko
0
2.2k
フロントエンドテストの育て方
quramy
11
2.9k
AHC 044 混合整数計画ソルバー解法
kiri8128
0
320
remix + cloudflare workers (DO) docker上でいい感じに開発する
yoshidatomoaki
0
120
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
94
13k
Fireside Chat
paigeccino
37
3.4k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
30k
Reflections from 52 weeks, 52 projects
jeffersonlam
349
20k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
12k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.3k
A Modern Web Designer's Workflow
chriscoyier
693
190k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
510
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
177
52k
GraphQLの誤解/rethinking-graphql
sonatard
70
10k
The Cost Of JavaScript in 2023
addyosmani
48
7.6k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
8
720
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かなぁ)
どうぞ気兼ねなくお声掛け下さい♡ ご静聴ありがとうございました