แƒžแƒ แƒ”แƒ–แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ แƒ แƒแƒ’แƒแƒ แƒช แƒ™แƒแƒ“แƒ˜, แƒแƒœ แƒ แƒแƒขแƒแƒ› แƒแƒฆแƒแƒ  แƒ•แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘ Powerpoint-แƒก

แƒžแƒ แƒ”แƒ–แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ แƒ แƒแƒ’แƒแƒ แƒช แƒ™แƒแƒ“แƒ˜, แƒแƒœ แƒ แƒแƒขแƒแƒ› แƒแƒฆแƒแƒ  แƒ•แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘ Powerpoint-แƒก

แƒ•แƒคแƒ˜แƒฅแƒ แƒแƒ‘, แƒแƒ—แƒแƒ‘แƒ˜แƒ— แƒžแƒ แƒ”แƒ–แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ แƒ’แƒแƒ•แƒฃแƒ™แƒ”แƒ—แƒ” แƒ™แƒแƒšแƒ”แƒ’แƒ”แƒ‘แƒก, แƒ™แƒšแƒ˜แƒ”แƒœแƒขแƒ”แƒ‘แƒก แƒ“แƒ แƒกแƒแƒฏแƒแƒ แƒ แƒ’แƒแƒ›แƒแƒกแƒ•แƒšแƒ”แƒ‘แƒก แƒฉแƒ”แƒ›แƒก IT แƒ™แƒแƒ แƒ˜แƒ”แƒ แƒแƒจแƒ˜. แƒ›แƒ แƒแƒ•แƒแƒšแƒ˜ แƒฌแƒšแƒ˜แƒก แƒ’แƒแƒœแƒ›แƒแƒ•แƒšแƒแƒ‘แƒแƒจแƒ˜, Powerpoint แƒ˜แƒงแƒ แƒ‘แƒฃแƒœแƒ”แƒ‘แƒ แƒ˜แƒ•แƒ˜ แƒ“แƒ แƒกแƒแƒ˜แƒ›แƒ”แƒ“แƒ แƒแƒ แƒฉแƒ”แƒ•แƒแƒœแƒ˜ แƒฉแƒ”แƒ›แƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ’แƒแƒ แƒช แƒกแƒšแƒแƒ˜แƒ“แƒ”แƒ‘แƒ˜แƒก แƒฌแƒแƒ แƒ›แƒแƒ”แƒ‘แƒ˜แƒก แƒ˜แƒœแƒกแƒขแƒ แƒฃแƒ›แƒ”แƒœแƒขแƒ˜. แƒ›แƒแƒ’แƒ แƒแƒ› แƒฌแƒ”แƒšแƒก แƒ›แƒ“แƒ’แƒแƒ›แƒแƒ แƒ”แƒแƒ‘แƒ แƒฎแƒแƒ แƒ˜แƒกแƒฎแƒแƒ‘แƒ แƒ˜แƒ•แƒแƒ“ แƒจแƒ”แƒ˜แƒชแƒ•แƒแƒšแƒ. แƒ—แƒ”แƒ‘แƒ”แƒ แƒ•แƒšแƒ˜แƒ“แƒแƒœ แƒ›แƒแƒ˜แƒกแƒแƒ›แƒ“แƒ” แƒฎแƒฃแƒ— แƒ™แƒแƒœแƒคแƒ”แƒ แƒ”แƒœแƒชแƒ˜แƒแƒ–แƒ” แƒ›แƒฅแƒแƒœแƒ“แƒ แƒ’แƒแƒ›แƒแƒกแƒ•แƒšแƒ˜แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒ แƒ“แƒ แƒ›แƒแƒฎแƒกแƒ”แƒœแƒ”แƒ‘แƒ”แƒ‘แƒ˜แƒก แƒกแƒšแƒแƒ˜แƒ“แƒ”แƒ‘แƒ˜ แƒ›แƒแƒ™แƒšแƒ” แƒ“แƒ แƒแƒจแƒ˜ แƒฃแƒœแƒ“แƒ แƒ›แƒแƒ›แƒ–แƒแƒ“แƒ”แƒ‘แƒฃแƒšแƒ˜แƒงแƒ, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ›แƒแƒฆแƒแƒšแƒ˜ แƒฎแƒแƒ แƒ˜แƒกแƒฎแƒ˜แƒ—. แƒ’แƒแƒฉแƒœแƒ“แƒ แƒ™แƒ˜แƒ—แƒฎแƒ•แƒ แƒกแƒšแƒแƒ˜แƒ“แƒ”แƒ‘แƒ˜แƒก แƒ•แƒ˜แƒ–แƒฃแƒแƒšแƒฃแƒ  แƒ“แƒ˜แƒ–แƒแƒ˜แƒœแƒ—แƒแƒœ แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒœแƒแƒ›แƒฃแƒจแƒ”แƒ•แƒ แƒ˜แƒก แƒกแƒฎแƒ•แƒ แƒแƒ“แƒแƒ›แƒ˜แƒแƒœแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ’แƒแƒ“แƒแƒชแƒ”แƒ›แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘. แƒ”แƒ แƒ—แƒฎแƒ”แƒš แƒ•แƒชแƒแƒ“แƒ” แƒ“แƒ˜แƒ–แƒแƒ˜แƒœแƒ”แƒ แƒ—แƒแƒœ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ, .pptx แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ’แƒ–แƒแƒ•แƒœแƒ แƒคแƒแƒกแƒขแƒ˜แƒ—, แƒ›แƒแƒ’แƒ แƒแƒ› แƒกแƒแƒ›แƒฃแƒจแƒแƒ แƒฅแƒแƒแƒกแƒจแƒ˜ แƒ’แƒแƒ“แƒแƒ˜แƒ–แƒแƒ แƒ“แƒ: แƒแƒ แƒแƒ•แƒ˜แƒœ แƒ˜แƒชแƒแƒ“แƒ แƒกแƒšแƒแƒ˜แƒ“แƒ”แƒ‘แƒ˜แƒก แƒ แƒแƒ›แƒ”แƒšแƒ˜ แƒ•แƒ”แƒ แƒกแƒ˜แƒ แƒ˜แƒงแƒ โ€žแƒฃแƒแƒฎแƒšแƒ”แƒกแƒ˜โ€œ, แƒฎแƒแƒšแƒ แƒ’แƒแƒœแƒšแƒแƒ’แƒ”แƒ‘แƒ โ€žแƒ›แƒแƒซแƒ แƒแƒแƒ‘แƒ“แƒโ€œ Powerpoint-แƒ˜แƒก แƒกแƒฎแƒ•แƒแƒแƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒ. แƒ•แƒ”แƒ แƒกแƒ˜แƒ”แƒ‘แƒ˜ แƒ“แƒ แƒจแƒ แƒ˜แƒคแƒขแƒ”แƒ‘แƒ˜ แƒฉแƒ•แƒ”แƒœแƒก แƒ›แƒแƒœแƒฅแƒแƒœแƒ”แƒ‘แƒ–แƒ”. แƒ“แƒ แƒ’แƒแƒ“แƒแƒ•แƒฌแƒงแƒ•แƒ˜แƒขแƒ” แƒ แƒแƒฆแƒแƒช แƒแƒฎแƒแƒšแƒ˜ แƒ•แƒชแƒแƒ“แƒ. แƒ•แƒชแƒแƒ“แƒ” แƒ“แƒ แƒ›แƒแƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ Powerpoint-แƒ–แƒ” แƒ“แƒแƒ‘แƒ แƒฃแƒœแƒ”แƒ‘แƒแƒ–แƒ” แƒแƒฆแƒแƒ  แƒ›แƒ˜แƒคแƒ˜แƒฅแƒ แƒ˜แƒ.

แƒ แƒ แƒ’แƒ•แƒ˜แƒœแƒ“แƒ

