diff --git a/index.md b/index.md
index 82b4f58..092ade4 100644
--- a/index.md
+++ b/index.md
@@ -1,7 +1,13 @@
+---
+theme: seriph
+routerMode: 'hash'
+title: '〈完全なプログラミング〉を目指す会 2020'
+---
+
# 〈完全なプログラミング〉を目指す会 2020
-- [導入](intro.html)
-- [オブジェクト指向プログラミング](oop.html)
-- [命名](naming.html)
-- [ドキュメント](document.html)
-- [アーキテクチャ](architecture.html)
\ No newline at end of file
+- [導入](intro.html#1)
+- [オブジェクト指向プログラミング](oop.html#1)
+- [命名](naming.html#1)
+- [ドキュメント](document.html#1)
+- [アーキテクチャ](architecture.html#1)
\ No newline at end of file
diff --git a/jules-scratch/verification/screenshot-code.png b/jules-scratch/verification/screenshot-code.png
deleted file mode 100644
index 6d360f6..0000000
Binary files a/jules-scratch/verification/screenshot-code.png and /dev/null differ
diff --git a/jules-scratch/verification/screenshot-cover.png b/jules-scratch/verification/screenshot-cover.png
deleted file mode 100644
index 6d360f6..0000000
Binary files a/jules-scratch/verification/screenshot-cover.png and /dev/null differ
diff --git a/jules-scratch/verification/screenshot-image.png b/jules-scratch/verification/screenshot-image.png
deleted file mode 100644
index 2ba7272..0000000
Binary files a/jules-scratch/verification/screenshot-image.png and /dev/null differ
diff --git a/jules-scratch/verification/verify_slides.py b/jules-scratch/verification/verify_slides.py
deleted file mode 100644
index ff09802..0000000
--- a/jules-scratch/verification/verify_slides.py
+++ /dev/null
@@ -1,30 +0,0 @@
-import asyncio
-from playwright.async_api import async_playwright
-import os
-
-async def main():
- async with async_playwright() as p:
- browser = await p.chromium.launch()
- page = await browser.new_page()
-
- # Cover page (slide 1)
- await page.goto('http://localhost:3030/1')
- await page.wait_for_timeout(3000) # wait for render
- await page.screenshot(path='jules-scratch/verification/screenshot-cover.png')
-
- # Page with an image (slide 6)
- await page.goto('http://localhost:3030/6')
- await page.wait_for_timeout(3000) # wait for render
- await page.screenshot(path='jules-scratch/verification/screenshot-image.png')
-
- # Page with a code block (from oop.html, slide 44)
- # I need to navigate to the correct entrypoint for the dev server
- # The dev server serves slides.md by default. I need to check how to serve other files.
- # For now, I will comment this out and focus on the main slides.md
- # await page.goto('http://localhost:3030/slides_oop/44')
- # await page.wait_for_timeout(3000) # wait for render
- # await page.screenshot(path='jules-scratch/verification/screenshot-code.png')
-
- await browser.close()
-
-asyncio.run(main())
\ No newline at end of file
diff --git a/layouts/background-blur.vue b/layouts/background-blur.vue
new file mode 100644
index 0000000..4465565
--- /dev/null
+++ b/layouts/background-blur.vue
@@ -0,0 +1,8 @@
+
+
+
\ No newline at end of file
diff --git a/layouts/image-right.vue b/layouts/image-right.vue
new file mode 100644
index 0000000..eef661e
--- /dev/null
+++ b/layouts/image-right.vue
@@ -0,0 +1,10 @@
+
+
+
「必要十分なドキュメントを書く」
+# 「読めば分かるコードを書く」
「必要十分なドキュメントを書く」
---
-# {w:fit}余計なモノを
一切必要としない
+# 余計なモノを
一切必要としない
## ソフトウェアづくり
---
-# {w:fit}その心は?
+# その心は?
---
-# {w:fit}コードは圧倒的に
**人間によって読まれる**
+# コードは圧倒的に
**人間によって読まれる**
---
-# {w:fit}故に〈完全なプログラミング〉は
圧倒的に **はやい**
+# 故に〈完全なプログラミング〉は
圧倒的に **はやい**
---
-# {w:fit}さらに
+# さらに
---
-# {w:fit}品質の改善は
**コストを削減する**
+# 品質の改善は
**コストを削減する**
---
-# {w:fit}故に〈完全なプログラミング〉は
圧倒的に **やすい**
+# 故に〈完全なプログラミング〉は
圧倒的に **やすい**
---
-# {w:fit} **はやい**
**やすい**
+# **はやい**
**やすい**
---
-# {w:fit} **うまい**
😋
+# **うまい**
😋
---
-# {w:fit}今回はアーキテクチャ編
+# 今回はアーキテクチャ編
---
-# {w:fit}今日持ち帰って欲しいこと
+# 今日持ち帰って欲しいこと
---
----
+
layout: quote
---
@@ -91,14 +92,14 @@ see also [ベストな「How」は「Why」でしか規定できない メルカ
---
-## {w:fit}すべての解決策は
「なぜ」適用するかが大事
+## すべての解決策は
「なぜ」適用するかが大事
---
-## {w:fit}では本編
+## では本編
---
----
+
layout: quote
---
@@ -113,10 +114,10 @@ layout: quote
---
-## {w:fit} なぜソフトウェアは
変更しにくくなってしまうのか
+## なぜソフトウェアは
変更しにくくなってしまうのか
---
----
+
layout: quote
---
@@ -125,7 +126,7 @@ layout: quote
> *— Design Principles and Design Patterns, 2000, Robert C. Martin*
---
----
+
layout: quote
---
@@ -135,21 +136,21 @@ layout: quote
---
-## {w:fit} 複雑なソフトウェアの3つの負
+## 複雑なソフトウェアの3つの負
- Change Amplification: 変更箇所が多すぎる
- Cognitive Load: コードが理解できない
- Unknown Unknowns: そもそも何を変更すべきかわからない
---
-## {w:fit}変化し続ける要求に耐えながら
依存を完結に保つのが大事
+## 変化し続ける要求に耐えながら
依存を完結に保つのが大事
---
-## {w:fit}疎結合かつ凝集性を高く
+## 疎結合かつ凝集性を高く
---
----
+
layout: quote
---
@@ -159,7 +160,7 @@ layout: quote
---
-## {w:fit}疎結合と凝集性はお互いに表裏の関係にある
+## 疎結合と凝集性はお互いに表裏の関係にある
---
@@ -221,10 +222,10 @@ a = 7 // ソフトウェア要素 B
---
-## {w:fit}「1つだけ」のサイズは?
+## 「1つだけ」のサイズは?
---
----
+
layout: quote
---
@@ -233,7 +234,7 @@ layout: quote
> *— Dan North (creator of BDD)*
---
----
+
layout: quote
---
@@ -243,19 +244,19 @@ layout: quote
---
-## {w:fit}サイズの決定権は、
「我々」に委ねられている
+## サイズの決定権は、
「我々」に委ねられている
---
-## {w:fit}強い凝集性は
構造的にはわからない
+## 強い凝集性は
構造的にはわからない
---
-## {w:fit}プログラムの「意味」を理解して
はじめて凝集性の判断ができる
+## プログラムの「意味」を理解して
はじめて凝集性の判断ができる
---
-## {w:fit}全ては、プログラムの「意味」を
理解するところから
+## 全ては、プログラムの「意味」を
理解するところから
---
@@ -274,7 +275,7 @@ fun doSomething(obj: SomeObj)
```
---
----
+
layout: quote
---
@@ -294,7 +295,7 @@ layout: quote
## 小休憩がてら偉人のお言葉を
---
----
+
layout: quote
---
@@ -305,7 +306,7 @@ layout: quote
> *— Software Engineering Radio EP 215: Gang of Four - 20 Years Later*
---
----
+
layout: quote
---
@@ -332,7 +333,7 @@ layout: quote
---
-## {w:fit}すべての解決策は
「なぜ」適用するかが大事
+## すべての解決策は
「なぜ」適用するかが大事
---
@@ -345,7 +346,7 @@ layout: quote
- 理解したドメインを元にした **「戦略的設計」**
- 戦略的設計を実現するための **「戦術的設計」**
-## {w:fit} ※詳細には立ち入らないので、気になった人は一緒に話しましょう
+## ※詳細には立ち入らないので、気になった人は一緒に話しましょう
---
@@ -363,7 +364,7 @@ layout: quote
---
-## {w:fit}ドメイン分析
+## ドメイン分析
---
@@ -384,11 +385,11 @@ layout: quote
---
-## {w:fit}インフルエンザワクチンを患者に投与する
+## インフルエンザワクチンを患者に投与する
---
-## {w:fit}あなたなら
どんなコードを書く?
+## あなたなら
どんなコードを書く?
---
@@ -425,22 +426,22 @@ nurse.administerFluVaccine(patient, vaccine);
---
-## {w:fit}業務やモデルの理解がコードに現れる
理解したことしか表現できない
+## 業務やモデルの理解がコードに現れる
理解したことしか表現できない
---
## [ジョシュアツリーの法則](https://ktr-05.hatenablog.com/entry/2019/07/07/184436#%E3%82%B8%E3%83%A7%E3%82%B7%E3%83%A5%E3%82%A2%E3%83%84%E3%83%AA%E3%83%BC%E3%81%AE%E6%B3%95%E5%89%87) 覚えてますか?
---
----
+
+layout: background-blur
background: /assets/2020-04-24_05-21-45_joshua-tree-1772159_1280.jpg
-backgroundSize: contain
---
---
----
+
+layout: background-blur
background: /assets/2020-04-24_05-21-45_joshua-tree-1772159_1280.jpg
-backgroundSize: contain
---
> 名前を言えるようになったとたんに、いたる所でそれを見るようになりました
@@ -468,7 +469,7 @@ backgroundSize: contain
---
-## {w:fit}実際に[スライドの例](https://speakerdeck.com/nihonbuson/example-mapping?slide=14)を見てみよう
+## 実際に[スライドの例](https://speakerdeck.com/nihonbuson/example-mapping?slide=14)を見てみよう
---
@@ -481,10 +482,10 @@ backgroundSize: contain
---
-## {w:fit}戦略的設計
+## 戦略的設計
---
----
+
layout: quote
---
@@ -500,11 +501,11 @@ layout: quote
- 配達者が配達する「商品」
- 在庫管理者が在庫管理している「商品」
-#### {w:fit}それぞれでの「商品」の意味が異なる
+#### それぞれでの「商品」の意味が異なる
---
-## {w:fit}「商品」の意味が異なる
=
「商品」のコンテキストが異なる
+## 「商品」の意味が異なる
=
「商品」のコンテキストが異なる
---
@@ -520,7 +521,7 @@ layout: quote
---
-## {w:fit}ドメインを
分析するしかない
+## ドメインを
分析するしかない
---
@@ -549,12 +550,12 @@ layout: quote
---
-## {w:fit}戦術的設計
+## 戦術的設計
※ 詳細には立ち入らないです!
---
-## {w:fit}必ずしも DDD本 で
紹介されているものだけじゃない
+## 必ずしも DDD本 で
紹介されているものだけじゃない
---
@@ -562,104 +563,104 @@ layout: quote
---
-## {w:fit}集約とRepositoryパターン
+## 集約とRepositoryパターン
---
-## {w:fit}Layered Architecture
+## Layered Architecture
---
-## {w:fit}ヘキサゴナル (Port and Adapter) アーキテクチャ
+## ヘキサゴナル (Port and Adapter) アーキテクチャ
---
-## {w:fit}CQRS と Event Sourcing
+## CQRS と Event Sourcing
---
-## {w:fit}Clean Architecture
+## Clean Architecture
---
-## {w:fit}Humble Object Pattern
+## Humble Object Pattern
---
-## {w:fit}DTOやDPO
+## DTOやDPO
※ DTO = Data Transfer Object
※ DPO = Domain Payload Object
---
-## {w:fit}Transaction Script と Domain Modeling
+## Transaction Script と Domain Modeling
---
-## {w:fit}Service Oriented Architecture (SOA)
+## Service Oriented Architecture (SOA)
---
-## {w:fit}RESTとRPC
+## RESTとRPC
※ RPC = Remote Procedure Call
---
-## {w:fit}マイクロサービス、モジュラモノリス
+## マイクロサービス、モジュラモノリス
---
-## {w:fit}Dependency Injection
+## Dependency Injection
---
-## {w:fit}GoF の Design Pattern
+## GoF の Design Pattern
---
-## {w:fit}Design By Contract
+## Design By Contract
---
-## {w:fit}防御的プログラミング
+## 防御的プログラミング
---
-## {w:fit}REP, CCP, CRP原則
+## REP, CCP, CRP原則
※SOLID原則と共に紹介されるパッケージにおける原則
---
-## {w:fit}ADP, SDP, SAP原則
+## ADP, SDP, SAP原則
※SOLID原則と共に紹介されるパッケージ間の関係における原則
---
-## {w:fit}SOLID原則
+## SOLID原則
---
-## {w:fit}DRY, KISS, YAGNI
+## DRY, KISS, YAGNI
---
-## {w:fit}あなたはいくつ知ってましたか?
+## あなたはいくつ知ってましたか?
---
-## {w:fit}まだまだあるし
これからも増え続ける
+## まだまだあるし
これからも増え続ける
---
-## {w:fit}最後にもう一度
+## 最後にもう一度
---
-## {w:fit}すべての解決策は
「なぜ」適用するかが大事
+## すべての解決策は
「なぜ」適用するかが大事
---
-## {w:fit}付録
+## 付録
---
@@ -703,4 +704,4 @@ layout: quote
---
-## {w:fit}EOF
\ No newline at end of file
+## EOF
\ No newline at end of file
diff --git a/slides_document.md b/slides_document.md
index 176360a..6c624f7 100644
--- a/slides_document.md
+++ b/slides_document.md
@@ -1,5 +1,6 @@
---
theme: seriph
+routerMode: 'hash'
title: '第四回 ドキュメント'
description: '〈完全なプログラミング〉を目指す会 2020 ドキュメント編です'
footer: '〈完全なプログラミング〉を目指す会 2020'
@@ -7,84 +8,84 @@ drawings:
enabled: true
---
-# {w:fit} 〈完全なプログラミング〉を目指す会 2020
-## {w:fit} 第四回 ドキュメント
+# 〈完全なプログラミング〉を目指す会 2020
+## 第四回 ドキュメント
yewton
---
-# {w:fit} ドキュメント
+# ドキュメント
---
-# {w:fit}の前に
+# の前に
---
-# {w:fit} *復習*
+# *復習*
---
-# {w:fit}〈完全なプログラミング〉
+# 〈完全なプログラミング〉
## とは?
---
-# {w:fit}「読めば分かるコードを書く」
「必要十分なドキュメントを書く」
+# 「読めば分かるコードを書く」
「必要十分なドキュメントを書く」
---
-# {w:fit}余計なモノを
一切必要としない
+# 余計なモノを
一切必要としない
## ソフトウェアづくり
---
-# {w:fit}その心は?
+# その心は?
---
-# {w:fit}コードは圧倒的に
*人間によって読まれる*
+# コードは圧倒的に
*人間によって読まれる*
---
-# {w:fit}故に〈完全なプログラミング〉は
圧倒的に *はやい*
+# 故に〈完全なプログラミング〉は
圧倒的に *はやい*
---
-# {w:fit}さらに
+# さらに
---
-# {w:fit}品質の改善は
*コストを削減する*
+# 品質の改善は
*コストを削減する*
---
-# {w:fit}故に〈完全なプログラミング〉は
圧倒的に *やすい*
+# 故に〈完全なプログラミング〉は
圧倒的に *やすい*
---
-# {w:fit} *はやい*
*やすい*
+# *はやい*
*やすい*
---
-# {w:fit} *うまい*
😋
+# *うまい*
😋
---
-# {w:fit}命名は重要か?
+# 命名は重要か?
---
----
+
background: /assets/2020-04-24_05-40-04_1024px-Yukihiro_Matsumoto_EuRuKo_2011.jpg
backgroundPosition: right
---
-# {w:fit}[名前重要](http://xn--97-273ae6a4irb6e2hsoiozc2g4b8082p.com/%E3%82%A8%E3%83%83%E3%82%BB%E3%82%A4/%E5%90%8D%E5%89%8D%E9%87%8D%E8%A6%81/)
+# [名前重要](http://xn--97-273ae6a4irb6e2hsoiozc2g4b8082p.com/%E3%82%A8%E3%83%83%E3%82%BB%E3%82%A4/%E5%90%8D%E5%89%8D%E9%87%8D%E8%A6%81/)
---
-# {w:fit}命名 Tips
+# 命名 Tips
- それが何をするのか、何を表すのか、まずは *言葉で説明してみる*
- *解読* の必要が生じるような命名を避け、 *読めば分かる* 名前をつけよう
@@ -99,13 +100,12 @@ backgroundPosition: right
3. 残すべき **ドキュメント** とは何か
---
----
-background: /assets/future_self.png
-backgroundSize: contain
-backgroundPosition: right
+
+layout: image-right
+image: /assets/future_self.png
---
-# {w:fit} *効果的* な
コメント
+# *効果的* な
コメント
---
@@ -129,9 +129,9 @@ System.out.println( "r = " + r );
```
---
----
+
+layout: background-blur
background: /assets/thonk.png
-backgroundSize: contain
---
---
@@ -149,65 +149,65 @@ System.out.println( "r = " + SquareRootApproximation(r) );
---
-# {w:fit}理想
+# 理想
---
-# {w:fit} *コメントが全く無い*
コード
+# *コメントが全く無い*
コード
---
----
+
+layout: background-blur
background: /assets/thonk.png
-backgroundSize: contain
---
---
-# {w:fit} コメントが全く
*必要無い*
コード
+# コメントが全く
*必要無い*
コード
---
-# {w:fit} *読めば分かる* コード
+# *読めば分かる* コード
---
-# {w:fit} 適切な
*モジュール名*
*クラス名*
*メソッド名*
+# 適切な
*モジュール名*
*クラス名*
*メソッド名*
---
-# {w:fit} 「コードが仕様」は
*正義*
+# 「コードが仕様」は
*正義*
---
-# {w:fit} 現実
+# 現実
---
-# {w:fit} 制約
+# 制約
---
-# {w:fit} 歴史的経緯
時間的制約
リソース制約
+# 歴史的経緯
時間的制約
リソース制約
---
-# {w:fit} 😭
+# 😭
---
-# {w:fit} コードでは表現できない
**筆者の気持ち・意図**
を残すためにコメントを使う
+# コードでは表現できない
**筆者の気持ち・意図**
を残すためにコメントを使う
---
-# {w:fit} *ポイント*
+# *ポイント*
---
-# {w:fit} コメントの種類
+# コメントの種類
---
-# {w:fit} 1. コードの繰り返し
+# 1. コードの繰り返し
---
@@ -224,9 +224,9 @@ System.out.println(String.format("Product = %d", product));
```
---
----
+
+layout: background-blur
background: /assets/angrybaby.jpg
-backgroundSize: contain
---
---
@@ -236,7 +236,7 @@ backgroundSize: contain
---
-# {w:fit} 2. コードの説明
+# 2. コードの説明
---
@@ -249,13 +249,13 @@ backgroundSize: contain
```
---
----
+
+layout: background-blur
background: /assets/angrybaby.jpg
-backgroundSize: contain
---
---
----
+
layout: quote
---
@@ -264,7 +264,7 @@ layout: quote
> *--- プログラム書法 第2版 Brian W. Kernighan and P. J. Plauger*
---
----
+
layout: quote
---
@@ -278,11 +278,11 @@ layout: quote
---
-# {w:fit} *複雑* なコード
*トリッキー* なコード
*細心の注意が必要* なコード
+# *複雑* なコード
*トリッキー* なコード
*細心の注意が必要* なコード
---
-# {w:fit} *"凝った"* コードの
コメントは怪しい
+# *"凝った"* コードの
コメントは怪しい
---
@@ -290,15 +290,15 @@ layout: quote
---
-# {w:fit} Keep It
Simple,
Sxxx
+# Keep It
Simple,
Sxxx
---
-# {w:fit} コメント追加の前に
*コードを改良*
+# コメント追加の前に
*コードを改良*
---
-# {w:fit} 3. コードの目印(マーカー)
+# 3. コードの目印(マーカー)
```java
// FIXME: Additional parameters are required in TS3.6, but ignored in 3.5.
@@ -312,39 +312,39 @@ https://github.com/angular/angular/blob/f7815cf96defa6b19fff482824c5997f03fd78ea
---
-# {w:fit} チーム内で
認識を合わせる
+# チーム内で
認識を合わせる
---
-# {w:fit} 言い訳のようにつけられた
`=TODO=` や `=FIXME=`
+# 言い訳のようにつけられた
`=TODO=` や `=FIXME=`
---
-# {w:fit} いつまでも
残っていませんか
+# いつまでも
残っていませんか
---
-# {w:fit} いつか直す
+# いつか直す
---
-# {w:fit} その *"いつか"* は
+# その *"いつか"* は
---
----
+
+layout: background-blur
background: /assets/angrybaby.jpg
-backgroundSize: contain
---
-# {w:fit} 永遠に
来ない
+# 永遠に
来ない
---
-# {w:fit} 4. コードの概要
+# 4. コードの概要
---
-# {w:fit} コードを要約するコメント
+# コードを要約するコメント
---
@@ -352,15 +352,15 @@ backgroundSize: contain
---
-# {w:fit} コードよりも *素早く読める*
+# コードよりも *素早く読める*
---
-# {w:fit}特に *作成者以外の誰か*
の役に立つ
+# 特に *作成者以外の誰か*
の役に立つ
---
-# {w:fit} 5. コードの意図の説明
+# 5. コードの意図の説明
---
@@ -373,9 +373,9 @@ backgroundSize: contain
```
---
----
+
+layout: background-blur
background: /assets/angrybaby.jpg
-backgroundSize: contain
---
---
@@ -386,7 +386,7 @@ backgroundSize: contain
---
-# {w:fit} パフォーマンスを重視して
*直感に反する* 実装になっている場合
+# パフォーマンスを重視して
*直感に反する* 実装になっている場合
---
@@ -400,11 +400,11 @@ backgroundSize: contain
---
-# {w:fit}必要ならいくらでも
長くなっていい
+# 必要ならいくらでも
長くなっていい
---
-# {w:fit} 6. コードでは表せない情報
+# 6. コードでは表せない情報
---
@@ -424,17 +424,16 @@ backgroundSize: contain
> *--- [Code Tells You How, Comments Tell You Why](https://blog.codinghorror.com/code-tells-you-how-comments-tell-you-why/)*
---
----
-background: /assets/git_commit.png
-backgroundSize: contain
-backgroundPosition: right
+
+layout: image-right
+image: /assets/git_commit.png
---
-# {w:fit} *効果的な*
コミットメッセージ
+# *効果的な*
コミットメッセージ
---
-# {w:fit}人は *何故*
コミットメッセージを書くのか
+# 人は *何故*
コミットメッセージを書くのか
---
@@ -456,19 +455,19 @@ backgroundPosition: right
---
-# {w:fit} *障害だ!!*
+# *障害だ!!*
---
-# {w:fit} なんでこうなってるんだ?
+# なんでこうなってるんだ?
---
-# {w:fit} 直していいのか?
+# 直していいのか?
---
-# {w:fit} 頼りになるのは
コミットメッセージ
+# 頼りになるのは
コミットメッセージ
---
@@ -481,18 +480,18 @@ Date: Fri Apr 24 06:22:36 2020 +0900
```
---
----
+
+layout: background-blur
background: /assets/angrybaby.jpg
-backgroundSize: contain
---
---
-# {w:fit} 変更内容は diff を見れば分かる
+# 変更内容は diff を見れば分かる
---
-# {w:fit} *背景* や *気持ち*
は分からない
+# *背景* や *気持ち*
は分からない
---
@@ -503,7 +502,7 @@ backgroundSize: contain
# コミットメッセージには
*なぜ書かなければならなかったのか*
を書く
---
----
+
layout: quote
---
@@ -513,7 +512,7 @@ layout: quote
> Commit messages can do exactly that
---
----
+
layout: quote
---
@@ -523,7 +522,7 @@ layout: quote
---
-# {w:fit} メッセージの構成
+# メッセージの構成
1. *このコミットを適用するとどうなるか* を1行で言うと?
2. なぜこの変更が為されたのか?その他補足情報
@@ -578,7 +577,7 @@ https://github.com/angular/angular/commit/acc483e2ebe7d8207fe183d8ec1424c5498631
---
-# {w:fit} ありがちで
*やめろ!*
と思うもの
+# ありがちで
*やめろ!*
と思うもの
---
@@ -587,18 +586,18 @@ https://github.com/angular/angular/commit/acc483e2ebe7d8207fe183d8ec1424c5498631
```
---
----
+
+layout: background-blur
background: /assets/angrybaby.jpg
-backgroundSize: contain
---
---
-# {w:fit} レビューで指摘されたから
直したのかどうかは
*どうでもいい*
+# レビューで指摘されたから
直したのかどうかは
*どうでもいい*
---
-# {w:fit}直すべきだと思ったなら
*その気持ち* を書け
+# 直すべきだと思ったなら
*その気持ち* を書け
** 最悪その Pull Request コメントへのリンクは貼れ
---
@@ -608,18 +607,18 @@ backgroundSize: contain
```
---
----
+
+layout: background-blur
background: /assets/angrybaby.jpg
-backgroundSize: contain
---
---
-# {w:fit} 知るか
+# 知るか
---
-# {w:fit} *まとめろ*
+# *まとめろ*
---
@@ -628,18 +627,18 @@ backgroundSize: contain
```
---
----
+
+layout: background-blur
background: /assets/angrybaby.jpg
-backgroundSize: contain
---
---
-# {w:fit} まとめるな
+# まとめるな
---
-# {w:fit} *分けろ*
+# *分けろ*
---
@@ -662,7 +661,7 @@ backgroundSize: contain
---
-# {w:fit} 実装にまとまってた方が望ましいけれど、
読まなくてよさそうなことが分かるので 👌
+# 実装にまとまってた方が望ましいけれど、
読まなくてよさそうなことが分かるので 👌
---
@@ -674,39 +673,39 @@ typoを修正する
---
-# {w:fit} ただし
+# ただし
---
-# {w:fit} 同一 Pull Request 内なら
(変更の文脈が同じなら)
まとめてほしい
+# 同一 Pull Request 内なら
(変更の文脈が同じなら)
まとめてほしい
---
-# {w:fit} ケアレスミス直したとか
考え直して変えたとか
人に言われて変えたとか
+# ケアレスミス直したとか
考え直して変えたとか
人に言われて変えたとか
---
-# {w:fit} 一ヶ月後、一年後には
*不要なコンテキスト*
+# 一ヶ月後、一年後には
*不要なコンテキスト*
---
-# {w:fit} そうは言ってもさぁ…
+# そうは言ってもさぁ…
---
-# {w:fit} 開発中にいちいち
コミットメッセージ
熟考してらんないよ
+# 開発中にいちいち
コミットメッセージ
熟考してらんないよ
---
-# {w:fit} *しなくていい*
+# *しなくていい*
---
-# {w:fit} レビュー前に
整理すればいい
+# レビュー前に
整理すればいい
---
-# {w:fit}開発中のメッセージの例
+# 開発中のメッセージの例
---
@@ -726,7 +725,7 @@ specついk
---
-# {w:fit} レビュー提出時
+# レビュー提出時
---
@@ -740,7 +739,7 @@ specついk
---
-# {w:fit} 使える道具
+# 使える道具
---
@@ -808,17 +807,17 @@ specついk
---
-# {w:fit}コミットメッセージ
まとめ
+# コミットメッセージ
まとめ
---
-# {w:fit}どのように よりも
*何を* ・ *何故*
に重点を置く
+# どのように よりも
*何を* ・ *何故*
に重点を置く
** どのように は *diff の役割*
---
-# {w:fit} このコミットを
*cherry pick すると何が起こるのか?*
このコミットは
*どういう背景で積まれたのか?*
-## {w:fit} Pull Request の説明文を書くつもりで
+# このコミットを
*cherry pick すると何が起こるのか?*
このコミットは
*どういう背景で積まれたのか?*
+## Pull Request の説明文を書くつもりで
---
@@ -826,7 +825,7 @@ specついk
---
-# {w:fit} *残すべき*
ドキュメント
+# *残すべき*
ドキュメント
---
@@ -839,7 +838,7 @@ specついk
---
-# {w:fit} *アーキテクチャ* とは
+# *アーキテクチャ* とは
> 1つは、システムから個々のパーツへとどこまでもブレークダウンできるということ、もう1つは、簡単には変更できない決定事項だということである
>
@@ -847,7 +846,7 @@ specついk
---
-# {w:fit} Architecture Decision
Record
+# Architecture Decision
Record
- 容易に変更できない *アーキテクチャ上の意思決定* について記録する
- *なぜ* そうしたのか、 *他に何を検討した* のか
@@ -866,7 +865,7 @@ specついk
---
-# {w:fit} *Architecture Decision Record* の
フォーマット(例)
+# *Architecture Decision Record* の
フォーマット(例)
* 参考にしたもの: [Y-Statements](https://medium.com/olzzio/y-statements-10eb07b5a177)
@@ -927,7 +926,7 @@ specついk
---
-# {w:fit} まとめ
+# まとめ
---
@@ -935,7 +934,7 @@ specついk
---
-# {w:fit} コミットメッセージは変更内容ではなく
*変更の意図・背景* を説明する
+# コミットメッセージは変更内容ではなく
*変更の意図・背景* を説明する
---
@@ -943,23 +942,23 @@ specついk
---
-# {w:fit} 容易に変更不可能な
*アーキテクチャ上の意思決定の過程*
はドキュメントに残す
+# 容易に変更不可能な
*アーキテクチャ上の意思決定の過程*
はドキュメントに残す
---
-# {w:fit} *今* この瞬間から
+# *今* この瞬間から
---
-# {w:fit} *完全なコメント*
*完全なコミットメッセージ*
書きましょう
+# *完全なコメント*
*完全なコミットメッセージ*
書きましょう
---
-# {w:fit} 大きめの機能設計などの際には
*Architecture Decision Record*
を残すようにしましょう
+# 大きめの機能設計などの際には
*Architecture Decision Record*
を残すようにしましょう
---
-# {w:fit} おわり
+# おわり
---
diff --git a/slides_intro.md b/slides_intro.md
index 91f8228..f13eaaf 100644
--- a/slides_intro.md
+++ b/slides_intro.md
@@ -1,5 +1,6 @@
---
theme: seriph
+routerMode: 'hash'
title: '第一回 〈完全なプログラミング〉'
description: '〈完全なプログラミング〉を目指す会 2020 の導入です'
footer: '〈完全なプログラミング〉を目指す会 2020'
@@ -7,21 +8,21 @@ drawings:
enabled: true
---
-# {w:fit} 〈完全なプログラミング〉を目指す会 2020
-## {w:fit} 第一回〈完全なプログラミング〉
+# 〈完全なプログラミング〉を目指す会 2020
+## 第一回〈完全なプログラミング〉
yewton
---
-# {w:fit} 持ち帰って欲しいこと
+# 持ち帰って欲しいこと
1. **〈完全なプログラミング〉** とは何か
2. なぜそれを目指すのか
---
-# {w:fit} この会の目的
+# この会の目的
基本的には [CODE COMPLETE 第2版](https://www.amazon.co.jp/dp/489100455X/) を題材に、
yewton の考える **〈完全なプログラミング〉** を知り、
@@ -33,27 +34,25 @@ yewton の考える **〈完全なプログラミング〉** を知り、
---
-# {w:fit} 完全な
プログラミング
+# 完全な
プログラミング
---
-# {w:fit} 🤔?
+# 🤔?
---
----
-background: /assets/cc_book.jpg
-backgroundSize: contain
-backgroundPosition: right
+
+layout: image-right
+image: /assets/cc_book.jpg
---
- [CODE COMPLETE 第2版](https://www.amazon.co.jp/dp/489100455X/) の日本語訳のサブタイトルが *完全なプログラミングを目指して*
- 本書中に *〈完全なプログラミング〉に言及する記述は無し* 😱
---
----
-background: /assets/cc_book_e.jpg
-backgroundSize: contain
-backgroundPosition: right
+
+layout: image-right
+image: /assets/cc_book_e.jpg
---
- 原著のサブタイトルは *A Practical Handbook of Software Construction*
@@ -62,17 +61,16 @@ backgroundPosition: right
---
-# {w:fit} CODE
COMPLETE
+# CODE
COMPLETE
---
-# {w:fit} 🤔?
+# 🤔?
---
----
-background: /assets/Software_dev2.svg
-backgroundSize: contain
-backgroundPosition: right
+
+layout: image-right
+image: /assets/Software_dev2.svg
---
> A release is called *code complete* when the development team agrees that no entirely new source code will be added to this release.
@@ -86,19 +84,19 @@ backgroundPosition: right
---
-# {w:fit} つまり
+# つまり
---
-# {w:fit} 〈完全なプログラミング〉
-## {w:fit} なるモノの定義は存在しない
+# 〈完全なプログラミング〉
+## なるモノの定義は存在しない
---
-# {w:fit} 個人的な解釈
+# 個人的な解釈
---
----
+
layout: quote
---
@@ -132,7 +130,7 @@ This is a comment in Slidev. The original had a background image, let's add it.
---
-# {w:fit} あります
+# あります
## 😤
---
@@ -146,13 +144,13 @@ This is a comment in Slidev. The original had a background image, let's add it.
---
# なぜ
-## {w:fit} 〈完全なプログラミング〉
+## 〈完全なプログラミング〉
## を目指すのか
---
# そもそも
-## {w:fit} プログラミング
+## プログラミング
## とは?
---
@@ -175,7 +173,7 @@ This is a comment in Slidev. The original had a background image, let's add it.
---
# なぜ
-## {w:fit} 〈完全〉
+## 〈完全〉
## を目指すのか
---
@@ -187,24 +185,24 @@ This is a comment in Slidev. The original had a background image, let's add it.
---
-# {w:fit} *それは違う*
+# *それは違う*
---
-# {w:fit}〈完全〉が *〈最速〉*
+# 〈完全〉が *〈最速〉*
## だから
---
-# {w:fit} 🤔?
+# 🤔?
---
-# {w:fit} Q. コードを読むのは誰?
+# Q. コードを読むのは誰?
---
-# {w:fit} A. 人間
+# A. 人間
## 🕺
---
@@ -215,7 +213,7 @@ This is a comment in Slidev. The original had a background image, let's add it.
---
-# {w:fit} 🙅
+# 🙅
---
@@ -227,11 +225,11 @@ This is a comment in Slidev. The original had a background image, let's add it.
---
-# {w:fit} プログラミングの
-## {w:fit} 大半は **保守**
+# プログラミングの
+## 大半は **保守**
---
----
+
layout: quote
---
@@ -242,10 +240,10 @@ layout: quote
---
# プログラミングは
-## {w:fit} *コミュニケーション* 🤝
+## *コミュニケーション* 🤝
---
----
+
layout: quote
---
@@ -254,10 +252,9 @@ layout: quote
> */-- CODE COMPLETE 33.1 個人の資質は話題からずれているか/*
---
----
+
+layout: background-blur
background: /assets/martin.jpg
-backgroundSize: contain
-backgroundPosition: center
class: 'text-white'
---
@@ -267,7 +264,7 @@ class: 'text-white'
> *--- マーティン・ファウラー*
---
----
+
layout: quote
---
@@ -277,7 +274,7 @@ layout: quote
> *--- CODE COMPLETE 6.2.2 良いカプセル化*
---
----
+
layout: quote
---
@@ -286,7 +283,7 @@ layout: quote
> *--- CODE COMPLETE 34.3 人間が1番、コンピュータは2番*
---
----
+
layout: quote
---
@@ -300,16 +297,16 @@ layout: quote
---
-# {w:fit}勘違いしないで 😰
+# 勘違いしないで 😰
- 開発速度を犠牲にしてでも品質を上げろ
- 開発速度 < 品質
- **じゃない!!!!!!!!**
---
----
+
+layout: background-blur
background: /assets/chart1.png
-backgroundSize: contain
---
# こうじゃない
@@ -319,9 +316,9 @@ backgroundSize: contain
---
----
+
+layout: background-blur
background: /assets/chart2.png
-backgroundSize: contain
---
# こう
@@ -331,12 +328,12 @@ backgroundSize: contain
---
----
+
+layout: background-blur
background: /assets/chart2.png
-backgroundSize: contain
---
-# {w:fit}こう!!!
+# こう!!!
@@ -344,7 +341,7 @@ backgroundSize: contain
---
-# {w:fit} 完全は