Submit Search
Upload
serviceクラスをやめようサブクラスを使おう
•
4 likes
•
11,577 views
よしだ あつし
Follow
https://ginza-rails.connpass.com/event/152498/ の発表資料です。
Read less
Read more
Engineering
Report
Share
Report
Share
1 of 26
Download now
Download to read offline
Recommended
PHPカンファレンス2012 & WordCampTokyo2012 LT発表資料です。 タイトルの元ネタ: http://www.amazon.co.jp/dp/4094512624
やはりお前らのMVCは間違っている
やはりお前らのMVCは間違っている
Koichi Tanaka
devfest tokyo 2017
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
pospome
Visual Studio Users Community Japan #1 で発表した資料になります。 https://vsuc.connpass.com/event/143114/
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
Atsushi Nakamura
2012年のオープンソースカンファレンス北海道(OSC-do)でセミナー発表した際に使用したスライド資料です。
大規模ソーシャルゲームを支える技術~PHP+MySQLを使った高負荷対策~
大規模ソーシャルゲームを支える技術~PHP+MySQLを使った高負荷対策~
infinite_loop
May 29~30, 2019 に開催された "de:code 2019" の Day1 EXPOシアターセッションで、Blazor について発表した際のスライド資料です。CC BY License、又は The Unlicense のデュアルライセンスで再利用可能です。 アニメーション付 PowerPoint 原ファイルは以下の URL から入手可能です。 https://1drv.ms/p/s!Ahj5X4eD4NFdgvpnYa4h1jR5JnFlmg
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
Jun-ichi Sakamoto
ドメイン駆動設計 Domain-Driven Design ( DDD ) 準備 / スタートアップ / ブラッシュアップ / チャレンジ / 参考書籍 /
ドメイン駆動設計 ( DDD ) をやってみよう
ドメイン駆動設計 ( DDD ) をやってみよう
増田 亨
ドメインロジックに焦点をあてる。 それが、ドメイン駆動設計の基本。 ドメイン駆動設計の考え方とやり方の説明と、実践基盤としての Spring Framework/Spring Boot を使った事例の紹介。
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
増田 亨
ドメイン駆動設計で、モデリングをどうやっているか、それをどう実装に結びつけているかの事例紹介。 RDRA+ICONXをベースに、より機敏なやり方への挑戦。実践的なオブジェクト指向設計。
ドメイン駆動で開発する ラフスケッチから実装まで
ドメイン駆動で開発する ラフスケッチから実装まで
増田 亨
Recommended
PHPカンファレンス2012 & WordCampTokyo2012 LT発表資料です。 タイトルの元ネタ: http://www.amazon.co.jp/dp/4094512624
やはりお前らのMVCは間違っている
やはりお前らのMVCは間違っている
Koichi Tanaka
devfest tokyo 2017
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
pospome
Visual Studio Users Community Japan #1 で発表した資料になります。 https://vsuc.connpass.com/event/143114/
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
Atsushi Nakamura
2012年のオープンソースカンファレンス北海道(OSC-do)でセミナー発表した際に使用したスライド資料です。
大規模ソーシャルゲームを支える技術~PHP+MySQLを使った高負荷対策~
大規模ソーシャルゲームを支える技術~PHP+MySQLを使った高負荷対策~
infinite_loop
May 29~30, 2019 に開催された "de:code 2019" の Day1 EXPOシアターセッションで、Blazor について発表した際のスライド資料です。CC BY License、又は The Unlicense のデュアルライセンスで再利用可能です。 アニメーション付 PowerPoint 原ファイルは以下の URL から入手可能です。 https://1drv.ms/p/s!Ahj5X4eD4NFdgvpnYa4h1jR5JnFlmg
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
Jun-ichi Sakamoto
ドメイン駆動設計 Domain-Driven Design ( DDD ) 準備 / スタートアップ / ブラッシュアップ / チャレンジ / 参考書籍 /
ドメイン駆動設計 ( DDD ) をやってみよう
ドメイン駆動設計 ( DDD ) をやってみよう
増田 亨
ドメインロジックに焦点をあてる。 それが、ドメイン駆動設計の基本。 ドメイン駆動設計の考え方とやり方の説明と、実践基盤としての Spring Framework/Spring Boot を使った事例の紹介。
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
増田 亨
ドメイン駆動設計で、モデリングをどうやっているか、それをどう実装に結びつけているかの事例紹介。 RDRA+ICONXをベースに、より機敏なやり方への挑戦。実践的なオブジェクト指向設計。
ドメイン駆動で開発する ラフスケッチから実装まで
ドメイン駆動で開発する ラフスケッチから実装まで
増田 亨
より詳細なCQRSに関する資料はこちら https://little-hands.hatenablog.com/entry/2019/12/02/cqrs 参考資料:http://little-hands.hatenablog.com/entry/jjug2017fall 社内新規プロダクトでDDD, CQRSの思想をベースとしたアーキテクチャを構築し、コマンド(更新系処理)ではSpring Data JPA(Hibernate)を、クエリ(参照系処理)ではjOOQを採用しました。 結果としてそれぞれのORMの良いところを生かした組み合わせのアーキテクチャが構築できたので、その経緯と得られた知見についてお話ししたいと思います。 以下のようなトピックを考えています。 ・CQRSの定義とメリットデメリット ・DDD,CQRSを検討するにあたってのORMの選定ポイント ・構築したアーキテクチャ CQRSはDDDと切り分けて単独でも適用することができるので、DDDについてご存知ない方もご覧いただけます。日本語の文献は意外と少ないので、この辺りの分野に興味がある人の参考になれば幸いです。
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
Koichiro Matsuoka
質問への回答(35件)を、ブログにまとめているのでこちらご覧ください https://little-hands.hatenablog.com/entry/2019/08/31/genba_de_ddd 「Mix Leap Study 特別編 - レガシーをぶっつぶせ。現場でDDD! コラボカンファレンス」登壇資料 ブログ:https://little-hands.hatenablog.com/ Twitter:https://twitter.com/little_hand_s 質問箱:https://peing.net/ja/little_hands
DDDのモデリングとは何なのか、 そしてどうコードに落とすのか
DDDのモデリングとは何なのか、 そしてどうコードに落とすのか
Koichiro Matsuoka
ドメイン駆動設計の4つの基本活動、Springのプログラミングモデル、ドメイン駆動設計のためのSpringの使い方
ドメイン駆動設計のための Spring の上手な使い方
ドメイン駆動設計のための Spring の上手な使い方
増田 亨
builderscon2017の発表資料です。 https://builderscon.io/tokyo/2017/session/182ba13a-ccd5-4ddd-9565-c4e20df1d871
Oss貢献超入門
Oss貢献超入門
Michihito Shigemura
ドメイン駆動設計 モデリング/実装ガイド https://little-hands.booth.pm/items/1835632 発売記念に、本書の1,2章の内容を中心にDDDの概要について解説する勉強会です。
ドメイン駆動設計 モデリング_実装入門勉強会_2020.3.8
ドメイン駆動設計 モデリング_実装入門勉強会_2020.3.8
Koichiro Matsuoka
2022/1/29 第一回FlutterGakkai登壇資料
Riverpodでテストを書こう
Riverpodでテストを書こう
Shinnosuke Tokuda
JJUG-CCC 日本Javaユーザーズグループクロスコミュニティカンファレンス 2018/12 登壇資料です。
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
Y Watanabe
Java/Spring Boot/MyBatis/Thymeleafを使った、ドメイン駆動設計のサンプルコード。ビジネスルールに焦点を合わせ、計算モデルで複雑さを整理し、型指向のプログラミングで実装する、その具体例。
ドメイン駆動設計サンプルコードの徹底解説
ドメイン駆動設計サンプルコードの徹底解説
増田 亨
ソーシャルゲーム案件におけるDB分割のPHP実装 ~とにかく分割ですよ。10回じゃ足りない。20回くらい分割。~ 株式会社インフィニットループ 佐々木 亨基 2013/7/15にPHPMatsuri2013内で発表された講演のスライド
ソーシャルゲーム案件におけるDB分割のPHP実装
ソーシャルゲーム案件におけるDB分割のPHP実装
infinite_loop
関西DDD.java 勉強会 2016-3-5 (DDD Alliance 勉強会 2016-1-21 @東京の京都再演版)
ドメイン駆動設計のためのオブジェクト指向入門
ドメイン駆動設計のためのオブジェクト指向入門
増田 亨
MVC の Model を考える。Controller が太って困っている人向け。
MVC の Model を考える
MVC の Model を考える
tomo_masakura
2013/04/20 デブサミ 2013 アワード & リバイバル
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
Takuto Wada
at Open Seminar Hiroshima 2014 (#osh2014) 2014.02.01 (Sat) http://osh-2014.github.io/
TDD のこころ @ OSH2014
TDD のこころ @ OSH2014
Takuto Wada
ドメイン駆動設計の要点は3つ。ビジネスルール・値オブジェクト・型
ドメイン駆動設計に15年取り組んでわかったこと
ドメイン駆動設計に15年取り組んでわかったこと
増田 亨
- phpcon2022 の発表 - https://fortee.jp/phpcon-2022/proposal/b85ca73f-6383-4485-b2ae-4ec3e0913e72
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
shinjiigarashi
Modeling Forum 2018 技術公演トラックで発表した内容となります。 VernonVaughn Vernon 氏が発表 した書籍「 実践ドメイン駆動設計(通称: IDDD )」の 流れに沿って、 DDD の基本からモデリング手法までを 幅広く紹介します。
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
A AOKI
SonicGarden Study #11で放送された資料から一部スライドを抜いたものになります。 http://sonicgarden.doorkeeper.jp/events/13229 ----- 優れたプログラマだけが優れたソースコードを書くことができます。 では優れたプログラマになるにはどうすれば良いでしょうか。 自分の書いたコードを、優れたプログラマに指摘してもらうことが一番の近道です。それがコードレビューです。たった一人でコードレビューも受けずに、ただ書き続けてもクソコードはクソコードのままなのです。 そこで今回は、良いコードが書けるプログラマになるための、コードレビューを上手に実践する秘訣を話します。
デキるプログラマだけが知っているコードレビュー7つの秘訣
デキるプログラマだけが知っているコードレビュー7つの秘訣
Masahiro Nishimi
第14回福岡市西区プログラム勉強会資料(2016/07/03) Lore言語実装の副産物として汎用ASTライブラリを作成したので紹介した。 (1) シンプルな単一種類ノードのASTに型チェック付きで様々な型のアトリビュートを格納するAST実装 (2) ASTを辿る過程をイベント・ストリームに変換してアクセスすることでイベント駆動でないプル型のアクセスを可能にするASTウォーカーの実装 (先行事例はちゃんと調べてないので「あるある」実装かも。)
オレオレ言語実装に役立つプル型ASTウォーカーAPI
オレオレ言語実装に役立つプル型ASTウォーカーAPI
隆行 神戸
第1回 しょぼべん ( http://connpass.com/event/10849/ ) で話しした、イミュータブルデータモデル(世代編)です。
イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)
Yoshitaka Kawashima
2022年9月13日 株式会社メンバーズ ポップインサイトカンパニーでのウェビナーのスライドです。「ユーザーが欲しいと言った機能をつけたのに使われない!」という経験はありませんか。プロダクトをつくるとき「ユーザーの心理を理解しよう」とよく言われます。しかし、ユーザーに言われたままやることと、ユーザーが本当に望んでいることは異なります。「UXデザイン・UXリサーチ」は、ユーザーを理解するための専門技術です。ユーザーインタビューやユーザビリティテストを用いてファクトを集めることで、ユーザーの表面的な言葉に惑わされない、本当のインサイトにたどりつくことができます。かんたんなワークも交えながら、体系的に解説いたします。
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
Yoshiki Hayama
Service Cloud Trailblazers Meetup #01 での発表資料です。
Service Cloud Trailblazers Meetup #01
Service Cloud Trailblazers Meetup #01
sfdc_sctb
JJUG CCC 2016 Spring F-5セッションの発表資料です。 #jjug #jjug_ccc #ccc_f5
Javaプログラマーももう逃げられない。マイクロサービスとAPIの世界。
Javaプログラマーももう逃げられない。マイクロサービスとAPIの世界。
Takakiyo Tanaka
More Related Content
What's hot
より詳細なCQRSに関する資料はこちら https://little-hands.hatenablog.com/entry/2019/12/02/cqrs 参考資料:http://little-hands.hatenablog.com/entry/jjug2017fall 社内新規プロダクトでDDD, CQRSの思想をベースとしたアーキテクチャを構築し、コマンド(更新系処理)ではSpring Data JPA(Hibernate)を、クエリ(参照系処理)ではjOOQを採用しました。 結果としてそれぞれのORMの良いところを生かした組み合わせのアーキテクチャが構築できたので、その経緯と得られた知見についてお話ししたいと思います。 以下のようなトピックを考えています。 ・CQRSの定義とメリットデメリット ・DDD,CQRSを検討するにあたってのORMの選定ポイント ・構築したアーキテクチャ CQRSはDDDと切り分けて単独でも適用することができるので、DDDについてご存知ない方もご覧いただけます。日本語の文献は意外と少ないので、この辺りの分野に興味がある人の参考になれば幸いです。
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
Koichiro Matsuoka
質問への回答(35件)を、ブログにまとめているのでこちらご覧ください https://little-hands.hatenablog.com/entry/2019/08/31/genba_de_ddd 「Mix Leap Study 特別編 - レガシーをぶっつぶせ。現場でDDD! コラボカンファレンス」登壇資料 ブログ:https://little-hands.hatenablog.com/ Twitter:https://twitter.com/little_hand_s 質問箱:https://peing.net/ja/little_hands
DDDのモデリングとは何なのか、 そしてどうコードに落とすのか
DDDのモデリングとは何なのか、 そしてどうコードに落とすのか
Koichiro Matsuoka
ドメイン駆動設計の4つの基本活動、Springのプログラミングモデル、ドメイン駆動設計のためのSpringの使い方
ドメイン駆動設計のための Spring の上手な使い方
ドメイン駆動設計のための Spring の上手な使い方
増田 亨
builderscon2017の発表資料です。 https://builderscon.io/tokyo/2017/session/182ba13a-ccd5-4ddd-9565-c4e20df1d871
Oss貢献超入門
Oss貢献超入門
Michihito Shigemura
ドメイン駆動設計 モデリング/実装ガイド https://little-hands.booth.pm/items/1835632 発売記念に、本書の1,2章の内容を中心にDDDの概要について解説する勉強会です。
ドメイン駆動設計 モデリング_実装入門勉強会_2020.3.8
ドメイン駆動設計 モデリング_実装入門勉強会_2020.3.8
Koichiro Matsuoka
2022/1/29 第一回FlutterGakkai登壇資料
Riverpodでテストを書こう
Riverpodでテストを書こう
Shinnosuke Tokuda
JJUG-CCC 日本Javaユーザーズグループクロスコミュニティカンファレンス 2018/12 登壇資料です。
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
Y Watanabe
Java/Spring Boot/MyBatis/Thymeleafを使った、ドメイン駆動設計のサンプルコード。ビジネスルールに焦点を合わせ、計算モデルで複雑さを整理し、型指向のプログラミングで実装する、その具体例。
ドメイン駆動設計サンプルコードの徹底解説
ドメイン駆動設計サンプルコードの徹底解説
増田 亨
ソーシャルゲーム案件におけるDB分割のPHP実装 ~とにかく分割ですよ。10回じゃ足りない。20回くらい分割。~ 株式会社インフィニットループ 佐々木 亨基 2013/7/15にPHPMatsuri2013内で発表された講演のスライド
ソーシャルゲーム案件におけるDB分割のPHP実装
ソーシャルゲーム案件におけるDB分割のPHP実装
infinite_loop
関西DDD.java 勉強会 2016-3-5 (DDD Alliance 勉強会 2016-1-21 @東京の京都再演版)
ドメイン駆動設計のためのオブジェクト指向入門
ドメイン駆動設計のためのオブジェクト指向入門
増田 亨
MVC の Model を考える。Controller が太って困っている人向け。
MVC の Model を考える
MVC の Model を考える
tomo_masakura
2013/04/20 デブサミ 2013 アワード & リバイバル
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
Takuto Wada
at Open Seminar Hiroshima 2014 (#osh2014) 2014.02.01 (Sat) http://osh-2014.github.io/
TDD のこころ @ OSH2014
TDD のこころ @ OSH2014
Takuto Wada
ドメイン駆動設計の要点は3つ。ビジネスルール・値オブジェクト・型
ドメイン駆動設計に15年取り組んでわかったこと
ドメイン駆動設計に15年取り組んでわかったこと
増田 亨
- phpcon2022 の発表 - https://fortee.jp/phpcon-2022/proposal/b85ca73f-6383-4485-b2ae-4ec3e0913e72
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
shinjiigarashi
Modeling Forum 2018 技術公演トラックで発表した内容となります。 VernonVaughn Vernon 氏が発表 した書籍「 実践ドメイン駆動設計(通称: IDDD )」の 流れに沿って、 DDD の基本からモデリング手法までを 幅広く紹介します。
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
A AOKI
SonicGarden Study #11で放送された資料から一部スライドを抜いたものになります。 http://sonicgarden.doorkeeper.jp/events/13229 ----- 優れたプログラマだけが優れたソースコードを書くことができます。 では優れたプログラマになるにはどうすれば良いでしょうか。 自分の書いたコードを、優れたプログラマに指摘してもらうことが一番の近道です。それがコードレビューです。たった一人でコードレビューも受けずに、ただ書き続けてもクソコードはクソコードのままなのです。 そこで今回は、良いコードが書けるプログラマになるための、コードレビューを上手に実践する秘訣を話します。
デキるプログラマだけが知っているコードレビュー7つの秘訣
デキるプログラマだけが知っているコードレビュー7つの秘訣
Masahiro Nishimi
第14回福岡市西区プログラム勉強会資料(2016/07/03) Lore言語実装の副産物として汎用ASTライブラリを作成したので紹介した。 (1) シンプルな単一種類ノードのASTに型チェック付きで様々な型のアトリビュートを格納するAST実装 (2) ASTを辿る過程をイベント・ストリームに変換してアクセスすることでイベント駆動でないプル型のアクセスを可能にするASTウォーカーの実装 (先行事例はちゃんと調べてないので「あるある」実装かも。)
オレオレ言語実装に役立つプル型ASTウォーカーAPI
オレオレ言語実装に役立つプル型ASTウォーカーAPI
隆行 神戸
第1回 しょぼべん ( http://connpass.com/event/10849/ ) で話しした、イミュータブルデータモデル(世代編)です。
イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)
Yoshitaka Kawashima
2022年9月13日 株式会社メンバーズ ポップインサイトカンパニーでのウェビナーのスライドです。「ユーザーが欲しいと言った機能をつけたのに使われない!」という経験はありませんか。プロダクトをつくるとき「ユーザーの心理を理解しよう」とよく言われます。しかし、ユーザーに言われたままやることと、ユーザーが本当に望んでいることは異なります。「UXデザイン・UXリサーチ」は、ユーザーを理解するための専門技術です。ユーザーインタビューやユーザビリティテストを用いてファクトを集めることで、ユーザーの表面的な言葉に惑わされない、本当のインサイトにたどりつくことができます。かんたんなワークも交えながら、体系的に解説いたします。
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
Yoshiki Hayama
What's hot
(20)
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDDのモデリングとは何なのか、 そしてどうコードに落とすのか
DDDのモデリングとは何なのか、 そしてどうコードに落とすのか
ドメイン駆動設計のための Spring の上手な使い方
ドメイン駆動設計のための Spring の上手な使い方
Oss貢献超入門
Oss貢献超入門
ドメイン駆動設計 モデリング_実装入門勉強会_2020.3.8
ドメイン駆動設計 モデリング_実装入門勉強会_2020.3.8
Riverpodでテストを書こう
Riverpodでテストを書こう
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
ドメイン駆動設計サンプルコードの徹底解説
ドメイン駆動設計サンプルコードの徹底解説
ソーシャルゲーム案件におけるDB分割のPHP実装
ソーシャルゲーム案件におけるDB分割のPHP実装
ドメイン駆動設計のためのオブジェクト指向入門
ドメイン駆動設計のためのオブジェクト指向入門
MVC の Model を考える
MVC の Model を考える
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
TDD のこころ @ OSH2014
TDD のこころ @ OSH2014
ドメイン駆動設計に15年取り組んでわかったこと
ドメイン駆動設計に15年取り組んでわかったこと
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
デキるプログラマだけが知っているコードレビュー7つの秘訣
デキるプログラマだけが知っているコードレビュー7つの秘訣
オレオレ言語実装に役立つプル型ASTウォーカーAPI
オレオレ言語実装に役立つプル型ASTウォーカーAPI
イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
Similar to serviceクラスをやめようサブクラスを使おう
Service Cloud Trailblazers Meetup #01 での発表資料です。
Service Cloud Trailblazers Meetup #01
Service Cloud Trailblazers Meetup #01
sfdc_sctb
JJUG CCC 2016 Spring F-5セッションの発表資料です。 #jjug #jjug_ccc #ccc_f5
Javaプログラマーももう逃げられない。マイクロサービスとAPIの世界。
Javaプログラマーももう逃げられない。マイクロサービスとAPIの世界。
Takakiyo Tanaka
catalystcon1
Separate Model from Catalyst
Separate Model from Catalyst
techmemo
Fukuoka.NET #5 での発表資料です https://fukuten.connpass.com/event/48572/
いまさら学ぶMVVMパターン
いまさら学ぶMVVMパターン
Yuta Matsumura
クリエイター大新年会 presented by HTML5minutes の発表資料。
MVCフレームワークとの付き合い方
MVCフレームワークとの付き合い方
Kazuki Shibata
Service Cloud Trailblazers Meetup #02 での発表資料です。
Service Cloud Trailblazers Meetup #02
Service Cloud Trailblazers Meetup #02
sfdc_sctb
2015/04/11に開催されたJJUG CCC 2015 SpringのタイムテーブルAB4にて発表した「クリスマスを支える俺たちとJava」の資料です。 --- AB-4 クリスマスを支える俺たちとJava 阪田 浩一 (フリュー株式会社/関西Javaエンジニアの会) プリントシール機が、話題になった10年以上前のころと変わらず若い女性に利用されていることをご存知でしょうか? 私が所属するフリュー株式会社は、プリントシール機(プリ機)を出している会社です。そしてWebにてプリ機と連動して画像を取得するサービスを提供しています。実はこのサービス、会員数が1000万人を超えており、女性で特定の年齢層であれば90%以上の方が会員となっています。 JavaとRDBMS、分散ファイルシステムMogileFSにて構築したこの少し古いWebアプリケーションは、当初ここまでの規模になるとは想定していませんでした。 スーパーエンジニアがいない普通のエンジニアチームが、この数年間で増加する会員数とともにぶち当たった問題とその解決策についてご紹介します。
クリスマスを支える俺たちとJava(JJUG CCC 2015 Spring AB4)
クリスマスを支える俺たちとJava(JJUG CCC 2015 Spring AB4)
Koichi Sakata
WEBエンジニア勉強会 #01 (東京都, 新橋) https://connpass.com/event/57201/ での発表資料です。
Web開発初心者がReactをチームに導入して半年経った
Web開発初心者がReactをチームに導入して半年経った
kazuki matsumura
大規模プロジェクトにおける自動化失敗談と改善策
自滅のAnsible - Ansible Night 2021年2月
自滅のAnsible - Ansible Night 2021年2月
Shoichiro Suzuki
勢いだけで作った 参考文献: やはりお前らのMVCは間違っている http://www.slideshare.net/MugeSo/mvc-14469802
究極にして至高のWAF
究極にして至高のWAF
Yuki Ishikawa
Application Architecture for Enterprise Win Store Apps with DDD Pattern
Application Architecture for Enterprise Win Store Apps with DDD Pattern
Atsushi Kambara
Similar to serviceクラスをやめようサブクラスを使おう
(11)
Service Cloud Trailblazers Meetup #01
Service Cloud Trailblazers Meetup #01
Javaプログラマーももう逃げられない。マイクロサービスとAPIの世界。
Javaプログラマーももう逃げられない。マイクロサービスとAPIの世界。
Separate Model from Catalyst
Separate Model from Catalyst
いまさら学ぶMVVMパターン
いまさら学ぶMVVMパターン
MVCフレームワークとの付き合い方
MVCフレームワークとの付き合い方
Service Cloud Trailblazers Meetup #02
Service Cloud Trailblazers Meetup #02
クリスマスを支える俺たちとJava(JJUG CCC 2015 Spring AB4)
クリスマスを支える俺たちとJava(JJUG CCC 2015 Spring AB4)
Web開発初心者がReactをチームに導入して半年経った
Web開発初心者がReactをチームに導入して半年経った
自滅のAnsible - Ansible Night 2021年2月
自滅のAnsible - Ansible Night 2021年2月
究極にして至高のWAF
究極にして至高のWAF
Application Architecture for Enterprise Win Store Apps with DDD Pattern
Application Architecture for Enterprise Win Store Apps with DDD Pattern
More from よしだ あつし
TokyuRuby会議13で発表した LT 資料です。 脆弱性をコードレビューで見つけるのは案外難しいという事を言いたかった。
ruby で書く 脆弱なコード
ruby で書く 脆弱なコード
よしだ あつし
Osaka rubykaigi 01の LT 資料です。
CTOのおしごと
CTOのおしごと
よしだ あつし
第80回Ruby関西勉強会で発表した ruby の self についての話しです。
Selfを考える
Selfを考える
よしだ あつし
2017年7月29日(肉の日!)に行われた第78回ruby関西勉強会で発表した rails への pull request の成果をプレゼンした資料です。
Railsにコントリビュートしてきました
Railsにコントリビュートしてきました
よしだ あつし
第77回 Ruby関西 勉強会 でプレゼンした資料です。
Rubyコードの最適化
Rubyコードの最適化
よしだ あつし
第72回 Ruby関西 勉強会 で発表した資料です。
低レイヤから見たrubyプログラミング
低レイヤから見たrubyプログラミング
よしだ あつし
コーチ、スポンサーとして参加させていただきました、railsgirls osaka #2 のスポンサーセッションに資料です。
まじょのおしごとの裏側
まじょのおしごとの裏側
よしだ あつし
2015年3月28日に行われた minami.rb最初で最後の LT大会 で発表した LT の資料です。
僕が勉強をする モチベーションと勉強法
僕が勉強をする モチベーションと勉強法
よしだ あつし
minami.rb 第27回勉強会で発表した資料です。
Dockerプレゼン
Dockerプレゼン
よしだ あつし
Vue.js ハンズオン資料
Vue.js ハンズオン資料
よしだ あつし
2012-09-12 に行われた Minami.rb の第14回勉強会の発表資料です
よい名前を付けましょう リーダブルなんたらとか
よい名前を付けましょう リーダブルなんたらとか
よしだ あつし
2011年10月1日のminami.rbの第9回勉強会で発表したgitのtipsのプレゼン資料です。
Gitの使い方あれこれ
Gitの使い方あれこれ
よしだ あつし
2011年9月10日に神戸大学で行われたRuby関西主催の「第51回Ruby/Rails勉強会@関西」で発表したgithubでpull requestを行った経験談の資料です。
私はいかにしてpull request を行ったか - あるいは social development について
私はいかにしてpull request を行ったか - あるいは social development について
よしだ あつし
2011年4月23日の minami.rb 第7回勉強会のLTで発表した「15分でできるSQLインジェクション」の発表資料です。
15分でできるSQLインジェクション
15分でできるSQLインジェクション
よしだ あつし
Next GAE Heroku を使って 3分でRailsアプリをリリース
Next GAE Heroku を使って 3分でRailsアプリをリリース
よしだ あつし
2011年1月29日の第4回minami.rb勉強会で行った講義の資料です。
テスト駆動開発入門
テスト駆動開発入門
よしだ あつし
Railsの今昔
Railsの今昔
よしだ あつし
第45回 Ruby/Rails勉強会@関西で発表した内容です。
デバッガでデバッグしない
デバッガでデバッグしない
よしだ あつし
第44回Ruby/Rails勉強会@関西で使用した発表資料です。
Rails3使用雑感
Rails3使用雑感
よしだ あつし
Twitterでネットストーカーをしよう
Twitterでネットストーカーをしよう
よしだ あつし
More from よしだ あつし
(20)
ruby で書く 脆弱なコード
ruby で書く 脆弱なコード
CTOのおしごと
CTOのおしごと
Selfを考える
Selfを考える
Railsにコントリビュートしてきました
Railsにコントリビュートしてきました
Rubyコードの最適化
Rubyコードの最適化
低レイヤから見たrubyプログラミング
低レイヤから見たrubyプログラミング
まじょのおしごとの裏側
まじょのおしごとの裏側
僕が勉強をする モチベーションと勉強法
僕が勉強をする モチベーションと勉強法
Dockerプレゼン
Dockerプレゼン
Vue.js ハンズオン資料
Vue.js ハンズオン資料
よい名前を付けましょう リーダブルなんたらとか
よい名前を付けましょう リーダブルなんたらとか
Gitの使い方あれこれ
Gitの使い方あれこれ
私はいかにしてpull request を行ったか - あるいは social development について
私はいかにしてpull request を行ったか - あるいは social development について
15分でできるSQLインジェクション
15分でできるSQLインジェクション
Next GAE Heroku を使って 3分でRailsアプリをリリース
Next GAE Heroku を使って 3分でRailsアプリをリリース
テスト駆動開発入門
テスト駆動開発入門
Railsの今昔
Railsの今昔
デバッガでデバッグしない
デバッガでデバッグしない
Rails3使用雑感
Rails3使用雑感
Twitterでネットストーカーをしよう
Twitterでネットストーカーをしよう
serviceクラスをやめようサブクラスを使おう
1.
serviceクラスをやめよう サブクラスを使おう よしだあつし@銀座Rails#15
2.
2 名前: よしだあつし SNS: @yalab 職業:
株式会社ジラフ CTO Ruby歴: since 1.6 Rails歴: since 0.8 趣味: 料理 自己紹介
3.
3 ジラフ社が運営しているサービス ヒカカク peing-質問箱 トレカ専用フリマアプリ
magi
4.
4 service クラスとは何か?
5.
5 わかりません
6.
6 service クラス ● PoEAA ●
DDD ● トランザクションスクリプト ● Decorator ● Command ● static メソッド
7.
7 曖昧な定義
8.
8 要は使いどころだよね
9.
9 要は使いどころだよね ダメ絶対
10.
10 MVC
11.
11 MVC M: ビジネスロジック V: 見た目 C:
ユーザーからの入力をモデルに伝える
12.
12 責務から考える
13.
13 MVCの責務 M: データの一貫性 V: 出力されたデータの整形 C:
データの入出力
14.
14 service クラスの責務?
15.
15 service クラスの責務? ● トランザクションスクリプトは
Model の役目とかぶる ● デコレーターパターンは view とかぶる
16.
16 そもそもなぜ我々は service クラスを使うよ うになったのか?
17.
17 声の大きい人 fat model
をなんとかするため
18.
18 model を分割して責任範囲を限定したい
19.
19 service クラスにするのって おかしくない?
20.
20 ということで吉田からの提案
21.
21 fat model を
サブクラスに分割する
22.
22 例) User ● 管理者は全てのデータを書き換えられる ●
ユーザー自身の生年月日は create 時だけ ● プレミアムユーザーと一般ユーザーがいる
23.
23 controller が分かれてる事は多い class Admin::Users
< ApplicationController end class Users < ApplicationController end class Me::Users < ApplicationController end
24.
24 model を責任範囲ごとに作る class User
< ApplicationController validates :birthday, presence: true end class User::General < User attr_readonly :birthday end
25.
25 まとめ(今回言いたかったこと) ● Service クラス止めろ ●
責務からコードの振る舞いを定義しましょう ● fat model 対策の一例としてサブクラスに分割す るとわりと上手くワークする ● 声が大きい人が言うからといって鵜呑みにしない
26.
26 ご清聴ありがとうございました。
Download now