แƒ“แƒแƒแƒฎแƒšแƒแƒ”แƒ‘แƒ˜แƒ— แƒฌแƒ”แƒšแƒ˜แƒฌแƒแƒ“แƒœแƒแƒฎแƒ”แƒ•แƒ แƒ˜แƒก แƒฌแƒ˜แƒœ, แƒฉแƒ•แƒ”แƒœแƒ›แƒ แƒ™แƒแƒ›แƒžแƒแƒœแƒ˜แƒแƒ› แƒจแƒ”แƒฌแƒงแƒ•แƒ˜แƒขแƒ Word-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒกแƒแƒžแƒ แƒแƒ”แƒฅแƒขแƒ แƒ“แƒแƒ™แƒฃแƒ›แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฅแƒ›แƒœแƒ”แƒšแƒแƒ“, แƒ˜แƒ’แƒ˜แƒ•แƒ” แƒžแƒ แƒแƒ‘แƒšแƒ”แƒ›แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒ: แƒ—แƒฃแƒ›แƒชแƒ Word แƒ™แƒแƒ แƒ’แƒ˜แƒ แƒ›แƒชแƒ˜แƒ แƒ” แƒ“แƒแƒ™แƒฃแƒ›แƒ”แƒœแƒขแƒ˜แƒก แƒแƒกแƒแƒฆแƒ”แƒ‘แƒแƒ“, แƒ แƒแƒ“แƒ’แƒแƒœ แƒ›แƒแƒชแƒฃแƒšแƒแƒ‘แƒ แƒ˜แƒ–แƒ แƒ“แƒ”แƒ‘แƒ, แƒกแƒ˜แƒ แƒ—แƒฃแƒšแƒ”แƒ”แƒ‘แƒ˜ แƒฌแƒแƒ แƒ›แƒแƒ˜แƒฅแƒ›แƒœแƒ”แƒ‘แƒ แƒ—แƒแƒœแƒแƒ›แƒจแƒ แƒแƒ›แƒšแƒแƒ‘แƒแƒกแƒ—แƒแƒœ แƒ“แƒ แƒ›แƒแƒฆแƒแƒšแƒ˜ แƒฎแƒแƒ แƒ˜แƒกแƒฎแƒ˜แƒก แƒ“แƒ แƒ›แƒแƒžแƒแƒ•แƒ”แƒ‘แƒแƒกแƒ—แƒแƒœ แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒ˜แƒ—. แƒ”แƒ แƒ—แƒ˜แƒแƒœแƒ˜ แƒ“แƒ˜แƒ–แƒแƒ˜แƒœแƒ˜. แƒฉแƒ•แƒ”แƒœแƒ˜ แƒแƒ แƒฉแƒ”แƒ•แƒแƒœแƒ˜ แƒ“แƒแƒ”แƒชแƒ แƒแƒกแƒ™แƒ˜ แƒ”แƒฅแƒ˜แƒ›แƒ˜แƒ“แƒ แƒฉแƒ•แƒ”แƒœ แƒแƒ แƒแƒกแƒ“แƒ แƒแƒก แƒ•แƒฌแƒงแƒ•แƒ”แƒขแƒ— แƒแƒ› แƒแƒ แƒฉแƒ”แƒ•แƒแƒœแƒ˜แƒก แƒ’แƒแƒฎแƒแƒ แƒ”แƒ‘แƒแƒก, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ”แƒก แƒชแƒแƒšแƒ™แƒ” แƒกแƒขแƒแƒขแƒ˜แƒ˜แƒก แƒ—แƒ”แƒ›แƒแƒ. แƒ“แƒแƒแƒฎแƒšแƒแƒ”แƒ‘แƒ˜แƒ— แƒแƒ›แƒแƒ•แƒ” แƒ“แƒ แƒแƒก, แƒฉแƒ•แƒ”แƒœ แƒ•แƒ˜แƒกแƒฌแƒแƒ•แƒšแƒ”แƒ— DevOps-แƒ˜แƒก แƒ”แƒ แƒ—-แƒ”แƒ แƒ—แƒ˜ แƒžแƒ แƒ˜แƒœแƒชแƒ˜แƒžแƒ˜แƒก แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒแƒ‘แƒ โ€žแƒงแƒ•แƒ”แƒšแƒแƒคแƒ”แƒ แƒ˜, แƒ แƒแƒ’แƒแƒ แƒช แƒ™แƒแƒ“แƒ˜โ€œ, แƒแƒกแƒ” แƒ แƒแƒ›, แƒžแƒ แƒ”แƒ–แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ˜แƒก แƒกแƒšแƒแƒ˜แƒ“แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒก แƒแƒฎแƒแƒšแƒ˜ แƒขแƒ”แƒฅแƒœแƒแƒšแƒแƒ’แƒ˜แƒ˜แƒก แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒ”แƒ‘แƒ˜แƒก แƒแƒ แƒฉแƒ”แƒ•แƒแƒœแƒ˜ แƒกแƒแƒ™แƒ›แƒแƒแƒ“ แƒแƒจแƒ™แƒแƒ แƒ แƒ˜แƒงแƒ:

  1. แƒžแƒ แƒ”แƒ–แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ แƒฃแƒœแƒ“แƒ แƒ˜แƒงแƒแƒก แƒฉแƒ•แƒ”แƒฃแƒšแƒ”แƒ‘แƒ แƒ˜แƒ•แƒ˜ แƒขแƒ”แƒฅแƒกแƒขแƒฃแƒ แƒ˜ แƒคแƒแƒ˜แƒšแƒ˜ แƒ›แƒแƒ แƒ™แƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒ”แƒœแƒแƒ–แƒ”.
  2. แƒฉแƒ•แƒ”แƒœแƒ˜ แƒกแƒšแƒแƒ˜แƒ“แƒ”แƒ‘แƒ˜ แƒ“แƒ”แƒ•แƒ”แƒšแƒแƒžแƒ”แƒ แƒฃแƒš แƒžแƒ แƒแƒ”แƒฅแƒขแƒ”แƒ‘แƒก แƒ”แƒฎแƒ”แƒ‘แƒ, แƒแƒ›แƒ˜แƒขแƒแƒ› แƒ›แƒแƒ แƒ™แƒ˜แƒ แƒ”แƒ‘แƒแƒ› แƒฃแƒœแƒ“แƒ แƒ’แƒแƒแƒแƒ“แƒ•แƒ˜แƒšแƒแƒก แƒฉแƒแƒกแƒ›แƒ, แƒ’แƒแƒ แƒ” แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ แƒ”แƒจแƒ”
    • แƒ™แƒแƒ“แƒ˜แƒก แƒคแƒ แƒแƒ’แƒ›แƒ”แƒœแƒขแƒ”แƒ‘แƒ˜ แƒกแƒ˜แƒœแƒขแƒแƒฅแƒกแƒ˜แƒก แƒฎแƒแƒ–แƒ’แƒแƒกแƒ›แƒ˜แƒ—,
    • แƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ˜ แƒ“แƒ˜แƒแƒ’แƒ แƒแƒ›แƒ”แƒ‘แƒ˜ แƒ’แƒ”แƒแƒ›แƒ”แƒขแƒ แƒ˜แƒฃแƒšแƒ˜ แƒคแƒแƒ แƒ›แƒ”แƒ‘แƒ˜แƒก แƒกแƒแƒฎแƒ˜แƒ—, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒ˜แƒกแƒ แƒ”แƒ‘แƒ˜แƒ—,
    • UML แƒ“แƒ˜แƒแƒ’แƒ แƒแƒ›แƒ”แƒ‘แƒ˜, แƒ“แƒ˜แƒแƒ’แƒ แƒแƒ›แƒ”แƒ‘แƒ˜ แƒ“แƒ แƒกแƒฎแƒ•แƒ.
  3. แƒžแƒ แƒ”แƒ–แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ˜แƒก แƒ›แƒแƒœแƒแƒฎแƒแƒ–แƒ˜ แƒฃแƒœแƒ“แƒ แƒ˜แƒงแƒแƒก แƒจแƒ”แƒœแƒแƒฎแƒฃแƒšแƒ˜ แƒ•แƒ”แƒ แƒกแƒ˜แƒ˜แƒก แƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ˜แƒก แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒแƒจแƒ˜.
  4. แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒกแƒšแƒแƒ˜แƒ“แƒ”แƒ‘แƒ˜แƒก แƒ•แƒแƒšแƒ˜แƒ“แƒแƒชแƒ˜แƒ แƒ“แƒ แƒแƒฌแƒงแƒแƒ‘แƒ แƒฃแƒœแƒ“แƒ แƒ›แƒแƒฎแƒ“แƒ”แƒก CI แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒแƒจแƒ˜.

แƒ“แƒฆแƒ”แƒก, แƒ›แƒแƒ แƒ™แƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒ”แƒœแƒ”แƒ‘แƒ–แƒ” แƒกแƒšแƒแƒ˜แƒ“แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒก แƒแƒ แƒ˜ แƒซแƒ˜แƒ แƒ˜แƒ—แƒแƒ“แƒ˜ แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ˜แƒ: แƒžแƒแƒ™แƒ”แƒขแƒ˜ แƒกแƒฎแƒ˜แƒ•แƒ˜ LaTeX-แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒแƒœ HTML/CSS-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ— แƒกแƒšแƒแƒ˜แƒ“แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒก แƒ”แƒ แƒ—-แƒ”แƒ แƒ—แƒ˜ แƒคแƒ แƒ”แƒ˜แƒ›แƒแƒ แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก (แƒ’แƒแƒ›แƒแƒแƒ•แƒšแƒ˜แƒœแƒ”แƒ— JS, แƒจแƒ”แƒœแƒ˜แƒจแƒ•แƒœแƒ, deck.js แƒ“แƒ แƒ›แƒ แƒแƒ•แƒแƒšแƒ˜ แƒกแƒฎแƒ•แƒ).

แƒ›แƒ˜แƒฃแƒฎแƒ”แƒ“แƒแƒ•แƒแƒ“ แƒ˜แƒ›แƒ˜แƒกแƒ, แƒ แƒแƒ› แƒฉแƒ”แƒ›แƒ˜ แƒกแƒฃแƒšแƒ˜ LaTeX-แƒจแƒ˜ แƒ“แƒ”แƒ•แƒก, แƒ’แƒแƒœแƒ”แƒ‘แƒแƒ› แƒ›แƒ˜แƒ™แƒแƒ แƒœแƒแƒฎแƒ, แƒ แƒแƒ› แƒ’แƒแƒ“แƒแƒฌแƒงแƒ•แƒ”แƒขแƒ˜แƒก แƒแƒ แƒฉแƒ”แƒ•แƒ, แƒ แƒแƒ›แƒ”แƒšแƒกแƒแƒช แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ›แƒ” แƒแƒ  แƒ•แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘, แƒฃแƒœแƒ“แƒ แƒงแƒแƒคแƒ˜แƒšแƒ˜แƒงแƒ แƒฎแƒแƒšแƒฎแƒ˜แƒก แƒคแƒแƒ แƒ—แƒ แƒฌแƒ แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒœแƒแƒชแƒœแƒแƒ‘แƒ˜ แƒ’แƒแƒ“แƒแƒฌแƒงแƒ•แƒ”แƒขแƒ˜แƒก แƒ›แƒฎแƒแƒ แƒ”แƒ–แƒ”. แƒงแƒ•แƒ”แƒšแƒแƒ› แƒแƒ  แƒ˜แƒชแƒ˜แƒก LaTeX แƒ“แƒ แƒ—แƒฃ แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒงแƒแƒ•แƒ”แƒšแƒ“แƒฆแƒ˜แƒฃแƒ แƒ˜ แƒžแƒ แƒแƒฅแƒขแƒ˜แƒ™แƒ แƒแƒ  แƒแƒ แƒ˜แƒก แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒกแƒแƒ›แƒ”แƒชแƒœแƒ˜แƒ”แƒ แƒ แƒกแƒขแƒแƒขแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒฌแƒ”แƒ แƒแƒกแƒ—แƒแƒœ, แƒ›แƒแƒจแƒ˜แƒœ แƒœแƒแƒ™แƒšแƒ”แƒ‘แƒแƒ“ แƒกแƒแƒ•แƒแƒ แƒแƒฃแƒ“แƒแƒ, แƒ แƒแƒ› แƒ’แƒ”แƒฅแƒœแƒ”แƒ‘แƒแƒ— แƒ“แƒ แƒ แƒแƒ› แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ˜แƒก แƒฃแƒ–แƒแƒ แƒ›แƒแƒ–แƒแƒ , แƒ แƒ—แƒฃแƒš แƒกแƒแƒ›แƒงแƒแƒ แƒแƒจแƒ˜ แƒฉแƒแƒซแƒ˜แƒ แƒ•แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

