狠狠撸

狠狠撸Share a Scribd company logo
Unityで
オニオンアーキテクチャ
2019/02/21 Roppongi.unity
とりすーぷ
自己紹介
? とりすーぷ
? バーチャルキャスト社
? 鲍苍颈迟测エンジニア
オニオンアーキテクチャとは
? 「こうやってプログラムを作ろう」という設計指針
? 考え方の根幹はドメイン駆動設計(DDD)
ドメイン駆动设计とは
ドメインって何
? ドメイン(知識、専門領域)
? そのプロダクトが本質的にやりたいことそのもの
? そのプロダクトが扱う必要がある知識
? 処理に必ず必要なデータ
ドメイン駆動設計(DDD)とは
? ドメインを中心にモノゴトを考えるやり方
? 「このプロダクトが本質的にやりたいところ」
? 「実装都合で仕方なくそうなってしまっているところ」
? この2つを明確に区別してシステムを作っていこうねってやり方
たとえば
? セーブデータの保存
? 本質的にやりたいこと「データの保存と復元」
? データが保存できて復元できれば実现方法はなんでもいい
たとえば
? セーブデータの保存
? 本質的にやりたいこと「データの保存と復元」
? データが保存できて復元できれば実现方法はなんでもいい
? 実装都合で変わるところにはどうでもいい
? ローカルに書き出し?サーバに保存?
? Json? Xml? Byte[]?
? 平文? 暗号化?
たとえば
? セーブデータの保存
? 本質的にやりたいこと「データの保存と復元」
? データが保存できて復元できれば実现方法はなんでもいい(これがドメイン)
? 実装都合で変わるところにはどうでもいい
? ローカルに書き出し?サーバに保存?
? Json? Xml? Byte[]?
? 平文? 暗号化?
オニオンアーキテクチャ
オニオンアーキテクチャ
? 大きく4層で構成されるアーキテクチャ(と今回は定義)
? Domain
? Application
? Infrastructure
? Presentation
この4層にスクリプトを書く
Domain層
? 本質的にやりたい処理
? 動作に必要な重要なロジック
? 処理に必要なデータ構造
実際の開発ではインタフェースや
構造体が定義されることが多いレイヤ
Infrastructure層
? 実装を置くところ
? 機能追加や修正が発生すると
ここに対して変更を加えることになる
Application層
? 処理の手続きを書くところ
? Domain層のオブジェクトに対しての
操作をまとめる場所
? 比较的に薄くなることが多い
Presentation層
? UnityとApplication層をつなげる層
? UIからの操作をApp層に渡す
? App層から受け取った結果をUIに反映する
? MonoBehaviourと連携する
Unityで扱う上でのルール
? MonoBehaviourを継承できるのは原則Presentation層のみ
? ただし、継承しないとどうしようもない場合はInfra層で継承してもよい
? Domain層でもUnityEngine.Vector3などのデータ構造は触れて良い
? ただしDomain層からComponentやMonoBehaviourを触るのは禁止
? IObservable<T>やUniTask<T>などはドメイン層でも使う
? 使わないと逆にややこしくなるため
DIを当たり前にように使う
? DI Containerが無いとこのアーキテクチャで開発は厳しい
? 窜别苍箩别肠迟は必须
クリーンアーキテクチャとの違い
? 本質はまったく同じことを言っている
? 違う点はレイヤ区分の細かさ
? オニオン:粗め(大きく4つにしか分けてない)
? クリーン:かなり細かい
? 触ってみてとっつきやすい方から触ればいいと思う
実装例
データをセーブ&ロード
? 入力パラメータを保存
? ロードで復元
? データの保存先:ローカル
? データの形式:PlayerPrefs
実装の手順
1. Domain層を考えて定義
2. Inra層に実装
3. App層に手続きを書く
4. Presentation層から呼び出す
0. 下準備 ディレクトリを別ける
? それぞれのレイヤごとにディレクトリを用意
? ついでにAssembly Definition Fileも定義すると
レイヤの依存関係を制御できるのでおすすめ
←Infra層はDomain層しか参照
できない形に強制できる
1. Domainの定義
? Domain層をまず第一に考えて設計する
? 「名前」が大事になるのでしっかり考えて
? ここで決定した命名は途中でブレることなく一貫した意味を持つ
? EntityとValue Objectをはっきり区別しよう
? 詳細はググって
Domain.SaveData型
? セーブデータを扱う型
? struct / class はよく考えて
Domain. ISaveDataRepository
? SaveData型の読み書きをするもの
? インタフェースになっているのが重要
2. Infra層に実装を書く
? PlayerPrefsSaveDataRepsitory
? ISaveDataRepositoryを実装
? 内部でPlayerPrefsを使う
3. Application層に手続きを書く
? Domainのオブジェクトを呼び出す部分
? 処理をそのまま素通しするパターンもある
4. Presentation層でUnityと繋ぐ
? Model
? データ管理
コンポーネント
4. Presentation層でUnityと繋ぐ
? Presenter
? 鲍滨の更新コンポーネント
5. ZenjectのInstallerを書く
? ここで「何の実装を使うか」が決まる
省略記法もある:BindInterfacesAndSelfTo<PlayerPrefsSaveDataRepository>()
6. できた!
仕様変更1
? Jsonで保存してほしい!
1. Jsonで保存するRepositoryを追加
? Domain.ISaveDataRepositoryを実装したものを新しく追加
2. Installerを書き換える
3. おわり!
? 実装を追加して、Installerを書き換えたら仕様変更できた!
仕様変更2
? SaveDataがなかったときはデフォルト値を返して欲しい
1. デフォルト値を定義
? 言葉の意味はよく議論すること
? 「デフォルト値って何?」
? アプリケーション上で一意に定まる固定値…?
? UnityEditor上で設定できる可変値…?
? それが何を意味する単語なのかはしっかり決めること
1. デフォルト値を定義
? 今回は「Domain上に定義されている固定値」にした
2. Application層を修正
? Nullが帰ってきたらDefault値で差し替える
まとめ
メリット
? 機能追加?修正にめちゃくちゃ強い
? とくにアウトゲーム部分と相性がよい
? どこに何を書けば良いかが明確になる
? テストが書きやすくなる
デメリット
? インゲームには適用しにくい
? 処理内容に対して記述量がかなり増える
? Domainの設計がかなり難しい
? インタフェースの使い方をわかってないと無理
? Zenjectが難しい
まとめ
? まだ試行錯誤中
? 個人開発しているアプリで試験運用中
? 業務アプリで本格採用はまだしてない
? そもそもDDDが難しい
? 何もわからん…何も…
今回のプロジェクト
? https://github.com/TORISOUP/OnionSample

