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
680
[発表資料] オブジェクト指向初心者が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
2k
Play with M5Stack
ochicchi
1
2k
How to study AWS IoT
ochicchi
0
1.1k
How to use OMRON sensors and M5Stack
ochicchi
0
77
IotLT_52-HobbyOmronSensors.pdf
ochicchi
2
790
JAWS-UG Beginner 2018/06/22
ochicchi
0
600
Swift愛好会初心者ハンズオン(vol.31)
ochicchi
0
250
Swift入門者向けハンズオンからの学び
ochicchi
1
420
Swift愛好会 #28
ochicchi
0
570
Other Decks in Programming
See All in Programming
AI 時代だからこそ抑えたい「価値のある」PHP ユニットテストを書く技術 #phpconfuk / phpcon-fukuoka-2025
shogogg
1
570
歴史から学ぶ「Why PHP?」 PHPを書く理由を改めて理解する / Learning from History: “Why PHP?” Rediscovering the Reasons for Writing PHP
seike460
PRO
0
160
Module Harmony
petamoriken
2
480
AI駆動開発ライフサイクル(AI-DLC)のホワイトペーパーを解説
swxhariu5
0
1.2k
Vueで学ぶデータ構造入門 リンクリストとキューでリアクティビティを捉える / Vue Data Structures: Linked Lists and Queues for Reactivity
konkarin
1
310
CSC509 Lecture 11
javiergs
PRO
0
310
最新のDirectX12で使えるレイトレ周りの機能追加について
projectasura
0
270
「10分以内に機能を消せる状態」 の実現のためにやっていること
togishima
1
520
What’s Fair is FAIR: A Decentralised Future for WordPress Distribution
rmccue
0
190
Agentに至る道 〜なぜLLMは自動でコードを書けるようになったのか〜
mackee
5
1.8k
All(?) About Point Sets
hole
0
190
オフライン対応!Flutterアプリに全文検索エンジンを実装する @FlutterKaigi2025
itsmedreamwalker
2
220
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
186
22k
Designing for humans not robots
tammielis
254
26k
Agile that works and the tools we love
rasmusluckow
331
21k
How to train your dragon (web standard)
notwaldorf
97
6.4k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
It's Worth the Effort
3n
187
28k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Building an army of robots
kneath
306
46k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
670
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
680
The Cult of Friendly URLs
andyhume
79
6.7k
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 !