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
20250315_LT資料_Kyoto.kt #2_デザインパターン
Search
Taipy(タイピー)
March 16, 2025
Programming
0
120
20250315_LT資料_Kyoto.kt #2_デザインパターン
目次
・なぜデザインパターンなのか
・オブジェクト指向プログラミングの原則
・デザインパターン Strategy
・まとめ
Taipy(タイピー)
March 16, 2025
Tweet
Share
More Decks by Taipy(タイピー)
See All by Taipy(タイピー)
React new features (Activity and useEffectEvent)
taipy
0
0
AI駆動開発 設計書から実装へ
taipy
1
1.2k
JavaのOAuthライブラリ 比較検討
taipy
0
180
Other Decks in Programming
See All in Programming
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
680
ノーコードからの脱出 -地獄のデスロード- / Escape from Base44
keisuke69
0
340
KoogではじめるAIエージェント開発
hiroaki404
1
270
CSC305 Lecture 12
javiergs
PRO
0
250
テーブル定義書の構造化抽出して、生成AIでDWH分析を試してみた / devio2025tokyo
kasacchiful
0
370
業務でAIを使いたい話
hnw
0
220
エンジニアに事業やプロダクトを理解してもらうためにやってること
murabayashi
0
110
AsyncSequenceとAsyncStreamのプロポーザルを全部読む!!
s_shimotori
1
220
Designing Repeatable Edits: The Architecture of . in Vim
satorunooshie
0
220
Kotlin 2.2が切り拓く: コンテキストパラメータで書く関数型DSLと新しい依存管理のかたち
knih
0
240
AI時代に必須!状況言語化スキル / ai-context-verbalization
minodriven
2
300
contribution to astral-sh/uv
shunsock
0
580
Featured
See All Featured
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.2k
Code Review Best Practice
trishagee
72
19k
Writing Fast Ruby
sferik
630
62k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
The Language of Interfaces
destraynor
162
25k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
10
900
Become a Pro
speakerdeck
PRO
29
5.6k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
34
2.3k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6k
Optimizing for Happiness
mojombo
379
70k
Transcript
デザインパターン
自己紹介 名前:Taipy(たいぴー) 出身:香川県小豆島 趣味:読書、アニメ、筋トレ
自己紹介 IT業界に入ったきっかけ 膝の靭帯断裂 ・前十字靭帯 ・内側側副靱帯
目次 ・なぜデザインパターンなのか ・オブジェクト指向プログラミングの原則 ・デザインパターン Strategy ・まとめ
AIの台頭 AI コードが書ける 人間 難易度が高い問題 設計 アーキテクチャ
Amazonの説明から一部抜粋 2004年には増補改訂版が刊 行され、2020年には第31刷ま で達するという人気のロングセ ラーとなっています。 2001年に初版が刊行 https://amzn.asia/d/7nyRI8H
学んだ設計原則 アプリケーション内の変更する部分を特定し、不変な 部分と分離する。
Strategy 最も強い者が生き残るのではない、最 も賢い者が生き残るのでもない、唯一 生き残るのは変化できる者である - チャールズ・ダーウィン デザインパターンその1
概要 S t r a t e g y パターンは一連のアルゴリズム
を定 義してカプセル化 し、交換できるようにします。 Strategy パターンを使うと、 アルゴリズムを利用す るクライアントとは独立してアルゴリ ズムを変更でき ます。
いつ使うのか? 1. アルゴリズムの切り替えが必要 2. 拡張性 「アルゴリズム」 →特定の問題を解決するために定められた手順や計算方法 →要するに、「倒し方」
None
None
None
アルゴリズムを切り出す
Before After
Before
None
まとめ ・アルゴリズムを頻繁に変更する場合は →ストラテジーパターンを使おう!
参考文献 ・Eric Freeman (著), Elisabeth Robso (著), 佐藤 直生 (監修)「Head
Firstデザイン パターン 第2版 ―頭とからだで覚えるデザインパターンの基本」, https://amzn.asia/d/aXDdbrL ・Refactoring.Guru「デザインパターン」 https://refactoring.guru/ja/design-patterns ※直前までのスライドで引用していないものをここに記載