More Related Content

What's hot (20)

ドメイン駆动设计をゲーム开発に活かす
ドメイン駆动设计をゲーム开発に活かすドメイン駆动设计をゲーム开発に活かす
ドメイン駆动设计をゲーム开発に活かす
増田 亨
?
惭痴笔パターンによる设计アプローチ「あなたのアフ?リ报连相て?きてますか」
惭痴笔パターンによる设计アプローチ「あなたのアフ?リ报连相て?きてますか」惭痴笔パターンによる设计アプローチ「あなたのアフ?リ报连相て?きてますか」
惭痴笔パターンによる设计アプローチ「あなたのアフ?リ报连相て?きてますか」
U-dai Yokoyama
?
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
Atsushi Nakamura
?
イミュータブルデータモデル(世代编)
イミュータブルデータモデル(世代编)イミュータブルデータモデル(世代编)
イミュータブルデータモデル(世代编)
Yoshitaka Kawashima
?
ドメイン駆动设计サンプルコードの彻底解説
ドメイン駆动设计サンプルコードの彻底解説ドメイン駆动设计サンプルコードの彻底解説
ドメイン駆动设计サンプルコードの彻底解説
増田 亨
?
CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例
CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例
CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例
sairoutine
?
ドメイン駆動設計 基本を理解する
ドメイン駆動設計 基本を理解するドメイン駆動設計 基本を理解する
ドメイン駆動設計 基本を理解する
増田 亨
?
【CEDEC2017】Unityを使ったNintendo Switch?向けのタイトル開発?移植テクニック!!
【CEDEC2017】Unityを使ったNintendo Switch?向けのタイトル開発?移植テクニック!!【CEDEC2017】Unityを使ったNintendo Switch?向けのタイトル開発?移植テクニック!!
【CEDEC2017】Unityを使ったNintendo Switch?向けのタイトル開発?移植テクニック!!
Unity Technologies Japan K.K.
?
鲍苍颈罢补蝉办入门
鲍苍颈罢补蝉办入门鲍苍颈罢补蝉办入门
鲍苍颈罢补蝉办入门
torisoup
?
鲍苍颈迟测でパフォーマンスの良い鲍滨を作る為の罢颈辫蝉
鲍苍颈迟测でパフォーマンスの良い鲍滨を作る為の罢颈辫蝉鲍苍颈迟测でパフォーマンスの良い鲍滨を作る為の罢颈辫蝉
鲍苍颈迟测でパフォーマンスの良い鲍滨を作る為の罢颈辫蝉
Unity Technologies Japan K.K.
?
正しいものを正しく作る塾-设计コース
正しいものを正しく作る塾-设计コース正しいものを正しく作る塾-设计コース
正しいものを正しく作る塾-设计コース
増田 亨
?
搁颈诲别谤はいいぞ!
搁颈诲别谤はいいぞ!搁颈诲别谤はいいぞ!
搁颈诲别谤はいいぞ!
UnityTechnologiesJapan002
?
ソフトウェアにおける 複雑さとは何なのか?
ソフトウェアにおける 複雑さとは何なのか?ソフトウェアにおける 複雑さとは何なのか?
ソフトウェアにおける 複雑さとは何なのか?
Yoshitaka Kawashima
?
ドメインオブジェクトの见つけ方?作り方?育て方
ドメインオブジェクトの见つけ方?作り方?育て方ドメインオブジェクトの见つけ方?作り方?育て方
ドメインオブジェクトの见つけ方?作り方?育て方
増田 亨
?
イベント?ソーシングを知る
イベント?ソーシングを知るイベント?ソーシングを知る
イベント?ソーシングを知る
Shuhei Fujita
?
惭补驳颈肠翱苍颈辞苍入门
惭补驳颈肠翱苍颈辞苍入门惭补驳颈肠翱苍颈辞苍入门
惭补驳颈肠翱苍颈辞苍入门
torisoup
?
C# 8.0 null許容参照型
C# 8.0 null許容参照型C# 8.0 null許容参照型
C# 8.0 null許容参照型
信之 岩永
?
鲍苍颈迟测で鲍滨开発を高速化した件
鲍苍颈迟测で鲍滨开発を高速化した件鲍苍颈迟测で鲍滨开発を高速化した件
鲍苍颈迟测で鲍滨开発を高速化した件
Grenge, Inc.
?
【Unity道場スペシャル 2017京都】最適化をする前に覚えておきたい技術
【Unity道場スペシャル 2017京都】最適化をする前に覚えておきたい技術【Unity道場スペシャル 2017京都】最適化をする前に覚えておきたい技術
【Unity道場スペシャル 2017京都】最適化をする前に覚えておきたい技術
Unity Technologies Japan K.K.
?
【Unite Tokyo 2019】Unity Test Runnerを活用して内部品質を向上しよう
【Unite Tokyo 2019】Unity Test Runnerを活用して内部品質を向上しよう【Unite Tokyo 2019】Unity Test Runnerを活用して内部品質を向上しよう
【Unite Tokyo 2019】Unity Test Runnerを活用して内部品質を向上しよう
UnityTechnologiesJapan002
?
ドメイン駆动设计をゲーム开発に活かす
ドメイン駆动设计をゲーム开発に活かすドメイン駆动设计をゲーム开発に活かす
ドメイン駆动设计をゲーム开発に活かす
増田 亨
?
惭痴笔パターンによる设计アプローチ「あなたのアフ?リ报连相て?きてますか」
惭痴笔パターンによる设计アプローチ「あなたのアフ?リ报连相て?きてますか」惭痴笔パターンによる设计アプローチ「あなたのアフ?リ报连相て?きてますか」
惭痴笔パターンによる设计アプローチ「あなたのアフ?リ报连相て?きてますか」
U-dai Yokoyama
?
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
Atsushi Nakamura
?
イミュータブルデータモデル(世代编)
イミュータブルデータモデル(世代编)イミュータブルデータモデル(世代编)
イミュータブルデータモデル(世代编)
Yoshitaka Kawashima
?
ドメイン駆动设计サンプルコードの彻底解説
ドメイン駆动设计サンプルコードの彻底解説ドメイン駆动设计サンプルコードの彻底解説
ドメイン駆动设计サンプルコードの彻底解説
増田 亨
?
CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例
CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例
CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例
sairoutine
?
ドメイン駆動設計 基本を理解する
ドメイン駆動設計 基本を理解するドメイン駆動設計 基本を理解する
ドメイン駆動設計 基本を理解する
増田 亨
?
【CEDEC2017】Unityを使ったNintendo Switch?向けのタイトル開発?移植テクニック!!
【CEDEC2017】Unityを使ったNintendo Switch?向けのタイトル開発?移植テクニック!!【CEDEC2017】Unityを使ったNintendo Switch?向けのタイトル開発?移植テクニック!!
【CEDEC2017】Unityを使ったNintendo Switch?向けのタイトル開発?移植テクニック!!
Unity Technologies Japan K.K.
?
鲍苍颈罢补蝉办入门
鲍苍颈罢补蝉办入门鲍苍颈罢补蝉办入门
鲍苍颈罢补蝉办入门
torisoup
?
鲍苍颈迟测でパフォーマンスの良い鲍滨を作る為の罢颈辫蝉
鲍苍颈迟测でパフォーマンスの良い鲍滨を作る為の罢颈辫蝉鲍苍颈迟测でパフォーマンスの良い鲍滨を作る為の罢颈辫蝉
鲍苍颈迟测でパフォーマンスの良い鲍滨を作る為の罢颈辫蝉
Unity Technologies Japan K.K.
?
正しいものを正しく作る塾-设计コース
正しいものを正しく作る塾-设计コース正しいものを正しく作る塾-设计コース
正しいものを正しく作る塾-设计コース
増田 亨
?
ソフトウェアにおける 複雑さとは何なのか?
ソフトウェアにおける 複雑さとは何なのか?ソフトウェアにおける 複雑さとは何なのか?
ソフトウェアにおける 複雑さとは何なのか?
Yoshitaka Kawashima
?
ドメインオブジェクトの见つけ方?作り方?育て方
ドメインオブジェクトの见つけ方?作り方?育て方ドメインオブジェクトの见つけ方?作り方?育て方
ドメインオブジェクトの见つけ方?作り方?育て方
増田 亨
?
イベント?ソーシングを知る
イベント?ソーシングを知るイベント?ソーシングを知る
イベント?ソーシングを知る
Shuhei Fujita
?
惭补驳颈肠翱苍颈辞苍入门
惭补驳颈肠翱苍颈辞苍入门惭补驳颈肠翱苍颈辞苍入门
惭补驳颈肠翱苍颈辞苍入门
torisoup
?
鲍苍颈迟测で鲍滨开発を高速化した件
鲍苍颈迟测で鲍滨开発を高速化した件鲍苍颈迟测で鲍滨开発を高速化した件
鲍苍颈迟测で鲍滨开発を高速化した件
Grenge, Inc.
?
【Unity道場スペシャル 2017京都】最適化をする前に覚えておきたい技術
【Unity道場スペシャル 2017京都】最適化をする前に覚えておきたい技術【Unity道場スペシャル 2017京都】最適化をする前に覚えておきたい技術
【Unity道場スペシャル 2017京都】最適化をする前に覚えておきたい技術
Unity Technologies Japan K.K.
?
【Unite Tokyo 2019】Unity Test Runnerを活用して内部品質を向上しよう
【Unite Tokyo 2019】Unity Test Runnerを活用して内部品質を向上しよう【Unite Tokyo 2019】Unity Test Runnerを活用して内部品質を向上しよう
【Unite Tokyo 2019】Unity Test Runnerを活用して内部品質を向上しよう
UnityTechnologiesJapan002
?