แƒ—แƒฃแƒ›แƒชแƒ, HTML/CSS-แƒ˜แƒก แƒแƒกแƒขแƒแƒขแƒแƒ‘แƒ แƒ–แƒฃแƒกแƒขแƒแƒ“ แƒแƒ  แƒแƒ แƒ˜แƒก แƒคแƒแƒ แƒ—แƒแƒ“ แƒ’แƒแƒ•แƒ แƒชแƒ”แƒšแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒฃแƒœแƒแƒ แƒ˜: แƒ›แƒ”, แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, แƒจแƒแƒ แƒก แƒ•แƒแƒ  แƒ›แƒ˜แƒกแƒ˜ แƒกแƒ แƒฃแƒšแƒ˜ แƒชแƒแƒ“แƒœแƒ˜แƒกแƒ’แƒแƒœ. แƒกแƒแƒ‘แƒ”แƒ“แƒœแƒ˜แƒ”แƒ แƒแƒ“, แƒฃแƒ™แƒ•แƒ” แƒœแƒแƒชแƒœแƒแƒ‘แƒ˜ AsciiDoctor แƒ›แƒแƒ“แƒ˜แƒก แƒกแƒแƒ›แƒแƒจแƒ•แƒ”แƒšแƒแƒจแƒ˜: แƒ™แƒแƒœแƒ•แƒ”แƒ แƒขแƒแƒ แƒ˜ แƒแƒกแƒชแƒ˜แƒ˜แƒ“แƒแƒฅแƒขแƒแƒ แƒ˜-แƒแƒ•แƒšแƒ”แƒœแƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ’แƒแƒซแƒšแƒ”แƒ•แƒ— แƒจแƒ”แƒฅแƒ›แƒœแƒแƒ— RevealJS แƒกแƒšแƒแƒ˜แƒ“แƒ”แƒ‘แƒ˜ AsciiDoctor แƒ›แƒแƒ แƒ™แƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—. แƒ“แƒ แƒแƒ“แƒ•แƒ˜แƒšแƒ˜แƒ แƒกแƒฌแƒแƒ•แƒšแƒ แƒ“แƒ แƒงแƒ•แƒ”แƒšแƒแƒกแƒ—แƒ•แƒ˜แƒก แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒ˜!

แƒ แƒแƒ’แƒแƒ  แƒ“แƒแƒ•แƒฌแƒ”แƒ แƒแƒ— แƒกแƒšแƒแƒ˜แƒ“แƒ”แƒ‘แƒ˜

AsciiDoctor-แƒ–แƒ” แƒกแƒšแƒแƒ˜แƒ“แƒ”แƒ‘แƒ˜แƒก แƒ™แƒแƒ“แƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒแƒ แƒกแƒ˜แƒก แƒ’แƒแƒกแƒแƒ’แƒ”แƒ‘แƒแƒ“, แƒฃแƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ”แƒกแƒ˜ แƒ’แƒ–แƒแƒ แƒ™แƒแƒœแƒ™แƒ แƒ”แƒขแƒฃแƒšแƒ˜ แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒงแƒ•แƒแƒœแƒ. แƒ”แƒก แƒงแƒ•แƒ”แƒšแƒแƒคแƒ”แƒ แƒ˜ แƒแƒ แƒ˜แƒก แƒ แƒ”แƒแƒšแƒฃแƒ แƒ˜ แƒกแƒšแƒแƒ˜แƒ“แƒ”แƒ‘แƒ˜แƒ“แƒแƒœ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ’แƒแƒ•แƒแƒ™แƒ”แƒ—แƒ” แƒฉแƒ”แƒ›แƒ˜ แƒ™แƒแƒœแƒคแƒ”แƒ แƒ”แƒœแƒชแƒ˜แƒ˜แƒก แƒžแƒ แƒ”แƒ–แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒฌแƒ”แƒšแƒก.

แƒกแƒšแƒแƒ˜แƒ“แƒ˜ แƒกแƒแƒ—แƒแƒฃแƒ แƒ˜แƒ— แƒ“แƒ แƒกแƒ˜แƒ˜แƒ— แƒžแƒฃแƒœแƒฅแƒขแƒ”แƒ‘แƒจแƒ˜, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒ˜แƒฎแƒกแƒœแƒ”แƒ‘แƒ แƒ”แƒ แƒ—แƒ›แƒแƒœแƒ”แƒ—แƒ˜แƒก แƒ›แƒ˜แƒงแƒแƒšแƒ”แƒ‘แƒ˜แƒ—:

== ะ—ะฐั‡ะตะผ ะฝะฐะผ Streams API?

[%step]
* Real-time stream processing
* Stream-like API (map / reduce)
* ะŸะพะด ะบะฐะฟะพั‚ะพะผ:
** ะะฒั‚ะพะผะฐั‚ะธั‡ะตัะบะธะน offset commit
** ะ ะตะฑะฐะปะฐะฝัะธั€ะพะฒะบะฐ
** ะ’ะฝัƒั‚ั€ะตะฝะฝะตะต ัะพัั‚ะพัะฝะธะต ะพะฑั€ะฐะฑะพั‚ั‡ะธะบะพะฒ
** ะ›ะตะณะบะพะต ะผะฐััˆั‚ะฐะฑะธั€ะพะฒะฐะฝะธะต

แƒจแƒ”แƒ“แƒ”แƒ’แƒ˜

แƒžแƒ แƒ”แƒ–แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ แƒ แƒแƒ’แƒแƒ แƒช แƒ™แƒแƒ“แƒ˜, แƒแƒœ แƒ แƒแƒขแƒแƒ› แƒแƒฆแƒแƒ  แƒ•แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘ Powerpoint-แƒก

แƒกแƒแƒ—แƒแƒฃแƒ แƒ˜ แƒ“แƒ แƒกแƒแƒฌแƒงแƒ˜แƒกแƒ˜ แƒ™แƒแƒ“แƒ˜แƒก แƒœแƒแƒฌแƒงแƒ•แƒ”แƒขแƒ˜ แƒกแƒ˜แƒœแƒขแƒแƒฅแƒกแƒ˜แƒก แƒฎแƒแƒ–แƒ’แƒแƒกแƒ›แƒ˜แƒ—:

== Kafka Streams API: ะพะฑั‰ะฐั ัั‚ั€ัƒะบั‚ัƒั€ะฐ KStreams-ะฟั€ะธะปะพะถะตะฝะธั

[source,java]
----
StreamsConfig config = ...;
//ะ—ะดะตััŒ ัƒัั‚ะฐะฝะฐะฒะปะธะฒะฐะตะผ ะฒััะบะธะต ะพะฟั†ะธะธ

Topology topology = new StreamsBuilder()
//ะ—ะดะตััŒ ัั‚ั€ะพะธะผ ั‚ะพะฟะพะปะพะณะธัŽ
....build();
----

แƒจแƒ”แƒ“แƒ”แƒ’แƒ˜

แƒžแƒ แƒ”แƒ–แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ แƒ แƒแƒ’แƒแƒ แƒช แƒ™แƒแƒ“แƒ˜, แƒแƒœ แƒ แƒแƒขแƒแƒ› แƒแƒฆแƒแƒ  แƒ•แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘ Powerpoint-แƒก

แƒกแƒแƒฃแƒ‘แƒ แƒ˜แƒก แƒ›แƒแƒ›แƒ–แƒแƒ“แƒ”แƒ‘แƒ˜แƒกแƒแƒก, แƒ™แƒแƒ“แƒ˜แƒก แƒ“แƒ”แƒ›แƒ แƒ’แƒแƒœแƒ›แƒ”แƒแƒ แƒ”แƒ‘แƒ˜แƒ— แƒ’แƒแƒ“แƒแƒฎแƒ”แƒ“แƒ•แƒแƒกแƒ แƒ“แƒ แƒ’แƒแƒฃแƒ›แƒฏแƒแƒ‘แƒ”แƒกแƒ”แƒ‘แƒแƒก แƒ’แƒแƒœแƒ˜แƒชแƒ“แƒ˜แƒก, แƒแƒ›แƒ˜แƒขแƒแƒ› โ€žแƒœแƒ”แƒ“แƒšแƒ”แƒฃแƒšแƒ˜ แƒ™แƒแƒ“แƒ˜แƒกโ€œ แƒžแƒ˜แƒ แƒ“แƒแƒžแƒ˜แƒ  แƒกแƒšแƒแƒ˜แƒ“แƒจแƒ˜ แƒกแƒฌแƒ แƒแƒคแƒแƒ“ แƒ™แƒแƒžแƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒ“แƒ แƒฉแƒแƒกแƒ›แƒ˜แƒก แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒšแƒแƒ‘แƒ แƒคแƒแƒกแƒ“แƒแƒฃแƒ“แƒ”แƒ‘แƒ”แƒšแƒ˜แƒ, แƒ แƒแƒช แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒก แƒ“แƒ”แƒ›แƒ แƒ’แƒแƒœแƒแƒฎแƒšแƒ”แƒ‘แƒแƒก แƒกแƒ˜แƒœแƒขแƒแƒฅแƒกแƒ˜แƒก แƒฎแƒแƒ–แƒ’แƒแƒกแƒ›แƒ˜แƒก แƒ’แƒแƒ แƒ”แƒจแƒ”.

