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
690
0
Share
[発表資料] オブジェクト指向初心者がSwiftでアプリを開発するまで
Swiftでアプリを開発する過程について説明。21頁。
Satoru Ohguchi
February 16, 2017
More Decks by Satoru Ohguchi
See All by Satoru Ohguchi
Use the M5Stack with 3G Modem
ochicchi
0
2.2k
Play with M5Stack
ochicchi
1
2.1k
How to study AWS IoT
ochicchi
0
1.1k
How to use OMRON sensors and M5Stack
ochicchi
0
93
IotLT_52-HobbyOmronSensors.pdf
ochicchi
2
800
JAWS-UG Beginner 2018/06/22
ochicchi
0
610
Swift愛好会初心者ハンズオン(vol.31)
ochicchi
0
260
Swift入門者向けハンズオンからの学び
ochicchi
1
440
Swift愛好会 #28
ochicchi
0
570
Other Decks in Programming
See All in Programming
Claude Codeをカスタムして自分だけのClaude Codeを作ろう
terisuke
0
130
tRPCの概要と少しだけパフォーマンス
misoton665
2
190
AI時代のエンジニアリングの原則 / Engineering Principles in the AI Era
haru860
0
250
Claude Code × Gemini × Ebitengine ゲーム制作素人WebエンジニアがGoでゲームを作った話
webzawa
0
130
SkillがSkillを生む:QA観点出しを自動化した
sontixyou
6
3.4k
Vibe NLP for Applied NLP
inesmontani
PRO
0
420
レガシーPHP転生 〜父がドメインエキスパートだったのでDDD+Claude Codeでチート開発します〜
panda_program
0
910
2026_04_15_量子計算をパズルとして解く
hideakitakechi
0
100
PicoRuby for IoT: Connecting to the Cloud with MQTT
yuuu
2
120
PHPで TLSのプロトコルを実装してみるをもう一度しゃべりたい
higaki_program
0
200
Swift Concurrency Type System
inamiy
0
520
KagglerがMixSeekを触ってみた
morim
0
380
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.2k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
770
AI: The stuff that nobody shows you
jnunemaker
PRO
6
570
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8k
Context Engineering - Making Every Token Count
addyosmani
9
830
BBQ
matthewcrist
89
10k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
27
3.4k
Designing for Performance
lara
611
70k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
320
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
220
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 !