Similar to 鲍苍颈迟测でオニオンアーキテクチャ (20)

リアルタイムリモートデバッグ環境によるゲーム開発イテレーションの高速化【DeNA TechCon 2020 ライブ配信】
リアルタイムリモートデバッグ環境によるゲーム開発イテレーションの高速化【DeNA TechCon 2020 ライブ配信】リアルタイムリモートデバッグ環境によるゲーム開発イテレーションの高速化【DeNA TechCon 2020 ライブ配信】
リアルタイムリモートデバッグ環境によるゲーム開発イテレーションの高速化【DeNA TechCon 2020 ライブ配信】
DeNA
?
情报理工础苍诲谤辞颈诲勉强会第一回大将笔补谤迟
情报理工础苍诲谤辞颈诲勉强会第一回大将笔补谤迟情报理工础苍诲谤辞颈诲勉强会第一回大将笔补谤迟
情报理工础苍诲谤辞颈诲勉强会第一回大将笔补谤迟
Hiroki Sakamoto
?
作る人から作りながら运用する人になっていく
作る人から作りながら运用する人になっていく作る人から作りながら运用する人になっていく
作る人から作りながら运用する人になっていく
Ryo Mitoma
?
私がドメイン駆动设计をやる理由
私がドメイン駆动设计をやる理由私がドメイン駆动设计をやる理由
私がドメイン駆动设计をやる理由
増田 亨
?
Intalio japan special cloud workshop
Intalio japan special cloud workshopIntalio japan special cloud workshop
Intalio japan special cloud workshop
Daisuke Sugai
?
ドメイン駆动设计とは何か 【入门编】
ドメイン駆动设计とは何か 【入门编】ドメイン駆动设计とは何か 【入门编】
ドメイン駆动设计とは何か 【入门编】
増田 亨
?
【de:code 2020】 Azure トラブルシューティング道場 ~どこかがおかしくなりました~
【de:code 2020】 Azure トラブルシューティング道場 ~どこかがおかしくなりました~【de:code 2020】 Azure トラブルシューティング道場 ~どこかがおかしくなりました~
【de:code 2020】 Azure トラブルシューティング道場 ~どこかがおかしくなりました~
日本マイクロソフト株式会社
?
DeNA Creative Seminar #2 に行ってきた
DeNA Creative Seminar #2 に行ってきたDeNA Creative Seminar #2 に行ってきた
DeNA Creative Seminar #2 に行ってきた
silvers ofsilvers
?
[db tech showcase Tokyo 2018] #dbts2018 #D1L 『"何が必要?どう実現?"~異種DB間データリアルタイム連携』
[db tech showcase Tokyo 2018] #dbts2018 #D1L 『"何が必要?どう実現?"~異種DB間データリアルタイム連携』[db tech showcase Tokyo 2018] #dbts2018 #D1L 『"何が必要?どう実現?"~異種DB間データリアルタイム連携』
[db tech showcase Tokyo 2018] #dbts2018 #D1L 『"何が必要?どう実現?"~異種DB間データリアルタイム連携』
Insight Technology, Inc.
?
ドメイン駆动设计を実践するプログラマーの悩み
ドメイン駆动设计を実践するプログラマーの悩みドメイン駆动设计を実践するプログラマーの悩み
ドメイン駆动设计を実践するプログラマーの悩み
haljik Seiji
?
Unity * スマートフォン開発で学んだこと
Unity * スマートフォン開発で学んだことUnity * スマートフォン開発で学んだこと
Unity * スマートフォン開発で学んだこと
Katsutoshi Makino
?
RDRA DDD Agile
RDRA DDD AgileRDRA DDD Agile
RDRA DDD Agile
増田 亨
?
うちの开発における齿顿利用法
うちの开発における齿顿利用法うちの开発における齿顿利用法
うちの开発における齿顿利用法
Kazuma Sekiguchi
?
ゲームの里侧を支える人たちの里侧
ゲームの里侧を支える人たちの里侧ゲームの里侧を支える人たちの里侧
ゲームの里侧を支える人たちの里侧
Riou Tomita
?
オブジェクト指向设计の原则
オブジェクト指向设计の原则オブジェクト指向设计の原则
オブジェクト指向设计の原则
Toru Koido
?
Find Your Ability: IA for a novice Web Creator
Find Your Ability: IA for a novice Web CreatorFind Your Ability: IA for a novice Web Creator
Find Your Ability: IA for a novice Web Creator
Nobuya Sato
?
はじめての Azure 開発
はじめての Azure 開発はじめての Azure 開発
はじめての Azure 開発
Yoshitaka Seo
?
翱谤补肠濒别设计
翱谤补肠濒别设计翱谤补肠濒别设计
翱谤补肠濒别设计
Kouta Shiobara
?
20121019 engineer startup_meeting
20121019 engineer startup_meeting20121019 engineer startup_meeting
20121019 engineer startup_meeting
Shuichi Wada
?
リアルタイムリモートデバッグ環境によるゲーム開発イテレーションの高速化【DeNA TechCon 2020 ライブ配信】
リアルタイムリモートデバッグ環境によるゲーム開発イテレーションの高速化【DeNA TechCon 2020 ライブ配信】リアルタイムリモートデバッグ環境によるゲーム開発イテレーションの高速化【DeNA TechCon 2020 ライブ配信】
リアルタイムリモートデバッグ環境によるゲーム開発イテレーションの高速化【DeNA TechCon 2020 ライブ配信】
DeNA
?
情报理工础苍诲谤辞颈诲勉强会第一回大将笔补谤迟
情报理工础苍诲谤辞颈诲勉强会第一回大将笔补谤迟情报理工础苍诲谤辞颈诲勉强会第一回大将笔补谤迟
情报理工础苍诲谤辞颈诲勉强会第一回大将笔补谤迟
Hiroki Sakamoto
?
作る人から作りながら运用する人になっていく
作る人から作りながら运用する人になっていく作る人から作りながら运用する人になっていく
作る人から作りながら运用する人になっていく
Ryo Mitoma
?
私がドメイン駆动设计をやる理由
私がドメイン駆动设计をやる理由私がドメイン駆动设计をやる理由
私がドメイン駆动设计をやる理由
増田 亨
?
Intalio japan special cloud workshop
Intalio japan special cloud workshopIntalio japan special cloud workshop
Intalio japan special cloud workshop
Daisuke Sugai
?
ドメイン駆动设计とは何か 【入门编】
ドメイン駆动设计とは何か 【入门编】ドメイン駆动设计とは何か 【入门编】
ドメイン駆动设计とは何か 【入门编】
増田 亨
?
【de:code 2020】 Azure トラブルシューティング道場 ~どこかがおかしくなりました~
【de:code 2020】 Azure トラブルシューティング道場 ~どこかがおかしくなりました~【de:code 2020】 Azure トラブルシューティング道場 ~どこかがおかしくなりました~
【de:code 2020】 Azure トラブルシューティング道場 ~どこかがおかしくなりました~
日本マイクロソフト株式会社
?
DeNA Creative Seminar #2 に行ってきた
DeNA Creative Seminar #2 に行ってきたDeNA Creative Seminar #2 に行ってきた
DeNA Creative Seminar #2 に行ってきた
silvers ofsilvers
?
[db tech showcase Tokyo 2018] #dbts2018 #D1L 『"何が必要?どう実現?"~異種DB間データリアルタイム連携』
[db tech showcase Tokyo 2018] #dbts2018 #D1L 『"何が必要?どう実現?"~異種DB間データリアルタイム連携』[db tech showcase Tokyo 2018] #dbts2018 #D1L 『"何が必要?どう実現?"~異種DB間データリアルタイム連携』
[db tech showcase Tokyo 2018] #dbts2018 #D1L 『"何が必要?どう実現?"~異種DB間データリアルタイム連携』
Insight Technology, Inc.
?
ドメイン駆动设计を実践するプログラマーの悩み
ドメイン駆动设计を実践するプログラマーの悩みドメイン駆动设计を実践するプログラマーの悩み
ドメイン駆动设计を実践するプログラマーの悩み
haljik Seiji
?
Unity * スマートフォン開発で学んだこと
Unity * スマートフォン開発で学んだことUnity * スマートフォン開発で学んだこと
Unity * スマートフォン開発で学んだこと
Katsutoshi Makino
?
うちの开発における齿顿利用法
うちの开発における齿顿利用法うちの开発における齿顿利用法
うちの开発における齿顿利用法
Kazuma Sekiguchi
?
ゲームの里侧を支える人たちの里侧
ゲームの里侧を支える人たちの里侧ゲームの里侧を支える人たちの里侧
ゲームの里侧を支える人たちの里侧
Riou Tomita
?
オブジェクト指向设计の原则
オブジェクト指向设计の原则オブジェクト指向设计の原则
オブジェクト指向设计の原则
Toru Koido
?
Find Your Ability: IA for a novice Web Creator
Find Your Ability: IA for a novice Web CreatorFind Your Ability: IA for a novice Web Creator
Find Your Ability: IA for a novice Web Creator
Nobuya Sato
?
はじめての Azure 開発
はじめての Azure 開発はじめての Azure 開発
はじめての Azure 開発
Yoshitaka Seo
?
20121019 engineer startup_meeting
20121019 engineer startup_meeting20121019 engineer startup_meeting
20121019 engineer startup_meeting
Shuichi Wada
?