แƒกแƒแƒ—แƒแƒฃแƒ แƒ˜, แƒ˜แƒšแƒฃแƒกแƒขแƒ แƒแƒชแƒ˜แƒ แƒ“แƒ แƒขแƒ”แƒฅแƒกแƒขแƒ˜ (แƒกแƒšแƒแƒ˜แƒ“แƒ–แƒ” แƒ’แƒแƒœแƒšแƒแƒ’แƒ”แƒ‘แƒ แƒฎแƒ“แƒ”แƒ‘แƒ แƒฃแƒฏแƒ แƒ”แƒ“แƒ”แƒ‘แƒจแƒ˜ AsciiDoctor แƒ›แƒแƒ’แƒ˜แƒ“แƒ”แƒ‘แƒ˜):

== Kafka Streams in Action

[.custom-style]
[cols="30a,70a"]
|===
|image::KSIA.jpg[]
|
* **William Bejeck**, +
โ€œKafka Streams in Actionโ€, November 2018
* ะŸั€ะธะผะตั€ั‹ ะบะพะดะฐ ะดะปั Kafka 1.0
|===

แƒจแƒ”แƒ“แƒ”แƒ’แƒ˜

แƒžแƒ แƒ”แƒ–แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ แƒ แƒแƒ’แƒแƒ แƒช แƒ™แƒแƒ“แƒ˜, แƒแƒœ แƒ แƒแƒขแƒแƒ› แƒแƒฆแƒแƒ  แƒ•แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘ Powerpoint-แƒก

แƒ–แƒแƒ’แƒฏแƒ”แƒ  แƒกแƒแƒ—แƒแƒฃแƒ แƒ˜ แƒแƒ  แƒแƒ แƒ˜แƒก แƒกแƒแƒญแƒ˜แƒ แƒ แƒ“แƒ แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒแƒ–แƒ แƒ˜แƒก แƒกแƒแƒ˜แƒšแƒฃแƒกแƒขแƒ แƒแƒชแƒ˜แƒแƒ“ แƒกแƒแƒญแƒ˜แƒ แƒแƒ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒกแƒ แƒฃแƒšแƒ˜ แƒ”แƒ™แƒ แƒแƒœแƒ˜แƒก แƒกแƒฃแƒ แƒแƒ—แƒ˜:

[%notitle]
== ะ–ะธั‚ัŒ ะฒ ะปะตะณะฐัะธ ะฝะตะปะตะณะบะพ

image::swampman.jpg[canvas, size=cover]

แƒจแƒ”แƒ“แƒ”แƒ’แƒ˜

แƒžแƒ แƒ”แƒ–แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ แƒ แƒแƒ’แƒแƒ แƒช แƒ™แƒแƒ“แƒ˜, แƒแƒœ แƒ แƒแƒขแƒแƒ› แƒแƒฆแƒแƒ  แƒ•แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘ Powerpoint-แƒก

แƒฎแƒจแƒ˜แƒ แƒแƒ“ แƒ˜แƒ“แƒ”แƒแƒก แƒกแƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒ แƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ˜ แƒ“แƒ˜แƒแƒ’แƒ แƒแƒ›แƒ˜แƒก แƒ›แƒฎแƒแƒ แƒ“แƒแƒญแƒ”แƒ แƒ, โ€žแƒ˜แƒกแƒ แƒ”แƒ‘แƒ˜แƒ— แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ™แƒ•แƒแƒ“แƒ แƒแƒขแƒ”แƒ‘แƒ˜แƒกโ€œ แƒกแƒแƒฎแƒ˜แƒ—. แƒกแƒแƒ‘แƒ”แƒ“แƒœแƒ˜แƒ”แƒ แƒแƒ“, AsciiDoctor แƒ˜แƒœแƒขแƒ”แƒ’แƒ แƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒแƒกแƒ—แƒแƒœ แƒ’แƒ แƒแƒคแƒ˜แƒ•แƒ˜แƒ–แƒ˜ โ€” แƒ”แƒœแƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ’แƒแƒซแƒšแƒ”แƒ•แƒ— แƒแƒฆแƒฌแƒ”แƒ แƒแƒ— แƒ’แƒ แƒแƒคแƒ˜แƒ™แƒฃแƒšแƒ˜ แƒ“แƒ˜แƒแƒ’แƒ แƒแƒ›แƒ”แƒ‘แƒ˜ แƒฌแƒ•แƒ”แƒ แƒแƒ”แƒ‘แƒ˜แƒก แƒแƒฆแƒฌแƒ”แƒ แƒ˜แƒšแƒแƒ‘แƒ˜แƒกแƒ แƒ“แƒ แƒ›แƒแƒ— แƒจแƒแƒ แƒ˜แƒก แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒกแƒแƒคแƒฃแƒซแƒ•แƒ”แƒšแƒ–แƒ”. Graphviz แƒ˜แƒฆแƒ”แƒ‘แƒก แƒกแƒแƒกแƒฌแƒแƒ•แƒšแƒ แƒ›แƒ แƒฃแƒ“แƒก, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ›แƒแƒฌแƒแƒ“แƒ”แƒ‘แƒฃแƒš แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ”แƒ‘แƒ–แƒ” แƒ“แƒแƒงแƒ แƒ“แƒœแƒแƒ‘แƒ˜แƒ—, แƒแƒ›แƒ˜แƒก แƒ’แƒแƒ™แƒ”แƒ—แƒ”แƒ‘แƒ แƒกแƒแƒ™แƒ›แƒแƒแƒ“ แƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ˜แƒ! แƒแƒกแƒ” แƒ’แƒแƒ›แƒแƒ˜แƒงแƒฃแƒ แƒ”แƒ‘แƒ:

== ะŸะธัˆะตะผ โ€œBet Totalling Appโ€

ะšะฐะบะพะฒะฐ ััƒะผะผะฐ ะฒั‹ะฟะปะฐั‚ ะฟะพ ัะดะตะปะฐะฝะฝั‹ะผ ัั‚ะฐะฒะบะฐะผ, ะตัะปะธ ัั‹ะณั€ะฐะตั‚ ะธัั…ะพะด?

[graphviz, "counting-topology.png"]
-----
digraph G {
graph [ dpi = 150 ];
rankdir="LR";
node [fontsize=18; shape="circle"; fixedsize="true"; width="1.1"];
Store [shape="cylinder"; label="Local Store"; fixedsize="true"; width="1.5"]
Source -> MapVal -> Sum -> Sink
Sum -> Store [dir=both; label=" n "]
{rank = same; Store; Sum;}
}
-----

แƒจแƒ”แƒ“แƒ”แƒ’แƒ˜

แƒžแƒ แƒ”แƒ–แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ แƒ แƒแƒ’แƒแƒ แƒช แƒ™แƒแƒ“แƒ˜, แƒแƒœ แƒ แƒแƒขแƒแƒ› แƒแƒฆแƒแƒ  แƒ•แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘ Powerpoint-แƒก

แƒ˜แƒ› แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜, แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒกแƒแƒญแƒ˜แƒ แƒแƒ แƒœแƒแƒฎแƒแƒขแƒ–แƒ” แƒฌแƒแƒ แƒฌแƒ”แƒ แƒ˜แƒก แƒ แƒ”แƒ“แƒแƒฅแƒขแƒ˜แƒ แƒ”แƒ‘แƒ, แƒ˜แƒกแƒ แƒ˜แƒก แƒ›แƒ˜แƒ›แƒแƒ แƒ—แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒชแƒ•แƒšแƒ แƒ“แƒ แƒ.แƒจ., แƒ”แƒก แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒ™แƒ”แƒ—แƒ“แƒ”แƒก แƒžแƒ˜แƒ แƒ“แƒแƒžแƒ˜แƒ  แƒžแƒ แƒ”แƒ–แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ˜แƒก แƒ™แƒแƒ“แƒจแƒ˜, แƒœแƒแƒชแƒ•แƒšแƒแƒ“ แƒ˜แƒ›แƒ˜แƒกแƒ, แƒ แƒแƒ› แƒกแƒฃแƒ แƒแƒ—แƒ˜ แƒ’แƒแƒ“แƒแƒฎแƒแƒ–แƒแƒ— แƒกแƒแƒ“แƒ›แƒ” แƒ“แƒ แƒฎแƒ”แƒšแƒแƒฎแƒšแƒ แƒฉแƒแƒ“แƒแƒ— แƒกแƒšแƒแƒ˜แƒ“แƒจแƒ˜. แƒ”แƒก แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒœแƒแƒ“ แƒ–แƒ แƒ“แƒ˜แƒก แƒกแƒšแƒแƒ˜แƒ“แƒ”แƒ‘แƒ–แƒ” แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ˜แƒก แƒกแƒ˜แƒฉแƒฅแƒแƒ แƒ”แƒก.

แƒฃแƒคแƒ แƒ แƒ แƒ—แƒฃแƒšแƒ˜ แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜:

== ะะตะฒะพัะฟั€ะพะธะทะฒะพะดะธะผะฐั ัะฑะพั€ะบะฐ
[graphviz, "unstable-update.png"]
-----
digraph G {
  rankdir="LR";
  graph [ dpi = 150 ];
  u -> r0;
  u[shape=plaintext; label="linter updaten+ 13 warnings"]
  r0[shape=point, width = 0]
  r1 -> r0[ arrowhead = none, label="master branch" ];
  r0-> r2 [];   b1 -> b4;  r1->b1
  r1[label="150nwarnings"]
  b1[label="ยฑ 0nwarnings"]
  b4[label="ยฑ 0nwarnings"]
  b4->r2
  r2[label="163nwarnings", color="red", xlabel=<<font color="red">merge blocked</font>>]
  {rank = same; u; r0; b4;}
}
-----

