@k2works/claude-code-booster 4.13.0 → 4.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (752) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +42 -42
  3. package/bin/claude-code-booster +113 -90
  4. package/lib/assets/.claude/README.md +287 -283
  5. package/lib/assets/.claude/agents/xp-architect.md +250 -250
  6. package/lib/assets/.claude/agents/xp-executive.md +207 -207
  7. package/lib/assets/.claude/agents/xp-interaction-designer.md +239 -239
  8. package/lib/assets/.claude/agents/xp-product-manager.md +245 -245
  9. package/lib/assets/.claude/agents/xp-programmer.md +268 -268
  10. package/lib/assets/.claude/agents/xp-project-manager.md +229 -229
  11. package/lib/assets/.claude/agents/xp-technical-writer.md +224 -224
  12. package/lib/assets/.claude/agents/xp-tester.md +265 -265
  13. package/lib/assets/.claude/agents/xp-user-representative.md +204 -204
  14. package/lib/assets/.claude/scripts/generate-inception-deck.mjs +911 -911
  15. package/lib/assets/.claude/settings.json +11 -11
  16. package/lib/assets/.claude/skills/ai-agent-guidelines/SKILL.md +111 -111
  17. package/lib/assets/.claude/skills/analyzing-architecture/SKILL.md +83 -83
  18. package/lib/assets/.claude/skills/analyzing-business-architecture/SKILL.md +122 -122
  19. package/lib/assets/.claude/skills/analyzing-business-case/SKILL.md +148 -148
  20. package/lib/assets/.claude/skills/analyzing-business-strategy/SKILL.md +277 -277
  21. package/lib/assets/.claude/skills/analyzing-data-model/SKILL.md +77 -77
  22. package/lib/assets/.claude/skills/analyzing-domain-model/SKILL.md +117 -117
  23. package/lib/assets/.claude/skills/analyzing-inception-deck/SKILL.md +84 -84
  24. package/lib/assets/.claude/skills/analyzing-non-functional/SKILL.md +95 -95
  25. package/lib/assets/.claude/skills/analyzing-operation/SKILL.md +95 -95
  26. package/lib/assets/.claude/skills/analyzing-requirements/SKILL.md +91 -91
  27. package/lib/assets/.claude/skills/analyzing-review/SKILL.md +174 -174
  28. package/lib/assets/.claude/skills/analyzing-tech-stack/SKILL.md +101 -101
  29. package/lib/assets/.claude/skills/analyzing-test-strategy/SKILL.md +89 -89
  30. package/lib/assets/.claude/skills/analyzing-ui-design/SKILL.md +80 -80
  31. package/lib/assets/.claude/skills/analyzing-usecases/SKILL.md +72 -72
  32. package/lib/assets/.claude/skills/closing-iteration/SKILL.md +160 -146
  33. package/lib/assets/.claude/skills/creating-adr/SKILL.md +113 -113
  34. package/lib/assets/.claude/skills/creating-article/SKILL.md +156 -0
  35. package/lib/assets/.claude/skills/creating-development-strategy/SKILL.md +127 -127
  36. package/lib/assets/.claude/skills/creating-iteration-report/SKILL.md +210 -210
  37. package/lib/assets/.claude/skills/creating-journal/SKILL.md +129 -129
  38. package/lib/assets/.claude/skills/creating-manual/SKILL.md +199 -0
  39. package/lib/assets/.claude/skills/creating-release-report/SKILL.md +161 -161
  40. package/lib/assets/.claude/skills/creating-slides/SKILL.md +86 -86
  41. package/lib/assets/.claude/skills/creating-slides/agents/openai.yaml +4 -4
  42. package/lib/assets/.claude/skills/creating-slides/references/manga-css.md +45 -45
  43. package/lib/assets/.claude/skills/creating-slides/scripts/slide_tools.py +239 -239
  44. package/lib/assets/.claude/skills/developing-backend/SKILL.md +100 -100
  45. package/lib/assets/.claude/skills/developing-frontend/SKILL.md +93 -93
  46. package/lib/assets/.claude/skills/developing-release/SKILL.md +120 -120
  47. package/lib/assets/.claude/skills/developing-review/SKILL.md +175 -175
  48. package/lib/assets/.claude/skills/developing-uiux-review/SKILL.md +207 -207
  49. package/lib/assets/.claude/skills/generating-bmc/SKILL.md +123 -123
  50. package/lib/assets/.claude/skills/generating-slides/SKILL.md +94 -94
  51. package/lib/assets/.claude/skills/git-commit/SKILL.md +81 -81
  52. package/lib/assets/.claude/skills/killing-processes/SKILL.md +44 -44
  53. package/lib/assets/.claude/skills/opening-iteration/SKILL.md +109 -105
  54. package/lib/assets/.claude/skills/operating-backup/SKILL.md +59 -59
  55. package/lib/assets/.claude/skills/operating-cicd/SKILL.md +54 -54
  56. package/lib/assets/.claude/skills/operating-deploy/SKILL.md +67 -67
  57. package/lib/assets/.claude/skills/operating-docs/SKILL.md +219 -219
  58. package/lib/assets/.claude/skills/operating-provision/SKILL.md +77 -77
  59. package/lib/assets/.claude/skills/operating-qt/SKILL.md +147 -147
  60. package/lib/assets/.claude/skills/operating-review/SKILL.md +171 -171
  61. package/lib/assets/.claude/skills/operating-script/SKILL.md +145 -145
  62. package/lib/assets/.claude/skills/operating-setup/SKILL.md +63 -63
  63. package/lib/assets/.claude/skills/orchestrating-analysis/SKILL.md +104 -104
  64. package/lib/assets/.claude/skills/orchestrating-development/SKILL.md +168 -168
  65. package/lib/assets/.claude/skills/orchestrating-operation/SKILL.md +158 -158
  66. package/lib/assets/.claude/skills/orchestrating-project/SKILL.md +144 -144
  67. package/lib/assets/.claude/skills/planning-releases/SKILL.md +119 -119
  68. package/lib/assets/.claude/skills/practicing-getting-start-tdd/SKILL.md +266 -266
  69. package/lib/assets/.claude/skills/syncing-github-project/SKILL.md +151 -151
  70. package/lib/assets/.claude/skills/tracking-progress/SKILL.md +91 -91
  71. package/lib/assets/.claude/skills/validating-design/SKILL.md +130 -130
  72. package/lib/assets/.claude/skills/validating-iteration-plan/SKILL.md +238 -238
  73. package/lib/assets/.claude/skills/validating-operating-setup/SKILL.md +118 -118
  74. package/lib/assets/.devcontainer/devcontainer.json +37 -37
  75. package/lib/assets/.env.example +23 -17
  76. package/lib/assets/.gitattributes +4 -4
  77. package/lib/assets/.github/workflows/docker-publish.yml +77 -77
  78. package/lib/assets/.github/workflows/mkdocs.yml +39 -39
  79. package/lib/assets/AGENTS.md +94 -94
  80. package/lib/assets/CLAUDE.md +201 -197
  81. package/lib/assets/README.md +304 -291
  82. package/lib/assets/docker-compose.yml +33 -33
  83. package/lib/assets/docs/adr/index.md +10 -10
  84. package/lib/assets/docs/article/functional-desgin-ppp/all/01-immutability-and-data-transformation.md +475 -475
  85. package/lib/assets/docs/article/functional-desgin-ppp/all/02-function-composition.md +519 -519
  86. package/lib/assets/docs/article/functional-desgin-ppp/all/03-polymorphism.md +537 -537
  87. package/lib/assets/docs/article/functional-desgin-ppp/all/04-data-validation.md +300 -300
  88. package/lib/assets/docs/article/functional-desgin-ppp/all/05-property-based-testing.md +320 -320
  89. package/lib/assets/docs/article/functional-desgin-ppp/all/06-tdd-and-functional.md +498 -498
  90. package/lib/assets/docs/article/functional-desgin-ppp/all/07-composite-pattern.md +298 -298
  91. package/lib/assets/docs/article/functional-desgin-ppp/all/08-decorator-pattern.md +291 -291
  92. package/lib/assets/docs/article/functional-desgin-ppp/all/09-adapter-pattern.md +336 -336
  93. package/lib/assets/docs/article/functional-desgin-ppp/all/10-strategy-pattern.md +303 -303
  94. package/lib/assets/docs/article/functional-desgin-ppp/all/11-command-pattern.md +286 -286
  95. package/lib/assets/docs/article/functional-desgin-ppp/all/12-visitor-pattern.md +322 -322
  96. package/lib/assets/docs/article/functional-desgin-ppp/all/13-abstract-factory-pattern.md +319 -319
  97. package/lib/assets/docs/article/functional-desgin-ppp/all/14-abstract-server-pattern.md +365 -365
  98. package/lib/assets/docs/article/functional-desgin-ppp/all/15-gossiping-bus-drivers.md +156 -156
  99. package/lib/assets/docs/article/functional-desgin-ppp/all/16-payroll-system.md +178 -178
  100. package/lib/assets/docs/article/functional-desgin-ppp/all/17-video-rental-system.md +312 -312
  101. package/lib/assets/docs/article/functional-desgin-ppp/all/18-concurrency-system.md +287 -287
  102. package/lib/assets/docs/article/functional-desgin-ppp/all/19-wa-tor-simulation.md +286 -286
  103. package/lib/assets/docs/article/functional-desgin-ppp/all/20-pattern-interactions.md +274 -274
  104. package/lib/assets/docs/article/functional-desgin-ppp/all/21-best-practices.md +294 -294
  105. package/lib/assets/docs/article/functional-desgin-ppp/all/22-oo-to-fp-migration.md +337 -337
  106. package/lib/assets/docs/article/functional-desgin-ppp/all/index.md +388 -388
  107. package/lib/assets/docs/article/functional-desgin-ppp/clojure/01-immutability-and-data-transformation.md +273 -273
  108. package/lib/assets/docs/article/functional-desgin-ppp/clojure/02-function-composition.md +380 -380
  109. package/lib/assets/docs/article/functional-desgin-ppp/clojure/03-polymorphism.md +384 -384
  110. package/lib/assets/docs/article/functional-desgin-ppp/clojure/04-clojure-spec.md +350 -350
  111. package/lib/assets/docs/article/functional-desgin-ppp/clojure/05-property-based-testing.md +352 -352
  112. package/lib/assets/docs/article/functional-desgin-ppp/clojure/06-tdd-in-functional.md +383 -383
  113. package/lib/assets/docs/article/functional-desgin-ppp/clojure/07-composite-pattern.md +529 -529
  114. package/lib/assets/docs/article/functional-desgin-ppp/clojure/08-decorator-pattern.md +395 -395
  115. package/lib/assets/docs/article/functional-desgin-ppp/clojure/09-adapter-pattern.md +399 -399
  116. package/lib/assets/docs/article/functional-desgin-ppp/clojure/10-strategy-pattern.md +485 -485
  117. package/lib/assets/docs/article/functional-desgin-ppp/clojure/11-command-pattern.md +566 -566
  118. package/lib/assets/docs/article/functional-desgin-ppp/clojure/12-visitor-pattern.md +567 -567
  119. package/lib/assets/docs/article/functional-desgin-ppp/clojure/13-abstract-factory-pattern.md +475 -475
  120. package/lib/assets/docs/article/functional-desgin-ppp/clojure/14-abstract-server-pattern.md +462 -462
  121. package/lib/assets/docs/article/functional-desgin-ppp/clojure/15-gossiping-bus-drivers.md +325 -325
  122. package/lib/assets/docs/article/functional-desgin-ppp/clojure/16-payroll-system.md +401 -401
  123. package/lib/assets/docs/article/functional-desgin-ppp/clojure/17-video-rental-system.md +450 -450
  124. package/lib/assets/docs/article/functional-desgin-ppp/clojure/18-concurrency-system.md +475 -475
  125. package/lib/assets/docs/article/functional-desgin-ppp/clojure/19-wator-simulation.md +739 -739
  126. package/lib/assets/docs/article/functional-desgin-ppp/clojure/20-pattern-interactions.md +567 -567
  127. package/lib/assets/docs/article/functional-desgin-ppp/clojure/21-best-practices.md +518 -518
  128. package/lib/assets/docs/article/functional-desgin-ppp/clojure/22-oo-to-fp-migration.md +532 -532
  129. package/lib/assets/docs/article/functional-desgin-ppp/clojure/index.md +241 -241
  130. package/lib/assets/docs/article/functional-desgin-ppp/elixir/01-immutability-and-data-transformation.md +383 -383
  131. package/lib/assets/docs/article/functional-desgin-ppp/elixir/02-function-composition.md +374 -374
  132. package/lib/assets/docs/article/functional-desgin-ppp/elixir/03-polymorphism.md +375 -375
  133. package/lib/assets/docs/article/functional-desgin-ppp/elixir/04-data-validation.md +195 -195
  134. package/lib/assets/docs/article/functional-desgin-ppp/elixir/05-property-based-testing.md +268 -268
  135. package/lib/assets/docs/article/functional-desgin-ppp/elixir/06-tdd-and-fp.md +294 -294
  136. package/lib/assets/docs/article/functional-desgin-ppp/elixir/07-effects-and-pure-functions.md +164 -164
  137. package/lib/assets/docs/article/functional-desgin-ppp/elixir/08-error-handling-strategies.md +168 -168
  138. package/lib/assets/docs/article/functional-desgin-ppp/elixir/09-io-and-external-systems.md +254 -254
  139. package/lib/assets/docs/article/functional-desgin-ppp/elixir/10-concurrency-patterns.md +269 -269
  140. package/lib/assets/docs/article/functional-desgin-ppp/elixir/11-command-pattern.md +148 -148
  141. package/lib/assets/docs/article/functional-desgin-ppp/elixir/12-visitor-pattern.md +176 -176
  142. package/lib/assets/docs/article/functional-desgin-ppp/elixir/13-abstract-factory-pattern.md +604 -604
  143. package/lib/assets/docs/article/functional-desgin-ppp/elixir/14-abstract-server-pattern.md +729 -729
  144. package/lib/assets/docs/article/functional-desgin-ppp/elixir/15-gossiping-bus-drivers.md +291 -291
  145. package/lib/assets/docs/article/functional-desgin-ppp/elixir/16-payroll-system.md +420 -420
  146. package/lib/assets/docs/article/functional-desgin-ppp/elixir/17-video-rental-system.md +319 -319
  147. package/lib/assets/docs/article/functional-desgin-ppp/elixir/18-concurrency-system.md +466 -466
  148. package/lib/assets/docs/article/functional-desgin-ppp/elixir/19-wator-simulation.md +523 -523
  149. package/lib/assets/docs/article/functional-desgin-ppp/elixir/20-pattern-interactions.md +287 -287
  150. package/lib/assets/docs/article/functional-desgin-ppp/elixir/21-best-practices.md +340 -340
  151. package/lib/assets/docs/article/functional-desgin-ppp/elixir/22-oo-to-fp-migration.md +395 -395
  152. package/lib/assets/docs/article/functional-desgin-ppp/elixir/index.md +248 -248
  153. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/01-immutability-and-data-transformation.md +384 -384
  154. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/02-function-composition.md +452 -452
  155. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/03-polymorphism.md +495 -495
  156. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/04-data-validation.md +416 -416
  157. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/05-property-based-testing.md +382 -382
  158. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/06-tdd-functional.md +687 -687
  159. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/07-composite-pattern.md +442 -442
  160. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/08-decorator-pattern.md +479 -479
  161. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/09-adapter-pattern.md +479 -479
  162. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/10-strategy-pattern.md +427 -427
  163. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/11-command-pattern.md +428 -428
  164. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/12-visitor-pattern.md +339 -339
  165. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/13-abstract-factory-pattern.md +309 -309
  166. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/14-abstract-server-pattern.md +596 -596
  167. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/15-gossiping-bus-drivers.md +355 -355
  168. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/16-payroll-system.md +350 -350
  169. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/17-video-rental-system.md +414 -414
  170. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/18-concurrency-system.md +367 -367
  171. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/19-wator-simulation.md +403 -403
  172. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/20-pattern-interactions.md +291 -291
  173. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/21-best-practices.md +324 -324
  174. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/22-oo-to-fp-migration.md +332 -332
  175. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/index.md +274 -274
  176. package/lib/assets/docs/article/functional-desgin-ppp/haskell/01-immutability-and-data-transformation.md +298 -298
  177. package/lib/assets/docs/article/functional-desgin-ppp/haskell/02-function-composition.md +304 -304
  178. package/lib/assets/docs/article/functional-desgin-ppp/haskell/03-polymorphism.md +362 -362
  179. package/lib/assets/docs/article/functional-desgin-ppp/haskell/04-data-validation.md +257 -257
  180. package/lib/assets/docs/article/functional-desgin-ppp/haskell/05-property-based-testing.md +254 -254
  181. package/lib/assets/docs/article/functional-desgin-ppp/haskell/06-tdd-functional.md +283 -283
  182. package/lib/assets/docs/article/functional-desgin-ppp/haskell/07-composite-pattern.md +395 -395
  183. package/lib/assets/docs/article/functional-desgin-ppp/haskell/08-decorator-pattern.md +319 -319
  184. package/lib/assets/docs/article/functional-desgin-ppp/haskell/09-adapter-pattern.md +382 -382
  185. package/lib/assets/docs/article/functional-desgin-ppp/haskell/10-strategy-pattern.md +287 -287
  186. package/lib/assets/docs/article/functional-desgin-ppp/haskell/11-command-pattern.md +303 -303
  187. package/lib/assets/docs/article/functional-desgin-ppp/haskell/12-visitor-pattern.md +326 -326
  188. package/lib/assets/docs/article/functional-desgin-ppp/haskell/13-abstract-factory-pattern.md +332 -332
  189. package/lib/assets/docs/article/functional-desgin-ppp/haskell/14-abstract-server-pattern.md +379 -379
  190. package/lib/assets/docs/article/functional-desgin-ppp/haskell/15-gossiping-bus-drivers.md +177 -177
  191. package/lib/assets/docs/article/functional-desgin-ppp/haskell/16-payroll-system.md +219 -219
  192. package/lib/assets/docs/article/functional-desgin-ppp/haskell/17-video-rental-system.md +244 -244
  193. package/lib/assets/docs/article/functional-desgin-ppp/haskell/18-concurrency-system.md +363 -363
  194. package/lib/assets/docs/article/functional-desgin-ppp/haskell/19-wator-simulation.md +438 -438
  195. package/lib/assets/docs/article/functional-desgin-ppp/haskell/20-pattern-interactions.md +325 -325
  196. package/lib/assets/docs/article/functional-desgin-ppp/haskell/21-best-practices.md +403 -403
  197. package/lib/assets/docs/article/functional-desgin-ppp/haskell/22-oo-to-fp-migration.md +469 -469
  198. package/lib/assets/docs/article/functional-desgin-ppp/haskell/index.md +174 -174
  199. package/lib/assets/docs/article/functional-desgin-ppp/index.md +90 -90
  200. package/lib/assets/docs/article/functional-desgin-ppp/rust/01-immutability-and-data-transformation.md +450 -450
  201. package/lib/assets/docs/article/functional-desgin-ppp/rust/02-function-composition.md +463 -463
  202. package/lib/assets/docs/article/functional-desgin-ppp/rust/03-polymorphism.md +425 -425
  203. package/lib/assets/docs/article/functional-desgin-ppp/rust/04-data-validation.md +273 -273
  204. package/lib/assets/docs/article/functional-desgin-ppp/rust/05-property-based-testing.md +247 -247
  205. package/lib/assets/docs/article/functional-desgin-ppp/rust/06-tdd-and-functional.md +841 -841
  206. package/lib/assets/docs/article/functional-desgin-ppp/rust/07-composite-pattern.md +384 -384
  207. package/lib/assets/docs/article/functional-desgin-ppp/rust/08-decorator-pattern.md +383 -383
  208. package/lib/assets/docs/article/functional-desgin-ppp/rust/09-adapter-pattern.md +339 -339
  209. package/lib/assets/docs/article/functional-desgin-ppp/rust/10-strategy-pattern.md +331 -331
  210. package/lib/assets/docs/article/functional-desgin-ppp/rust/11-command-pattern.md +356 -356
  211. package/lib/assets/docs/article/functional-desgin-ppp/rust/12-visitor-pattern.md +379 -379
  212. package/lib/assets/docs/article/functional-desgin-ppp/rust/13-abstract-factory-pattern.md +361 -361
  213. package/lib/assets/docs/article/functional-desgin-ppp/rust/14-abstract-server-pattern.md +392 -392
  214. package/lib/assets/docs/article/functional-desgin-ppp/rust/15-gossiping-bus-drivers.md +300 -300
  215. package/lib/assets/docs/article/functional-desgin-ppp/rust/16-payroll-system.md +297 -297
  216. package/lib/assets/docs/article/functional-desgin-ppp/rust/17-video-rental-system.md +304 -304
  217. package/lib/assets/docs/article/functional-desgin-ppp/rust/18-concurrency-system.md +315 -315
  218. package/lib/assets/docs/article/functional-desgin-ppp/rust/19-wator-simulation.md +311 -311
  219. package/lib/assets/docs/article/functional-desgin-ppp/rust/20-pattern-interactions.md +304 -304
  220. package/lib/assets/docs/article/functional-desgin-ppp/rust/21-best-practices.md +336 -336
  221. package/lib/assets/docs/article/functional-desgin-ppp/rust/22-oo-to-fp-migration.md +349 -349
  222. package/lib/assets/docs/article/functional-desgin-ppp/rust/index.md +243 -243
  223. package/lib/assets/docs/article/functional-desgin-ppp/scala/01-immutability-and-data-transformation.md +328 -328
  224. package/lib/assets/docs/article/functional-desgin-ppp/scala/02-function-composition.md +348 -348
  225. package/lib/assets/docs/article/functional-desgin-ppp/scala/03-polymorphism.md +357 -357
  226. package/lib/assets/docs/article/functional-desgin-ppp/scala/04-data-validation.md +364 -364
  227. package/lib/assets/docs/article/functional-desgin-ppp/scala/05-property-based-testing.md +515 -515
  228. package/lib/assets/docs/article/functional-desgin-ppp/scala/06-tdd-functional.md +557 -557
  229. package/lib/assets/docs/article/functional-desgin-ppp/scala/07-composite-pattern.md +363 -363
  230. package/lib/assets/docs/article/functional-desgin-ppp/scala/08-decorator-pattern.md +327 -327
  231. package/lib/assets/docs/article/functional-desgin-ppp/scala/09-adapter-pattern.md +517 -517
  232. package/lib/assets/docs/article/functional-desgin-ppp/scala/10-strategy-pattern.md +441 -441
  233. package/lib/assets/docs/article/functional-desgin-ppp/scala/11-command-pattern.md +407 -407
  234. package/lib/assets/docs/article/functional-desgin-ppp/scala/12-visitor-pattern.md +379 -379
  235. package/lib/assets/docs/article/functional-desgin-ppp/scala/13-abstract-factory-pattern.md +398 -398
  236. package/lib/assets/docs/article/functional-desgin-ppp/scala/14-abstract-server-pattern.md +476 -476
  237. package/lib/assets/docs/article/functional-desgin-ppp/scala/15-gossiping-bus-drivers.md +391 -391
  238. package/lib/assets/docs/article/functional-desgin-ppp/scala/16-payroll-system.md +342 -342
  239. package/lib/assets/docs/article/functional-desgin-ppp/scala/17-video-rental-system.md +324 -324
  240. package/lib/assets/docs/article/functional-desgin-ppp/scala/18-concurrency-system.md +730 -730
  241. package/lib/assets/docs/article/functional-desgin-ppp/scala/19-wator-simulation.md +624 -624
  242. package/lib/assets/docs/article/functional-desgin-ppp/scala/20-pattern-interactions.md +512 -512
  243. package/lib/assets/docs/article/functional-desgin-ppp/scala/21-best-practices.md +433 -433
  244. package/lib/assets/docs/article/functional-desgin-ppp/scala/22-oo-to-fp-migration.md +688 -688
  245. package/lib/assets/docs/article/functional-desgin-ppp/scala/index.md +243 -243
  246. package/lib/assets/docs/article/getting-start-tdd/clojure/01-todo-list-and-first-test.md +166 -166
  247. package/lib/assets/docs/article/getting-start-tdd/clojure/02-fake-it-and-triangulation.md +162 -162
  248. package/lib/assets/docs/article/getting-start-tdd/clojure/03-obvious-implementation-and-refactoring.md +135 -135
  249. package/lib/assets/docs/article/getting-start-tdd/clojure/04-version-control-and-conventional-commits.md +88 -88
  250. package/lib/assets/docs/article/getting-start-tdd/clojure/05-package-management-and-static-analysis.md +299 -299
  251. package/lib/assets/docs/article/getting-start-tdd/clojure/06-task-runner-and-ci-cd.md +241 -241
  252. package/lib/assets/docs/article/getting-start-tdd/clojure/07-protocols-and-records.md +131 -131
  253. package/lib/assets/docs/article/getting-start-tdd/clojure/08-multimethods-and-design-patterns.md +130 -130
  254. package/lib/assets/docs/article/getting-start-tdd/clojure/09-namespaces-and-module-design.md +127 -127
  255. package/lib/assets/docs/article/getting-start-tdd/clojure/10-higher-order-functions-and-composition.md +114 -114
  256. package/lib/assets/docs/article/getting-start-tdd/clojure/11-persistent-data-and-pipeline.md +138 -138
  257. package/lib/assets/docs/article/getting-start-tdd/clojure/12-error-handling-and-spec.md +161 -161
  258. package/lib/assets/docs/article/getting-start-tdd/clojure/index.md +65 -65
  259. package/lib/assets/docs/article/getting-start-tdd/csharp/chapter01.md +232 -232
  260. package/lib/assets/docs/article/getting-start-tdd/csharp/chapter02.md +244 -244
  261. package/lib/assets/docs/article/getting-start-tdd/csharp/chapter03.md +202 -202
  262. package/lib/assets/docs/article/getting-start-tdd/csharp/chapter04.md +92 -92
  263. package/lib/assets/docs/article/getting-start-tdd/csharp/chapter05.md +256 -256
  264. package/lib/assets/docs/article/getting-start-tdd/csharp/chapter06.md +195 -195
  265. package/lib/assets/docs/article/getting-start-tdd/csharp/chapter07.md +214 -214
  266. package/lib/assets/docs/article/getting-start-tdd/csharp/chapter08.md +249 -249
  267. package/lib/assets/docs/article/getting-start-tdd/csharp/chapter09.md +174 -174
  268. package/lib/assets/docs/article/getting-start-tdd/csharp/chapter10.md +166 -166
  269. package/lib/assets/docs/article/getting-start-tdd/csharp/chapter11.md +192 -192
  270. package/lib/assets/docs/article/getting-start-tdd/csharp/chapter12.md +211 -211
  271. package/lib/assets/docs/article/getting-start-tdd/csharp/index.md +83 -83
  272. package/lib/assets/docs/article/getting-start-tdd/elixir/01-todo-list-and-first-test.md +87 -87
  273. package/lib/assets/docs/article/getting-start-tdd/elixir/02-fake-it-and-triangulation.md +95 -95
  274. package/lib/assets/docs/article/getting-start-tdd/elixir/03-obvious-implementation-and-refactoring.md +109 -109
  275. package/lib/assets/docs/article/getting-start-tdd/elixir/04-version-control-and-conventional-commits.md +96 -96
  276. package/lib/assets/docs/article/getting-start-tdd/elixir/05-package-management-and-static-analysis.md +88 -88
  277. package/lib/assets/docs/article/getting-start-tdd/elixir/06-task-runner-and-ci-cd.md +71 -71
  278. package/lib/assets/docs/article/getting-start-tdd/elixir/07-structs-and-protocols.md +110 -110
  279. package/lib/assets/docs/article/getting-start-tdd/elixir/08-pattern-matching-and-guards.md +108 -108
  280. package/lib/assets/docs/article/getting-start-tdd/elixir/09-module-design-and-behaviours.md +104 -104
  281. package/lib/assets/docs/article/getting-start-tdd/elixir/10-higher-order-functions-and-pipeline.md +178 -178
  282. package/lib/assets/docs/article/getting-start-tdd/elixir/11-stream-and-lazy-evaluation.md +142 -142
  283. package/lib/assets/docs/article/getting-start-tdd/elixir/12-error-handling-and-with.md +145 -145
  284. package/lib/assets/docs/article/getting-start-tdd/elixir/index.md +35 -35
  285. package/lib/assets/docs/article/getting-start-tdd/fsharp/chapter01.md +202 -202
  286. package/lib/assets/docs/article/getting-start-tdd/fsharp/chapter02.md +246 -246
  287. package/lib/assets/docs/article/getting-start-tdd/fsharp/chapter03.md +218 -218
  288. package/lib/assets/docs/article/getting-start-tdd/fsharp/chapter04.md +179 -179
  289. package/lib/assets/docs/article/getting-start-tdd/fsharp/chapter05.md +267 -267
  290. package/lib/assets/docs/article/getting-start-tdd/fsharp/chapter06.md +190 -190
  291. package/lib/assets/docs/article/getting-start-tdd/fsharp/chapter07.md +161 -161
  292. package/lib/assets/docs/article/getting-start-tdd/fsharp/chapter08.md +175 -175
  293. package/lib/assets/docs/article/getting-start-tdd/fsharp/chapter09.md +222 -222
  294. package/lib/assets/docs/article/getting-start-tdd/fsharp/chapter10.md +189 -189
  295. package/lib/assets/docs/article/getting-start-tdd/fsharp/chapter11.md +212 -212
  296. package/lib/assets/docs/article/getting-start-tdd/fsharp/chapter12.md +215 -215
  297. package/lib/assets/docs/article/getting-start-tdd/fsharp/index.md +71 -71
  298. package/lib/assets/docs/article/getting-start-tdd/go/01-todo-list-and-first-test.md +213 -213
  299. package/lib/assets/docs/article/getting-start-tdd/go/02-fake-it-and-triangulation.md +302 -302
  300. package/lib/assets/docs/article/getting-start-tdd/go/03-obvious-implementation-and-refactoring.md +339 -339
  301. package/lib/assets/docs/article/getting-start-tdd/go/04-version-control-and-conventional-commits.md +112 -112
  302. package/lib/assets/docs/article/getting-start-tdd/go/05-package-management-and-static-analysis.md +272 -272
  303. package/lib/assets/docs/article/getting-start-tdd/go/06-task-runner-and-ci-cd.md +233 -233
  304. package/lib/assets/docs/article/getting-start-tdd/go/07-encapsulation-and-polymorphism.md +394 -394
  305. package/lib/assets/docs/article/getting-start-tdd/go/08-design-patterns.md +422 -422
  306. package/lib/assets/docs/article/getting-start-tdd/go/09-solid-principles-and-module-design.md +400 -400
  307. package/lib/assets/docs/article/getting-start-tdd/go/10-higher-order-functions-and-composition.md +226 -226
  308. package/lib/assets/docs/article/getting-start-tdd/go/11-immutable-data-and-pipeline.md +296 -296
  309. package/lib/assets/docs/article/getting-start-tdd/go/12-error-handling-and-type-safety.md +411 -411
  310. package/lib/assets/docs/article/getting-start-tdd/go/index.md +83 -83
  311. package/lib/assets/docs/article/getting-start-tdd/haskell/01-todo-list-and-first-test.md +279 -279
  312. package/lib/assets/docs/article/getting-start-tdd/haskell/02-fake-it-and-triangulation.md +337 -337
  313. package/lib/assets/docs/article/getting-start-tdd/haskell/03-obvious-implementation-and-refactoring.md +257 -257
  314. package/lib/assets/docs/article/getting-start-tdd/haskell/04-version-control-and-conventional-commits.md +182 -182
  315. package/lib/assets/docs/article/getting-start-tdd/haskell/05-package-management-and-static-analysis.md +313 -313
  316. package/lib/assets/docs/article/getting-start-tdd/haskell/06-task-runner-and-ci-cd.md +309 -309
  317. package/lib/assets/docs/article/getting-start-tdd/haskell/07-algebraic-data-types-and-type-classes.md +412 -412
  318. package/lib/assets/docs/article/getting-start-tdd/haskell/08-pattern-matching-and-guards.md +390 -390
  319. package/lib/assets/docs/article/getting-start-tdd/haskell/09-module-design-and-smart-constructors.md +461 -461
  320. package/lib/assets/docs/article/getting-start-tdd/haskell/10-higher-order-functions-and-currying.md +434 -434
  321. package/lib/assets/docs/article/getting-start-tdd/haskell/11-function-composition-and-point-free.md +392 -392
  322. package/lib/assets/docs/article/getting-start-tdd/haskell/12-monad-and-error-handling.md +631 -631
  323. package/lib/assets/docs/article/getting-start-tdd/haskell/index.md +49 -49
  324. package/lib/assets/docs/article/getting-start-tdd/index.md +93 -93
  325. package/lib/assets/docs/article/getting-start-tdd/integration/01-language-overview.md +375 -375
  326. package/lib/assets/docs/article/getting-start-tdd/integration/02-test-framework-comparison.md +349 -349
  327. package/lib/assets/docs/article/getting-start-tdd/integration/03-tdd-pattern-comparison.md +445 -445
  328. package/lib/assets/docs/article/getting-start-tdd/integration/04-type-system-comparison.md +409 -409
  329. package/lib/assets/docs/article/getting-start-tdd/integration/05-dev-environment-comparison.md +330 -330
  330. package/lib/assets/docs/article/getting-start-tdd/integration/06-learning-roadmap.md +290 -290
  331. package/lib/assets/docs/article/getting-start-tdd/integration/index.md +69 -69
  332. package/lib/assets/docs/article/getting-start-tdd/java/01-todo-list-and-first-test.md +234 -234
  333. package/lib/assets/docs/article/getting-start-tdd/java/02-fake-it-and-triangulation.md +261 -261
  334. package/lib/assets/docs/article/getting-start-tdd/java/03-obvious-implementation-and-refactoring.md +185 -185
  335. package/lib/assets/docs/article/getting-start-tdd/java/04-version-control-and-conventional-commits.md +115 -115
  336. package/lib/assets/docs/article/getting-start-tdd/java/05-package-management-and-static-analysis.md +382 -382
  337. package/lib/assets/docs/article/getting-start-tdd/java/06-task-runner-and-ci-cd.md +272 -272
  338. package/lib/assets/docs/article/getting-start-tdd/java/07-encapsulation-and-polymorphism.md +626 -626
  339. package/lib/assets/docs/article/getting-start-tdd/java/08-design-patterns.md +393 -393
  340. package/lib/assets/docs/article/getting-start-tdd/java/09-solid-principles-and-module-design.md +310 -310
  341. package/lib/assets/docs/article/getting-start-tdd/java/10-higher-order-functions-and-composition.md +188 -188
  342. package/lib/assets/docs/article/getting-start-tdd/java/11-immutable-data-and-pipeline.md +167 -167
  343. package/lib/assets/docs/article/getting-start-tdd/java/12-error-handling-and-type-safety.md +205 -205
  344. package/lib/assets/docs/article/getting-start-tdd/java/index.md +61 -61
  345. package/lib/assets/docs/article/getting-start-tdd/node/01-todo-list-and-first-test.md +244 -244
  346. package/lib/assets/docs/article/getting-start-tdd/node/02-fake-it-and-triangulation.md +262 -262
  347. package/lib/assets/docs/article/getting-start-tdd/node/03-obvious-implementation-and-refactoring.md +169 -169
  348. package/lib/assets/docs/article/getting-start-tdd/node/04-version-control-and-conventional-commits.md +112 -112
  349. package/lib/assets/docs/article/getting-start-tdd/node/05-package-management-and-static-analysis.md +314 -314
  350. package/lib/assets/docs/article/getting-start-tdd/node/06-task-runner-and-ci-cd.md +235 -235
  351. package/lib/assets/docs/article/getting-start-tdd/node/07-encapsulation-and-polymorphism.md +327 -327
  352. package/lib/assets/docs/article/getting-start-tdd/node/08-design-patterns.md +322 -322
  353. package/lib/assets/docs/article/getting-start-tdd/node/09-solid-principles-and-module-design.md +285 -285
  354. package/lib/assets/docs/article/getting-start-tdd/node/10-higher-order-functions-and-composition.md +199 -199
  355. package/lib/assets/docs/article/getting-start-tdd/node/11-immutable-data-and-pipeline.md +207 -207
  356. package/lib/assets/docs/article/getting-start-tdd/node/12-error-handling-and-type-safety.md +295 -295
  357. package/lib/assets/docs/article/getting-start-tdd/node/index.md +56 -56
  358. package/lib/assets/docs/article/getting-start-tdd/php/01-todo-list-and-first-test.md +259 -259
  359. package/lib/assets/docs/article/getting-start-tdd/php/02-fake-it-and-triangulation.md +200 -200
  360. package/lib/assets/docs/article/getting-start-tdd/php/03-obvious-implementation-and-refactoring.md +248 -248
  361. package/lib/assets/docs/article/getting-start-tdd/php/04-version-control-and-conventional-commits.md +141 -141
  362. package/lib/assets/docs/article/getting-start-tdd/php/05-package-management-and-static-analysis.md +410 -410
  363. package/lib/assets/docs/article/getting-start-tdd/php/06-task-runner-and-ci-cd.md +321 -321
  364. package/lib/assets/docs/article/getting-start-tdd/php/07-encapsulation-and-polymorphism.md +372 -372
  365. package/lib/assets/docs/article/getting-start-tdd/php/08-design-patterns.md +453 -453
  366. package/lib/assets/docs/article/getting-start-tdd/php/09-solid-principles-and-module-design.md +460 -460
  367. package/lib/assets/docs/article/getting-start-tdd/php/10-higher-order-functions-and-composition.md +182 -182
  368. package/lib/assets/docs/article/getting-start-tdd/php/11-immutable-data-and-pipeline.md +266 -266
  369. package/lib/assets/docs/article/getting-start-tdd/php/12-error-handling-and-type-safety.md +308 -308
  370. package/lib/assets/docs/article/getting-start-tdd/php/index.md +84 -84
  371. package/lib/assets/docs/article/getting-start-tdd/python/01-todo-list-and-first-test.md +201 -201
  372. package/lib/assets/docs/article/getting-start-tdd/python/02-fake-it-and-triangulation.md +247 -247
  373. package/lib/assets/docs/article/getting-start-tdd/python/03-obvious-implementation-and-refactoring.md +199 -199
  374. package/lib/assets/docs/article/getting-start-tdd/python/04-version-control-and-conventional-commits.md +87 -87
  375. package/lib/assets/docs/article/getting-start-tdd/python/05-package-management-and-static-analysis.md +274 -274
  376. package/lib/assets/docs/article/getting-start-tdd/python/06-task-runner-and-ci-cd.md +190 -190
  377. package/lib/assets/docs/article/getting-start-tdd/python/07-encapsulation-and-polymorphism.md +208 -208
  378. package/lib/assets/docs/article/getting-start-tdd/python/08-design-patterns.md +172 -172
  379. package/lib/assets/docs/article/getting-start-tdd/python/09-solid-principles-and-module-design.md +130 -130
  380. package/lib/assets/docs/article/getting-start-tdd/python/10-higher-order-functions-and-composition.md +122 -122
  381. package/lib/assets/docs/article/getting-start-tdd/python/11-immutable-data-and-pipeline.md +116 -116
  382. package/lib/assets/docs/article/getting-start-tdd/python/12-error-handling-and-type-safety.md +126 -126
  383. package/lib/assets/docs/article/getting-start-tdd/python/index.md +55 -55
  384. package/lib/assets/docs/article/getting-start-tdd/ruby/01-todo-list-and-first-test.md +231 -231
  385. package/lib/assets/docs/article/getting-start-tdd/ruby/02-fake-it-and-triangulation.md +238 -238
  386. package/lib/assets/docs/article/getting-start-tdd/ruby/03-obvious-implementation-and-refactoring.md +228 -228
  387. package/lib/assets/docs/article/getting-start-tdd/ruby/04-version-control-and-conventional-commits.md +112 -112
  388. package/lib/assets/docs/article/getting-start-tdd/ruby/05-package-management-and-static-analysis.md +287 -287
  389. package/lib/assets/docs/article/getting-start-tdd/ruby/06-task-runner-and-ci-cd.md +248 -248
  390. package/lib/assets/docs/article/getting-start-tdd/ruby/07-encapsulation-and-polymorphism.md +279 -279
  391. package/lib/assets/docs/article/getting-start-tdd/ruby/08-design-patterns.md +329 -329
  392. package/lib/assets/docs/article/getting-start-tdd/ruby/09-solid-principles-and-module-design.md +196 -196
  393. package/lib/assets/docs/article/getting-start-tdd/ruby/10-higher-order-functions-and-composition.md +175 -175
  394. package/lib/assets/docs/article/getting-start-tdd/ruby/11-immutable-data-and-pipeline.md +237 -237
  395. package/lib/assets/docs/article/getting-start-tdd/ruby/12-error-handling-and-type-safety.md +398 -398
  396. package/lib/assets/docs/article/getting-start-tdd/ruby/index.md +83 -83
  397. package/lib/assets/docs/article/getting-start-tdd/rust/01-todo-list-and-first-test.md +211 -211
  398. package/lib/assets/docs/article/getting-start-tdd/rust/02-fake-it-and-triangulation.md +264 -264
  399. package/lib/assets/docs/article/getting-start-tdd/rust/03-obvious-implementation-and-refactoring.md +233 -233
  400. package/lib/assets/docs/article/getting-start-tdd/rust/04-version-control-and-conventional-commits.md +92 -92
  401. package/lib/assets/docs/article/getting-start-tdd/rust/05-package-management-and-static-analysis.md +212 -212
  402. package/lib/assets/docs/article/getting-start-tdd/rust/06-task-runner-and-ci-cd.md +164 -164
  403. package/lib/assets/docs/article/getting-start-tdd/rust/07-encapsulation-and-polymorphism.md +142 -142
  404. package/lib/assets/docs/article/getting-start-tdd/rust/08-design-patterns.md +145 -145
  405. package/lib/assets/docs/article/getting-start-tdd/rust/09-solid-principles-and-module-design.md +110 -110
  406. package/lib/assets/docs/article/getting-start-tdd/rust/10-higher-order-functions-and-composition.md +94 -94
  407. package/lib/assets/docs/article/getting-start-tdd/rust/11-immutable-data-and-pipeline.md +105 -105
  408. package/lib/assets/docs/article/getting-start-tdd/rust/12-error-handling-and-type-safety.md +112 -112
  409. package/lib/assets/docs/article/getting-start-tdd/rust/index.md +83 -83
  410. package/lib/assets/docs/article/getting-start-tdd/scala/01-todo-list-and-first-test.md +111 -111
  411. package/lib/assets/docs/article/getting-start-tdd/scala/02-fake-it-and-triangulation.md +107 -107
  412. package/lib/assets/docs/article/getting-start-tdd/scala/03-obvious-implementation-and-refactoring.md +99 -99
  413. package/lib/assets/docs/article/getting-start-tdd/scala/04-version-control-and-conventional-commits.md +123 -123
  414. package/lib/assets/docs/article/getting-start-tdd/scala/05-package-management-and-static-analysis.md +196 -196
  415. package/lib/assets/docs/article/getting-start-tdd/scala/06-task-runner-and-ci-cd.md +186 -186
  416. package/lib/assets/docs/article/getting-start-tdd/scala/07-case-classes-and-traits.md +139 -139
  417. package/lib/assets/docs/article/getting-start-tdd/scala/08-pattern-matching-and-sealed-traits.md +106 -106
  418. package/lib/assets/docs/article/getting-start-tdd/scala/09-packages-and-module-design.md +75 -75
  419. package/lib/assets/docs/article/getting-start-tdd/scala/10-higher-order-functions-and-composition.md +104 -104
  420. package/lib/assets/docs/article/getting-start-tdd/scala/11-collections-and-lazy-evaluation.md +94 -94
  421. package/lib/assets/docs/article/getting-start-tdd/scala/12-error-handling-and-type-safety.md +92 -92
  422. package/lib/assets/docs/article/getting-start-tdd/scala/index.md +65 -65
  423. package/lib/assets/docs/article/grokking-concurrency/all/index.md +404 -404
  424. package/lib/assets/docs/article/grokking-concurrency/all/part-1-ch02-sequential.md +554 -554
  425. package/lib/assets/docs/article/grokking-concurrency/all/part-2-ch04-05-threads.md +469 -469
  426. package/lib/assets/docs/article/grokking-concurrency/all/part-3-ch06-multitasking.md +520 -520
  427. package/lib/assets/docs/article/grokking-concurrency/all/part-4-ch07-parallel-patterns.md +420 -420
  428. package/lib/assets/docs/article/grokking-concurrency/all/part-5-ch08-09-synchronization.md +510 -510
  429. package/lib/assets/docs/article/grokking-concurrency/all/part-6-ch10-11-nonblocking-io.md +435 -435
  430. package/lib/assets/docs/article/grokking-concurrency/all/part-7-ch12-async.md +465 -465
  431. package/lib/assets/docs/article/grokking-concurrency/all/part-8-ch13-mapreduce.md +377 -377
  432. package/lib/assets/docs/article/grokking-concurrency/clojure/index.md +116 -116
  433. package/lib/assets/docs/article/grokking-concurrency/clojure/part-1.md +108 -108
  434. package/lib/assets/docs/article/grokking-concurrency/clojure/part-2.md +101 -101
  435. package/lib/assets/docs/article/grokking-concurrency/clojure/part-3.md +122 -122
  436. package/lib/assets/docs/article/grokking-concurrency/clojure/part-4.md +123 -123
  437. package/lib/assets/docs/article/grokking-concurrency/clojure/part-5.md +118 -118
  438. package/lib/assets/docs/article/grokking-concurrency/clojure/part-6.md +89 -89
  439. package/lib/assets/docs/article/grokking-concurrency/clojure/part-7.md +100 -100
  440. package/lib/assets/docs/article/grokking-concurrency/clojure/part-8.md +120 -120
  441. package/lib/assets/docs/article/grokking-concurrency/csharp/index.md +101 -101
  442. package/lib/assets/docs/article/grokking-concurrency/csharp/part-1.md +97 -97
  443. package/lib/assets/docs/article/grokking-concurrency/csharp/part-2.md +123 -123
  444. package/lib/assets/docs/article/grokking-concurrency/csharp/part-3.md +101 -101
  445. package/lib/assets/docs/article/grokking-concurrency/csharp/part-4.md +112 -112
  446. package/lib/assets/docs/article/grokking-concurrency/csharp/part-5.md +99 -99
  447. package/lib/assets/docs/article/grokking-concurrency/csharp/part-6.md +61 -61
  448. package/lib/assets/docs/article/grokking-concurrency/csharp/part-7.md +84 -84
  449. package/lib/assets/docs/article/grokking-concurrency/csharp/part-8.md +92 -92
  450. package/lib/assets/docs/article/grokking-concurrency/fsharp/index.md +65 -65
  451. package/lib/assets/docs/article/grokking-concurrency/fsharp/part-1.md +80 -80
  452. package/lib/assets/docs/article/grokking-concurrency/fsharp/part-2.md +103 -103
  453. package/lib/assets/docs/article/grokking-concurrency/fsharp/part-3.md +94 -94
  454. package/lib/assets/docs/article/grokking-concurrency/fsharp/part-4.md +110 -110
  455. package/lib/assets/docs/article/grokking-concurrency/fsharp/part-5.md +104 -104
  456. package/lib/assets/docs/article/grokking-concurrency/fsharp/part-6.md +93 -93
  457. package/lib/assets/docs/article/grokking-concurrency/fsharp/part-7.md +121 -121
  458. package/lib/assets/docs/article/grokking-concurrency/fsharp/part-8.md +107 -107
  459. package/lib/assets/docs/article/grokking-concurrency/haskell/index.md +248 -248
  460. package/lib/assets/docs/article/grokking-concurrency/haskell/part-1.md +96 -96
  461. package/lib/assets/docs/article/grokking-concurrency/haskell/part-2.md +96 -96
  462. package/lib/assets/docs/article/grokking-concurrency/haskell/part-3.md +91 -91
  463. package/lib/assets/docs/article/grokking-concurrency/haskell/part-4.md +106 -106
  464. package/lib/assets/docs/article/grokking-concurrency/haskell/part-5.md +99 -99
  465. package/lib/assets/docs/article/grokking-concurrency/haskell/part-6.md +95 -95
  466. package/lib/assets/docs/article/grokking-concurrency/haskell/part-7.md +111 -111
  467. package/lib/assets/docs/article/grokking-concurrency/haskell/part-8.md +118 -118
  468. package/lib/assets/docs/article/grokking-concurrency/index.md +66 -66
  469. package/lib/assets/docs/article/grokking-concurrency/java/index.md +102 -102
  470. package/lib/assets/docs/article/grokking-concurrency/java/part-1.md +308 -308
  471. package/lib/assets/docs/article/grokking-concurrency/java/part-2.md +334 -334
  472. package/lib/assets/docs/article/grokking-concurrency/java/part-3.md +221 -221
  473. package/lib/assets/docs/article/grokking-concurrency/java/part-4.md +213 -213
  474. package/lib/assets/docs/article/grokking-concurrency/java/part-5.md +112 -112
  475. package/lib/assets/docs/article/grokking-concurrency/java/part-6.md +69 -69
  476. package/lib/assets/docs/article/grokking-concurrency/java/part-7.md +101 -101
  477. package/lib/assets/docs/article/grokking-concurrency/java/part-8.md +101 -101
  478. package/lib/assets/docs/article/grokking-concurrency/python/index.md +313 -313
  479. package/lib/assets/docs/article/grokking-concurrency/python/part-1.md +239 -239
  480. package/lib/assets/docs/article/grokking-concurrency/python/part-2.md +418 -418
  481. package/lib/assets/docs/article/grokking-concurrency/python/part-3.md +227 -227
  482. package/lib/assets/docs/article/grokking-concurrency/python/part-4.md +299 -299
  483. package/lib/assets/docs/article/grokking-concurrency/python/part-5.md +315 -315
  484. package/lib/assets/docs/article/grokking-concurrency/python/part-6.md +297 -297
  485. package/lib/assets/docs/article/grokking-concurrency/python/part-7.md +314 -314
  486. package/lib/assets/docs/article/grokking-concurrency/python/part-8.md +360 -360
  487. package/lib/assets/docs/article/grokking-concurrency/rust/index.md +270 -270
  488. package/lib/assets/docs/article/grokking-concurrency/rust/part-1.md +108 -108
  489. package/lib/assets/docs/article/grokking-concurrency/rust/part-2.md +120 -120
  490. package/lib/assets/docs/article/grokking-concurrency/rust/part-3.md +126 -126
  491. package/lib/assets/docs/article/grokking-concurrency/rust/part-4.md +175 -175
  492. package/lib/assets/docs/article/grokking-concurrency/rust/part-5.md +158 -158
  493. package/lib/assets/docs/article/grokking-concurrency/rust/part-6.md +94 -94
  494. package/lib/assets/docs/article/grokking-concurrency/rust/part-7.md +133 -133
  495. package/lib/assets/docs/article/grokking-concurrency/rust/part-8.md +155 -155
  496. package/lib/assets/docs/article/grokking-concurrency/scala/index.md +69 -69
  497. package/lib/assets/docs/article/grokking-concurrency/scala/part-1.md +78 -78
  498. package/lib/assets/docs/article/grokking-concurrency/scala/part-2.md +112 -112
  499. package/lib/assets/docs/article/grokking-concurrency/scala/part-3.md +93 -93
  500. package/lib/assets/docs/article/grokking-concurrency/scala/part-4.md +110 -110
  501. package/lib/assets/docs/article/grokking-concurrency/scala/part-5.md +119 -119
  502. package/lib/assets/docs/article/grokking-concurrency/scala/part-6.md +83 -83
  503. package/lib/assets/docs/article/grokking-concurrency/scala/part-7.md +131 -131
  504. package/lib/assets/docs/article/grokking-concurrency/scala/part-8.md +129 -129
  505. package/lib/assets/docs/article/grokkingfp/all/index.md +368 -368
  506. package/lib/assets/docs/article/grokkingfp/all/part-1-ch01-fp-introduction.md +530 -530
  507. package/lib/assets/docs/article/grokkingfp/all/part-1-ch02-pure-functions.md +923 -923
  508. package/lib/assets/docs/article/grokkingfp/all/part-2-ch03-immutable-data.md +1128 -1128
  509. package/lib/assets/docs/article/grokkingfp/all/part-2-ch04-higher-order-functions.md +1104 -1104
  510. package/lib/assets/docs/article/grokkingfp/all/part-2-ch05-flatmap.md +1026 -1026
  511. package/lib/assets/docs/article/grokkingfp/all/part-3-ch06-option.md +785 -785
  512. package/lib/assets/docs/article/grokkingfp/all/part-3-ch07-either-adt.md +871 -871
  513. package/lib/assets/docs/article/grokkingfp/all/part-4-ch08-io-monad.md +972 -972
  514. package/lib/assets/docs/article/grokkingfp/all/part-4-ch09-streams.md +926 -926
  515. package/lib/assets/docs/article/grokkingfp/all/part-5-ch10-concurrency.md +870 -870
  516. package/lib/assets/docs/article/grokkingfp/all/part-6-ch11-application.md +715 -715
  517. package/lib/assets/docs/article/grokkingfp/all/part-6-ch12-testing.md +626 -626
  518. package/lib/assets/docs/article/grokkingfp/all/writing-plan.md +712 -712
  519. package/lib/assets/docs/article/grokkingfp/clojure/index.md +276 -276
  520. package/lib/assets/docs/article/grokkingfp/clojure/part-1.md +667 -667
  521. package/lib/assets/docs/article/grokkingfp/clojure/part-2.md +643 -643
  522. package/lib/assets/docs/article/grokkingfp/clojure/part-3.md +620 -620
  523. package/lib/assets/docs/article/grokkingfp/clojure/part-4.md +697 -697
  524. package/lib/assets/docs/article/grokkingfp/clojure/part-5.md +751 -751
  525. package/lib/assets/docs/article/grokkingfp/clojure/part-6.md +721 -721
  526. package/lib/assets/docs/article/grokkingfp/csharp/index.md +246 -246
  527. package/lib/assets/docs/article/grokkingfp/csharp/part-1.md +811 -811
  528. package/lib/assets/docs/article/grokkingfp/csharp/part-2.md +971 -971
  529. package/lib/assets/docs/article/grokkingfp/csharp/part-3.md +981 -981
  530. package/lib/assets/docs/article/grokkingfp/csharp/part-4.md +949 -949
  531. package/lib/assets/docs/article/grokkingfp/csharp/part-5.md +947 -947
  532. package/lib/assets/docs/article/grokkingfp/csharp/part-6.md +739 -739
  533. package/lib/assets/docs/article/grokkingfp/elixir/index.md +203 -203
  534. package/lib/assets/docs/article/grokkingfp/elixir/part-1.md +712 -712
  535. package/lib/assets/docs/article/grokkingfp/elixir/part-2.md +838 -838
  536. package/lib/assets/docs/article/grokkingfp/elixir/part-3.md +985 -985
  537. package/lib/assets/docs/article/grokkingfp/elixir/part-4.md +974 -974
  538. package/lib/assets/docs/article/grokkingfp/elixir/part-5.md +1286 -1286
  539. package/lib/assets/docs/article/grokkingfp/elixir/part-6.md +1049 -1049
  540. package/lib/assets/docs/article/grokkingfp/fsharp/index.md +210 -210
  541. package/lib/assets/docs/article/grokkingfp/fsharp/part-1.md +714 -714
  542. package/lib/assets/docs/article/grokkingfp/fsharp/part-2.md +961 -961
  543. package/lib/assets/docs/article/grokkingfp/fsharp/part-3.md +972 -972
  544. package/lib/assets/docs/article/grokkingfp/fsharp/part-4.md +832 -832
  545. package/lib/assets/docs/article/grokkingfp/fsharp/part-5.md +911 -911
  546. package/lib/assets/docs/article/grokkingfp/fsharp/part-6.md +922 -922
  547. package/lib/assets/docs/article/grokkingfp/haskell/index.md +234 -234
  548. package/lib/assets/docs/article/grokkingfp/haskell/part-1.md +591 -591
  549. package/lib/assets/docs/article/grokkingfp/haskell/part-2.md +866 -866
  550. package/lib/assets/docs/article/grokkingfp/haskell/part-3.md +915 -915
  551. package/lib/assets/docs/article/grokkingfp/haskell/part-4.md +878 -878
  552. package/lib/assets/docs/article/grokkingfp/haskell/part-5.md +845 -845
  553. package/lib/assets/docs/article/grokkingfp/haskell/part-6.md +844 -844
  554. package/lib/assets/docs/article/grokkingfp/index.md +143 -143
  555. package/lib/assets/docs/article/grokkingfp/java/index.md +211 -211
  556. package/lib/assets/docs/article/grokkingfp/java/part-1.md +648 -648
  557. package/lib/assets/docs/article/grokkingfp/java/part-2.md +675 -675
  558. package/lib/assets/docs/article/grokkingfp/java/part-3.md +672 -672
  559. package/lib/assets/docs/article/grokkingfp/java/part-4.md +771 -771
  560. package/lib/assets/docs/article/grokkingfp/java/part-5.md +959 -959
  561. package/lib/assets/docs/article/grokkingfp/java/part-6.md +1328 -1328
  562. package/lib/assets/docs/article/grokkingfp/python/index.md +258 -258
  563. package/lib/assets/docs/article/grokkingfp/python/part-1.md +443 -443
  564. package/lib/assets/docs/article/grokkingfp/python/part-2.md +958 -958
  565. package/lib/assets/docs/article/grokkingfp/python/part-3.md +1004 -1004
  566. package/lib/assets/docs/article/grokkingfp/python/part-4.md +765 -765
  567. package/lib/assets/docs/article/grokkingfp/python/part-5.md +747 -747
  568. package/lib/assets/docs/article/grokkingfp/python/part-6.md +861 -861
  569. package/lib/assets/docs/article/grokkingfp/ruby/index.md +330 -330
  570. package/lib/assets/docs/article/grokkingfp/ruby/part-1.md +755 -755
  571. package/lib/assets/docs/article/grokkingfp/ruby/part-2.md +938 -938
  572. package/lib/assets/docs/article/grokkingfp/ruby/part-3.md +946 -946
  573. package/lib/assets/docs/article/grokkingfp/ruby/part-4.md +921 -921
  574. package/lib/assets/docs/article/grokkingfp/ruby/part-5.md +908 -908
  575. package/lib/assets/docs/article/grokkingfp/ruby/part-6.md +1412 -1412
  576. package/lib/assets/docs/article/grokkingfp/rust/index.md +242 -242
  577. package/lib/assets/docs/article/grokkingfp/rust/part-1.md +634 -634
  578. package/lib/assets/docs/article/grokkingfp/rust/part-2.md +1060 -1060
  579. package/lib/assets/docs/article/grokkingfp/rust/part-3.md +994 -994
  580. package/lib/assets/docs/article/grokkingfp/rust/part-4.md +573 -573
  581. package/lib/assets/docs/article/grokkingfp/rust/part-5.md +705 -705
  582. package/lib/assets/docs/article/grokkingfp/rust/part-6.md +508 -508
  583. package/lib/assets/docs/article/grokkingfp/scala/index.md +171 -171
  584. package/lib/assets/docs/article/grokkingfp/scala/part-1.md +543 -543
  585. package/lib/assets/docs/article/grokkingfp/scala/part-2.md +946 -946
  586. package/lib/assets/docs/article/grokkingfp/scala/part-3.md +919 -919
  587. package/lib/assets/docs/article/grokkingfp/scala/part-4.md +742 -742
  588. package/lib/assets/docs/article/grokkingfp/scala/part-5.md +722 -722
  589. package/lib/assets/docs/article/grokkingfp/scala/part-6.md +867 -867
  590. package/lib/assets/docs/article/grokkingfp/typescript/index.md +273 -273
  591. package/lib/assets/docs/article/grokkingfp/typescript/part-1.md +561 -561
  592. package/lib/assets/docs/article/grokkingfp/typescript/part-2.md +1129 -1129
  593. package/lib/assets/docs/article/grokkingfp/typescript/part-3.md +842 -842
  594. package/lib/assets/docs/article/grokkingfp/typescript/part-4.md +1087 -1087
  595. package/lib/assets/docs/article/grokkingfp/typescript/part-5.md +717 -717
  596. package/lib/assets/docs/article/grokkingfp/typescript/part-6.md +982 -982
  597. package/lib/assets/docs/article/index.md +41 -41
  598. package/lib/assets/docs/article/practical-database-design/index.md +121 -121
  599. package/lib/assets/docs/article/practical-database-design/part1/chapter01.md +288 -288
  600. package/lib/assets/docs/article/practical-database-design/part1/chapter02.md +518 -518
  601. package/lib/assets/docs/article/practical-database-design/part1/chapter03.md +557 -557
  602. package/lib/assets/docs/article/practical-database-design/part2/chapter04.md +924 -924
  603. package/lib/assets/docs/article/practical-database-design/part2/chapter05.md +1627 -1627
  604. package/lib/assets/docs/article/practical-database-design/part2/chapter06.md +2716 -2716
  605. package/lib/assets/docs/article/practical-database-design/part2/chapter07.md +2082 -2082
  606. package/lib/assets/docs/article/practical-database-design/part2/chapter08.md +2105 -2105
  607. package/lib/assets/docs/article/practical-database-design/part2/chapter09.md +2031 -2031
  608. package/lib/assets/docs/article/practical-database-design/part2/chapter10.md +1387 -1387
  609. package/lib/assets/docs/article/practical-database-design/part2/chapter11.md +1677 -1677
  610. package/lib/assets/docs/article/practical-database-design/part2/chapter12.md +1417 -1417
  611. package/lib/assets/docs/article/practical-database-design/part2/chapter13.md +1434 -1434
  612. package/lib/assets/docs/article/practical-database-design/part3/chapter14.md +667 -667
  613. package/lib/assets/docs/article/practical-database-design/part3/chapter15.md +1625 -1625
  614. package/lib/assets/docs/article/practical-database-design/part3/chapter16.md +1915 -1915
  615. package/lib/assets/docs/article/practical-database-design/part3/chapter17.md +1708 -1708
  616. package/lib/assets/docs/article/practical-database-design/part3/chapter18.md +2095 -2095
  617. package/lib/assets/docs/article/practical-database-design/part3/chapter19.md +1123 -1123
  618. package/lib/assets/docs/article/practical-database-design/part3/chapter20.md +1031 -1031
  619. package/lib/assets/docs/article/practical-database-design/part3/chapter21.md +1382 -1382
  620. package/lib/assets/docs/article/practical-database-design/part3-orm/chapter14-orm.md +991 -991
  621. package/lib/assets/docs/article/practical-database-design/part3-orm/chapter15-orm.md +1300 -1300
  622. package/lib/assets/docs/article/practical-database-design/part3-orm/chapter16-orm.md +1166 -1166
  623. package/lib/assets/docs/article/practical-database-design/part3-orm/chapter17-orm.md +1584 -1584
  624. package/lib/assets/docs/article/practical-database-design/part3-orm/chapter18-orm.md +1183 -1183
  625. package/lib/assets/docs/article/practical-database-design/part3-orm/chapter19-orm.md +1016 -1016
  626. package/lib/assets/docs/article/practical-database-design/part3-orm/chapter20-orm.md +1753 -1753
  627. package/lib/assets/docs/article/practical-database-design/part3-orm/chapter21-orm.md +1447 -1447
  628. package/lib/assets/docs/article/practical-database-design/part3-orm/chapter22-orm.md +1878 -1878
  629. package/lib/assets/docs/article/practical-database-design/part4/chapter22.md +965 -965
  630. package/lib/assets/docs/article/practical-database-design/part4/chapter23.md +2069 -2069
  631. package/lib/assets/docs/article/practical-database-design/part4/chapter24.md +2439 -2439
  632. package/lib/assets/docs/article/practical-database-design/part4/chapter25.md +3661 -3661
  633. package/lib/assets/docs/article/practical-database-design/part4/chapter26.md +2916 -2916
  634. package/lib/assets/docs/article/practical-database-design/part4/chapter27.md +3105 -3105
  635. package/lib/assets/docs/article/practical-database-design/part4/chapter28.md +2697 -2697
  636. package/lib/assets/docs/article/practical-database-design/part4/chapter29.md +2544 -2544
  637. package/lib/assets/docs/article/practical-database-design/part4/chapter30.md +2180 -2180
  638. package/lib/assets/docs/article/practical-database-design/part4/chapter31.md +1192 -1192
  639. package/lib/assets/docs/article/practical-database-design/part4/chapter32.md +2101 -2101
  640. package/lib/assets/docs/article/practical-database-design/part5/chapter33.md +1032 -1032
  641. package/lib/assets/docs/article/practical-database-design/part5/chapter34.md +1609 -1609
  642. package/lib/assets/docs/article/practical-database-design/part5/chapter35.md +1453 -1453
  643. package/lib/assets/docs/article/practical-database-design/part5/chapter36.md +1292 -1292
  644. package/lib/assets/docs/article/practical-database-design/part5/chapter37.md +1470 -1470
  645. package/lib/assets/docs/article/practical-database-design/part5/chapter38.md +1698 -1698
  646. package/lib/assets/docs/article/practical-database-design/part5/chapter39.md +2334 -2334
  647. package/lib/assets/docs/article/practical-database-design/study/study2-1.md +1693 -1693
  648. package/lib/assets/docs/article/practical-database-design/study/study2-2.md +1347 -1347
  649. package/lib/assets/docs/article/practical-database-design/study/study2-3.md +2044 -2044
  650. package/lib/assets/docs/article/practical-database-design/study/study2-4.md +2229 -2229
  651. package/lib/assets/docs/article/practical-database-design/study/study2-5.md +2418 -2418
  652. package/lib/assets/docs/article/practical-database-design/study/study3-1.md +2205 -2205
  653. package/lib/assets/docs/article/practical-database-design/study/study3-2.md +2221 -2221
  654. package/lib/assets/docs/article/practical-database-design/study/study3-3.md +2253 -2253
  655. package/lib/assets/docs/article/practical-database-design/study/study3-4.md +2106 -2106
  656. package/lib/assets/docs/article/practical-database-design/study/study3-5.md +2507 -2507
  657. package/lib/assets/docs/article/practical-database-design/study/study4-1.md +2587 -2587
  658. package/lib/assets/docs/article/practical-database-design/study/study4-2.md +2075 -2075
  659. package/lib/assets/docs/article/practical-database-design/study/study4-3.md +1805 -1805
  660. package/lib/assets/docs/article/practical-database-design/study/study4-4.md +1895 -1895
  661. package/lib/assets/docs/article/practical-database-design/study/study4-5.md +2878 -2878
  662. package/lib/assets/docs/assets/css/extra.css +29 -29
  663. package/lib/assets/docs/assets/js/extra.js +44 -44
  664. package/lib/assets/docs/design/index.md +44 -44
  665. package/lib/assets/docs/development/index.md +39 -39
  666. package/lib/assets/docs/index.md +33 -33
  667. package/lib/assets/docs/operation/index.md +27 -27
  668. package/lib/assets/docs/reference/CodexCLIMCP/343/202/242/343/203/227/343/203/252/343/202/261/343/203/274/343/202/267/343/203/247/343/203/263/351/226/213/347/231/272/343/203/225/343/203/255/343/203/274.md +546 -546
  669. package/lib/assets/docs/reference/CodexCLIMCP/343/202/265/343/203/274/343/203/220/343/203/274/350/250/255/345/256/232/346/211/213/351/240/206.md +341 -341
  670. package/lib/assets/docs/reference/Java/343/202/242/343/203/227/343/203/252/343/202/261/343/203/274/343/202/267/343/203/247/343/203/263/347/222/260/345/242/203/346/247/213/347/257/211/343/202/254/343/202/244/343/203/211.md +581 -581
  671. package/lib/assets/docs/reference/SonarQube/343/203/255/343/203/274/343/202/253/343/203/253/347/222/260/345/242/203/343/202/273/343/203/203/343/203/210/343/202/242/343/203/203/343/203/227/346/211/213/351/240/206/346/233/270.md +642 -642
  672. package/lib/assets/docs/reference/TypeScript/343/202/242/343/203/227/343/203/252/343/202/261/343/203/274/343/202/267/343/203/247/343/203/263/347/222/260/345/242/203/346/247/213/347/257/211/343/202/254/343/202/244/343/203/211.md +465 -465
  673. package/lib/assets/docs/reference/UI/350/250/255/350/250/210/343/202/254/343/202/244/343/203/211.md +450 -450
  674. package/lib/assets/docs/reference/images/Ansoff.drawio.svg +3 -3
  675. package/lib/assets/docs/reference/images/BMC.drawio.svg +3 -3
  676. package/lib/assets/docs/reference/images/BrandBasicStrategy.drawio.svg +3 -3
  677. package/lib/assets/docs/reference/images/BrandCategorization.drawio.svg +3 -3
  678. package/lib/assets/docs/reference/images/BrandRecurutementStrategy.drawio.svg +3 -3
  679. package/lib/assets/docs/reference/images/BrandValue.drawio.svg +3 -3
  680. package/lib/assets/docs/reference/images/BusinessActivitiy.svg +3 -3
  681. package/lib/assets/docs/reference/images/HRM.drawio.svg +3 -3
  682. package/lib/assets/docs/reference/images/MarketingStructure.drawio.svg +3 -3
  683. package/lib/assets/docs/reference/images/OrganizationElemnts.svg +3 -3
  684. package/lib/assets/docs/reference/images/PPM.drawio.svg +3 -3
  685. package/lib/assets/docs/reference/images/PositioningMap.drawio.svg +3 -3
  686. package/lib/assets/docs/reference/images/ProductLayer.drawio.svg +3 -3
  687. package/lib/assets/docs/reference/images/ProductMix.drawio.svg +3 -3
  688. package/lib/assets/docs/reference/images/SWOT.drawio.svg +3 -3
  689. package/lib/assets/docs/reference/images/TargetMarket.drawio.svg +3 -3
  690. package/lib/assets/docs/reference/images/ThreeGenericStrategies.drawio.svg +3 -3
  691. package/lib/assets/docs/reference/images/VRIO.drawio.svg +3 -3
  692. package/lib/assets/docs/reference/images/ValueChain.drawio.svg +3 -3
  693. package/lib/assets/docs/reference/index.md +53 -53
  694. package/lib/assets/docs/reference//343/202/210/343/201/204/343/202/275/343/203/225/343/203/210/343/202/246/343/202/247/343/202/242/343/201/250/343/201/257.md +250 -250
  695. package/lib/assets/docs/reference//343/202/242/343/203/274/343/202/255/343/203/206/343/202/257/343/203/201/343/203/243/350/250/255/350/250/210/343/202/254/343/202/244/343/203/211.md +2216 -2216
  696. package/lib/assets/docs/reference//343/202/244/343/203/263/343/203/225/343/203/251/350/250/255/350/250/210/343/202/254/343/202/244/343/203/211.md +1878 -1878
  697. package/lib/assets/docs/reference//343/202/250/343/202/257/343/202/271/343/203/210/343/203/252/343/203/274/343/203/240/343/203/227/343/203/255/343/202/260/343/203/251/343/203/237/343/203/263/343/202/260.md +550 -550
  698. package/lib/assets/docs/reference//343/202/263/343/203/274/343/203/207/343/202/243/343/203/263/343/202/260/343/201/250/343/203/206/343/202/271/343/203/210/343/202/254/343/202/244/343/203/211.md +705 -705
  699. package/lib/assets/docs/reference//343/203/206/343/202/271/343/203/210/346/210/246/347/225/245/343/202/254/343/202/244/343/203/211.md +1313 -1313
  700. package/lib/assets/docs/reference//343/203/207/343/203/274/343/202/277/343/203/242/343/203/207/343/203/253/350/250/255/350/250/210/343/202/254/343/202/244/343/203/211.md +311 -311
  701. package/lib/assets/docs/reference//343/203/211/343/203/241/343/202/244/343/203/263/343/203/242/343/203/207/343/203/253/350/250/255/350/250/210/343/202/254/343/202/244/343/203/211.md +599 -599
  702. package/lib/assets/docs/reference//343/203/223/343/202/270/343/203/215/343/202/271/343/202/242/343/203/274/343/202/255/343/203/206/343/202/257/343/203/201/343/203/243/345/210/206/346/236/220/343/202/254/343/202/244/343/203/211.md +528 -528
  703. package/lib/assets/docs/reference//343/203/246/343/203/274/343/202/271/343/202/261/343/203/274/343/202/271/344/275/234/346/210/220/343/202/254/343/202/244/343/203/211.md +689 -689
  704. package/lib/assets/docs/reference//343/203/252/343/203/252/343/203/274/343/202/271/343/202/254/343/202/244/343/203/211.md +461 -461
  705. package/lib/assets/docs/reference//343/203/252/343/203/252/343/203/274/343/202/271/343/203/273/343/202/244/343/203/206/343/203/254/343/203/274/343/202/267/343/203/247/343/203/263/350/250/210/347/224/273/343/202/254/343/202/244/343/203/211.md +580 -580
  706. package/lib/assets/docs/reference//343/203/255/343/202/270/343/202/253/343/203/253/343/202/267/343/203/263/343/202/255/343/203/263/343/202/260.md +1367 -1367
  707. package/lib/assets/docs/reference//344/274/201/346/245/255/347/265/214/345/226/266/350/253/226.md +2637 -2637
  708. package/lib/assets/docs/reference//347/222/260/345/242/203/345/244/211/346/225/260/347/256/241/347/220/206/343/202/254/343/202/244/343/203/211.md +665 -665
  709. package/lib/assets/docs/reference//347/265/214/345/226/266/346/210/246/347/225/245/345/210/206/346/236/220/343/202/254/343/202/244/343/203/211.md +566 -566
  710. package/lib/assets/docs/reference//350/246/201/344/273/266/345/256/232/347/276/251/343/202/254/343/202/244/343/203/211.md +1248 -1248
  711. package/lib/assets/docs/reference//350/250/200/350/252/236/345/210/245/351/226/213/347/231/272/343/202/254/343/202/244/343/203/211.md +518 -518
  712. package/lib/assets/docs/reference//351/201/213/345/226/266/347/256/241/347/220/206.md +1482 -1482
  713. package/lib/assets/docs/reference//351/201/213/347/224/250/343/202/271/343/202/257/343/203/252/343/203/227/343/203/210/344/275/234/346/210/220/343/202/254/343/202/244/343/203/211.md +421 -421
  714. package/lib/assets/docs/reference//351/201/213/347/224/250/350/246/201/344/273/266/345/256/232/347/276/251/343/202/254/343/202/244/343/203/211.md +392 -392
  715. package/lib/assets/docs/reference//351/226/213/347/231/272/343/202/254/343/202/244/343/203/211.md +305 -305
  716. package/lib/assets/docs/reference//351/235/236/346/251/237/350/203/275/350/246/201/344/273/266/345/256/232/347/276/251/343/202/254/343/202/244/343/203/211.md +1236 -1236
  717. package/lib/assets/docs/requirements/index.md +17 -17
  718. package/lib/assets/docs/review/index.md +5 -5
  719. package/lib/assets/docs/strategy/index.md +17 -17
  720. package/lib/assets/docs/template/ADR.md +30 -30
  721. package/lib/assets/docs/template/AWS/343/202/271/343/203/206/343/203/274/343/202/270/343/203/263/343/202/260/347/222/260/345/242/203/343/202/273/343/203/203/343/203/210/343/202/242/343/203/203/343/203/227/346/211/213/351/240/206/346/233/270.md +1366 -1366
  722. package/lib/assets/docs/template/AWS/343/203/227/343/203/255/343/203/200/343/202/257/343/202/267/343/203/247/343/203/263/347/222/260/345/242/203/343/202/273/343/203/203/343/203/210/343/202/242/343/203/203/343/203/227/346/211/213/351/240/206/346/233/270.md +634 -634
  723. package/lib/assets/docs/template/README.md +50 -50
  724. package/lib/assets/docs/template/index.md +24 -24
  725. package/lib/assets/docs/template//343/201/276/343/201/232/343/201/223/343/202/214/343/202/222/350/252/255/343/202/202/343/201/206/343/203/252/343/202/271/343/203/210.md +12 -12
  726. package/lib/assets/docs/template//343/202/242/343/203/227/343/203/252/343/202/261/343/203/274/343/202/267/343/203/247/343/203/263/351/226/213/347/231/272/347/222/260/345/242/203/343/202/273/343/203/203/343/203/210/343/202/242/343/203/203/343/203/227/346/211/213/351/240/206/346/233/270.md +547 -547
  727. package/lib/assets/docs/template//343/202/244/343/203/206/343/203/254/343/203/274/343/202/267/343/203/247/343/203/263/345/256/214/344/272/206/345/240/261/345/221/212/346/233/270.md +58 -58
  728. package/lib/assets/docs/template//343/202/244/343/203/206/343/203/254/343/203/274/343/202/267/343/203/247/343/203/263/350/250/210/347/224/273.md +327 -327
  729. package/lib/assets/docs/template//343/202/244/343/203/263/343/202/273/343/203/227/343/202/267/343/203/247/343/203/263/343/203/207/343/203/203/343/202/255.md +13 -13
  730. package/lib/assets/docs/template//343/203/223/343/202/270/343/203/215/343/202/271/343/202/242/343/203/274/343/202/255/343/203/206/343/202/257/343/203/201/343/203/243.md +379 -379
  731. package/lib/assets/docs/template//343/203/252/343/203/252/343/203/274/343/202/271/345/256/214/344/272/206/345/240/261/345/221/212/346/233/270.md +275 -275
  732. package/lib/assets/docs/template//344/272/213/344/276/213/345/210/206/346/236/220.md +513 -513
  733. package/lib/assets/docs/template//344/274/201/346/245/255/345/210/206/346/236/220.md +573 -573
  734. package/lib/assets/docs/template//345/256/214/345/205/250/345/275/242/345/274/217/343/201/256/343/203/246/343/203/274/343/202/271/343/202/261/343/203/274/343/202/271.md +69 -69
  735. package/lib/assets/docs/template//350/246/201/344/273/266/345/256/232/347/276/251.md +669 -669
  736. package/lib/assets/docs/template//350/250/255/350/250/210.md +173 -173
  737. package/lib/assets/docs/template//351/226/213/347/231/272/347/222/260/345/242/203/343/202/273/343/203/203/343/203/210/343/202/242/343/203/203/343/203/227/346/211/213/351/240/206/346/233/270.md +688 -688
  738. package/lib/assets/gulpfile.js +27 -25
  739. package/lib/assets/mkdocs.yml +139 -139
  740. package/lib/assets/ops/docker/mkdoc/Dockerfile +19 -19
  741. package/lib/assets/ops/docker/sonarqube-local/docker-compose.yml +57 -57
  742. package/lib/assets/ops/scripts/journal.js +180 -180
  743. package/lib/assets/ops/scripts/manual.js +198 -0
  744. package/lib/assets/ops/scripts/mkdocs.js +82 -82
  745. package/lib/assets/ops/scripts/release.js +431 -431
  746. package/lib/assets/ops/scripts/sonar_local.js +726 -726
  747. package/lib/assets/ops/scripts/ssh.js +190 -190
  748. package/lib/assets/ops/scripts/vault.js +299 -299
  749. package/lib/assets/package-lock.json +1673 -1653
  750. package/lib/assets/package.json +43 -40
  751. package/lib/gulpfile.js +37 -37
  752. package/package.json +41 -41
