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
[発表資料] オブジェクト指向初心者がSwiftでアプリを開発するまで
Search
Satoru Ohguchi
February 16, 2017
Programming
0
570
[発表資料] オブジェクト指向初心者がSwiftでアプリを開発するまで
Swiftでアプリを開発する過程について説明。21頁。
Satoru Ohguchi
February 16, 2017
Tweet
Share
More Decks by Satoru Ohguchi
See All by Satoru Ohguchi
Use the M5Stack with 3G Modem
ochicchi
0
1.8k
Play with M5Stack
ochicchi
1
1.9k
How to study AWS IoT
ochicchi
0
1.1k
How to use OMRON sensors and M5Stack
ochicchi
0
67
IotLT_52-HobbyOmronSensors.pdf
ochicchi
2
780
JAWS-UG Beginner 2018/06/22
ochicchi
0
580
Swift愛好会初心者ハンズオン(vol.31)
ochicchi
0
230
Swift入門者向けハンズオンからの学び
ochicchi
1
400
Swift愛好会 #28
ochicchi
0
550
Other Decks in Programming
See All in Programming
CQRS+ES の力を使って効果を感じる / Feel the effects of using the power of CQRS+ES
seike460
PRO
0
240
Androidアプリの One Experience リリース
nein37
0
1.2k
Alba: Why, How and What's So Interesting
okuramasafumi
0
210
週次リリースを実現するための グローバルアプリ開発
tera_ny
1
1.2k
ecspresso, ecschedule, lambroll を PipeCDプラグインとして動かしてみた (プロトタイプ) / Running ecspresso, ecschedule, and lambroll as PipeCD Plugins (prototype)
tkikuc
2
1.8k
20年もののレガシープロダクトに 0からPHPStanを入れるまで / phpcon2024
hirobe1999
0
1k
Stackless и stackful? Корутины и асинхронность в Go
lamodatech
0
1.3k
為你自己學 Python
eddie
0
520
令和7年版 あなたが使ってよいフロントエンド機能とは
mugi_uno
10
5.2k
PHPとAPI Platformで作る本格的なWeb APIアプリケーション(入門編) / phpcon 2024 Intro to API Platform
ttskch
0
390
ドメインイベント増えすぎ問題
h0r15h0
2
560
どうして手を動かすよりもチーム内のコードレビューを優先するべきなのか
okashoi
3
870
Featured
See All Featured
Side Projects
sachag
452
42k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
28
4.5k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Gamification - CAS2011
davidbonilla
80
5.1k
A Tale of Four Properties
chriscoyier
157
23k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7k
The Language of Interfaces
destraynor
155
24k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
570
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
1.2k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Embracing the Ebb and Flow
colly
84
4.5k
Transcript
オブジェクト指向初心者が、 Swi$でアプリを開発するまで 2017.02.18 Swi$ビギナーズ勉強会 @ファンコミュニケーションズ Satoru Ohguchi
自己紹介 大口 聡(おおぐちさとる) 出身: 北海道札幌市 在住: 埼玉県 仕事: 中堅SIerに在籍するシステムエンジニア。 主に、インフラを中心としたシステム構築のコンサルティング、環境構築支援をしています。 経歴:
ハードウェアエンジニア → 制御SE → 社内SE → ネットワークエンジニア → 現職 趣味: ひたすらコンピューター好きです。趣味で、AWS、Bluemix、VPS、Swift(iOS)、RaspberryPi とか楽しんでます。Swift歴は、勉強初めて、2年弱というところです。 ほかに好きなものは、お酒、音楽鑑賞(クラシック、吹奏楽、ポップスなど)、アニメーショ ン、フィギュアスケート観戦などです。 Twi7er:@o_chcchi Facebook:h7ps://www.facebook.com/ohguchi.satoru Qiita: h7p://qiita.com/o_chicchi Blog: h7p://blog.maripara.org/
去年、ポエムを書きました URL: h7p://qiita.com/o_chicchi/items/80e6a64f24c893bf4882
アプリ作って 公開してますか?
SimonCats というアプリを公開してます
サイモンゲーム 参考: h7ps://www.youtube.com/watch?v=4YhVyt4q5HI 出典: h7ps://ja.wikipedia.org/wiki/%E3%82%B5%E3%82%A4%E3%83%A2%E3%83%B3_(%E3%82%B2%E3%83%BC %E3%83%A0)
最初、考えてみた • ①~④の領域を点滅させて、人がそれを覚えて、ユーザーが 入力するというゲーム • 30年以上前に書かれた書籍の中で、N-BASICのゲームプログラ ムが紹介されていて、動作ロジックは、それが元になっています。 SCORE [ ]
① ② ③ ④
iPhoneの画面にはめ込む ゲームメイン画面案 通常のSimonのゲーム 普通は、4個なのですが、 拡張して、8個にしています。 ゲームは合間にやる前提と いうことから、中断と、Give Up も設ける
悩ましいこと • 自分のアプリのアイディアを何に するか • どうやって製作時間を確保する か
アイディアを考える • 実は作りたいものがある。 – そういう人は、すぐに作りましょう。 • ブレーンストーミング – とりあえず、時間を決めて(ex.10分)、考えられるだけ 書き出して、そこから選んでみる。
• まわりに相談してみる – 自分の草案のアイディアを見せて、時間を決めてアイ ディア出しのお手伝いをお願いしてみる。
設計過程で考えたこと • できるだけシンプルに設計する。 – 完成出来なかったら、心が折れる。 • サンプルアプリケーションの画面構成を真似 てみる。 – 何事も真似からだと思うので。 • プロトタイピングをして実現性を考える。
– 絵を描きました。
時間の確保 • 会社員には有給休暇というものがあります! • 年末や、夏休みというのもあります! • 自分は、調整して3日間まとめて使える期間を確 保しました。 • プログラミング合宿というのもあるので、それも
選択肢と思います。
None
この本であれば、Swi$ 3.0 対応で学習できます。
技術要素 • エクステンションを使って枠線付きボタンを、 StoryBoard で描く • Admob の広告処理をSwi$で記述 • 可愛らしいイラスト
• サウンド処理 • 多言語対応(英語、日本語)
技術要素 • iOSでボタンやラベルの枠線を Storyboard で 簡単に描く方法 – h7p://qiita.com/o_chicchi/items/ c4469e956c2118226a2d • Admobの広告をSwi$で表示する
– h7p://qiita.com/o_chicchi/items/ da8ebfd1d4536f29398b
素材について • 友人に原画を描いてもらって、CLIP STUDIO、 PhotoShop Elements で加工して、プログラム 内で使用しています。 • 音の素材については、「魔王魂」「ポケットサ
ウンド」から使用しています。 – 利用規約については、注意しましょう。
多言語対応 • 実は、密かに、英語に対応しています。 – プログラムとは別な意味で苦労しました。 • より適した表現を、実際にアプリを見て貰いながら、詳 しい人にアドバイス頂いて表現を練りました。 • 英訳したことで、日本語表現のよくないところも見つ かったりして、全体的に見直したところもあります。
– 他の言語への対応もしてみたいと思っています。
Swi$3.0対応 • 先日、Swi$3.0対応もしました。 – 基本的には、自動で置き換えてくれる機能を使いまし た。 – 勝手に、“NS” が全て削除されると思ってましたが、全 てではなかったので、余計なところも消してしまい悩
む結果に。 – 当初の Admob のライブラリの入れ方が悪く、解決で きないエラー多発で、結局、プロジェクトを作り直して、 再構成しました。 – AVPlayerLayer の使い方が変わっていました。使い方 を見直しました。
オブジェクト指向プログラミングに向けて • 実は、動くこと優先で、オブジェクト指向を置 き去りにしてコードを書いている部分がたくさ んあります。 • 正しい書き方をもっと勉強して、よりよいコー ドにリファクタリングしていくことが当面の目標 です。
Thank you !