More from torisoup (20)

Doozy UI 使おうぜ! #unity_lt
Doozy UI 使おうぜ! #unity_ltDoozy UI 使おうぜ! #unity_lt
Doozy UI 使おうぜ! #unity_lt
torisoup
?
惭补驳颈肠翱苍颈辞苍~颁#でゲームサーバを开発しよう~
惭补驳颈肠翱苍颈辞苍~颁#でゲームサーバを开発しよう~惭补驳颈肠翱苍颈辞苍~颁#でゲームサーバを开発しよう~
惭补驳颈肠翱苍颈辞苍~颁#でゲームサーバを开発しよう~
torisoup
?
Unityで作ったゲームをDLカードで配布してみた話 #roppongiunity
Unityで作ったゲームをDLカードで配布してみた話 #roppongiunityUnityで作ったゲームをDLカードで配布してみた話 #roppongiunity
Unityで作ったゲームをDLカードで配布してみた話 #roppongiunity
torisoup
?
础搁で痴搁アバターを表示するシステムを构筑しよう
础搁で痴搁アバターを表示するシステムを构筑しよう础搁で痴搁アバターを表示するシステムを构筑しよう
础搁で痴搁アバターを表示するシステムを构筑しよう
torisoup
?
インタフェース完全に理解した
インタフェース完全に理解したインタフェース完全に理解した
インタフェース完全に理解した
torisoup
?
【Unity】 Behavior TreeでAIを作る
 【Unity】 Behavior TreeでAIを作る 【Unity】 Behavior TreeでAIを作る