แƒจแƒ”แƒ“แƒ”แƒ’แƒ˜

แƒžแƒ แƒ”แƒ–แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ แƒ แƒแƒ’แƒแƒ แƒช แƒ™แƒแƒ“แƒ˜, แƒแƒœ แƒ แƒแƒขแƒแƒ› แƒแƒฆแƒแƒ  แƒ•แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘ Powerpoint-แƒก

แƒกแƒฎแƒ•แƒแƒ—แƒ แƒจแƒแƒ แƒ˜แƒก, แƒ›แƒแƒกแƒแƒฎแƒ”แƒ แƒฎแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ Graphviz-แƒ˜แƒก แƒ”แƒฅแƒกแƒžแƒ”แƒ แƒ˜แƒ›แƒ”แƒœแƒขแƒ˜ แƒ“แƒ แƒ’แƒ•แƒ”แƒ แƒ“แƒ–แƒ” แƒกแƒฃแƒ แƒแƒ—แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒ แƒ—แƒ•แƒ Graphviz แƒแƒœแƒšแƒแƒ˜แƒœ แƒ แƒ”แƒŸแƒ˜แƒ›แƒจแƒ˜.

แƒ“แƒ แƒ‘แƒแƒšแƒแƒก, แƒ—แƒฃ แƒ—แƒฅแƒ•แƒ”แƒœ แƒ’แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ— แƒกแƒšแƒแƒ˜แƒ“แƒจแƒ˜ แƒฉแƒแƒกแƒ•แƒแƒ— แƒ“แƒ˜แƒแƒ’แƒ แƒแƒ›แƒ, แƒ™แƒšแƒแƒกแƒ˜แƒก แƒ“แƒ˜แƒแƒ’แƒ แƒแƒ›แƒ แƒแƒœ แƒกแƒฎแƒ•แƒ แƒกแƒขแƒแƒœแƒ“แƒแƒ แƒขแƒ˜แƒ–แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ“แƒ˜แƒแƒ’แƒ แƒแƒ›แƒ, แƒ›แƒแƒจแƒ˜แƒœ AsciiDoctor-แƒ—แƒแƒœ แƒ˜แƒœแƒขแƒ”แƒ’แƒ แƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒกแƒฎแƒ•แƒ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒ“แƒ”แƒก แƒกแƒแƒ›แƒแƒจแƒ•แƒ”แƒšแƒแƒจแƒ˜. PlantUML. แƒฉแƒ”แƒ›แƒ›แƒ แƒ™แƒแƒšแƒ”แƒ’แƒแƒ› แƒœแƒ˜แƒ™แƒแƒšแƒแƒ˜ แƒžแƒแƒขแƒแƒจแƒœแƒ˜แƒ™แƒแƒ•แƒ›แƒ แƒ“แƒแƒฌแƒ”แƒ แƒ PlantUML-แƒ˜แƒก แƒคแƒแƒ แƒ—แƒ แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘ แƒชแƒแƒšแƒ™แƒ” แƒžแƒแƒกแƒขแƒ˜.

แƒžแƒ แƒ”แƒ–แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ˜แƒก แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜แƒก แƒ’แƒแƒ“แƒแƒฅแƒชแƒ”แƒ•แƒ แƒ•แƒ”แƒ แƒกแƒ˜แƒ˜แƒก แƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ˜แƒก แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒแƒจแƒ˜ แƒจแƒ”แƒœแƒแƒฎแƒฃแƒš แƒ™แƒแƒ“แƒแƒ“ แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒ”แƒšแƒก แƒฎแƒ“แƒ˜แƒก แƒžแƒ แƒ”แƒ–แƒ”แƒœแƒขแƒแƒชแƒ˜แƒแƒ–แƒ” แƒ”แƒ แƒ—แƒแƒ‘แƒšแƒ˜แƒ•แƒ˜ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ˜แƒก แƒแƒ แƒ’แƒแƒœแƒ˜แƒ–แƒ”แƒ‘แƒแƒก, แƒžแƒ˜แƒ แƒ•แƒ”แƒš แƒ แƒ˜แƒ’แƒจแƒ˜, แƒ™แƒแƒœแƒขแƒ”แƒœแƒขแƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒกแƒ แƒ“แƒ แƒ“แƒ˜แƒ–แƒแƒ˜แƒœแƒ˜แƒก แƒแƒ›แƒแƒชแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒ˜แƒฏแƒ•แƒœแƒแƒก. แƒกแƒšแƒแƒ˜แƒ“แƒ”แƒ‘แƒ˜แƒก แƒ“แƒ˜แƒ–แƒแƒ˜แƒœแƒ˜ (แƒจแƒ แƒ˜แƒคแƒขแƒ”แƒ‘แƒ˜, แƒคแƒแƒœแƒ˜, แƒฉแƒแƒฆแƒ แƒ›แƒแƒ•แƒ”แƒ‘แƒ˜) RevealJS-แƒจแƒ˜ แƒแƒฆแƒฌแƒ”แƒ แƒ˜แƒšแƒ˜แƒ CSS-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—. แƒฉแƒ”แƒ›แƒ˜ แƒžแƒ˜แƒ แƒแƒ“แƒ˜ แƒฃแƒœแƒแƒ แƒ˜ CSS-แƒ—แƒแƒœ แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒ˜แƒ— แƒกแƒแƒฃแƒ™แƒ”แƒ—แƒ”แƒกแƒแƒ“ แƒแƒ แƒ˜แƒก แƒ’แƒแƒ“แƒ›แƒแƒชแƒ”แƒ›แƒฃแƒšแƒ˜ แƒ”แƒก gif - แƒ›แƒแƒ’แƒ แƒแƒ› แƒ”แƒก แƒแƒ  แƒแƒ แƒ˜แƒก แƒกแƒแƒจแƒ˜แƒœแƒ”แƒšแƒ˜, แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒแƒ แƒ˜แƒแƒœ แƒแƒ“แƒแƒ›แƒ˜แƒแƒœแƒ”แƒ‘แƒ˜, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ”แƒœ CSS-แƒ˜แƒ— แƒฉแƒ”แƒ›แƒ–แƒ” แƒ‘แƒ”แƒ•แƒ แƒแƒ“ แƒฃแƒคแƒ แƒ แƒแƒกแƒขแƒแƒขแƒฃแƒ แƒแƒ“ แƒ“แƒ แƒกแƒฌแƒ แƒแƒคแƒแƒ“. แƒจแƒ”แƒ“แƒ”แƒ’แƒแƒ“, แƒ’แƒแƒ›แƒแƒ“แƒ˜แƒก, แƒ แƒแƒ› แƒžแƒ แƒ”แƒ–แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ˜แƒก แƒ•แƒแƒ“แƒ˜แƒก แƒกแƒฌแƒ แƒแƒคแƒแƒ“ แƒ›แƒแƒแƒฎแƒšแƒแƒ”แƒ‘แƒแƒกแƒ—แƒแƒœ แƒ”แƒ แƒ—แƒแƒ“, แƒฉแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ•แƒ˜แƒซแƒšแƒ˜แƒ แƒ”แƒ แƒ—แƒ“แƒ แƒแƒฃแƒšแƒแƒ“ แƒ•แƒ˜แƒ›แƒฃแƒจแƒแƒแƒ— แƒกแƒฎแƒ•แƒแƒ“แƒแƒกแƒฎแƒ•แƒ แƒคแƒแƒ˜แƒšแƒ–แƒ” Git-แƒ˜แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒ˜แƒ— แƒ“แƒ แƒ’แƒแƒœแƒ•แƒแƒ•แƒ˜แƒ—แƒแƒ แƒแƒ— แƒ—แƒแƒœแƒแƒ›แƒจแƒ แƒแƒ›แƒšแƒแƒ‘แƒ˜แƒก แƒกแƒ˜แƒฉแƒฅแƒแƒ แƒ”, แƒ แƒแƒช แƒจแƒ”แƒฃแƒซแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ .pptx แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜แƒก แƒคแƒแƒกแƒขแƒ˜แƒ— แƒ’แƒแƒ’แƒ–แƒแƒ•แƒœแƒ˜แƒกแƒแƒก.

HTML แƒ’แƒ•แƒ”แƒ แƒ“แƒ˜แƒก แƒแƒ’แƒ”แƒ‘แƒ แƒกแƒšแƒแƒ˜แƒ“แƒ”แƒ‘แƒ˜แƒ—

แƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ˜ แƒขแƒ”แƒฅแƒกแƒขแƒ˜แƒก แƒฌแƒงแƒแƒ แƒแƒ”แƒ‘แƒ˜ แƒจแƒ”แƒกแƒแƒœแƒ˜แƒจแƒœแƒแƒ•แƒ˜แƒ, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ แƒแƒ’แƒแƒ  แƒแƒฌแƒงแƒแƒ‘แƒ— แƒ›แƒแƒ— แƒ—แƒแƒ•แƒแƒ“ แƒžแƒ แƒ”แƒ–แƒ”แƒœแƒขแƒแƒชแƒ˜แƒแƒจแƒ˜?

AsciiDoctor แƒแƒ แƒ˜แƒก Ruby-แƒจแƒ˜ แƒ“แƒแƒฌแƒ”แƒ แƒ˜แƒšแƒ˜ แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜ แƒ“แƒ แƒ›แƒ˜แƒกแƒ˜ แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒ˜แƒก แƒ แƒแƒ›แƒ“แƒ”แƒœแƒ˜แƒ›แƒ” แƒ’แƒ–แƒ แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒก. แƒžแƒ˜แƒ แƒ•แƒ”แƒš แƒ แƒ˜แƒ’แƒจแƒ˜, แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ“แƒแƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒแƒ— Ruby แƒ”แƒœแƒ แƒ“แƒ แƒ’แƒแƒฃแƒจแƒ•แƒแƒ— asciidoctor แƒžแƒ˜แƒ แƒ“แƒแƒžแƒ˜แƒ , แƒ แƒแƒช แƒแƒšแƒ‘แƒแƒ— แƒงแƒ•แƒ”แƒšแƒแƒ–แƒ” แƒแƒฎแƒšแƒแƒกแƒแƒ Ruby แƒ“แƒ”แƒ•แƒ”แƒšแƒแƒžแƒ”แƒ แƒ”แƒ‘แƒ—แƒแƒœ.