@@ -1,1367 +1,1367 @@
1
- # ロジカルシンキング
2
-
3
- > 達人プログラマーが取り扱う素材は木でも鉄でもありません --- 知識です。
4
- >
5
- > > — 達人プログラマー 熟達に向けたあなたの旅(第2版)
6
-
7
- ```plantuml
8
- @startmindmap
9
-
10
- * ロジカルシンキング
11
- ** ロジカルシンキングとは
12
- *** 論理と「論理的思考」
13
- *** 論理の世界の用語
14
- ****_ アーギュメント
15
- ****_ インファランス
16
- *****_ ディダクティブインファランス
17
- ******_ valid
18
- ******_ invalid
19
- *****_ インダクティブインファランス
20
- ******_ strong
21
- ******_ weak
22
- ****_ リーズニング
23
- *****_ sound
24
- **** 日本語との対応
25
- **** 必要条件・十分条件
26
- *** 「ロジカル(論理的)」とは何か
27
- *** なぜロジカルシンキングが必要か
28
- ** ロジカルシンキングの基本
29
- *** 論理の基本
30
- *** 論理の基本構造
31
- **** 演繹
32
- **** 帰納
33
- ** ロジカルシンキングの方法
34
- *** 演繹
35
- **** 前提を疑ってかかる
36
- **** 仮説をおいて考える
37
- *** 帰納
38
- **** 同質のものを帰納して共通項を見いだす
39
- **** 異質のものを組合わせて帰納する
40
- **** モレな重複なく全てを網羅する
41
- ***** 足し算・引き算で考える
42
- ***** 掛け算で考える
43
- ***** 軸で考える
44
- **** 枠組みで考える
45
- *** 問題解決
46
- **** 規準を作って比較する
47
- **** 枠組みを考える
48
- **** 表を活用する
49
- **** イッシュー・ツリーを展開する
50
- ***** イッシューとは
51
- ***** イッシュー・ツリーの考え方
52
- **** 数学の考え方を援用する
53
-
54
- @endmindmap
55
- ```
56
-
57
- ---
58
-
59
- ## ロジカルシンキングとは
60
-
61
- ```plantuml
62
- @startmindmap
63
-
64
- * ロジカルシンキング
65
- ** ロジカルシンキングとは
66
- *** 論理と「論理的思考」
67
- *** 論理の世界の用語
68
- ****_ アーギュメント
69
- ****_ インファランス
70
- *****_ ディダクティブインファランス
71
- ******_ valid
72
- ******_ invalid
73
- *****_ インダクティブインファランス
74
- ******_ strong
75
- ******_ weak
76
- ****_ リーズニング
77
- *****_ sound
78
- **** 日本語との対応
79
- **** 必要条件・十分条件
80
- *** 「ロジカル(論理的)」とは何か
81
- *** なぜロジカルシンキングが必要か
82
-
83
- @endmindmap
84
- ```
85
-
86
- ### 論理と「論理的思考」
87
-
88
- > 論理的な思考とは、秩序だった思考です。秩序立てて考えねばなりません。考えを示す際にも、秩序だっていなければなりません。思いつくままに書き並べるのではだめです。「理詰めに考えている」ということを示すためには、帰納と同じで、根拠に量がなければなりません。いろいろな角度からの考察も必要です。いろいろな角度から、結論を支えるのです。「いろいろな角度から」の言葉で誤解して「あれこれ余分なものを混ぜる」のはだめです。
89
- >
90
- > — 論理的に考える方法 小野田博一(著)日本実業出版社
91
-
92
- > 高い論理性を身につけるとは、「結論」と「結論を支えるもの」の関係について正確な理解を獲得することなのです。
93
- >
94
- > > 論理思考力を鍛える本 小野田博一
95
-
96
- > 高い論理性とは、結論と前提との関係の理解度が高く、理解している通りにそれを実践の場で使えることなのです。
97
- >
98
- > > 論理思考力を鍛える本 小野田博一
99
-
100
- ---
101
-
102
- ### 論理の世界の用語
103
-
104
- 結論と前提の両方を含んだスティトメント(statement)をアーギュメント(argument)といいます。
105
- 「ロジック」(論理)は、結論と前提を繋ぐ無形のものです。この無形の部分はインファランス(inference)ともいいます。インファランスには2種類のものがあります。ディダクティブ・インファランス(deductive inference)とインダクティブ・インファランス(inductive inference)です。
106
-
107
- 前提から結論を導く思考のことをリーズニング(reasoning)といいます。
108
-
109
- ディダクティブ・インファランスの評価は、valid/invalidで与えられます。validは「論理が正しい」の意味で、invalidは「論理が正しくない」の意味です。
110
-
111
- インダクティブ・インファランスの評価は、strong/weakで与えられます。インダクティブ・インファランスは「たぶんどうだろうか」の推論なので、前提が正しくとも、得られた結論が100%確実に正しいと断言できません。
112
-
113
- 論理が正しいだけでなく、前提も(真実か否かの点から)正しい場合、評価はsoundで与えられます。
114
-
115
- ```plantuml
116
- @startuml
117
-
118
- title 論理の世界の用語
119
-
120
- abstract "statement" as A {
121
- }
122
-
123
- abstract "argument" as B {
124
- + 前提
125
- + 結論
126
- }
127
-
128
- abstract "logic" as C {
129
- + reasoning()
130
- + sound()
131
- }
132
-
133
- interface "deductive_inference" as D {
134
- + valid()
135
- + invalid()
136
- }
137
-
138
- interface "inductive_inference" as E {
139
- + strong()
140
- + weak()
141
- }
142
-
143
- A <|-- B
144
- B <- C
145
- C --|> D
146
- C --|> E
147
-
148
- @enduml
149
- ```
150
-
151
- ---
152
-
153
- #### 日本語との対応
154
-
155
- 1. カモノハシは哺乳類である。したがって、カモノハシは、哺乳類か鳥類である。
156
- 2. 私がこれまでに食べたレモンは、どれもすっぱかった。だからレモンはどれもすっぱいだろう。
157
- 3. メガネをかけている高校生の女の子のうち、90%のメガネは黒縁である。紀子は高校生で、メガネをかけている。だから、それはたぶん黒縁だろう。
158
- 4. 春にピンクのスカートが流行した年の夏に、白い水着が流行した。ことしの春はピンクのTシャツが流行しているから、夏には白い水着が流行するだろう。
159
-
160
- | 番号 | タイプ | 日本語での呼称 |
161
- |:---:|:---:|:---:|
162
- | 1 : deductive inference | 演繹 | 演繹 |
163
- | 2 : inductive inference | 一般化 | 帰納 |
164
- | 3 : inductive inference | 統計的帰納 | 帰納 |
165
- | 4 : inductive inference | 類推 | 帰納 |
166
-
167
- ---
168
-
169
- ### 必要条件・十分条件
170
-
171
- #### 必要条件
172
-
173
- AであるためにはBである必要がある(たとえば、「ペンギンであるためには、鳥である必要がある」)
174
- BであることはAであることの必要条件である(たとえば「鳥であることはペンギンであることの必要条件である」)
175
-
176
- ```plantuml
177
- @startuml
178
- component {
179
- object B
180
- component {
181
- object A
182
- }
183
- }
184
- B --> A : 必要条件
185
- @enduml
186
- ```
187
-
188
- ---
189
-
190
- #### 十分条件
191
-
192
- BであるためにはAであれば十分である(たとえば、「鳥であるためには、ペンギンであれば十分である」)
193
- AであることはBであることの十分条件である(たとえば「ペンギンであることは鳥であることの十分条件である」)
194
-
195
- ```plantuml
196
- @startuml
197
- component {
198
- object B
199
- component {
200
- object A
201
- }
202
- }
203
- B <-- A : 十分条件
204
- @enduml
205
- ```
206
-
207
- ---
208
-
209
- ## 「ロジカル(論理的)」とは何か
210
-
211
- > 「実生活の議論(のうち演繹)では、validであるだけでは十分ではなく、soundでなければならない」ということで、つまり、「前提は真実でなければならない」ということです。
212
- > > 論理思考力を鍛える本 小野田博一
213
-
214
- ---
215
-
216
- ## なぜロジカルシンキングが必要か
217
-
218
- > なぜ論理思考が必要なのか
219
- > 1. 情緒に流されやすい判断や行動を防ぎ、自分の頭で考えて、「正しい結論を導く」ことができること。
220
- > 1. 文化の同一性に頼らず、どの民族にも通用する、「正しいコミュニケーションができること」こと。
221
- > 1. 「発想を助け、課題の検討・解決に役立つ」こと。
222
- >
223
- > > わかる、使える「論理思考」の本
224
- # ロジカルシンキングの基本
225
-
226
- ```plantuml
227
- @startmindmap
228
-
229
- * ロジカルシンキング
230
- ** ロジカルシンキングの基本
231
- *** 論理の基本
232
- *** 論理の基本構造
233
- **** 演繹
234
- **** 帰納
235
-
236
- @endmindmap
237
- ```
238
-
239
- ## 論理の基本
240
-
241
- > 1つのメッセージ(結論)は、必ず2つ以上のサブ・メッセージ(要因)でサポートされてるため、論理は、底辺に行くほど広いピラミッド状に組み上げられる。
242
- >
243
- > わかる、使える「論理思考」の本
244
-
245
- 1. 論理の基本単位は、単語ではなく主語・述語で組み上げるメッセージである。
246
- 1. メッセージを組み上げる基本構造には「演繹」と「帰納」という2つの方法がある。
247
- 1. 上位のメッセージと、それをサポートする下位のサブ・メッセージは、結論と要因、あるいは総合と部分の関係にある(メッセージの上下関係)
248
- 1. 上位のメッセージを支える下位のメッセージは、それらを総合すると、モレや重複がないこと(水平関係)
249
- 1. 全体を支える最下部のメッセージは、事実、またはそれに近い疑いようのないメッセージ(蓋然性の高いメッセージ)であること
250
-
251
- ```plantuml
252
- @startuml
253
-
254
- title 論理の基本
255
-
256
- abstract "メッセージ" as A {
257
- + 主語
258
- + 述語
259
- }
260
-
261
- interface "論理" as B {
262
- + 演繹()
263
- + 帰納()
264
- }
265
-
266
- class "結論" as C {
267
- }
268
-
269
- class "要因" as D {
270
- }
271
-
272
- B <|-- A
273
- A <|- C
274
- A <|- D
275
- C "1" *-- "*" D
276
- D *- D
277
-
278
- @enduml
279
- ```
280
-
281
- ---
282
-
283
- ## 論理の基本構造
284
-
285
- ### 演繹
286
-
287
- Deduction(演繹)は、前提となる正しいメッセージ(一般論)がまずあり、それを個別の事象に適用して、正しい主張・答を引き出す方法で「一般論」から「個別論」へという構造になっている
288
-
289
- ```plantuml
290
- @startuml
291
-
292
- title 論理の基本構造(演繹)
293
-
294
- interface "論理" as A
295
-
296
- class "一般論" as B
297
-
298
- class "個別論" as C
299
-
300
- A <|-- B
301
- A <|-- C
302
- B -> C : 演繹
303
-
304
- @enduml
305
- ```
306
-
307
- ### 帰納
308
-
309
- Induction(帰納)は、たくさんの個別の事象や主張を集めて、より一般的に通用する共通のメッセージを導き出す方法で「個別論」から「一般論」へという構造になっている
310
-
311
- ```plantuml
312
- @startuml
313
-
314
- title 論理の基本構造(帰納)
315
-
316
- interface "論理" as A
317
-
318
- class "一般論" as B
319
-
320
- class "個別論" as C
321
-
322
- class "事象" as D
323
-
324
- class "事実" as E
325
-
326
- A <|-- B
327
- A <|-- C
328
- C -> B : 帰納
329
-
330
- C "1" *-- "*" D
331
-
332
- C "1" *-- "*" E
333
-
334
- @enduml
335
- ```
336
- # ロジカルシンキングの方法
337
-
338
- ```plantuml
339
- @startmindmap
340
-
341
- * ロジカルシンキング
342
- ** ロジカルシンキングの方法
343
- *** 演繹
344
- **** 前提を疑ってかかる
345
- **** 仮説をおいて考える
346
- *** 帰納
347
- **** 同質のものを帰納して共通項を見いだす
348
- **** 異質のものを組合わせて帰納する
349
- **** モレな重複なく全てを網羅する
350
- ***** 足し算・引き算で考える
351
- ***** 掛け算で考える
352
- ***** 軸で考える
353
- **** 枠組みで考える
354
- *** 問題解決
355
- **** 規準を作って比較する
356
- **** 枠組みを考える
357
- **** 表を活用する
358
- **** イッシュー・ツリーを展開する
359
- ***** イッシューとは
360
- ***** イッシュー・ツリーの考え方
361
- **** 数学の考え方を援用する
362
-
363
- @endmindmap
364
- ```
365
-
366
- ---
367
-
368
- ## 演繹
369
-
370
- ### 前提を疑ってかかる
371
-
372
- ```plantuml
373
- @startuml
374
-
375
- title 論理の基本構造(演繹)
376
-
377
- interface "論理" as A
378
-
379
- class "一般論" as B
380
-
381
- class "個別論" as C
382
-
383
- interface "前提" as D {
384
- }
385
-
386
- class "真理" as E
387
-
388
- class "取り決め" as F
389
-
390
- class "その他" as G
391
-
392
-
393
- D <- A
394
- D <|-- E
395
- D <|-- F
396
- D <|-- G
397
- A <|-- B
398
- A <|-- C
399
- B -> C : 演繹
400
-
401
- @enduml
402
- ```
403
-
404
- ---
405
-
406
- ### 仮説をおいて考える
407
-
408
- ```plantuml
409
- @startuml
410
-
411
- title 論理の基本構造(演繹)
412
-
413
- interface "論理" as A
414
-
415
- class "一般論" as B
416
-
417
- class "個別論" as C
418
-
419
- interface "前提" as D
420
-
421
- interface "仮説" as E
422
-
423
- class "仮説A" as F
424
-
425
- class "仮説B" as G
426
-
427
- class "仮説C" as H
428
-
429
- D <- A
430
- E <- D
431
- E <|-- F
432
- E <|-- G
433
- E <|-- H
434
- A <|-- B
435
- A <|-- C
436
- B -> C : 演繹
437
-
438
- @enduml
439
- ```
440
-
441
- ---
442
-
443
- ## 帰納
444
-
445
- ### 同質のものを帰納して共通項を見いだす
446
-
447
- ```plantuml
448
- @startuml
449
-
450
- title 論理の基本構造(帰納)
451
-
452
- interface "論理" as A
453
-
454
- class "一般論" as B
455
-
456
- class "個別論" as C {
457
- 共通項を見出して帰納する()
458
- }
459
-
460
- class "事象" as D
461
-
462
- class "事実" as E
463
-
464
- A <|-- B
465
- A <|-- C
466
- C -> B : 帰納
467
-
468
- C "1" *-- "*" D
469
-
470
- C "1" *-- "*" E
471
-
472
- @enduml
473
- ```
474
-
475
- ---
476
-
477
- ### 異質のものを組合わせて帰納する
478
-
479
- ```plantuml
480
- @startuml
481
-
482
- title 論理の基本構造(帰納)
483
-
484
- interface "論理" as A
485
-
486
- class "一般論" as B
487
-
488
- class "個別論" as C {
489
- 異質ものを組み合わせて帰納する()
490
- }
491
-
492
- class "事象" as D
493
-
494
- class "事実" as E
495
-
496
- A <|-- B
497
- A <|-- C
498
- C -> B : 帰納
499
-
500
- C "1" *-- "*" D
501
-
502
- C "1" *-- "*" E
503
-
504
- @enduml
505
- ```
506
-
507
- ---
508
-
509
- ### モレなく重複なく全てを網羅する
510
-
511
- ```plantuml
512
- @startuml
513
-
514
- title 論理の基本構造(帰納)
515
-
516
- interface "論理" as A
517
-
518
- class "一般論" as B
519
-
520
- class "個別論" as C {
521
- + 足し算・引き算で考える()
522
- + 掛け算で考える()
523
- + 軸で考える()
524
- + 枠組みを工夫する()
525
- }
526
-
527
- class "事象" as D
528
-
529
- class "事実" as E
530
-
531
- class "その他" as F
532
-
533
- A <|-- B
534
- A <|-- C
535
- C -> B : 帰納
536
-
537
- C "1" *-- "*" D
538
- C "1" *-- "*" E
539
- C "0..1" o-- "*" F
540
-
541
- @enduml
542
- ```
543
-
544
- ---
545
-
546
- #### 足し算・引き算で考える
547
-
548
- ```plantuml
549
- @startmindmap
550
- title 足し算・引き算で考える
551
-
552
- * 売上を上げたい
553
- ** A営業所
554
- ** +
555
- ** B営業所
556
- ** +
557
- ** C営業所
558
- ** +
559
- ** ...
560
- ** +
561
- ** Z営業所
562
- ** +
563
- ** その他の売上
564
- *** OEM
565
- *** +
566
- *** 輸出
567
- *** +
568
- *** その他市場機会
569
- @endmindmap
570
- ```
571
-
572
- $$可能な全売上機会 - 現行の各営業所の売上の合計 = その他$$
573
-
574
- ---
575
-
576
- #### 掛け算で考える
577
-
578
- ```plantuml
579
- @startmindmap
580
- title 掛け算で考える
581
-
582
- * 売上を上げたい
583
- ** 店舗数を増やす
584
- ** x
585
- ** 1店舗あたりの売上を増やす
586
- @endmindmap
587
- ```
588
-
589
- $$店舗数 \times 1店舗あたりの売上 = 全体の売上$$
590
-
591
- ---
592
-
593
- #### 軸で考える
594
-
595
- ```plantuml
596
- @startmindmap
597
- title 軸で考える
598
-
599
- * SWOT
600
- -- 強み
601
- -- 弱み
602
- -- 機会
603
- -- 脅威
604
- ** 弱みを克服し脅威を回避する
605
- ** 機会を活用し弱みを克服する
606
- ** 機会を活用し強みを伸ばす
607
- ** 強みを活用し脅威を克服する
608
-
609
- @endmindmap
610
- ```
611
-
612
- ---
613
-
614
- ### 枠組みで考える
615
-
616
- ```plantuml
617
- @startuml
618
-
619
- title 論理の基本構造(帰納)
620
-
621
- interface "論理" as A
622
-
623
- class "一般論" as B
624
-
625
- class "個別論" as C {
626
- + 枠組みで考える()
627
- }
628
-
629
- class "事象" as D
630
-
631
- class "事実" as E
632
-
633
- abstract "枠組み" as F
634
-
635
- class "3C" as G
636
-
637
- class "SWOT" as H
638
-
639
- A <|-- B
640
- A <|-- C
641
- C -> B : 帰納
642
-
643
- C "1" *-- "*" D
644
-
645
- C "1" *-- "*" E
646
-
647
- F <- C
648
- F <|-- G
649
- F <|-- H
650
-
651
- @enduml
652
- ```
653
-
654
- ---
655
-
656
- ## 問題解決
657
-
658
- ### 規準を作って比較する
659
-
660
- ```plantuml
661
- @startuml
662
- object "結論(意思決定)" as A {
663
- ゆえに私はAのリンゴを選択する
664
- }
665
- object "小前提(現状へのあてはめ)" as B {
666
- Aのリンゴが、Bのりんごより
667
- 量の基準に適合する程度が高い
668
- (総合、一般論)
669
- }
670
- object "大前提(私にとっての選択基準)" as C {
671
- 今の私の選択基準としては
672
- 量が質より重要である
673
- }
674
- A <-- B
675
- C -> B
676
-
677
- object "個別論" as B_1 {
678
- Aのリンゴは色つやが
679
- よくないが
680
- 大きい
681
- }
682
- object "個別論" as B_2 {
683
- Bのリンゴは
684
- 色つやは
685
- よいが
686
- 小さい
687
- }
688
-
689
- B <-- B_1
690
- B <-- B_2
691
-
692
- object "小前提(現状)" as C_2 {
693
- 現状、私は腹ペコでたまらない
694
- }
695
- object "大前提(規準の存在)" as C_1 {
696
- 一般にリンゴを
697
- 選ぶ規準としては、
698
- 量(大きさ・重さ)
699
- と質(味・色・におい・形)
700
- の両面が考えられる
701
- }
702
- C <-- C_2
703
- C_1 -> C_2
704
- @enduml
705
- ```
706
-
707
- ---
708
-
709
- ### 枠組みを考える
710
-
711
- ```plantuml
712
- @startuml
713
- start
714
- :選択の規準要件(大きな枠組み)を考える;
715
- :具体的な判断の規準を考える;
716
- :考え方・調べ方を列挙する;
717
- stop
718
- @enduml
719
- ```
720
-
721
- ---
722
-
723
- ```plantuml
724
- @startmindmap
725
- title 志望校を決める枠組み
726
-
727
- * 志望校を決めたい
728
- ** 行けるか
729
- *** 試験に受かるか
730
- **** 偏差値
731
- **** 科目の数
732
- **** 面接の有無
733
- *** 通えるか
734
- **** 通学時間
735
- **** 手段(電車・自転車など)
736
- *** お金は払えるか
737
- **** 経済力
738
- ** 大学受験に有利な勉強ができるか
739
- *** 実績
740
- **** どの大学に何人入ったか
741
- *** 先生の指導の内容
742
- **** 先生の評判
743
- *** 設備やカリキュラム
744
- **** 設備の新旧
745
- **** カリキュラムの種類
746
- *** 強い分野、弱い分野はあるか
747
- **** 理系に強いか
748
- **** 文系に強いか
749
- **** 英語に力を入れているか
750
- ** 高校生活を楽しめるか
751
- *** 同じ中学の友人がたくさん行くか
752
- **** 友人に聞く
753
- **** 先輩の様子を見る
754
- *** 部活は盛んか
755
- **** 学園祭で見る
756
- **** 先輩に聞く
757
- *** サッカー部はあるか
758
- *** 親しい先輩か知人がいるか
759
- **** 事実を見る
760
- *** 共学かどうか
761
- **** 事実を見る
762
- *** 校風や雰囲気が自分と会うか
763
- **** 学園祭で見る
764
- **** 先輩に聞く
765
- **** 先生に聞く
766
-
767
- @endmindmap
768
- ```
769
-
770
- ---
771
-
772
- ### 表を活用する
773
-
774
- | 規準 | 学校A | 学校B | 学校C |
775
- |:---:|:---:|:---:|:---:|
776
- | 通学時間 | 30分 | 45分 | 1時間 |
777
- | 手段 | 電車 | 自転車 | 徒歩 |
778
- | 経済力 | 可能 | 可能 | 難しい |
779
- | 実績 | 〇 | △ | × |
780
- | 先生の評判 | 良い | 普通 | 悪い |
781
- | 設備の新旧 | 新しい | 古い | 新しい |
782
- | カリキュラムの種類 | 理系 | 文系 | 総合 |
783
- | 強い分野 | 理系 | 文系 | 英語 |
784
- | 高校生活 | 楽しい | 普通 | 退屈 |
785
- | 部活 | 盛ん | 普通 | あまりない |
786
- | サッカー部 | あり | なし | あり |
787
- | 共学 | あり | なし | あり |
788
- | 校風 | 自由 | 厳格 | 普通 |
789
- | 総合評価 | ◎ | △ | × |
790
-
791
- ---
792
-
793
- ### イッシュー・ツリーを展開する
794
-
795
- #### イッシューとは
796
-
797
- > 「1つの課題をめぐって、異なる立場から意見が対立する点」のことじゃ。
798
- >
799
- > > わかる。、使える「論理思考」の本 後正武
800
-
801
- > イッシューとはイエスかノーか、なすべきかなさざるべきか、の意見が対立する政治上の問題点のことえある。
802
- >
803
- > > 論理的思考と発想の技術
804
-
805
- > イッシューということばは「対立」に力点をおくよりも、「解決」に力点をおいて用いられ、その解決のための筋道を考えることが、まさにコンサルタントの日常業務となっている。
806
- >
807
- > > 論理的思考と発想の技術
808
-
809
- ---
810
-
811
- #### イッシュー・ツリーの考え方
812
-
813
- > 実は、イッシューは「ロジックの動的展開」であって、構造上の本質はロジックと全く同じものである。
814
- > ただし、ロジックは「あるメッセージ(命題)」を正しく主張するために、最下部の事実からピラミッドの頂点へと積み上げる構造になっているのに対して、イッシューを追求する過程は、逆に争点からはじめて、それを解決するためのより具体的な疑問へと、サブ・イッシューに分解し、ついに事実に突き当たって解決をみるところに違いがある。
815
- > > 論理的思考と発想の技術
816
-
817
- ```plantuml
818
- @startuml
819
-
820
- title ロジック(ボトムアップ)
821
-
822
- class "一般論" as A
823
-
824
- class "個別論" as B
825
-
826
- class "事象" as C
827
-
828
- class "事実" as D
829
-
830
- B -> A : 帰納
831
-
832
- B "1" *-- "*" C
833
-
834
- B "1" *-- "*" D
835
-
836
- class "個別論" as E
837
-
838
- E <-- A : 演繹
839
-
840
- class "一般論" as F
841
-
842
- E -> F : 帰納
843
-
844
- @enduml
845
- ```
846
-
847
- ```plantuml
848
- @startuml
849
-
850
- title イッシュー(トップダウン)
851
-
852
- class "一般論" as A
853
-
854
- class "個別論" as B
855
-
856
- class "事象" as C
857
-
858
- class "事実" as D
859
-
860
- A --> B : 演繹
861
-
862
- B "1" *-- "*" C
863
-
864
- B "1" *-- "*" D
865
-
866
- class "一般論" as E
867
-
868
- B -> E : 帰納
869
-
870
- class "個別論" as F
871
-
872
- class "事実" as G
873
-
874
- E --> F : 演繹
875
-
876
- F "1" *-- "*" G
877
-
878
- @enduml
879
- ```
880
-
881
- ---
882
-
883
- - イッシュー・ツリーはロジックの動的展開であり、 MECE、抽象レベル、事実のサポート等の諸要件は共通である。
884
- - イッシュー・ツリーは、未解決の課題(争点)を合理的に解明し、正しい結論を導くための枠組みであり、最後に事実を求めて初めて結果に結びつく。
885
- - プロジェクトチームを効果的に運用するためには、イッシュー・ツリーが不可欠である。
886
- - イッシュー・ツリーの展開はいろいろあり、巧拙がある。訓練して身につけるほかはない。
887
- - 頭で考えるより、直接観察したりデータを手に取る事によって、より効果的なイッシューの展開が期待できる。
888
-
889
- ```plantuml
890
- @startmindmap
891
- title ラーメン店を開くかどうかのイッシュー・ツリー
892
-
893
- * ラーメン店を開くべきか否か
894
- ** ラーメン店を開いて運営する能力があるか否か(company)
895
- *** 人がいるか
896
- *** お金があるか
897
- *** ラーメンをつくる技術をもっているか
898
- *** 材料や設備は手に入るか
899
- *** ...
900
- *** その他ラーメン店を運営する要件を満たせるか
901
- ** 市場は十分に大きいか(customer)
902
- *** 人口はどれだけか
903
- *** 交通量は十分か
904
- *** ラーメンを外食する人が期待できる構成か
905
- ** 有力な競争相手がいるか否か(competitor)
906
- *** 競合店が近くにあるか
907
- **** ある場所、距離は十分に遠いか
908
- **** 味・店構え・ロケーションなど自分に比べて優位か否か
909
- *** ラーメン以外の外食店があるか、どんな店か
910
- *** (競合がある場合)集客などかえって相乗効果を期待することはできないか
911
- @endmindmap
912
- ```
913
-
914
- ---
915
-
916
- ### 数学の考え方を援用する
917
-
918
- ```plantuml
919
- @startuml
920
- object "売り上げが低下した" as A
921
- object "売上を上げれるか" as B
922
-
923
- A -> B
924
- @enduml
925
- ```
926
-
927
- ---
928
-
929
- #### 足し算・引き算で考える
930
-
931
- ```plantuml
932
- @startmindmap
933
- title 足し算・引き算
934
-
935
- * 地域等で分ける
936
- ** 札幌営業所の売上を上げられるか
937
- ** 仙台営業所の売上を上げられるか
938
- ** 北関東営業所の売上を上げられるか
939
- ** 東京営業所の売上を上げられるか
940
- ** ...
941
- ** その他、売上を上げらる機会はないか
942
- *** 輸出
943
- *** OEM
944
- *** 他チャネル
945
-
946
- @endmindmap
947
- ```
948
-
949
- ---
950
-
951
- #### 掛け算で考える
952
-
953
- ```plantuml
954
- @startmindmap
955
- title 掛け算
956
-
957
-
958
- + x
959
- -- 店舗数
960
- --- 増やせるか
961
- ---- 交通量・ロケーションの特徴
962
- ---- 人口密度・地域需要
963
- ---- 基本エコノミクスの構造など
964
- ++ 1店舗あたりの売上
965
- +++ 客数を増やせるか
966
- ++++ キャンペーン・特売
967
- ++++ 広告・ちらし
968
- ++++ 店構え・その他
969
- +++ x
970
- +++ 客単価を増やせるか
971
- ++++ 品揃え
972
- ++++ レイアウト
973
- ++++ セット販売
974
- ++++ その他
975
-
976
- @endmindmap
977
- ```
978
-
979
- ---
980
-
981
- #### 要素・枠組みで考える
982
-
983
- ```plantuml
984
- @startmindmap
985
- title 要素・枠組み
986
-
987
- * 売上が低下した理由の検討
988
- ** 全国共通の要因はあるか
989
- *** 全国共通の製品・価格・マーケティング施策等の工夫
990
- ** 個店別の要因が大きいか
991
- *** 業績低下の大きい店への個別指導等
992
- ** 季節性の課題が大きいか
993
- *** 冬に売れる商品の開発(冬に低下なら)
994
- ** その他
995
-
996
- @endmindmap
997
- ```
998
- # クリティカルシンキング
999
-
1000
- > 重要な点の最後は、あなたが見聞きするものごとについての批判的な考え方です。
1001
- > Tip 10 見聞きしたものごとを批判的な目で分析すること
1002
- >
1003
- > > 達人プログラマー
1004
-
1005
- ```plantuml
1006
- @startmindmap
1007
-
1008
- * クリティカルシンキング
1009
- ** クリティカルシンキングとは
1010
- *** 批判的に読み、批判的に聞く
1011
- *** クリティカルシンキングとロジカルシンキングの違い
1012
- ** クリティカルシンキングの基本
1013
- *** クリティカルシンキングのポイント
1014
- *** クリティカルシンキングの手順
1015
- *** クリティカルシンキングのコツ
1016
- ** クリティカルシンキングの実践
1017
- *** 「もっともらしさ」
1018
- *** アーギュメントの欠陥
1019
- *** 最も強い反論
1020
- *** 智に働けば角が立つ情に棹させば流される
1021
- *** 説得の基本
1022
- ****_ 論理
1023
- ****_ 感情へのアピール
1024
- ****_ 信頼性
1025
- *** 説得するため5つのステップ
1026
- *** 批判と非難は違う
1027
-
1028
- @endmindmap
1029
- ```
1030
-
1031
- ---
1032
-
1033
- ## クリティカルシンキングとは
1034
-
1035
- ```plantuml
1036
- @startmindmap
1037
-
1038
- * クリティカルシンキング
1039
- ** クリティカルシンキングとは
1040
- *** 批判的に読み、批判的に聞く
1041
- *** クリティカルシンキングとロジカルシンキングの違い
1042
-
1043
- @endmindmap
1044
- ```
1045
-
1046
- ---
1047
-
1048
- ### 批判的に読み、批判的に聞く
1049
-
1050
- > 実生活の場において、読むとき、聞くときに行っている(行うべき)「批判的に読み、批判的に聞く」ための思考を、クリティカル・シンキングと言います。
1051
- > > 論理思考力を鍛える本 小野田博一
1052
-
1053
- > 「実生活の場で、論理が正しいのか、前提は正しいのか、の2点を考える」とは言い換えると、「アーギュメントを鵜呑みにせず、アーギュメントの正しさを自力で考える」ことです。
1054
- > > 論理思考力を鍛える本 小野田博一
1055
-
1056
- ---
1057
-
1058
- ### クリティカルシンキングとロジカルシンキングの違い
1059
-
1060
- > クリティカル・シンキングとロジカル・シンキングの違い
1061
- >
1062
- > 論理的に考えることと批判的に考えることは、基本的に同じで、ただ若干の違いは「クリティカル・シンキングの話題は日常生活のみで、ロジカル・シンキングのほうはそのような限定はない」くらいのものと言ってよいでしょう。
1063
- >
1064
- > — 論理的に考える方法 小野田博一(著)日本実業出版社
1065
-
1066
- ---
1067
-
1068
- ## クリティカルシンキングの基本
1069
-
1070
- ```plantuml
1071
- @startmindmap
1072
-
1073
- * クリティカルシンキング
1074
- ** クリティカルシンキングの基本
1075
- *** クリティカルシンキングのポイント
1076
- *** クリティカルシンキングの手順
1077
- *** クリティカルシンキングのコツ
1078
-
1079
- @endmindmap
1080
- ```
1081
-
1082
- ---
1083
-
1084
- ### クリティカルシンキングのポイント
1085
-
1086
- > なぜクリティカル・シンキングが必要なのかと言えば、それは、読み聞きした内容で「相手のいいように操られないため」「間違った判断を下さないため」です。
1087
- > > 論理思考力を鍛える本 小野田博一
1088
-
1089
- > クリティカル・シンキングのポイントは「むやみに信じないこと」です。つまり「信じるにたる根拠がないかぎり信じるな」です。
1090
- > > 論理思考力を鍛える本 小野田博一
1091
-
1092
- > 「自分自身の判断力を使って判断する」とは、「前提と結論のつながりの正しさや支えかたの強度」を自分自身で判断することで、具体的には、結論が正しく導き出されているか、しっかり支えられているか、および情報そのものの信頼性を考えることです。
1093
- > > 論理思考力を鍛える本 小野田博一
1094
-
1095
- ---
1096
-
1097
- ### クリティカルシンキングの手順
1098
-
1099
- ```plantuml
1100
- @startuml
1101
- start
1102
- :結論を見つけよ;
1103
- :支えている(つもりの)ものを見つけよ;
1104
- :支えているつもりのものの信頼性を判断せよ;
1105
- :支えているつもりのものが十分支えているかー支えている程度の十分さを調べよ;
1106
- if (隠れているアサンプションがある?) then (yes)
1107
- :アサンプションは正しい?;
1108
- endif
1109
- stop
1110
- @enduml
1111
- ```
1112
-
1113
- ---
1114
-
1115
- > このような「当然正しい」と考えられている事柄をー明言されていようといまいとー英語ではアサンプション(assumption)と言います。
1116
- >
1117
- > — 論理的に考える方法 小野田博一(著)日本実業出版社
1118
-
1119
- > 前提から結論を導く思考のことをリーズニング(reasoning)といいます。
1120
- >
1121
- > — 論理的に考える方法 小野田博一(著)日本実業出版社
1122
-
1123
- ```plantuml
1124
- @startuml
1125
-
1126
- title 論理の世界の用語
1127
-
1128
- abstract "statement" as A {
1129
- }
1130
-
1131
- abstract "argument" as B {
1132
- + 前提
1133
- + 結論
1134
- }
1135
-
1136
- abstract "logic" as C {
1137
- + reasoning()
1138
- + sound()
1139
- }
1140
-
1141
- interface "deductive_inference" as D {
1142
- + valid()
1143
- + invalid()
1144
- }
1145
-
1146
- interface "inductive_inference" as E {
1147
- + strong()
1148
- + weak()
1149
- }
1150
-
1151
- abstract "assumption" as F
1152
-
1153
- F -o B
1154
- A <|-- B
1155
- B <- C
1156
- C --|> D
1157
- C --|> E
1158
-
1159
- @enduml
1160
- ```
1161
-
1162
- ---
1163
-
1164
- ### クリティカルシンキングのコツ
1165
-
1166
- 1. 隠れているアサンプションが何かを考えよ
1167
- 1. リーズニングのフォーム(形式)を考えよ
1168
-
1169
- > 日常的には、多くの場合、発言が論理的か否かはアサンプションが正しいか否かにかかっています。
1170
- >
1171
- > — 論理的に考える方法 小野田博一(著)日本実業出版社
1172
-
1173
- ---
1174
-
1175
- ## クリティカルシンキングの実践
1176
-
1177
- ```plantuml
1178
- @startmindmap
1179
-
1180
- * クリティカルシンキング
1181
- ** クリティカルシンキングの実践
1182
- *** 「もっともらしさ」
1183
- *** アーギュメントの欠陥
1184
- *** 最も強い反論
1185
- *** 智に働けば角が立つ情に棹させば流される
1186
- *** 説得の基本
1187
- ****_ 論理
1188
- ****_ 感情へのアピール
1189
- ****_ 信頼性
1190
- *** 説得するため5つのステップ
1191
- *** 批判と非難は違う
1192
-
1193
- @endmindmap
1194
- ```
1195
-
1196
- ---
1197
-
1198
- ### 「もっともらしさ」
1199
-
1200
- > 実生活では、断言できないことがとてもたくさんあります。私たちが話したり書いたりする内容は、ほとんど断言できないことばかりです。そのため、「もっともらしさ」は実生活では大きな役割を果たす事になります。
1201
- > そして、クリティカル・シンキンキングは、「もっともらしさ」をあなた自身が検証する事なのです。
1202
- >
1203
- > — 論理的に考える方法 小野田博一(著)日本実業出版社
1204
-
1205
- #### 議論では、もっともらしさを高めるよう努力せよ
1206
-
1207
- > 人を納得させるのは「真実」ではなく「真実らしさ」(もっともらしさ)です。
1208
- >
1209
- > — 論理的に考える方法 小野田博一(著)日本実業出版社
1210
-
1211
- ---
1212
-
1213
- ### アーギュメントの欠陥
1214
-
1215
- - 早まった一般化
1216
- - 原因・結果の間違い
1217
- - 間違った類比
1218
- - 権威の間違った使用
1219
- - あいまいな表現
1220
- - 立証責任の転嫁
1221
- - 循環論法
1222
- - 聞き手・読み手の感情の利用
1223
- - 個人攻撃
1224
- - 矛盾
1225
- - 一般の意見の使用
1226
- - 統計の悪用(歪めた使用)
1227
-
1228
- ---
1229
-
1230
- ### もっとも強い反論
1231
-
1232
- > もっとも強い反論は、もとの議論のアサンプションをアタックする議論です。
1233
- >
1234
- > — 論理的に考える方法 小野田博一(著)日本実業出版社
1235
-
1236
- ---
1237
-
1238
- ### 批判と非難は違う
1239
-
1240
- > 人を非難したり、煽ったりするのは、後々、自分に返ってくるのでやめましょう。面と向かって言わないようなことを、オンラインで表現してはいけません。
1241
- >
1242
- > — 達人プログラマー 熟達に向けたあなたの旅(第2版)
1243
-
1244
- ---
1245
-
1246
- ### 智に働けば角が立つ情に棹させば流される
1247
-
1248
- ---
1249
-
1250
- ### 説得の基本
1251
-
1252
- > 説得に必要な要素は三つあります。それは
1253
- > 1. 論理
1254
- > 2. 感情へのアピール
1255
- > 3. 信頼性
1256
- >
1257
- > の三つです。
1258
- > 説得をする際に重要となるのは、「説得は一方的に行うものではない。つまり、説得ではコミュニケーションに双方向性がなけらならない」という点です。
1259
- >
1260
- > 説得とは、人に影響を与えるという目的を持ったコミュニケーションのプロセス」と言うことができます。
1261
- >
1262
- > 論理的に説得する方法
1263
-
1264
- ---
1265
-
1266
- ### 説得するための5つのステップ
1267
-
1268
- - ステップ1 目標を設定する
1269
- - ステップ2 聞き手を分析する
1270
- - ステップ3 あなたの信頼性を高める
1271
- - ステップ4 説得のメッセージをつくる
1272
- - ステップ5 メッセージを聞き手に合わせる
1273
-
1274
- ---
1275
-
1276
- ### 説得力のある主張をするための究極のコツ
1277
-
1278
- - 「私」を登場させるな。「あなた」が主役。
1279
- - 「説得力のコンテスト」と考えよ。
1280
- - 審査員であろうとするな。
1281
- - 司会者であろうとするな。
1282
- - 批判せよ。非難するな。
1283
- - 肝心なことを述べよ。余分なことを述べるな。
1284
- - 力むな。
1285
- - 十分に説明せよ。
1286
- - 感想を述べるな。
1287
- # まとめ
1288
-
1289
- ```plantuml
1290
- @startuml
1291
-
1292
- object "結論" as A {
1293
- 論理的思考の実践である
1294
- ロジカル・クリティカルシンキングは
1295
- 実践プログラマの基本スキルである
1296
- }
1297
- object "小前提" as B {
1298
- 論理的思考は習得可能なスキルであり
1299
- 論理的思考は知識を扱うプログラマにとって
1300
- キャリアの始まりから終わりまで
1301
- あらゆる局面で役に立つ。
1302
- }
1303
- object "大前提" as C {
1304
- 論理的思考を身に着けることで
1305
- 「正しい結論を導くことができる」こと。
1306
- 「正しいコミュニケーションができること」こと。
1307
- 「発想を助け、課題の検討・解決に役立つ」こと。
1308
- ができるようになる。
1309
- }
1310
- A <-- B
1311
- C -> B
1312
-
1313
- object "個別論" as B_1 {
1314
- 達人プログラマーが取り扱う
1315
- 素材は木でも鉄でもありません
1316
- --- 知識です。
1317
- }
1318
- object "個別論" as B_2 {
1319
- 重要な点の最後は、
1320
- あなたが見聞きするものごとについての
1321
- 批判的な考え方です。
1322
- }
1323
- object "個別論" as B_3 {
1324
- 1つのメッセージ(結論)は、
1325
- 必ず2つ以上のサブ・メッセージ(要因)
1326
- でサポートされてるため、
1327
- 論理は、底辺に行くほど
1328
- 広いピラミッド状に組み上げられる。
1329
- }
1330
- object "個別論" as B_4 {
1331
- Deduction(演繹)は、前提となる
1332
- 正しいメッセージ(一般論)
1333
- がまずあり、それを個別の事象に適用して、
1334
- 正しい主張・答を引き出す方法で
1335
- 「一般論」から「個別論」へという
1336
- 構造になっている
1337
- }
1338
- object "個別論" as B_5 {
1339
- Induction(帰納)は、たくさんの
1340
- 個別の事象や主張を集めて、
1341
- より一般的に通用する共通の
1342
- メッセージを導き出す方法で
1343
- 「個別論」から「一般論」へ
1344
- という構造になっている
1345
- }
1346
-
1347
- B <-- B_1
1348
- B <-- B_2
1349
- B <-- B_3
1350
- B <-- B_4
1351
- B <-- B_5
1352
-
1353
- @enduml
1354
- ```
1355
- # 参考文献
1356
-
1357
- - [わかる、使える「論理思考」の本 日本一わかりやすい授業、開講!](https://www.amazon.co.jp/%E3%82%8F%E3%81%8B%E3%82%8B%E3%80%81%E4%BD%BF%E3%81%88%E3%82%8B%E3%80%8C%E8%AB%96%E7%90%86%E6%80%9D%E8%80%83%E3%80%8D%E3%81%AE%E6%9C%AC-%E6%97%A5%E6%9C%AC%E4%B8%80%E3%82%8F%E3%81%8B%E3%82%8A%E3%82%84%E3%81%99%E3%81%84%E6%8E%88%E6%A5%AD%E3%80%81%E9%96%8B%E8%AC%9B%EF%BC%81-%E5%BE%8C-%E6%AD%A3%E6%AD%A6-ebook/dp/B08R37L3YW/)
1358
-
1359
- - [経営参謀が明かす論理思考と発想の技術](https://www.amazon.co.jp/%E7%B5%8C%E5%96%B6%E5%8F%82%E8%AC%80%E3%81%8C%E6%98%8E%E3%81%8B%E3%81%99%E8%AB%96%E7%90%86%E6%80%9D%E8%80%83%E3%81%A8%E7%99%BA%E6%83%B3%E3%81%AE%E6%8A%80%E8%A1%93-%E7%9F%A5%E5%8A%9B%E3%82%A2%E3%83%83%E3%83%97%E8%AC%9B%E5%BA%A7-%E5%BE%8C-%E6%AD%A3%E6%AD%A6/dp/4833416646/)
1360
-
1361
- - [論理的に考える方法: 判断力がアップし本質への筋道が読める](https://www.amazon.co.jp/%E8%AB%96%E7%90%86%E7%9A%84%E3%81%AB%E8%80%83%E3%81%88%E3%82%8B%E6%96%B9%E6%B3%95%E2%80%95%E5%88%A4%E6%96%AD%E5%8A%9B%E3%81%8C%E3%82%A2%E3%83%83%E3%83%97%E3%81%97%E6%9C%AC%E8%B3%AA%E3%81%B8%E3%81%AE%E7%AD%8B%E9%81%93%E3%81%8C%E8%AA%AD%E3%82%81%E3%82%8B-%E5%B0%8F%E9%87%8E%E7%94%B0-%E5%8D%9A%E4%B8%80/dp/4534028075)
1362
-
1363
- - [論理思考力を鍛える本: 問題演習](https://www.amazon.co.jp/%E8%AB%96%E7%90%86%E6%80%9D%E8%80%83%E5%8A%9B%E3%82%92%E9%8D%9B%E3%81%88%E3%82%8B%E6%9C%AC%E2%80%95%E5%95%8F%E9%A1%8C%E6%BC%94%E7%BF%92-%E5%B0%8F%E9%87%8E%E7%94%B0-%E5%8D%9A%E4%B8%80/dp/4534034504)
1364
-
1365
- - [論理的に説得する方法: 納得させてYESを引き出す](https://www.amazon.co.jp/%E8%AB%96%E7%90%86%E7%9A%84%E3%81%AB%E8%AA%AC%E5%BE%97%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95%E2%80%95%E7%B4%8D%E5%BE%97%E3%81%95%E3%81%9B%E3%81%A6YES%E3%82%92%E5%BC%95%E3%81%8D%E5%87%BA%E3%81%99-%E5%B0%8F%E9%87%8E%E7%94%B0-%E5%8D%9A%E4%B8%80/dp/4534029934)
1366
-
1367
- - [達人プログラマー(第2版): 熟達に向けたあなたの旅](https://www.amazon.co.jp/%E9%81%94%E4%BA%BA%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9E%E3%83%BC-%E7%AC%AC2%E7%89%88-%E7%86%9F%E9%81%94%E3%81%AB%E5%90%91%E3%81%91%E3%81%9F%E3%81%82%E3%81%AA%E3%81%9F%E3%81%AE%E6%97%85-David-Thomas/dp/4274226298/)
1
+ # ロジカルシンキング
2
+
3
+ > 達人プログラマーが取り扱う素材は木でも鉄でもありません --- 知識です。
4
+ >
5
+ > > — 達人プログラマー 熟達に向けたあなたの旅(第2版)
6
+
7
+ ```plantuml
8
+ @startmindmap
9
+
10
+ * ロジカルシンキング
11
+ ** ロジカルシンキングとは
12
+ *** 論理と「論理的思考」
13
+ *** 論理の世界の用語
14
+ ****_ アーギュメント
15
+ ****_ インファランス
16
+ *****_ ディダクティブインファランス
17
+ ******_ valid
18
+ ******_ invalid
19
+ *****_ インダクティブインファランス
20
+ ******_ strong
21
+ ******_ weak
22
+ ****_ リーズニング
23
+ *****_ sound
24
+ **** 日本語との対応
25
+ **** 必要条件・十分条件
26
+ *** 「ロジカル(論理的)」とは何か
27
+ *** なぜロジカルシンキングが必要か
28
+ ** ロジカルシンキングの基本
29
+ *** 論理の基本
30
+ *** 論理の基本構造
31
+ **** 演繹
32
+ **** 帰納
33
+ ** ロジカルシンキングの方法
34
+ *** 演繹
35
+ **** 前提を疑ってかかる
36
+ **** 仮説をおいて考える
37
+ *** 帰納
38
+ **** 同質のものを帰納して共通項を見いだす
39
+ **** 異質のものを組合わせて帰納する
40
+ **** モレな重複なく全てを網羅する
41
+ ***** 足し算・引き算で考える
42
+ ***** 掛け算で考える
43
+ ***** 軸で考える
44
+ **** 枠組みで考える
45
+ *** 問題解決
46
+ **** 規準を作って比較する
47
+ **** 枠組みを考える
48
+ **** 表を活用する
49
+ **** イッシュー・ツリーを展開する
50
+ ***** イッシューとは
51
+ ***** イッシュー・ツリーの考え方
52
+ **** 数学の考え方を援用する
53
+
54
+ @endmindmap
55
+ ```
56
+
57
+ ---
58
+
59
+ ## ロジカルシンキングとは
60
+
61
+ ```plantuml
62
+ @startmindmap
63
+
64
+ * ロジカルシンキング
65
+ ** ロジカルシンキングとは
66
+ *** 論理と「論理的思考」
67
+ *** 論理の世界の用語
68
+ ****_ アーギュメント
69
+ ****_ インファランス
70
+ *****_ ディダクティブインファランス
71
+ ******_ valid
72
+ ******_ invalid
73
+ *****_ インダクティブインファランス
74
+ ******_ strong
75
+ ******_ weak
76
+ ****_ リーズニング
77
+ *****_ sound
78
+ **** 日本語との対応
79
+ **** 必要条件・十分条件
80
+ *** 「ロジカル(論理的)」とは何か
81
+ *** なぜロジカルシンキングが必要か
82
+
83
+ @endmindmap
84
+ ```
85
+
86
+ ### 論理と「論理的思考」
87
+
88
+ > 論理的な思考とは、秩序だった思考です。秩序立てて考えねばなりません。考えを示す際にも、秩序だっていなければなりません。思いつくままに書き並べるのではだめです。「理詰めに考えている」ということを示すためには、帰納と同じで、根拠に量がなければなりません。いろいろな角度からの考察も必要です。いろいろな角度から、結論を支えるのです。「いろいろな角度から」の言葉で誤解して「あれこれ余分なものを混ぜる」のはだめです。
89
+ >
90
+ > — 論理的に考える方法 小野田博一(著)日本実業出版社
91
+
92
+ > 高い論理性を身につけるとは、「結論」と「結論を支えるもの」の関係について正確な理解を獲得することなのです。
93
+ >
94
+ > > 論理思考力を鍛える本 小野田博一
95
+
96
+ > 高い論理性とは、結論と前提との関係の理解度が高く、理解している通りにそれを実践の場で使えることなのです。
97
+ >
98
+ > > 論理思考力を鍛える本 小野田博一
99
+
100
+ ---
101
+
102
+ ### 論理の世界の用語
103
+
104
+ 結論と前提の両方を含んだスティトメント(statement)をアーギュメント(argument)といいます。
105
+ 「ロジック」(論理)は、結論と前提を繋ぐ無形のものです。この無形の部分はインファランス(inference)ともいいます。インファランスには2種類のものがあります。ディダクティブ・インファランス(deductive inference)とインダクティブ・インファランス(inductive inference)です。
106
+
107
+ 前提から結論を導く思考のことをリーズニング(reasoning)といいます。
108
+
109
+ ディダクティブ・インファランスの評価は、valid/invalidで与えられます。validは「論理が正しい」の意味で、invalidは「論理が正しくない」の意味です。
110
+
111
+ インダクティブ・インファランスの評価は、strong/weakで与えられます。インダクティブ・インファランスは「たぶんどうだろうか」の推論なので、前提が正しくとも、得られた結論が100%確実に正しいと断言できません。
112
+
113
+ 論理が正しいだけでなく、前提も(真実か否かの点から)正しい場合、評価はsoundで与えられます。
114
+
115
+ ```plantuml
116
+ @startuml
117
+
118
+ title 論理の世界の用語
119
+
120
+ abstract "statement" as A {
121
+ }
122
+
123
+ abstract "argument" as B {
124
+ + 前提
125
+ + 結論
126
+ }
127
+
128
+ abstract "logic" as C {
129
+ + reasoning()
130
+ + sound()
131
+ }
132
+
133
+ interface "deductive_inference" as D {
134
+ + valid()
135
+ + invalid()
136
+ }
137
+
138
+ interface "inductive_inference" as E {
139
+ + strong()
140
+ + weak()
141
+ }
142
+
143
+ A <|-- B
144
+ B <- C
145
+ C --|> D
146
+ C --|> E
147
+
148
+ @enduml
149
+ ```
150
+
151
+ ---
152
+
153
+ #### 日本語との対応
154
+
155
+ 1. カモノハシは哺乳類である。したがって、カモノハシは、哺乳類か鳥類である。
156
+ 2. 私がこれまでに食べたレモンは、どれもすっぱかった。だからレモンはどれもすっぱいだろう。
157
+ 3. メガネをかけている高校生の女の子のうち、90%のメガネは黒縁である。紀子は高校生で、メガネをかけている。だから、それはたぶん黒縁だろう。
158
+ 4. 春にピンクのスカートが流行した年の夏に、白い水着が流行した。ことしの春はピンクのTシャツが流行しているから、夏には白い水着が流行するだろう。
159
+
160
+ | 番号 | タイプ | 日本語での呼称 |
161
+ |:---:|:---:|:---:|
162
+ | 1 : deductive inference | 演繹 | 演繹 |
163
+ | 2 : inductive inference | 一般化 | 帰納 |
164
+ | 3 : inductive inference | 統計的帰納 | 帰納 |
165
+ | 4 : inductive inference | 類推 | 帰納 |
166
+
167
+ ---
168
+
169
+ ### 必要条件・十分条件
170
+
171
+ #### 必要条件
172
+
173
+ AであるためにはBである必要がある(たとえば、「ペンギンであるためには、鳥である必要がある」)
174
+ BであることはAであることの必要条件である(たとえば「鳥であることはペンギンであることの必要条件である」)
175
+
176
+ ```plantuml
177
+ @startuml
178
+ component {
179
+ object B
180
+ component {
181
+ object A
182
+ }
183
+ }
184
+ B --> A : 必要条件
185
+ @enduml
186
+ ```
187
+
188
+ ---
189
+
190
+ #### 十分条件
191
+
192
+ BであるためにはAであれば十分である(たとえば、「鳥であるためには、ペンギンであれば十分である」)
193
+ AであることはBであることの十分条件である(たとえば「ペンギンであることは鳥であることの十分条件である」)
194
+
195
+ ```plantuml
196
+ @startuml
197
+ component {
198
+ object B
199
+ component {
200
+ object A
201
+ }
202
+ }
203
+ B <-- A : 十分条件
204
+ @enduml
205
+ ```
206
+
207
+ ---
208
+
209
+ ## 「ロジカル(論理的)」とは何か
210
+
211
+ > 「実生活の議論(のうち演繹)では、validであるだけでは十分ではなく、soundでなければならない」ということで、つまり、「前提は真実でなければならない」ということです。
212
+ > > 論理思考力を鍛える本 小野田博一
213
+
214
+ ---
215
+
216
+ ## なぜロジカルシンキングが必要か
217
+
218
+ > なぜ論理思考が必要なのか
219
+ > 1. 情緒に流されやすい判断や行動を防ぎ、自分の頭で考えて、「正しい結論を導く」ことができること。
220
+ > 1. 文化の同一性に頼らず、どの民族にも通用する、「正しいコミュニケーションができること」こと。
221
+ > 1. 「発想を助け、課題の検討・解決に役立つ」こと。
222
+ >
223
+ > > わかる、使える「論理思考」の本
224
+ # ロジカルシンキングの基本
225
+
226
+ ```plantuml
227
+ @startmindmap
228
+
229
+ * ロジカルシンキング
230
+ ** ロジカルシンキングの基本
231
+ *** 論理の基本
232
+ *** 論理の基本構造
233
+ **** 演繹
234
+ **** 帰納
235
+
236
+ @endmindmap
237
+ ```
238
+
239
+ ## 論理の基本
240
+
241
+ > 1つのメッセージ(結論)は、必ず2つ以上のサブ・メッセージ(要因)でサポートされてるため、論理は、底辺に行くほど広いピラミッド状に組み上げられる。
242
+ >
243
+ > わかる、使える「論理思考」の本
244
+
245
+ 1. 論理の基本単位は、単語ではなく主語・述語で組み上げるメッセージである。
246
+ 1. メッセージを組み上げる基本構造には「演繹」と「帰納」という2つの方法がある。
247
+ 1. 上位のメッセージと、それをサポートする下位のサブ・メッセージは、結論と要因、あるいは総合と部分の関係にある(メッセージの上下関係)
248
+ 1. 上位のメッセージを支える下位のメッセージは、それらを総合すると、モレや重複がないこと(水平関係)
249
+ 1. 全体を支える最下部のメッセージは、事実、またはそれに近い疑いようのないメッセージ(蓋然性の高いメッセージ)であること
250
+
251
+ ```plantuml
252
+ @startuml
253
+
254
+ title 論理の基本
255
+
256
+ abstract "メッセージ" as A {
257
+ + 主語
258
+ + 述語
259
+ }
260
+
261
+ interface "論理" as B {
262
+ + 演繹()
263
+ + 帰納()
264
+ }
265
+
266
+ class "結論" as C {
267
+ }
268
+
269
+ class "要因" as D {
270
+ }
271
+
272
+ B <|-- A
273
+ A <|- C
274
+ A <|- D
275
+ C "1" *-- "*" D
276
+ D *- D
277
+
278
+ @enduml
279
+ ```
280
+
281
+ ---
282
+
283
+ ## 論理の基本構造
284
+
285
+ ### 演繹
286
+
287
+ Deduction(演繹)は、前提となる正しいメッセージ(一般論)がまずあり、それを個別の事象に適用して、正しい主張・答を引き出す方法で「一般論」から「個別論」へという構造になっている
288
+
289
+ ```plantuml
290
+ @startuml
291
+
292
+ title 論理の基本構造(演繹)
293
+
294
+ interface "論理" as A
295
+
296
+ class "一般論" as B
297
+
298
+ class "個別論" as C
299
+
300
+ A <|-- B
301
+ A <|-- C
302
+ B -> C : 演繹
303
+
304
+ @enduml
305
+ ```
306
+
307
+ ### 帰納
308
+
309
+ Induction(帰納)は、たくさんの個別の事象や主張を集めて、より一般的に通用する共通のメッセージを導き出す方法で「個別論」から「一般論」へという構造になっている
310
+
311
+ ```plantuml
312
+ @startuml
313
+
314
+ title 論理の基本構造(帰納)
315
+
316
+ interface "論理" as A
317
+
318
+ class "一般論" as B
319
+
320
+ class "個別論" as C
321
+
322
+ class "事象" as D
323
+
324
+ class "事実" as E
325
+
326
+ A <|-- B
327
+ A <|-- C
328
+ C -> B : 帰納
329
+
330
+ C "1" *-- "*" D
331
+
332
+ C "1" *-- "*" E
333
+
334
+ @enduml
335
+ ```
336
+ # ロジカルシンキングの方法
337
+
338
+ ```plantuml
339
+ @startmindmap
340
+
341
+ * ロジカルシンキング
342
+ ** ロジカルシンキングの方法
343
+ *** 演繹
344
+ **** 前提を疑ってかかる
345
+ **** 仮説をおいて考える
346
+ *** 帰納
347
+ **** 同質のものを帰納して共通項を見いだす
348
+ **** 異質のものを組合わせて帰納する
349
+ **** モレな重複なく全てを網羅する
350
+ ***** 足し算・引き算で考える
351
+ ***** 掛け算で考える
352
+ ***** 軸で考える
353
+ **** 枠組みで考える
354
+ *** 問題解決
355
+ **** 規準を作って比較する
356
+ **** 枠組みを考える
357
+ **** 表を活用する
358
+ **** イッシュー・ツリーを展開する
359
+ ***** イッシューとは
360
+ ***** イッシュー・ツリーの考え方
361
+ **** 数学の考え方を援用する
362
+
363
+ @endmindmap
364
+ ```
365
+
366
+ ---
367
+
368
+ ## 演繹
369
+
370
+ ### 前提を疑ってかかる
371
+
372
+ ```plantuml
373
+ @startuml
374
+
375
+ title 論理の基本構造(演繹)
376
+
377
+ interface "論理" as A
378
+
379
+ class "一般論" as B
380
+
381
+ class "個別論" as C
382
+
383
+ interface "前提" as D {
384
+ }
385
+
386
+ class "真理" as E
387
+
388
+ class "取り決め" as F
389
+
390
+ class "その他" as G
391
+
392
+
393
+ D <- A
394
+ D <|-- E
395
+ D <|-- F
396
+ D <|-- G
397
+ A <|-- B
398
+ A <|-- C
399
+ B -> C : 演繹
400
+
401
+ @enduml
402
+ ```
403
+
404
+ ---
405
+
406
+ ### 仮説をおいて考える
407
+
408
+ ```plantuml
409
+ @startuml
410
+
411
+ title 論理の基本構造(演繹)
412
+
413
+ interface "論理" as A
414
+
415
+ class "一般論" as B
416
+
417
+ class "個別論" as C
418
+
419
+ interface "前提" as D
420
+
421
+ interface "仮説" as E
422
+
423
+ class "仮説A" as F
424
+
425
+ class "仮説B" as G
426
+
427
+ class "仮説C" as H
428
+
429
+ D <- A
430
+ E <- D
431
+ E <|-- F
432
+ E <|-- G
433
+ E <|-- H
434
+ A <|-- B
435
+ A <|-- C
436
+ B -> C : 演繹
437
+
438
+ @enduml
439
+ ```
440
+
441
+ ---
442
+
443
+ ## 帰納
444
+
445
+ ### 同質のものを帰納して共通項を見いだす
446
+
447
+ ```plantuml
448
+ @startuml
449
+
450
+ title 論理の基本構造(帰納)
451
+
452
+ interface "論理" as A
453
+
454
+ class "一般論" as B
455
+
456
+ class "個別論" as C {
457
+ 共通項を見出して帰納する()
458
+ }
459
+
460
+ class "事象" as D
461
+
462
+ class "事実" as E
463
+
464
+ A <|-- B
465
+ A <|-- C
466
+ C -> B : 帰納
467
+
468
+ C "1" *-- "*" D
469
+
470
+ C "1" *-- "*" E
471
+
472
+ @enduml
473
+ ```
474
+
475
+ ---
476
+
477
+ ### 異質のものを組合わせて帰納する
478
+
479
+ ```plantuml
480
+ @startuml
481
+
482
+ title 論理の基本構造(帰納)
483
+
484
+ interface "論理" as A
485
+
486
+ class "一般論" as B
487
+
488
+ class "個別論" as C {
489
+ 異質ものを組み合わせて帰納する()
490
+ }
491
+
492
+ class "事象" as D
493
+
494
+ class "事実" as E
495
+
496
+ A <|-- B
497
+ A <|-- C
498
+ C -> B : 帰納
499
+
500
+ C "1" *-- "*" D
501
+
502
+ C "1" *-- "*" E
503
+
504
+ @enduml
505
+ ```
506
+
507
+ ---
508
+
509
+ ### モレなく重複なく全てを網羅する
510
+
511
+ ```plantuml
512
+ @startuml
513
+
514
+ title 論理の基本構造(帰納)
515
+
516
+ interface "論理" as A
517
+
518
+ class "一般論" as B
519
+
520
+ class "個別論" as C {
521
+ + 足し算・引き算で考える()
522
+ + 掛け算で考える()
523
+ + 軸で考える()
524
+ + 枠組みを工夫する()
525
+ }
526
+
527
+ class "事象" as D
528
+
529
+ class "事実" as E
530
+
531
+ class "その他" as F
532
+
533
+ A <|-- B
534
+ A <|-- C
535
+ C -> B : 帰納
536
+
537
+ C "1" *-- "*" D
538
+ C "1" *-- "*" E
539
+ C "0..1" o-- "*" F
540
+
541
+ @enduml
542
+ ```
543
+
544
+ ---
545
+
546
+ #### 足し算・引き算で考える
547
+
548
+ ```plantuml
549
+ @startmindmap
550
+ title 足し算・引き算で考える
551
+
552
+ * 売上を上げたい
553
+ ** A営業所
554
+ ** +
555
+ ** B営業所
556
+ ** +
557
+ ** C営業所
558
+ ** +
559
+ ** ...
560
+ ** +
561
+ ** Z営業所
562
+ ** +
563
+ ** その他の売上
564
+ *** OEM
565
+ *** +
566
+ *** 輸出
567
+ *** +
568
+ *** その他市場機会
569
+ @endmindmap
570
+ ```
571
+
572
+ $$可能な全売上機会 - 現行の各営業所の売上の合計 = その他$$
573
+
574
+ ---
575
+
576
+ #### 掛け算で考える
577
+
578
+ ```plantuml
579
+ @startmindmap
580
+ title 掛け算で考える
581
+
582
+ * 売上を上げたい
583
+ ** 店舗数を増やす
584
+ ** x
585
+ ** 1店舗あたりの売上を増やす
586
+ @endmindmap
587
+ ```
588
+
589
+ $$店舗数 \times 1店舗あたりの売上 = 全体の売上$$
590
+
591
+ ---
592
+
593
+ #### 軸で考える
594
+
595
+ ```plantuml
596
+ @startmindmap
597
+ title 軸で考える
598
+
599
+ * SWOT
600
+ -- 強み
601
+ -- 弱み
602
+ -- 機会
603
+ -- 脅威
604
+ ** 弱みを克服し脅威を回避する
605
+ ** 機会を活用し弱みを克服する
606
+ ** 機会を活用し強みを伸ばす
607
+ ** 強みを活用し脅威を克服する
608
+
609
+ @endmindmap
610
+ ```
611
+
612
+ ---
613
+
614
+ ### 枠組みで考える
615
+
616
+ ```plantuml
617
+ @startuml
618
+
619
+ title 論理の基本構造(帰納)
620
+
621
+ interface "論理" as A
622
+
623
+ class "一般論" as B
624
+
625
+ class "個別論" as C {
626
+ + 枠組みで考える()
627
+ }
628
+
629
+ class "事象" as D
630
+
631
+ class "事実" as E
632
+
633
+ abstract "枠組み" as F
634
+
635
+ class "3C" as G
636
+
637
+ class "SWOT" as H
638
+
639
+ A <|-- B
640
+ A <|-- C
641
+ C -> B : 帰納
642
+
643
+ C "1" *-- "*" D
644
+
645
+ C "1" *-- "*" E
646
+
647
+ F <- C
648
+ F <|-- G
649
+ F <|-- H
650
+
651
+ @enduml
652
+ ```
653
+
654
+ ---
655
+
656
+ ## 問題解決
657
+
658
+ ### 規準を作って比較する
659
+
660
+ ```plantuml
661
+ @startuml
662
+ object "結論(意思決定)" as A {
663
+ ゆえに私はAのリンゴを選択する
664
+ }
665
+ object "小前提(現状へのあてはめ)" as B {
666
+ Aのリンゴが、Bのりんごより
667
+ 量の基準に適合する程度が高い
668
+ (総合、一般論)
669
+ }
670
+ object "大前提(私にとっての選択基準)" as C {
671
+ 今の私の選択基準としては
672
+ 量が質より重要である
673
+ }
674
+ A <-- B
675
+ C -> B
676
+
677
+ object "個別論" as B_1 {
678
+ Aのリンゴは色つやが
679
+ よくないが
680
+ 大きい
681
+ }
682
+ object "個別論" as B_2 {
683
+ Bのリンゴは
684
+ 色つやは
685
+ よいが
686
+ 小さい
687
+ }
688
+
689
+ B <-- B_1
690
+ B <-- B_2
691
+
692
+ object "小前提(現状)" as C_2 {
693
+ 現状、私は腹ペコでたまらない
694
+ }
695
+ object "大前提(規準の存在)" as C_1 {
696
+ 一般にリンゴを
697
+ 選ぶ規準としては、
698
+ 量(大きさ・重さ)
699
+ と質(味・色・におい・形)
700
+ の両面が考えられる
701
+ }
702
+ C <-- C_2
703
+ C_1 -> C_2
704
+ @enduml
705
+ ```
706
+
707
+ ---
708
+
709
+ ### 枠組みを考える
710
+
711
+ ```plantuml
712
+ @startuml
713
+ start
714
+ :選択の規準要件(大きな枠組み)を考える;
715
+ :具体的な判断の規準を考える;
716
+ :考え方・調べ方を列挙する;
717
+ stop
718
+ @enduml
719
+ ```
720
+
721
+ ---
722
+
723
+ ```plantuml
724
+ @startmindmap
725
+ title 志望校を決める枠組み
726
+
727
+ * 志望校を決めたい
728
+ ** 行けるか
729
+ *** 試験に受かるか
730
+ **** 偏差値
731
+ **** 科目の数
732
+ **** 面接の有無
733
+ *** 通えるか
734
+ **** 通学時間
735
+ **** 手段(電車・自転車など)
736
+ *** お金は払えるか
737
+ **** 経済力
738
+ ** 大学受験に有利な勉強ができるか
739
+ *** 実績
740
+ **** どの大学に何人入ったか
741
+ *** 先生の指導の内容
742
+ **** 先生の評判
743
+ *** 設備やカリキュラム
744
+ **** 設備の新旧
745
+ **** カリキュラムの種類
746
+ *** 強い分野、弱い分野はあるか
747
+ **** 理系に強いか
748
+ **** 文系に強いか
749
+ **** 英語に力を入れているか
750
+ ** 高校生活を楽しめるか
751
+ *** 同じ中学の友人がたくさん行くか
752
+ **** 友人に聞く
753
+ **** 先輩の様子を見る
754
+ *** 部活は盛んか
755
+ **** 学園祭で見る
756
+ **** 先輩に聞く
757
+ *** サッカー部はあるか
758
+ *** 親しい先輩か知人がいるか
759
+ **** 事実を見る
760
+ *** 共学かどうか
761
+ **** 事実を見る
762
+ *** 校風や雰囲気が自分と会うか
763
+ **** 学園祭で見る
764
+ **** 先輩に聞く
765
+ **** 先生に聞く
766
+
767
+ @endmindmap
768
+ ```
769
+
770
+ ---
771
+
772
+ ### 表を活用する
773
+
774
+ | 規準 | 学校A | 学校B | 学校C |
775
+ |:---:|:---:|:---:|:---:|
776
+ | 通学時間 | 30分 | 45分 | 1時間 |
777
+ | 手段 | 電車 | 自転車 | 徒歩 |
778
+ | 経済力 | 可能 | 可能 | 難しい |
779
+ | 実績 | 〇 | △ | × |
780
+ | 先生の評判 | 良い | 普通 | 悪い |
781
+ | 設備の新旧 | 新しい | 古い | 新しい |
782
+ | カリキュラムの種類 | 理系 | 文系 | 総合 |
783
+ | 強い分野 | 理系 | 文系 | 英語 |
784
+ | 高校生活 | 楽しい | 普通 | 退屈 |
785
+ | 部活 | 盛ん | 普通 | あまりない |
786
+ | サッカー部 | あり | なし | あり |
787
+ | 共学 | あり | なし | あり |
788
+ | 校風 | 自由 | 厳格 | 普通 |
789
+ | 総合評価 | ◎ | △ | × |
790
+
791
+ ---
792
+
793
+ ### イッシュー・ツリーを展開する
794
+
795
+ #### イッシューとは
796
+
797
+ > 「1つの課題をめぐって、異なる立場から意見が対立する点」のことじゃ。
798
+ >
799
+ > > わかる。、使える「論理思考」の本 後正武
800
+
801
+ > イッシューとはイエスかノーか、なすべきかなさざるべきか、の意見が対立する政治上の問題点のことえある。
802
+ >
803
+ > > 論理的思考と発想の技術
804
+
805
+ > イッシューということばは「対立」に力点をおくよりも、「解決」に力点をおいて用いられ、その解決のための筋道を考えることが、まさにコンサルタントの日常業務となっている。
806
+ >
807
+ > > 論理的思考と発想の技術
808
+
809
+ ---
810
+
811
+ #### イッシュー・ツリーの考え方
812
+
813
+ > 実は、イッシューは「ロジックの動的展開」であって、構造上の本質はロジックと全く同じものである。
814
+ > ただし、ロジックは「あるメッセージ(命題)」を正しく主張するために、最下部の事実からピラミッドの頂点へと積み上げる構造になっているのに対して、イッシューを追求する過程は、逆に争点からはじめて、それを解決するためのより具体的な疑問へと、サブ・イッシューに分解し、ついに事実に突き当たって解決をみるところに違いがある。
815
+ > > 論理的思考と発想の技術
816
+
817
+ ```plantuml
818
+ @startuml
819
+
820
+ title ロジック(ボトムアップ)
821
+
822
+ class "一般論" as A
823
+
824
+ class "個別論" as B
825
+
826
+ class "事象" as C
827
+
828
+ class "事実" as D
829
+
830
+ B -> A : 帰納
831
+
832
+ B "1" *-- "*" C
833
+
834
+ B "1" *-- "*" D
835
+
836
+ class "個別論" as E
837
+
838
+ E <-- A : 演繹
839
+
840
+ class "一般論" as F
841
+
842
+ E -> F : 帰納
843
+
844
+ @enduml
845
+ ```
846
+
847
+ ```plantuml
848
+ @startuml
849
+
850
+ title イッシュー(トップダウン)
851
+
852
+ class "一般論" as A
853
+
854
+ class "個別論" as B
855
+
856
+ class "事象" as C
857
+
858
+ class "事実" as D
859
+
860
+ A --> B : 演繹
861
+
862
+ B "1" *-- "*" C
863
+
864
+ B "1" *-- "*" D
865
+
866
+ class "一般論" as E
867
+
868
+ B -> E : 帰納
869
+
870
+ class "個別論" as F
871
+
872
+ class "事実" as G
873
+
874
+ E --> F : 演繹
875
+
876
+ F "1" *-- "*" G
877
+
878
+ @enduml
879
+ ```
880
+
881
+ ---
882
+
883
+ - イッシュー・ツリーはロジックの動的展開であり、 MECE、抽象レベル、事実のサポート等の諸要件は共通である。
884
+ - イッシュー・ツリーは、未解決の課題(争点)を合理的に解明し、正しい結論を導くための枠組みであり、最後に事実を求めて初めて結果に結びつく。
885
+ - プロジェクトチームを効果的に運用するためには、イッシュー・ツリーが不可欠である。
886
+ - イッシュー・ツリーの展開はいろいろあり、巧拙がある。訓練して身につけるほかはない。
887
+ - 頭で考えるより、直接観察したりデータを手に取る事によって、より効果的なイッシューの展開が期待できる。
888
+
889
+ ```plantuml
890
+ @startmindmap
891
+ title ラーメン店を開くかどうかのイッシュー・ツリー
892
+
893
+ * ラーメン店を開くべきか否か
894
+ ** ラーメン店を開いて運営する能力があるか否か(company)
895
+ *** 人がいるか
896
+ *** お金があるか
897
+ *** ラーメンをつくる技術をもっているか
898
+ *** 材料や設備は手に入るか
899
+ *** ...
900
+ *** その他ラーメン店を運営する要件を満たせるか
901
+ ** 市場は十分に大きいか(customer)
902
+ *** 人口はどれだけか
903
+ *** 交通量は十分か
904
+ *** ラーメンを外食する人が期待できる構成か
905
+ ** 有力な競争相手がいるか否か(competitor)
906
+ *** 競合店が近くにあるか
907
+ **** ある場所、距離は十分に遠いか
908
+ **** 味・店構え・ロケーションなど自分に比べて優位か否か
909
+ *** ラーメン以外の外食店があるか、どんな店か
910
+ *** (競合がある場合)集客などかえって相乗効果を期待することはできないか
911
+ @endmindmap
912
+ ```
913
+
914
+ ---
915
+
916
+ ### 数学の考え方を援用する
917
+
918
+ ```plantuml
919
+ @startuml
920
+ object "売り上げが低下した" as A
921
+ object "売上を上げれるか" as B
922
+
923
+ A -> B
924
+ @enduml
925
+ ```
926
+
927
+ ---
928
+
929
+ #### 足し算・引き算で考える
930
+
931
+ ```plantuml
932
+ @startmindmap
933
+ title 足し算・引き算
934
+
935
+ * 地域等で分ける
936
+ ** 札幌営業所の売上を上げられるか
937
+ ** 仙台営業所の売上を上げられるか
938
+ ** 北関東営業所の売上を上げられるか
939
+ ** 東京営業所の売上を上げられるか
940
+ ** ...
941
+ ** その他、売上を上げらる機会はないか
942
+ *** 輸出
943
+ *** OEM
944
+ *** 他チャネル
945
+
946
+ @endmindmap
947
+ ```
948
+
949
+ ---
950
+
951
+ #### 掛け算で考える
952
+
953
+ ```plantuml
954
+ @startmindmap
955
+ title 掛け算
956
+
957
+
958
+ + x
959
+ -- 店舗数
960
+ --- 増やせるか
961
+ ---- 交通量・ロケーションの特徴
962
+ ---- 人口密度・地域需要
963
+ ---- 基本エコノミクスの構造など
964
+ ++ 1店舗あたりの売上
965
+ +++ 客数を増やせるか
966
+ ++++ キャンペーン・特売
967
+ ++++ 広告・ちらし
968
+ ++++ 店構え・その他
969
+ +++ x
970
+ +++ 客単価を増やせるか
971
+ ++++ 品揃え
972
+ ++++ レイアウト
973
+ ++++ セット販売
974
+ ++++ その他
975
+
976
+ @endmindmap
977
+ ```
978
+
979
+ ---
980
+
981
+ #### 要素・枠組みで考える
982
+
983
+ ```plantuml
984
+ @startmindmap
985
+ title 要素・枠組み
986
+
987
+ * 売上が低下した理由の検討
988
+ ** 全国共通の要因はあるか
989
+ *** 全国共通の製品・価格・マーケティング施策等の工夫
990
+ ** 個店別の要因が大きいか
991
+ *** 業績低下の大きい店への個別指導等
992
+ ** 季節性の課題が大きいか
993
+ *** 冬に売れる商品の開発(冬に低下なら)
994
+ ** その他
995
+
996
+ @endmindmap
997
+ ```
998
+ # クリティカルシンキング
999
+
1000
+ > 重要な点の最後は、あなたが見聞きするものごとについての批判的な考え方です。
1001
+ > Tip 10 見聞きしたものごとを批判的な目で分析すること
1002
+ >
1003
+ > > 達人プログラマー
1004
+
1005
+ ```plantuml
1006
+ @startmindmap
1007
+
1008
+ * クリティカルシンキング
1009
+ ** クリティカルシンキングとは
1010
+ *** 批判的に読み、批判的に聞く
1011
+ *** クリティカルシンキングとロジカルシンキングの違い
1012
+ ** クリティカルシンキングの基本
1013
+ *** クリティカルシンキングのポイント
1014
+ *** クリティカルシンキングの手順
1015
+ *** クリティカルシンキングのコツ
1016
+ ** クリティカルシンキングの実践
1017
+ *** 「もっともらしさ」
1018
+ *** アーギュメントの欠陥
1019
+ *** 最も強い反論
1020
+ *** 智に働けば角が立つ情に棹させば流される
1021
+ *** 説得の基本
1022
+ ****_ 論理
1023
+ ****_ 感情へのアピール
1024
+ ****_ 信頼性
1025
+ *** 説得するため5つのステップ
1026
+ *** 批判と非難は違う
1027
+
1028
+ @endmindmap
1029
+ ```
1030
+
1031
+ ---
1032
+
1033
+ ## クリティカルシンキングとは
1034
+
1035
+ ```plantuml
1036
+ @startmindmap
1037
+
1038
+ * クリティカルシンキング
1039
+ ** クリティカルシンキングとは
1040
+ *** 批判的に読み、批判的に聞く
1041
+ *** クリティカルシンキングとロジカルシンキングの違い
1042
+
1043
+ @endmindmap
1044
+ ```
1045
+
1046
+ ---
1047
+
1048
+ ### 批判的に読み、批判的に聞く
1049
+
1050
+ > 実生活の場において、読むとき、聞くときに行っている(行うべき)「批判的に読み、批判的に聞く」ための思考を、クリティカル・シンキングと言います。
1051
+ > > 論理思考力を鍛える本 小野田博一
1052
+
1053
+ > 「実生活の場で、論理が正しいのか、前提は正しいのか、の2点を考える」とは言い換えると、「アーギュメントを鵜呑みにせず、アーギュメントの正しさを自力で考える」ことです。
1054
+ > > 論理思考力を鍛える本 小野田博一
1055
+
1056
+ ---
1057
+
1058
+ ### クリティカルシンキングとロジカルシンキングの違い
1059
+
1060
+ > クリティカル・シンキングとロジカル・シンキングの違い
1061
+ >
1062
+ > 論理的に考えることと批判的に考えることは、基本的に同じで、ただ若干の違いは「クリティカル・シンキングの話題は日常生活のみで、ロジカル・シンキングのほうはそのような限定はない」くらいのものと言ってよいでしょう。
1063
+ >
1064
+ > — 論理的に考える方法 小野田博一(著)日本実業出版社
1065
+
1066
+ ---
1067
+
1068
+ ## クリティカルシンキングの基本
1069
+
1070
+ ```plantuml
1071
+ @startmindmap
1072
+
1073
+ * クリティカルシンキング
1074
+ ** クリティカルシンキングの基本
1075
+ *** クリティカルシンキングのポイント
1076
+ *** クリティカルシンキングの手順
1077
+ *** クリティカルシンキングのコツ
1078
+
1079
+ @endmindmap
1080
+ ```
1081
+
1082
+ ---
1083
+
1084
+ ### クリティカルシンキングのポイント
1085
+
1086
+ > なぜクリティカル・シンキングが必要なのかと言えば、それは、読み聞きした内容で「相手のいいように操られないため」「間違った判断を下さないため」です。
1087
+ > > 論理思考力を鍛える本 小野田博一
1088
+
1089
+ > クリティカル・シンキングのポイントは「むやみに信じないこと」です。つまり「信じるにたる根拠がないかぎり信じるな」です。
1090
+ > > 論理思考力を鍛える本 小野田博一
1091
+
1092
+ > 「自分自身の判断力を使って判断する」とは、「前提と結論のつながりの正しさや支えかたの強度」を自分自身で判断することで、具体的には、結論が正しく導き出されているか、しっかり支えられているか、および情報そのものの信頼性を考えることです。
1093
+ > > 論理思考力を鍛える本 小野田博一
1094
+
1095
+ ---
1096
+
1097
+ ### クリティカルシンキングの手順
1098
+
1099
+ ```plantuml
1100
+ @startuml
1101
+ start
1102
+ :結論を見つけよ;
1103
+ :支えている(つもりの)ものを見つけよ;
1104
+ :支えているつもりのものの信頼性を判断せよ;
1105
+ :支えているつもりのものが十分支えているかー支えている程度の十分さを調べよ;
1106
+ if (隠れているアサンプションがある?) then (yes)
1107
+ :アサンプションは正しい?;
1108
+ endif
1109
+ stop
1110
+ @enduml
1111
+ ```
1112
+
1113
+ ---
1114
+
1115
+ > このような「当然正しい」と考えられている事柄をー明言されていようといまいとー英語ではアサンプション(assumption)と言います。
1116
+ >
1117
+ > — 論理的に考える方法 小野田博一(著)日本実業出版社
1118
+
1119
+ > 前提から結論を導く思考のことをリーズニング(reasoning)といいます。
1120
+ >
1121
+ > — 論理的に考える方法 小野田博一(著)日本実業出版社
1122
+
1123
+ ```plantuml
1124
+ @startuml
1125
+
1126
+ title 論理の世界の用語
1127
+
1128
+ abstract "statement" as A {
1129
+ }
1130
+
1131
+ abstract "argument" as B {
1132
+ + 前提
1133
+ + 結論
1134
+ }
1135
+
1136
+ abstract "logic" as C {
1137
+ + reasoning()
1138
+ + sound()
1139
+ }
1140
+
1141
+ interface "deductive_inference" as D {
1142
+ + valid()
1143
+ + invalid()
1144
+ }
1145
+
1146
+ interface "inductive_inference" as E {
1147
+ + strong()
1148
+ + weak()
1149
+ }
1150
+
1151
+ abstract "assumption" as F
1152
+
1153
+ F -o B
1154
+ A <|-- B
1155
+ B <- C
1156
+ C --|> D
1157
+ C --|> E
1158
+
1159
+ @enduml
1160
+ ```
1161
+
1162
+ ---
1163
+
1164
+ ### クリティカルシンキングのコツ
1165
+
1166
+ 1. 隠れているアサンプションが何かを考えよ
1167
+ 1. リーズニングのフォーム(形式)を考えよ
1168
+
1169
+ > 日常的には、多くの場合、発言が論理的か否かはアサンプションが正しいか否かにかかっています。
1170
+ >
1171
+ > — 論理的に考える方法 小野田博一(著)日本実業出版社
1172
+
1173
+ ---
1174
+
1175
+ ## クリティカルシンキングの実践
1176
+
1177
+ ```plantuml
1178
+ @startmindmap
1179
+
1180
+ * クリティカルシンキング
1181
+ ** クリティカルシンキングの実践
1182
+ *** 「もっともらしさ」
1183
+ *** アーギュメントの欠陥
1184
+ *** 最も強い反論
1185
+ *** 智に働けば角が立つ情に棹させば流される
1186
+ *** 説得の基本
1187
+ ****_ 論理
1188
+ ****_ 感情へのアピール
1189
+ ****_ 信頼性
1190
+ *** 説得するため5つのステップ
1191
+ *** 批判と非難は違う
1192
+
1193
+ @endmindmap
1194
+ ```
1195
+
1196
+ ---
1197
+
1198
+ ### 「もっともらしさ」
1199
+
1200
+ > 実生活では、断言できないことがとてもたくさんあります。私たちが話したり書いたりする内容は、ほとんど断言できないことばかりです。そのため、「もっともらしさ」は実生活では大きな役割を果たす事になります。
1201
+ > そして、クリティカル・シンキンキングは、「もっともらしさ」をあなた自身が検証する事なのです。
1202
+ >
1203
+ > — 論理的に考える方法 小野田博一(著)日本実業出版社
1204
+
1205
+ #### 議論では、もっともらしさを高めるよう努力せよ
1206
+
1207
+ > 人を納得させるのは「真実」ではなく「真実らしさ」(もっともらしさ)です。
1208
+ >
1209
+ > — 論理的に考える方法 小野田博一(著)日本実業出版社
1210
+
1211
+ ---
1212
+
1213
+ ### アーギュメントの欠陥
1214
+
1215
+ - 早まった一般化
1216
+ - 原因・結果の間違い
1217
+ - 間違った類比
1218
+ - 権威の間違った使用
1219
+ - あいまいな表現
1220
+ - 立証責任の転嫁
1221
+ - 循環論法
1222
+ - 聞き手・読み手の感情の利用
1223
+ - 個人攻撃
1224
+ - 矛盾
1225
+ - 一般の意見の使用
1226
+ - 統計の悪用(歪めた使用)
1227
+
1228
+ ---
1229
+
1230
+ ### もっとも強い反論
1231
+
1232
+ > もっとも強い反論は、もとの議論のアサンプションをアタックする議論です。
1233
+ >
1234
+ > — 論理的に考える方法 小野田博一(著)日本実業出版社
1235
+
1236
+ ---
1237
+
1238
+ ### 批判と非難は違う
1239
+
1240
+ > 人を非難したり、煽ったりするのは、後々、自分に返ってくるのでやめましょう。面と向かって言わないようなことを、オンラインで表現してはいけません。
1241
+ >
1242
+ > — 達人プログラマー 熟達に向けたあなたの旅(第2版)
1243
+
1244
+ ---
1245
+
1246
+ ### 智に働けば角が立つ情に棹させば流される
1247
+
1248
+ ---
1249
+
1250
+ ### 説得の基本
1251
+
1252
+ > 説得に必要な要素は三つあります。それは
1253
+ > 1. 論理
1254
+ > 2. 感情へのアピール
1255
+ > 3. 信頼性
1256
+ >
1257
+ > の三つです。
1258
+ > 説得をする際に重要となるのは、「説得は一方的に行うものではない。つまり、説得ではコミュニケーションに双方向性がなけらならない」という点です。
1259
+ >
1260
+ > 説得とは、人に影響を与えるという目的を持ったコミュニケーションのプロセス」と言うことができます。
1261
+ >
1262
+ > 論理的に説得する方法
1263
+
1264
+ ---
1265
+
1266
+ ### 説得するための5つのステップ
1267
+
1268
+ - ステップ1 目標を設定する
1269
+ - ステップ2 聞き手を分析する
1270
+ - ステップ3 あなたの信頼性を高める
1271
+ - ステップ4 説得のメッセージをつくる
1272
+ - ステップ5 メッセージを聞き手に合わせる
1273
+
1274
+ ---
1275
+
1276
+ ### 説得力のある主張をするための究極のコツ
1277
+
1278
+ - 「私」を登場させるな。「あなた」が主役。
1279
+ - 「説得力のコンテスト」と考えよ。
1280
+ - 審査員であろうとするな。
1281
+ - 司会者であろうとするな。
1282
+ - 批判せよ。非難するな。
1283
+ - 肝心なことを述べよ。余分なことを述べるな。
1284
+ - 力むな。
1285
+ - 十分に説明せよ。
1286
+ - 感想を述べるな。
1287
+ # まとめ
1288
+
1289
+ ```plantuml
1290
+ @startuml
1291
+
1292
+ object "結論" as A {
1293
+ 論理的思考の実践である
1294
+ ロジカル・クリティカルシンキングは
1295
+ 実践プログラマの基本スキルである
1296
+ }
1297
+ object "小前提" as B {
1298
+ 論理的思考は習得可能なスキルであり
1299
+ 論理的思考は知識を扱うプログラマにとって
1300
+ キャリアの始まりから終わりまで
1301
+ あらゆる局面で役に立つ。
1302
+ }
1303
+ object "大前提" as C {
1304
+ 論理的思考を身に着けることで
1305
+ 「正しい結論を導くことができる」こと。
1306
+ 「正しいコミュニケーションができること」こと。
1307
+ 「発想を助け、課題の検討・解決に役立つ」こと。
1308
+ ができるようになる。
1309
+ }
1310
+ A <-- B
1311
+ C -> B
1312
+
1313
+ object "個別論" as B_1 {
1314
+ 達人プログラマーが取り扱う
1315
+ 素材は木でも鉄でもありません
1316
+ --- 知識です。
1317
+ }
1318
+ object "個別論" as B_2 {
1319
+ 重要な点の最後は、
1320
+ あなたが見聞きするものごとについての
1321
+ 批判的な考え方です。
1322
+ }
1323
+ object "個別論" as B_3 {
1324
+ 1つのメッセージ(結論)は、
1325
+ 必ず2つ以上のサブ・メッセージ(要因)
1326
+ でサポートされてるため、
1327
+ 論理は、底辺に行くほど
1328
+ 広いピラミッド状に組み上げられる。
1329
+ }
1330
+ object "個別論" as B_4 {
1331
+ Deduction(演繹)は、前提となる
1332
+ 正しいメッセージ(一般論)
1333
+ がまずあり、それを個別の事象に適用して、
1334
+ 正しい主張・答を引き出す方法で
1335
+ 「一般論」から「個別論」へという
1336
+ 構造になっている
1337
+ }
1338
+ object "個別論" as B_5 {
1339
+ Induction(帰納)は、たくさんの
1340
+ 個別の事象や主張を集めて、
1341
+ より一般的に通用する共通の
1342
+ メッセージを導き出す方法で
1343
+ 「個別論」から「一般論」へ
1344
+ という構造になっている
1345
+ }
1346
+
1347
+ B <-- B_1
1348
+ B <-- B_2
1349
+ B <-- B_3
1350
+ B <-- B_4
1351
+ B <-- B_5
1352
+
1353
+ @enduml
1354
+ ```
1355
+ # 参考文献
1356
+
1357
+ - [わかる、使える「論理思考」の本 日本一わかりやすい授業、開講!](https://www.amazon.co.jp/%E3%82%8F%E3%81%8B%E3%82%8B%E3%80%81%E4%BD%BF%E3%81%88%E3%82%8B%E3%80%8C%E8%AB%96%E7%90%86%E6%80%9D%E8%80%83%E3%80%8D%E3%81%AE%E6%9C%AC-%E6%97%A5%E6%9C%AC%E4%B8%80%E3%82%8F%E3%81%8B%E3%82%8A%E3%82%84%E3%81%99%E3%81%84%E6%8E%88%E6%A5%AD%E3%80%81%E9%96%8B%E8%AC%9B%EF%BC%81-%E5%BE%8C-%E6%AD%A3%E6%AD%A6-ebook/dp/B08R37L3YW/)
1358
+
1359
+ - [経営参謀が明かす論理思考と発想の技術](https://www.amazon.co.jp/%E7%B5%8C%E5%96%B6%E5%8F%82%E8%AC%80%E3%81%8C%E6%98%8E%E3%81%8B%E3%81%99%E8%AB%96%E7%90%86%E6%80%9D%E8%80%83%E3%81%A8%E7%99%BA%E6%83%B3%E3%81%AE%E6%8A%80%E8%A1%93-%E7%9F%A5%E5%8A%9B%E3%82%A2%E3%83%83%E3%83%97%E8%AC%9B%E5%BA%A7-%E5%BE%8C-%E6%AD%A3%E6%AD%A6/dp/4833416646/)
1360
+
1361
+ - [論理的に考える方法: 判断力がアップし本質への筋道が読める](https://www.amazon.co.jp/%E8%AB%96%E7%90%86%E7%9A%84%E3%81%AB%E8%80%83%E3%81%88%E3%82%8B%E6%96%B9%E6%B3%95%E2%80%95%E5%88%A4%E6%96%AD%E5%8A%9B%E3%81%8C%E3%82%A2%E3%83%83%E3%83%97%E3%81%97%E6%9C%AC%E8%B3%AA%E3%81%B8%E3%81%AE%E7%AD%8B%E9%81%93%E3%81%8C%E8%AA%AD%E3%82%81%E3%82%8B-%E5%B0%8F%E9%87%8E%E7%94%B0-%E5%8D%9A%E4%B8%80/dp/4534028075)
1362
+
1363
+ - [論理思考力を鍛える本: 問題演習](https://www.amazon.co.jp/%E8%AB%96%E7%90%86%E6%80%9D%E8%80%83%E5%8A%9B%E3%82%92%E9%8D%9B%E3%81%88%E3%82%8B%E6%9C%AC%E2%80%95%E5%95%8F%E9%A1%8C%E6%BC%94%E7%BF%92-%E5%B0%8F%E9%87%8E%E7%94%B0-%E5%8D%9A%E4%B8%80/dp/4534034504)
1364
+
1365
+ - [論理的に説得する方法: 納得させてYESを引き出す](https://www.amazon.co.jp/%E8%AB%96%E7%90%86%E7%9A%84%E3%81%AB%E8%AA%AC%E5%BE%97%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95%E2%80%95%E7%B4%8D%E5%BE%97%E3%81%95%E3%81%9B%E3%81%A6YES%E3%82%92%E5%BC%95%E3%81%8D%E5%87%BA%E3%81%99-%E5%B0%8F%E9%87%8E%E7%94%B0-%E5%8D%9A%E4%B8%80/dp/4534029934)
1366
+
1367
+ - [達人プログラマー(第2版): 熟達に向けたあなたの旅](https://www.amazon.co.jp/%E9%81%94%E4%BA%BA%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9E%E3%83%BC-%E7%AC%AC2%E7%89%88-%E7%86%9F%E9%81%94%E3%81%AB%E5%90%91%E3%81%91%E3%81%9F%E3%81%82%E3%81%AA%E3%81%9F%E3%81%AE%E6%97%85-David-Thomas/dp/4274226298/)