【Unity】 Behavior TreeでAIを作る
torisoup
?
翱产蝉别谤惫补产濒别で非同期処理
翱产蝉别谤惫补产濒别で非同期処理翱产蝉别谤惫补产濒别で非同期処理
翱产蝉别谤惫补产濒别で非同期処理
torisoup
?
翱产蝉别谤惫别谤パターンからはじめる鲍苍颈搁虫
翱产蝉别谤惫别谤パターンからはじめる鲍苍颈搁虫 翱产蝉别谤惫别谤パターンからはじめる鲍苍颈搁虫
翱产蝉别谤惫别谤パターンからはじめる鲍苍颈搁虫
torisoup
?
Photon Cloud ことはじめPhoton Cloud ことはじめ
Photon Cloud ことはじめ
torisoup
?
アバター生放送支援アプリ「アバれぽ」
アバター生放送支援アプリ「アバれぽ」アバター生放送支援アプリ「アバれぽ」
アバター生放送支援アプリ「アバれぽ」
torisoup
?
コールバックと戦う话
コールバックと戦う话コールバックと戦う话
コールバックと戦う话
torisoup
?
鲍苍颈搁虫完全に理解した
鲍苍颈搁虫完全に理解した鲍苍颈搁虫完全に理解した
鲍苍颈搁虫完全に理解した
torisoup
?
鲍苍颈迟测と狈颁惭叠でユーザ管理を実装してみた话
鲍苍颈迟测と狈颁惭叠でユーザ管理を実装してみた话鲍苍颈迟测と狈颁惭叠でユーザ管理を実装してみた话
鲍苍颈迟测と狈颁惭叠でユーザ管理を実装してみた话
torisoup
?
Task vs ObservableTask vs Observable
Task vs Observable
torisoup
?
鲍苍颈迟测でオンラインゲーム作った话
鲍苍颈迟测でオンラインゲーム作った话鲍苍颈迟测でオンラインゲーム作った话
鲍苍颈迟测でオンラインゲーム作った话
torisoup
?
鲍苍颈搁虫で笔鲍狈を使いやすくする
鲍苍颈搁虫で笔鲍狈を使いやすくする鲍苍颈搁虫で笔鲍狈を使いやすくする
鲍苍颈搁虫で笔鲍狈を使いやすくする
torisoup
?
はじめての鲍苍颈搁虫
はじめての鲍苍颈搁虫はじめての鲍苍颈搁虫
はじめての鲍苍颈搁虫
torisoup
?
UniRxでMV(R)Pパターン をやってみた
UniRxでMV(R)PパターンをやってみたUniRxでMV(R)Pパターンをやってみた
UniRxでMV(R)Pパターン をやってみた
torisoup
?
未来のプログラミング技術をUnityで -UniRx-
未来のプログラミング技術をUnityで -UniRx-未来のプログラミング技術をUnityで -UniRx-
未来のプログラミング技術をUnityで -UniRx-
torisoup
?
みくみくまうすについて&Unity で使えるコーディングノウハウ
みくみくまうすについて&Unity で使えるコーディングノウハウみくみくまうすについて&Unity で使えるコーディングノウハウ
みくみくまうすについて&Unity で使えるコーディングノウハウ
torisoup
?
Doozy UI 使おうぜ! #unity_lt
Doozy UI 使おうぜ! #unity_ltDoozy UI 使おうぜ! #unity_lt
Doozy UI 使おうぜ! #unity_lt
torisoup
?
惭补驳颈肠翱苍颈辞苍~颁#でゲームサーバを开発しよう~
惭补驳颈肠翱苍颈辞苍~颁#でゲームサーバを开発しよう~惭补驳颈肠翱苍颈辞苍~颁#でゲームサーバを开発しよう~
惭补驳颈肠翱苍颈辞苍~颁#でゲームサーバを开発しよう~
torisoup
?
Unityで作ったゲームをDLカードで配布してみた話 #roppongiunity
Unityで作ったゲームをDLカードで配布してみた話 #roppongiunityUnityで作ったゲームをDLカードで配布してみた話 #roppongiunity
Unityで作ったゲームをDLカードで配布してみた話 #roppongiunity
torisoup
?
础搁で痴搁アバターを表示するシステムを构筑しよう
础搁で痴搁アバターを表示するシステムを构筑しよう础搁で痴搁アバターを表示するシステムを构筑しよう
础搁で痴搁アバターを表示するシステムを构筑しよう
torisoup
?
インタフェース完全に理解した
インタフェース完全に理解したインタフェース完全に理解した
インタフェース完全に理解した
torisoup
?
【Unity】 Behavior TreeでAIを作る
 【Unity】 Behavior TreeでAIを作る 【Unity】 Behavior TreeでAIを作る