แƒ—แƒฃ แƒแƒ  แƒ’แƒกแƒฃแƒ แƒ— แƒแƒ แƒ”แƒฃแƒšแƒแƒ‘แƒ Ruby-แƒ˜แƒก แƒ“แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒแƒจแƒ˜, แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— แƒ“แƒแƒ™แƒ”แƒ แƒ˜แƒก แƒกแƒฃแƒ แƒแƒ—แƒ˜ แƒแƒกแƒชแƒ˜แƒ˜แƒ“แƒแƒฅแƒขแƒแƒ แƒ˜/แƒ“แƒแƒ™แƒ”แƒ -แƒแƒกแƒชแƒ˜แƒ“แƒแƒฅแƒขแƒแƒ แƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒจแƒ˜แƒช แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒ˜แƒกแƒแƒก แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ“แƒแƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒแƒ— แƒกแƒแƒฅแƒแƒฆแƒแƒšแƒ“แƒ” แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜แƒก แƒฌแƒงแƒแƒ แƒแƒ”แƒ‘แƒ—แƒแƒœ VOLUME-แƒ˜แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒ˜แƒ— แƒ“แƒ แƒ›แƒ˜แƒ˜แƒฆแƒแƒ— แƒจแƒ”แƒ“แƒ”แƒ’แƒ˜ แƒ›แƒแƒชแƒ”แƒ›แƒฃแƒš แƒแƒ“แƒ’แƒ˜แƒšแƒแƒก.

แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ›แƒ” แƒแƒ•แƒ˜แƒ แƒฉแƒ˜แƒ”, แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒ แƒ™แƒ•แƒ”แƒฃแƒšแƒฌแƒ˜แƒšแƒแƒ“ แƒ›แƒแƒฃแƒšแƒแƒ“แƒœแƒ”แƒšแƒแƒ“ แƒฉแƒแƒœแƒ“แƒ”แƒก, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ˜แƒก แƒงแƒ•แƒ”แƒšแƒแƒ–แƒ” แƒ›แƒแƒกแƒแƒฎแƒ”แƒ แƒฎแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ แƒฉแƒ”แƒ›แƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ’แƒแƒ แƒช Java แƒ“แƒ”แƒ•แƒ”แƒšแƒแƒžแƒ”แƒ แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. แƒ˜แƒก แƒแƒ  แƒกแƒแƒญแƒ˜แƒ แƒแƒ”แƒ‘แƒก Ruby-แƒ˜แƒก แƒแƒœ แƒ“แƒแƒ™แƒ”แƒ แƒ˜แƒก แƒ˜แƒœแƒกแƒขแƒแƒšแƒแƒชแƒ˜แƒแƒก, แƒ›แƒแƒ’แƒ แƒแƒ› แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ’แƒแƒซแƒšแƒ”แƒ•แƒ— แƒจแƒ”แƒฅแƒ›แƒœแƒแƒ— แƒกแƒšแƒแƒ˜แƒ“แƒ”แƒ‘แƒ˜ Maven แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—.

แƒกแƒแƒฅแƒ›แƒ” แƒ˜แƒ›แƒแƒจแƒ˜แƒ, แƒ แƒแƒ› แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜ แƒฏแƒ แƒแƒ‘แƒ˜ - Ruby แƒ”แƒœแƒ˜แƒก Java แƒ˜แƒ›แƒžแƒšแƒ”แƒ›แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ แƒ˜แƒ›แƒ“แƒ”แƒœแƒแƒ“ แƒ™แƒแƒ แƒ’แƒ˜แƒ, แƒ แƒแƒ› แƒ’แƒแƒซแƒšแƒ”แƒ•แƒ— แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ’แƒแƒฃแƒจแƒ•แƒแƒ— แƒ—แƒ˜แƒ—แƒฅแƒ›แƒ˜แƒก แƒงแƒ•แƒ”แƒšแƒแƒคแƒ”แƒ แƒ˜, แƒ แƒแƒช Ruby-แƒกแƒ—แƒ•แƒ˜แƒก แƒแƒ แƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒšแƒ˜ Java แƒ›แƒแƒœแƒฅแƒแƒœแƒแƒจแƒ˜, แƒฎแƒแƒšแƒ AsciiDoctor-แƒ˜แƒก แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒ JRuby-แƒ˜แƒก แƒ”แƒ แƒ—-แƒ”แƒ แƒ—แƒ˜ แƒงแƒ•แƒ”แƒšแƒแƒ–แƒ” แƒ’แƒแƒ•แƒ แƒชแƒ”แƒšแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒแƒ.

ะะฐะปะธั‡ะธะต asciidoctor-maven-plugin แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ’แƒแƒซแƒšแƒ”แƒ•แƒ— แƒจแƒ”แƒแƒ’แƒ แƒแƒ•แƒแƒ— AsciiDoctor แƒ“แƒแƒ™แƒฃแƒ›แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒ แƒ˜แƒก Java แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜แƒก แƒœแƒแƒฌแƒ˜แƒšแƒ˜ (แƒ แƒแƒ›แƒ”แƒšแƒกแƒแƒช แƒฉแƒ•แƒ”แƒœ แƒแƒฅแƒขแƒ˜แƒฃแƒ แƒแƒ“ แƒ•แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ—). แƒแƒ›แƒแƒ•แƒ“แƒ แƒแƒฃแƒšแƒแƒ“, AsciiDoctor แƒ“แƒ JRuby แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒแƒ“ แƒ˜แƒขแƒ•แƒ˜แƒ แƒ—แƒ”แƒ‘แƒ Maven-แƒ˜แƒก แƒ›แƒ˜แƒ”แƒ , แƒฎแƒแƒšแƒ AsciiDoctor แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก JRuby แƒ’แƒแƒ แƒ”แƒ›แƒแƒจแƒ˜: แƒแƒ  แƒแƒ แƒ˜แƒก แƒกแƒแƒญแƒ˜แƒ แƒ แƒ›แƒแƒœแƒฅแƒแƒœแƒแƒ–แƒ” แƒ แƒแƒ˜แƒ›แƒ”แƒก แƒ“แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ! (แƒžแƒแƒ™แƒ”แƒขแƒ˜แƒก แƒ’แƒแƒ›แƒแƒ™แƒšแƒ”แƒ‘แƒ˜แƒ— graphviz, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒกแƒแƒญแƒ˜แƒ แƒแƒ, แƒ—แƒฃ แƒ’แƒกแƒฃแƒ แƒ— แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— GraphViz แƒแƒœ PlantUML แƒ’แƒ แƒแƒคแƒ˜แƒ™แƒ.) แƒฃแƒ‘แƒ แƒแƒšแƒแƒ“ แƒ’แƒแƒœแƒแƒ—แƒแƒ•แƒกแƒ”แƒ— แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ .adoc แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜ แƒกแƒแƒฅแƒแƒฆแƒแƒšแƒ“แƒ”แƒจแƒ˜ src/main/asciidoc/. แƒแƒฅ แƒžแƒแƒ›แƒœแƒ˜แƒ™แƒ˜แƒก แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜แƒกแƒšแƒแƒ˜แƒ“แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒ’แƒ แƒแƒ•แƒ”แƒ‘แƒ แƒ“แƒ˜แƒแƒ’แƒ แƒแƒ›แƒ”แƒ‘แƒ˜แƒ—.

แƒ’แƒแƒ“แƒแƒ˜แƒงแƒ•แƒแƒœแƒ”แƒ— แƒกแƒšแƒแƒ˜แƒ“แƒ”แƒ‘แƒ˜ PDF-แƒจแƒ˜

