Soumettre la recherche
Mettre en ligne
第2回 モデリング勉強会
•
2 j'aime
•
1,762 vues
H
hakoika-itwg
Suivre
はこだてIKA IT技術促進WG主催 第2回 モデリング勉強会で使用したスライドです。
Lire moins
Lire la suite
Technologie
Signaler
Partager
Signaler
Partager
1 sur 10
Recommandé
オブジェクト指向分析設計をパパっとおさらい
オブジェクト指向分析設計をパパっとおさらい
Daisuke Niihara
関数型言語とオブジェクト指向言語(序章)
関数型言語とオブジェクト指向言語(序章)
tadaaki hayashi
バージョン管理#01 -Subversion編-
バージョン管理#01 -Subversion編-
hakoika-itwg
第2回勉強会 オブジェクト指向
第2回勉強会 オブジェクト指向
hakoika-itwg
06 オブジェクト指向の基礎
06 オブジェクト指向の基礎
文樹 高橋
オブジェクト指向勉強会(基礎)
オブジェクト指向勉強会(基礎)
nomuken
オブジェクト指向プログラミング再入門
オブジェクト指向プログラミング再入門
Ryo Miyake
第1回 モデリング勉強会
第1回 モデリング勉強会
hakoika-itwg
Recommandé
オブジェクト指向分析設計をパパっとおさらい
オブジェクト指向分析設計をパパっとおさらい
Daisuke Niihara
関数型言語とオブジェクト指向言語(序章)
関数型言語とオブジェクト指向言語(序章)
tadaaki hayashi
バージョン管理#01 -Subversion編-
バージョン管理#01 -Subversion編-
hakoika-itwg
第2回勉強会 オブジェクト指向
第2回勉強会 オブジェクト指向
hakoika-itwg
06 オブジェクト指向の基礎
06 オブジェクト指向の基礎
文樹 高橋
オブジェクト指向勉強会(基礎)
オブジェクト指向勉強会(基礎)
nomuken
オブジェクト指向プログラミング再入門
オブジェクト指向プログラミング再入門
Ryo Miyake
第1回 モデリング勉強会
第1回 モデリング勉強会
hakoika-itwg
デジタルメディア創作部勉強会「オブジェクト指向入門1」
デジタルメディア創作部勉強会「オブジェクト指向入門1」
Hokuto Tateyama
Phpではじめるオブジェクト指向(公開用)
Phpではじめるオブジェクト指向(公開用)
VOYAGE GROUP
第3回勉強会 オブジェクト指向
第3回勉強会 オブジェクト指向
hakoika-itwg
本当のオブジェクト指向は可読性を上げる
本当のオブジェクト指向は可読性を上げる
Wataru Terada
オブジェクト指向ワークショップ 201507版
オブジェクト指向ワークショップ 201507版
Mao Ohnishi
だいたい30分で分かるオブジェクト指向
だいたい30分で分かるオブジェクト指向
Anto Mioyama
ジーノ先生の文系的オブジェクト指向(2) - コンストラクタの引数
ジーノ先生の文系的オブジェクト指向(2) - コンストラクタの引数
Satoru Kodaira
ジーノ先生の文系的オブジェクト指向(1) - ジーノ誕生
ジーノ先生の文系的オブジェクト指向(1) - ジーノ誕生
Satoru Kodaira
F流『オブジェクト指向の考え方の基礎の基礎』~ソフトウェア開発の原則編~
F流『オブジェクト指向の考え方の基礎の基礎』~ソフトウェア開発の原則編~
Fujio Kojima
第8回勉強会 開発プロセス 「計画ゲーム~ふりかえり」
第8回勉強会 開発プロセス 「計画ゲーム~ふりかえり」
hakoika-itwg
オブジェクト指向の設計と実装の学び方のコツ
オブジェクト指向の設計と実装の学び方のコツ
増田 亨
PHP Coding in BEAR.Sunday
PHP Coding in BEAR.Sunday
Akihito Koriyama
設計/原理 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第28回】
設計/原理 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第28回】
Tomoharu ASAMI
非開発者のためのアジャイル開発入門
非開発者のためのアジャイル開発入門
Kiro Harada
[DL輪読会]Decision Transformer: Reinforcement Learning via Sequence Modeling
[DL輪読会]Decision Transformer: Reinforcement Learning via Sequence Modeling
Deep Learning JP
AgileTourOsaka2011 関係者に理解してもらえるアジャイル開発にむけて
AgileTourOsaka2011 関係者に理解してもらえるアジャイル開発にむけて
Shuji Morisaki
background jobで 気をつけないといかんところ
background jobで 気をつけないといかんところ
Akira Miki
Mk state in-programming-01
Mk state in-programming-01
Miya Kohno
Network Programmability and the statefulness/transactionality
Network Programmability and the statefulness/transactionality
Miya Kohno
Skinny Controllers, Skinny Models
Skinny Controllers, Skinny Models
Kazuhiro Sera
モジュールの凝集度・結合度・インタフェース
モジュールの凝集度・結合度・インタフェース
Hajime Yanagawa
Mk model driven-automation
Mk model driven-automation
Miya Kohno
Contenu connexe
En vedette
デジタルメディア創作部勉強会「オブジェクト指向入門1」
デジタルメディア創作部勉強会「オブジェクト指向入門1」
Hokuto Tateyama
Phpではじめるオブジェクト指向(公開用)
Phpではじめるオブジェクト指向(公開用)
VOYAGE GROUP
第3回勉強会 オブジェクト指向
第3回勉強会 オブジェクト指向
hakoika-itwg
本当のオブジェクト指向は可読性を上げる
本当のオブジェクト指向は可読性を上げる
Wataru Terada
オブジェクト指向ワークショップ 201507版
オブジェクト指向ワークショップ 201507版
Mao Ohnishi
だいたい30分で分かるオブジェクト指向
だいたい30分で分かるオブジェクト指向
Anto Mioyama
ジーノ先生の文系的オブジェクト指向(2) - コンストラクタの引数
ジーノ先生の文系的オブジェクト指向(2) - コンストラクタの引数
Satoru Kodaira
ジーノ先生の文系的オブジェクト指向(1) - ジーノ誕生
ジーノ先生の文系的オブジェクト指向(1) - ジーノ誕生
Satoru Kodaira
F流『オブジェクト指向の考え方の基礎の基礎』~ソフトウェア開発の原則編~
F流『オブジェクト指向の考え方の基礎の基礎』~ソフトウェア開発の原則編~
Fujio Kojima
第8回勉強会 開発プロセス 「計画ゲーム~ふりかえり」
第8回勉強会 開発プロセス 「計画ゲーム~ふりかえり」
hakoika-itwg
オブジェクト指向の設計と実装の学び方のコツ
オブジェクト指向の設計と実装の学び方のコツ
増田 亨
En vedette
(11)
デジタルメディア創作部勉強会「オブジェクト指向入門1」
デジタルメディア創作部勉強会「オブジェクト指向入門1」
Phpではじめるオブジェクト指向(公開用)
Phpではじめるオブジェクト指向(公開用)
第3回勉強会 オブジェクト指向
第3回勉強会 オブジェクト指向
本当のオブジェクト指向は可読性を上げる
本当のオブジェクト指向は可読性を上げる
オブジェクト指向ワークショップ 201507版
オブジェクト指向ワークショップ 201507版
だいたい30分で分かるオブジェクト指向
だいたい30分で分かるオブジェクト指向
ジーノ先生の文系的オブジェクト指向(2) - コンストラクタの引数
ジーノ先生の文系的オブジェクト指向(2) - コンストラクタの引数
ジーノ先生の文系的オブジェクト指向(1) - ジーノ誕生
ジーノ先生の文系的オブジェクト指向(1) - ジーノ誕生
F流『オブジェクト指向の考え方の基礎の基礎』~ソフトウェア開発の原則編~
F流『オブジェクト指向の考え方の基礎の基礎』~ソフトウェア開発の原則編~
第8回勉強会 開発プロセス 「計画ゲーム~ふりかえり」
第8回勉強会 開発プロセス 「計画ゲーム~ふりかえり」
オブジェクト指向の設計と実装の学び方のコツ
オブジェクト指向の設計と実装の学び方のコツ
Similaire à 第2回 モデリング勉強会
PHP Coding in BEAR.Sunday
PHP Coding in BEAR.Sunday
Akihito Koriyama
設計/原理 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第28回】
設計/原理 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第28回】
Tomoharu ASAMI
非開発者のためのアジャイル開発入門
非開発者のためのアジャイル開発入門
Kiro Harada
[DL輪読会]Decision Transformer: Reinforcement Learning via Sequence Modeling
[DL輪読会]Decision Transformer: Reinforcement Learning via Sequence Modeling
Deep Learning JP
AgileTourOsaka2011 関係者に理解してもらえるアジャイル開発にむけて
AgileTourOsaka2011 関係者に理解してもらえるアジャイル開発にむけて
Shuji Morisaki
background jobで 気をつけないといかんところ
background jobで 気をつけないといかんところ
Akira Miki
Mk state in-programming-01
Mk state in-programming-01
Miya Kohno
Network Programmability and the statefulness/transactionality
Network Programmability and the statefulness/transactionality
Miya Kohno
Skinny Controllers, Skinny Models
Skinny Controllers, Skinny Models
Kazuhiro Sera
モジュールの凝集度・結合度・インタフェース
モジュールの凝集度・結合度・インタフェース
Hajime Yanagawa
Mk model driven-automation
Mk model driven-automation
Miya Kohno
TypeScript超入門
TypeScript超入門
Narami Kiyokura
レガシーコード読書会 20120618
レガシーコード読書会 20120618
Suguru Shirai
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
Mikiya Okuno
静的モデル(1) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第4回】
静的モデル(1) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第4回】
Tomoharu ASAMI
秒速ChainerMN
秒速ChainerMN
Keisuke Fukuda
iOSやAndroidアプリ開発のGoodPractice
iOSやAndroidアプリ開発のGoodPractice
Ken Morishita
設計/コンポーネント設計(2) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第21回】
設計/コンポーネント設計(2) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第21回】
Tomoharu ASAMI
なぜソフトウェアアーキテクトが必要なのか - Devlove 20110423
なぜソフトウェアアーキテクトが必要なのか - Devlove 20110423
Yusuke Suzuki
Laravelの検索機能の実装方法
Laravelの検索機能の実装方法
yoshitaro yoyo
Similaire à 第2回 モデリング勉強会
(20)
PHP Coding in BEAR.Sunday
PHP Coding in BEAR.Sunday
設計/原理 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第28回】
設計/原理 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第28回】
非開発者のためのアジャイル開発入門
非開発者のためのアジャイル開発入門
[DL輪読会]Decision Transformer: Reinforcement Learning via Sequence Modeling
[DL輪読会]Decision Transformer: Reinforcement Learning via Sequence Modeling
AgileTourOsaka2011 関係者に理解してもらえるアジャイル開発にむけて
AgileTourOsaka2011 関係者に理解してもらえるアジャイル開発にむけて
background jobで 気をつけないといかんところ
background jobで 気をつけないといかんところ
Mk state in-programming-01
Mk state in-programming-01
Network Programmability and the statefulness/transactionality
Network Programmability and the statefulness/transactionality
Skinny Controllers, Skinny Models
Skinny Controllers, Skinny Models
モジュールの凝集度・結合度・インタフェース
モジュールの凝集度・結合度・インタフェース
Mk model driven-automation
Mk model driven-automation
TypeScript超入門
TypeScript超入門
レガシーコード読書会 20120618
レガシーコード読書会 20120618
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
静的モデル(1) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第4回】
静的モデル(1) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第4回】
秒速ChainerMN
秒速ChainerMN
iOSやAndroidアプリ開発のGoodPractice
iOSやAndroidアプリ開発のGoodPractice
設計/コンポーネント設計(2) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第21回】
設計/コンポーネント設計(2) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第21回】
なぜソフトウェアアーキテクトが必要なのか - Devlove 20110423
なぜソフトウェアアーキテクトが必要なのか - Devlove 20110423
Laravelの検索機能の実装方法
Laravelの検索機能の実装方法
Plus de hakoika-itwg
Version管理 1
Version管理 1
hakoika-itwg
第9回勉強会 Webセキュリティー
第9回勉強会 Webセキュリティー
hakoika-itwg
第8回勉強会 開発プロセス 「プロセス改善」
第8回勉強会 開発プロセス 「プロセス改善」
hakoika-itwg
第7回勉強会 ネットワークの基礎
第7回勉強会 ネットワークの基礎
hakoika-itwg
第6回勉強会 はじめてのデータベース
第6回勉強会 はじめてのデータベース
hakoika-itwg
第4回勉強会 単体テストのすすめ
第4回勉強会 単体テストのすすめ
hakoika-itwg
Plus de hakoika-itwg
(6)
Version管理 1
Version管理 1
第9回勉強会 Webセキュリティー
第9回勉強会 Webセキュリティー
第8回勉強会 開発プロセス 「プロセス改善」
第8回勉強会 開発プロセス 「プロセス改善」
第7回勉強会 ネットワークの基礎
第7回勉強会 ネットワークの基礎
第6回勉強会 はじめてのデータベース
第6回勉強会 はじめてのデータベース
第4回勉強会 単体テストのすすめ
第4回勉強会 単体テストのすすめ
Dernier
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
Shota Ito
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
iPride Co., Ltd.
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
osamut
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
Atomu Hidaka
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
sugiuralab
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
danielhu54
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
iPride Co., Ltd.
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdf
furutsuka
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
Ryo Sasaki
Dernier
(9)
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdf
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
第2回 モデリング勉強会
1.
第2回 モデリング勉強会
2013/02/14 株式会社アットウェア 高橋 哲也
2.
前回のおさらい • どうしてオブジェクト指向が必要か。 • モデリングって? •
CRCカードの書き方 クラス名 役割・責務 そのクラスが 関連・相互作用クラス ・知っていること ・行うこと
3.
オブジェクト指向設計五大原則 • 優れたオブジェクト指向開発のための指針。 • あくまで原則。 •
必ず守らなければならないものではないが まずそれで考えることが重要。 • 正当な理由やトレードオフが 説明できれば破っても良い。 • が、無視してはダメだ。
4.
【単一責任の原則】 (Single Responsibility
Principle) • 『クラスを変更する理由は 1つ以上存在してはならない。 』 • 変更理由が2つあるということは 責任(役割)も2つあるということ。 • そんな便利そうなクラスは許さん! という原則。 ※ 「変更する理由」ってのがポイント
5.
【オープン・クローズドの原則】 (the
Open-Closed Principle ) • 『ソフトウェアの構成要素は 拡張に対して開いていて 修正に対して閉じていなければならない。』 • オープンとは? → モジュールの振る舞いを拡張できる。 • クローズとは? → モジュールの振る舞いを変更しても そのソースやバイナリは影響を受けない。 • 抽象的な原則のくせに一番大事。 オブジェクト指向設計の核心です。
6.
【リスコフの置換原則】 (the
Liskov Substitution Principle) • 『派生型はその基本型と 置換可能でなければならない。』 • 使う側から言うと、基本型を引数にとる関数に、ど んな派生型のインスタンスをもらっても気にしない で使えないとダメ。 • 実装側から言うと、派生クラスがその基本クラスで 使われるところにおいても、正常に動作することを 保証しないとダメ。
7.
【依存関係逆転の原則】 (the
Dependency Inversion Principle) • 『上位のモジュールは下位のモジュールに 依存してはならない。 どちらのモジュールも「抽象」に 依存すべきである。』 • 『「抽象」は実装の詳細に依存してはならない。 実装の詳細が「抽象」に依存すべきである。』 • 手続き型でよく出てしまう好ましくない構造。 • ここで言う上位・下位は継承のこと だけを指しているわけではありません。
8.
【インターフェイス分離の原則】 (the Interface
Segregation Principle) • 『クライアントに、クライアントが 利⽤しないメソッドへの依存を 強制してはならない。』 • クライアントは複数のインターフェイスを 利⽤するけど、そのすべてが互いに 強い関連を持っているわけではない。 • すべてのインターフェイスを 1つのクラスに押し込めてしまうことはやめ 関連性持ったインターフェイスは グループ化して抽象基本クラスとして 分けて利⽤すべき。
9.
もっと詳しく知りたい人は 『アジャイルソフトウェア開発の奥義 第2版』 〜オブジェクト指向開発の神髄と匠の技〜
ロバート・C・マーチン、 瀬谷 啓介 著 6,000円くらいするけどね
10.
お題 • ドラクエの戦闘画面を
モデリングしましょう。 • パーティは4人、敵はランダム。 • ステータス異常などもアリ。