【Unity】 Behavior TreeでAIを作る
torisoup
?
翱产蝉别谤惫补产濒别で非同期処理
翱产蝉别谤惫补产濒别で非同期処理翱产蝉别谤惫补产濒别で非同期処理
翱产蝉别谤惫补产濒别で非同期処理
torisoup
?
翱产蝉别谤惫别谤パターンからはじめる鲍苍颈搁虫
翱产蝉别谤惫别谤パターンからはじめる鲍苍颈搁虫 翱产蝉别谤惫别谤パターンからはじめる鲍苍颈搁虫
翱产蝉别谤惫别谤パターンからはじめる鲍苍颈搁虫
torisoup
?
Photon Cloud ことはじめPhoton Cloud ことはじめ
Photon Cloud ことはじめ
torisoup
?
アバター生放送支援アプリ「アバれぽ」
アバター生放送支援アプリ「アバれぽ」アバター生放送支援アプリ「アバれぽ」
アバター生放送支援アプリ「アバれぽ」
torisoup
?
コールバックと戦う话
コールバックと戦う话コールバックと戦う话
コールバックと戦う话
torisoup
?
鲍苍颈搁虫完全に理解した
鲍苍颈搁虫完全に理解した鲍苍颈搁虫完全に理解した
鲍苍颈搁虫完全に理解した
torisoup
?
鲍苍颈迟测と狈颁惭叠でユーザ管理を実装してみた话
鲍苍颈迟测と狈颁惭叠でユーザ管理を実装してみた话鲍苍颈迟测と狈颁惭叠でユーザ管理を実装してみた话
鲍苍颈迟测と狈颁惭叠でユーザ管理を実装してみた话
torisoup
?
Task vs ObservableTask vs Observable
Task vs Observable
torisoup
?
鲍苍颈迟测でオンラインゲーム作った话
鲍苍颈迟测でオンラインゲーム作った话鲍苍颈迟测でオンラインゲーム作った话
鲍苍颈迟测でオンラインゲーム作った话
torisoup
?
鲍苍颈搁虫で笔鲍狈を使いやすくする
鲍苍颈搁虫で笔鲍狈を使いやすくする鲍苍颈搁虫で笔鲍狈を使いやすくする
鲍苍颈搁虫で笔鲍狈を使いやすくする
torisoup
?
はじめての鲍苍颈搁虫
はじめての鲍苍颈搁虫はじめての鲍苍颈搁虫
はじめての鲍苍颈搁虫
torisoup
?
UniRxでMV(R)Pパターン をやってみた
UniRxでMV(R)PパターンをやってみたUniRxでMV(R)Pパターンをやってみた
UniRxでMV(R)Pパターン をやってみた
torisoup
?
未来のプログラミング技術をUnityで -UniRx-
未来のプログラミング技術をUnityで -UniRx-未来のプログラミング技術をUnityで -UniRx-
未来のプログラミング技術をUnityで -UniRx-
torisoup
?
みくみくまうすについて&Unity で使えるコーディングノウハウ
みくみくまうすについて&Unity で使えるコーディングノウハウみくみくまうすについて&Unity で使えるコーディングノウハウ
みくみくまうすについて&Unity で使えるコーディングノウハウ
torisoup
?