แƒ›แƒ˜แƒฃแƒฎแƒ”แƒ“แƒแƒ•แƒแƒ“ แƒ˜แƒ›แƒ˜แƒกแƒ, แƒ แƒแƒ› แƒกแƒšแƒแƒ˜แƒ“แƒ”แƒ‘แƒ˜แƒก HTML แƒ•แƒ”แƒ แƒกแƒ˜แƒ แƒกแƒแƒ™แƒ›แƒแƒแƒ“ แƒ—แƒ•แƒ˜แƒ—แƒ™แƒ›แƒแƒ แƒ˜แƒ, แƒ›แƒแƒ˜แƒœแƒช แƒแƒฃแƒชแƒ˜แƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ แƒกแƒšแƒแƒ˜แƒ“แƒ”แƒ‘แƒ˜แƒก PDF แƒ•แƒ”แƒ แƒกแƒ˜แƒ˜แƒก แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒ. แƒžแƒ˜แƒ แƒ•แƒ”แƒš แƒ แƒ˜แƒ’แƒจแƒ˜, แƒฎแƒ“แƒ”แƒ‘แƒ, แƒ แƒแƒ› แƒ–แƒแƒ’แƒ˜แƒ”แƒ แƒ— แƒ™แƒแƒœแƒคแƒ”แƒ แƒ”แƒœแƒชแƒ˜แƒแƒ–แƒ”, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒ  แƒแƒซแƒšแƒ”แƒ•แƒก แƒกแƒžแƒ˜แƒ™แƒ”แƒ แƒก แƒกแƒแƒ™แƒฃแƒ—แƒแƒ แƒ˜ แƒšแƒ”แƒžแƒขแƒแƒžแƒ˜แƒก แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒšแƒแƒ‘แƒแƒก, แƒ›แƒแƒ— แƒกแƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ— แƒกแƒšแƒแƒ˜แƒ“แƒ”แƒ‘แƒ˜ "แƒ›แƒ™แƒแƒชแƒ แƒแƒ“ pptx แƒแƒœ pdf แƒคแƒแƒ แƒ›แƒแƒขแƒจแƒ˜", แƒ˜แƒ›แƒ˜แƒก แƒ›แƒแƒšแƒแƒ“แƒ˜แƒœแƒ˜แƒก แƒ’แƒแƒ แƒ”แƒจแƒ”, แƒ แƒแƒ› แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒแƒกแƒ”แƒ•แƒ” HTML-แƒจแƒ˜แƒ. แƒ›แƒ”แƒแƒ แƒ”แƒช, แƒ™แƒแƒ แƒ’แƒ˜ แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒ แƒแƒ แƒ’แƒแƒœแƒ˜แƒ–แƒแƒขแƒแƒ แƒ”แƒ‘แƒก แƒ’แƒแƒฃแƒ’แƒ–แƒแƒ•แƒœแƒแƒ— แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒกแƒšแƒแƒ˜แƒ“แƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒฃแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒ”แƒšแƒ˜ แƒ•แƒ”แƒ แƒกแƒ˜แƒ, แƒ แƒแƒ’แƒแƒ แƒช แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒœแƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒ˜ แƒ˜แƒงแƒ แƒ›แƒแƒฎแƒกแƒ”แƒœแƒ”แƒ‘แƒแƒจแƒ˜, PDF แƒคแƒแƒ แƒ›แƒแƒขแƒจแƒ˜ แƒคแƒแƒ˜แƒšแƒ˜แƒก แƒ™แƒแƒœแƒคแƒ”แƒ แƒ”แƒœแƒชแƒ˜แƒ˜แƒก แƒ›แƒแƒกแƒแƒšแƒ”แƒ‘แƒจแƒ˜ แƒ’แƒแƒ›แƒแƒกแƒแƒฅแƒ•แƒ”แƒงแƒœแƒ”แƒ‘แƒšแƒแƒ“.

แƒกแƒแƒ‘แƒ”แƒ“แƒœแƒ˜แƒ”แƒ แƒแƒ“, Node.js แƒฃแƒขแƒ˜แƒšแƒ˜แƒขแƒ แƒฃแƒ›แƒ™แƒšแƒแƒ•แƒ“แƒ”แƒ‘แƒ แƒแƒ› แƒแƒ›แƒแƒชแƒแƒœแƒแƒก. decktapeแƒ‘แƒแƒ–แƒแƒ–แƒ” แƒแƒ’แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ›แƒแƒ แƒ˜แƒแƒœแƒ”แƒขแƒฃแƒšแƒ˜ โ€” แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒ˜แƒ–แƒแƒชแƒ˜แƒ˜แƒก แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ”แƒ‘แƒ˜ Chrome แƒ‘แƒ แƒแƒฃแƒ–แƒ”แƒ แƒ˜แƒก แƒ›แƒแƒ แƒ—แƒ•แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ’แƒแƒ“แƒแƒ˜แƒงแƒ•แƒแƒœแƒแƒ— RevealJS แƒžแƒ แƒ”แƒ–แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ PDF-แƒจแƒ˜ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒ—

node decktape.js -s 3200x1800 --slides 1-500 
  reveal "file:///index.html?fragments=true" slides.pdf  

แƒแƒ แƒ˜ แƒฎแƒ แƒ˜แƒ™แƒ˜ แƒ“แƒ”แƒ™แƒขแƒแƒžแƒ˜แƒก แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒ˜แƒกแƒแƒก, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒฃแƒœแƒ“แƒ แƒ’แƒแƒ›แƒแƒ’แƒ•แƒ”แƒขแƒแƒœแƒ แƒกแƒแƒชแƒ“แƒ”แƒšแƒ˜ แƒ“แƒ แƒจแƒ”แƒชแƒ“แƒแƒ›แƒ˜แƒก แƒ’แƒ–แƒ˜แƒ—:

  • แƒ’แƒแƒ แƒฉแƒ”แƒ•แƒแƒ“แƒแƒ‘แƒ แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ˜แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒ˜แƒ— -s แƒฃแƒœแƒ“แƒ แƒ˜แƒงแƒแƒก แƒ›แƒ˜แƒ—แƒ˜แƒ—แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒแƒ แƒ›แƒแƒ’แƒ˜ แƒ–แƒฆแƒ•แƒ แƒ˜แƒ—, แƒฌแƒ˜แƒœแƒแƒแƒฆแƒ›แƒ“แƒ”แƒ’ แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ˜แƒงแƒแƒก แƒžแƒ แƒแƒ‘แƒšแƒ”แƒ›แƒ”แƒ‘แƒ˜ แƒ™แƒแƒœแƒ•แƒ”แƒ แƒขแƒแƒชแƒ˜แƒ˜แƒก แƒจแƒ”แƒ“แƒ”แƒ’แƒ”แƒ‘แƒ—แƒแƒœ แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒ˜แƒ—

  • แƒžแƒ แƒ”แƒ–แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ˜แƒก HTML แƒ•แƒ”แƒ แƒกแƒ˜แƒ˜แƒก URL-แƒจแƒ˜ แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒ’แƒแƒ˜แƒแƒ แƒแƒ— แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ˜ ?fragments=true, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒก แƒชแƒแƒšแƒ™แƒ” PDF แƒ’แƒ•แƒ”แƒ แƒ“แƒก แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒกแƒšแƒแƒ˜แƒ“แƒ˜แƒก แƒงแƒแƒ•แƒ”แƒšแƒ˜ แƒจแƒฃแƒแƒšแƒ”แƒ“แƒฃแƒ แƒ˜ แƒ›แƒ“แƒ’แƒแƒ›แƒแƒ แƒ”แƒแƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก (แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, แƒฎแƒฃแƒ—แƒ˜ แƒ’แƒ•แƒ”แƒ แƒ“แƒ˜ แƒฎแƒฃแƒ—แƒ˜ แƒžแƒฃแƒœแƒฅแƒขแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ—แƒฃ แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒœแƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒ˜แƒ แƒ”แƒ แƒ—แƒ›แƒแƒœแƒ”แƒ—แƒ˜แƒก แƒ›แƒ˜แƒงแƒแƒšแƒ”แƒ‘แƒ˜แƒ—). แƒ”แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ›แƒแƒ’แƒชแƒ”แƒ›แƒ— แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— แƒแƒกแƒ”แƒ—แƒ˜ PDF แƒ“แƒแƒ›แƒแƒฃแƒ™แƒ˜แƒ“แƒ”แƒ‘แƒšแƒแƒ“, แƒ แƒแƒ’แƒแƒ แƒช แƒžแƒ แƒ”แƒ–แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ แƒ›แƒแƒฎแƒกแƒ”แƒœแƒ”แƒ‘แƒ˜แƒก แƒ“แƒ แƒแƒก.

แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒ˜ แƒจแƒ”แƒ™แƒ แƒ”แƒ‘แƒ แƒ“แƒ แƒ’แƒแƒ›แƒแƒฅแƒ•แƒ”แƒงแƒœแƒ”แƒ‘แƒ แƒ˜แƒœแƒขแƒ”แƒ แƒœแƒ”แƒขแƒจแƒ˜

แƒ›แƒแƒกแƒแƒฎแƒ”แƒ แƒฎแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ, แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒกแƒšแƒแƒ˜แƒ“แƒ”แƒ‘แƒ˜ แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒแƒ“ แƒจแƒ”แƒ“แƒ’แƒ”แƒœแƒ˜แƒšแƒ˜แƒ แƒ•แƒ”แƒ แƒกแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ˜แƒก แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒแƒจแƒ˜ แƒชแƒ•แƒšแƒ˜แƒšแƒ”แƒ‘แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒขแƒแƒœแƒ˜แƒกแƒแƒก แƒ“แƒ แƒ™แƒ˜แƒ“แƒ”แƒ• แƒฃแƒคแƒ แƒ แƒ›แƒแƒกแƒแƒฎแƒ”แƒ แƒฎแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ, แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒแƒ“ แƒจแƒ”แƒ“แƒ’แƒ”แƒœแƒ˜แƒšแƒ˜ แƒกแƒšแƒแƒ˜แƒ“แƒ”แƒ‘แƒ˜ แƒ˜แƒœแƒขแƒ”แƒ แƒœแƒ”แƒขแƒจแƒ˜ แƒ’แƒแƒœแƒ—แƒแƒ•แƒกแƒ“แƒ”แƒ‘แƒ แƒกแƒแƒฏแƒแƒ แƒ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. แƒ˜แƒœแƒขแƒ”แƒ แƒœแƒ”แƒขแƒ˜แƒ“แƒแƒœ แƒกแƒšแƒแƒ˜แƒ“แƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒ แƒขแƒ˜แƒ•แƒแƒ“ โ€žแƒ—แƒแƒ›แƒแƒจแƒ˜โ€œ แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ แƒแƒฃแƒ“แƒ˜แƒขแƒแƒ แƒ˜แƒ˜แƒก แƒฌแƒ˜แƒœแƒแƒจแƒ” แƒ˜แƒœแƒขแƒ”แƒ แƒœแƒ”แƒขแƒ—แƒแƒœ แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ แƒ˜ แƒแƒžแƒแƒ แƒแƒขแƒ˜แƒ“แƒแƒœ แƒ“แƒ แƒžแƒ แƒแƒ”แƒฅแƒขแƒแƒ แƒ˜แƒ“แƒแƒœ.