Recently uploaded (6)

量子リザバソフトウェア冲时系列データ(农业?核融合?需要予测)効果検証冲导入による成果
量子リザバソフトウェア冲时系列データ(农业?核融合?需要予测)効果検証冲导入による成果量子リザバソフトウェア冲时系列データ(农业?核融合?需要予测)効果検証冲导入による成果
量子リザバソフトウェア冲时系列データ(农业?核融合?需要予测)効果検証冲导入による成果
info819904
?
カスタム厂尝惭「贬补尘蝉迟别谤」冲軽量でセキュアな専用言语モデル冲础滨エージェント冲チャットボット冲マッチングアプリ构筑のコアパッケージ
カスタム厂尝惭「贬补尘蝉迟别谤」冲軽量でセキュアな専用言语モデル冲础滨エージェント冲チャットボット冲マッチングアプリ构筑のコアパッケージカスタム厂尝惭「贬补尘蝉迟别谤」冲軽量でセキュアな専用言语モデル冲础滨エージェント冲チャットボット冲マッチングアプリ构筑のコアパッケージ
カスタム厂尝惭「贬补尘蝉迟别谤」冲軽量でセキュアな専用言语モデル冲础滨エージェント冲チャットボット冲マッチングアプリ构筑のコアパッケージ
info819904
?
2019飞冲东京大学大学院茂木研究室冲学生研究员杉田翔栄冲搁罢贰最终発表会スライト?.辫诲蹿
2019飞冲东京大学大学院茂木研究室冲学生研究员杉田翔栄冲搁罢贰最终発表会スライト?.辫诲蹿2019飞冲东京大学大学院茂木研究室冲学生研究员杉田翔栄冲搁罢贰最终発表会スライト?.辫诲蹿
2019飞冲东京大学大学院茂木研究室冲学生研究员杉田翔栄冲搁罢贰最终発表会スライト?.辫诲蹿
翔栄 杉田
?
鲍-22プログラミング?コンテスト提出资料「作品説明动画」制作のポイントをご绍介
鲍-22プログラミング?コンテスト提出资料「作品説明动画」制作のポイントをご绍介鲍-22プログラミング?コンテスト提出资料「作品説明动画」制作のポイントをご绍介
鲍-22プログラミング?コンテスト提出资料「作品説明动画」制作のポイントをご绍介
鲍-22プログラミング?コンテスト运営事务局
?
自由に移动する复数の?々に异なる映像を提?するテ?ィスフ?レイシステムについての基础検讨
自由に移动する复数の?々に异なる映像を提?するテ?ィスフ?レイシステムについての基础検讨自由に移动する复数の?々に异なる映像を提?するテ?ィスフ?レイシステムについての基础検讨
自由に移动する复数の?々に异なる映像を提?するテ?ィスフ?レイシステムについての基础検讨
sugiuralab
?
論理レプリケーションのアーキテクチャ (第52回 PostgreSQLアンカンファレンス@オンライン 発表資料)
論理レプリケーションのアーキテクチャ (第52回 PostgreSQLアンカンファレンス@オンライン 発表資料)論理レプリケーションのアーキテクチャ (第52回 PostgreSQLアンカンファレンス@オンライン 発表資料)
論理レプリケーションのアーキテクチャ (第52回 PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
?
量子リザバソフトウェア冲时系列データ(农业?核融合?需要予测)効果検証冲导入による成果
量子リザバソフトウェア冲时系列データ(农业?核融合?需要予测)効果検証冲导入による成果量子リザバソフトウェア冲时系列データ(农业?核融合?需要予测)効果検証冲导入による成果
量子リザバソフトウェア冲时系列データ(农业?核融合?需要予测)効果検証冲导入による成果
info819904
?
カスタム厂尝惭「贬补尘蝉迟别谤」冲軽量でセキュアな専用言语モデル冲础滨エージェント冲チャットボット冲マッチングアプリ构筑のコアパッケージ
カスタム厂尝惭「贬补尘蝉迟别谤」冲軽量でセキュアな専用言语モデル冲础滨エージェント冲チャットボット冲マッチングアプリ构筑のコアパッケージカスタム厂尝惭「贬补尘蝉迟别谤」冲軽量でセキュアな専用言语モデル冲础滨エージェント冲チャットボット冲マッチングアプリ构筑のコアパッケージ
カスタム厂尝惭「贬补尘蝉迟别谤」冲軽量でセキュアな専用言语モデル冲础滨エージェント冲チャットボット冲マッチングアプリ构筑のコアパッケージ
info819904
?
2019飞冲东京大学大学院茂木研究室冲学生研究员杉田翔栄冲搁罢贰最终発表会スライト?.辫诲蹿
2019飞冲东京大学大学院茂木研究室冲学生研究员杉田翔栄冲搁罢贰最终発表会スライト?.辫诲蹿2019飞冲东京大学大学院茂木研究室冲学生研究员杉田翔栄冲搁罢贰最终発表会スライト?.辫诲蹿
2019飞冲东京大学大学院茂木研究室冲学生研究员杉田翔栄冲搁罢贰最终発表会スライト?.辫诲蹿
翔栄 杉田
?
自由に移动する复数の?々に异なる映像を提?するテ?ィスフ?レイシステムについての基础検讨
自由に移动する复数の?々に异なる映像を提?するテ?ィスフ?レイシステムについての基础検讨自由に移动する复数の?々に异なる映像を提?するテ?ィスフ?レイシステムについての基础検讨
自由に移动する复数の?々に异なる映像を提?するテ?ィスフ?レイシステムについての基础検讨
sugiuralab
?
論理レプリケーションのアーキテクチャ (第52回 PostgreSQLアンカンファレンス@オンライン 発表資料)
論理レプリケーションのアーキテクチャ (第52回 PostgreSQLアンカンファレンス@オンライン 発表資料)論理レプリケーションのアーキテクチャ (第52回 PostgreSQLアンカンファレンス@オンライン 発表資料)
論理レプリケーションのアーキテクチャ (第52回 PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
?

鲍苍颈迟测でオニオンアーキテクチャ