แƒ•แƒ˜แƒœแƒแƒ˜แƒ“แƒแƒœ แƒฉแƒ•แƒ”แƒœ แƒ•แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ— GitHub-แƒก แƒฉแƒ•แƒ”แƒœแƒก แƒ›แƒฃแƒจแƒแƒแƒ‘แƒแƒจแƒ˜, CI แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ˜แƒก แƒ‘แƒฃแƒœแƒ”แƒ‘แƒ แƒ˜แƒ•แƒ˜ แƒแƒ แƒฉแƒ”แƒ•แƒแƒœแƒ˜แƒ TravisCIแƒ“แƒ แƒ›แƒ–แƒ แƒžแƒ แƒ”แƒ–แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒกแƒžแƒ˜แƒœแƒซแƒšแƒแƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก - github.io. แƒ˜แƒ“แƒ”แƒ github.io แƒแƒ แƒ˜แƒก แƒ˜แƒก, แƒ แƒแƒ› แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ แƒ˜ แƒกแƒขแƒแƒขแƒ˜แƒ™แƒฃแƒ แƒ˜ แƒจแƒ˜แƒœแƒแƒแƒ แƒกแƒ˜ แƒ’แƒแƒ›แƒแƒฅแƒ•แƒ”แƒงแƒœแƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒคแƒ˜แƒšแƒ˜แƒแƒšแƒจแƒ˜ gh-pages แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜แƒก GitHub-แƒ–แƒ”, แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒ˜ แƒฎแƒ“แƒ”แƒ‘แƒ แƒ›แƒ˜แƒกแƒแƒ›แƒแƒ แƒ—แƒ–แƒ” <ะฒะฐัˆะต ะธะผั>.gihub.io/<ะฒะฐัˆ ะฟั€ะพะตะบั‚>.

แƒ“แƒแƒแƒกแƒ แƒฃแƒšแƒ”แƒ— TravisCI แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ˜แƒก แƒคแƒแƒ˜แƒšแƒ˜, แƒ›แƒแƒ— แƒจแƒแƒ แƒ˜แƒก แƒ’แƒ•แƒ”แƒ แƒ“แƒ˜แƒก HTML แƒ•แƒ”แƒ แƒกแƒ˜แƒ˜แƒก แƒจแƒ”แƒ“แƒ’แƒ”แƒœแƒ Maven-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—, PDF-แƒจแƒ˜ แƒ’แƒแƒ“แƒแƒงแƒ•แƒแƒœแƒ แƒ“แƒ”แƒ™แƒขแƒแƒžแƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ— แƒ“แƒ แƒจแƒ”แƒ“แƒ”แƒ’แƒ”แƒ‘แƒ˜แƒก แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ แƒ—แƒ”แƒ›แƒแƒจแƒ˜ gh-pages github.io-แƒ–แƒ” แƒ’แƒแƒ›แƒแƒกแƒแƒฅแƒ•แƒ”แƒงแƒœแƒ”แƒ‘แƒšแƒแƒ“, แƒแƒกแƒ” แƒ’แƒแƒ›แƒแƒ˜แƒงแƒฃแƒ แƒ”แƒ‘แƒ แƒแƒกแƒ”.

แƒแƒกแƒ”แƒ—แƒ˜ แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜แƒก แƒแƒกแƒแƒ’แƒ”แƒ‘แƒแƒ“ TravisCI-แƒ˜แƒก แƒ›แƒฎแƒแƒ แƒ”แƒก, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒ“แƒแƒแƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒ˜แƒ แƒแƒ— แƒ’แƒแƒ แƒ”แƒ›แƒแƒก แƒชแƒ•แƒšแƒแƒ“แƒ”แƒ‘แƒ˜

  • GH_REF โ€” แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ github.com/inponomarev/csa-hb
  • GH_TOKEN โ€” GitHub แƒฌแƒ•แƒ“แƒแƒ›แƒ˜แƒก แƒŸแƒ”แƒขแƒแƒœแƒ˜. แƒ›แƒ˜แƒกแƒ˜ แƒ›แƒ˜แƒฆแƒ”แƒ‘แƒ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— GitHub-แƒ“แƒแƒœ แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒžแƒ แƒแƒคแƒ˜แƒšแƒ˜แƒก แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ”แƒ‘แƒจแƒ˜, แƒ“แƒ”แƒ•แƒ”แƒšแƒแƒžแƒ”แƒ แƒ˜แƒก แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ”แƒ‘แƒ˜ -> แƒžแƒ˜แƒ แƒแƒ“แƒ˜ แƒฌแƒ•แƒ“แƒแƒ›แƒ˜แƒก แƒœแƒ˜แƒจแƒœแƒ”แƒ‘แƒ˜. แƒ—แƒฃ แƒ—แƒฅแƒ•แƒ”แƒœ แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒแƒ•แƒ— แƒžแƒ แƒ”แƒ–แƒ”แƒœแƒขแƒแƒชแƒ˜แƒแƒก แƒกแƒแƒฏแƒแƒ แƒ แƒกแƒแƒชแƒแƒ•แƒจแƒ˜, แƒ›แƒแƒจแƒ˜แƒœ แƒแƒ› แƒœแƒ˜แƒจแƒœแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒกแƒแƒ™แƒ›แƒแƒ แƒ˜แƒกแƒ˜แƒ แƒ›แƒ˜แƒฃแƒ—แƒ˜แƒ—แƒแƒ— แƒ”แƒ แƒ—แƒแƒ“แƒ”แƒ แƒ—แƒ˜ แƒฌแƒ•แƒ“แƒแƒ›แƒ˜แƒก แƒ“แƒแƒœแƒ” โ€žแƒกแƒแƒฏแƒแƒ แƒ แƒกแƒแƒชแƒแƒ•แƒ”แƒ‘แƒ–แƒ” แƒฌแƒ•แƒ“แƒแƒ›แƒโ€œ.
  • GH_USER_EMAIL / GH_USER_NAME โ€” แƒกแƒแƒฎแƒ”แƒšแƒ˜/แƒ”แƒšแƒคแƒแƒกแƒขแƒ˜แƒก แƒฌแƒงแƒ•แƒ˜แƒšแƒ˜, แƒ แƒแƒ›แƒšแƒ˜แƒก แƒกแƒแƒฎแƒ”แƒšแƒ˜แƒ—แƒแƒช แƒ’แƒแƒœแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ“แƒ”แƒ‘แƒ แƒซแƒแƒคแƒ–แƒ” แƒ’แƒแƒ“แƒแƒกแƒ•แƒšแƒ gh-pages.

แƒแƒ›แƒ แƒ˜แƒ’แƒแƒ“, GitHub-แƒ–แƒ” แƒžแƒ แƒ”แƒ–แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ˜แƒก แƒ™แƒแƒ“แƒ˜แƒก แƒงแƒแƒ•แƒ”แƒšแƒ˜ แƒฉแƒแƒฌแƒ”แƒ แƒ แƒ˜แƒฌแƒ•แƒ”แƒ•แƒก แƒกแƒšแƒแƒ˜แƒ“แƒ”แƒ‘แƒ˜แƒก แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒแƒ“ แƒแƒฆแƒ“แƒ’แƒ”แƒœแƒแƒก HTML แƒ“แƒ PDF แƒคแƒแƒ แƒ›แƒแƒขแƒ”แƒ‘แƒจแƒ˜ แƒ“แƒ แƒฎแƒ”แƒšแƒแƒฎแƒšแƒ แƒ˜แƒขแƒ•แƒ˜แƒ แƒ—แƒ”แƒ‘แƒ github.io-แƒ–แƒ”. (แƒ แƒ แƒ—แƒฅแƒ›แƒ แƒฃแƒœแƒ“แƒ, github.io-แƒ–แƒ” แƒฃแƒœแƒ“แƒ แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒแƒ— แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ˜แƒก แƒžแƒ แƒ”แƒ–แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ”แƒ‘แƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ—แƒ แƒ’แƒแƒกแƒแƒฏแƒแƒ แƒแƒ”แƒ‘แƒแƒช แƒ’แƒกแƒฃแƒ แƒ—.)

แƒžแƒ แƒแƒ”แƒฅแƒขแƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ”แƒ‘แƒ˜

แƒ“แƒแƒ‘แƒแƒšแƒแƒก, แƒแƒฅ แƒแƒ แƒ˜แƒก แƒ‘แƒ›แƒฃแƒšแƒ˜ แƒžแƒ แƒ”แƒ–แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ˜แƒก แƒžแƒ แƒแƒ”แƒฅแƒขแƒ”แƒ‘แƒ˜แƒก แƒ แƒแƒ›แƒ“แƒ”แƒœแƒ˜แƒ›แƒ” แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ–แƒ” แƒ›แƒแƒ แƒ’แƒ”แƒ‘แƒฃแƒšแƒ˜ Maven แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ”แƒ‘แƒ˜แƒ— แƒ“แƒ CI แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ˜แƒ— Travis-CI-แƒกแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ›แƒ”แƒšแƒ—แƒ แƒ™แƒšแƒแƒœแƒ˜แƒ แƒ”แƒ‘แƒ แƒ“แƒ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒกแƒแƒ™แƒฃแƒ—แƒแƒ แƒ˜ แƒกแƒแƒžแƒ แƒ”แƒ–แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ แƒžแƒ แƒแƒ”แƒฅแƒขแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒกแƒแƒก:

แƒœแƒแƒฎแƒ•แƒแƒ›แƒ“แƒ˜แƒก Powerpoint! แƒแƒ แƒแƒ›แƒ’แƒแƒœแƒ˜แƒ แƒแƒ“แƒ”แƒกแƒ›แƒ” แƒ“แƒแƒ›แƒญแƒ˜แƒ แƒ“แƒ” แƒขแƒ”แƒฅแƒœแƒ˜แƒ™แƒฃแƒ แƒ˜ แƒžแƒ แƒ”แƒ–แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก :)

แƒฌแƒงแƒแƒ แƒ: www.habr.com

แƒแƒฎแƒแƒšแƒ˜ แƒ™แƒแƒ›แƒ”แƒœแƒขแƒแƒ แƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