เด•เต‹เดกเดพเดฏเดฟ เด…เดตเดคเดฐเดฃเด‚, เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดžเดพเตป เดŽเดจเตเดคเตเด•เตŠเดฃเตเดŸเต เดชเดตเตผเดชเต‹เดฏเดฟเดจเตเดฑเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดฟเดฒเตเดฒ

เด•เต‹เดกเดพเดฏเดฟ เด…เดตเดคเดฐเดฃเด‚, เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดžเดพเตป เดŽเดจเตเดคเตเด•เตŠเดฃเตเดŸเต เดชเดตเตผเดชเต‹เดฏเดฟเดจเตเดฑเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดฟเดฒเตเดฒ

เดŽเดจเตเดฑเต† เดเดŸเดฟ เด•เดฐเดฟเดฏเดฑเดฟเตฝ เดธเดนเดชเตเดฐเดตเตผเดคเตเดคเด•เตผเด•เตเด•เตเด‚ เด•เตเดฒเดฏเดจเตเดฑเตเด•เตพเด•เตเด•เตเด‚ เดชเตŠเดคเต เดธเด‚เดธเดพเดฐเดคเตเดคเดฟเดจเตเด‚ เดžเดพเตป เดกเดธเตป เด•เดฃเด•เตเด•เดฟเดจเต เด…เดตเดคเดฐเดฃเด™เตเด™เตพ เดจเตฝเด•เดฟเดฏเดฟเดŸเตเดŸเตเดฃเตเดŸเต†เดจเตเดจเต เดžเดพเตป เด•เดฐเตเดคเตเดจเตเดจเต. เดจเดฟเดฐเดตเดงเดฟ เดตเตผเดทเด™เตเด™เดณเดพเดฏเดฟ, เด’เดฐเต เดธเตเดฒเตˆเดกเต เดชเตเดฐเตŠเดกเด•เตเดทเตป เดŸเต‚เตพ เดŽเดจเตเดจ เดจเดฟเดฒเดฏเดฟเตฝ เดŽเดจเดฟเด•เตเด•เต เดธเตเดตเดพเดญเดพเดตเดฟเด•เดตเตเด‚ เดตเดฟเดถเตเดตเดธเดจเต€เดฏเดตเตเดฎเดพเดฏ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดชเตเดชเดพเดฃเต เดชเดตเตผเดชเต‹เดฏเดฟเดจเตเดฑเต. เดŽเดจเตเดจเดพเตฝ เดˆ เดตเตผเดทเด‚ เดธเตเดฅเดฟเดคเดฟ เด—เตเดฃเดชเดฐเดฎเดพเดฏเดฟ เดฎเดพเดฑเดฟ. เดซเต†เดฌเตเดฐเตเดตเดฐเดฟ เดฎเตเดคเตฝ เดฎเต†เดฏเต เดตเดฐเต†, เด…เดžเตเดšเต เด•เต‹เตบเดซเดฑเตปเดธเตเด•เดณเดฟเตฝ เดธเด‚เดธเดพเดฐเดฟเด•เตเด•เดพเตป เดŽเดจเดฟเด•เตเด•เต เด…เดตเดธเดฐเด‚ เดฒเดญเดฟเดšเตเดšเต, เดฑเดฟเดชเตเดชเต‹เตผเดŸเตเดŸเตเด•เตพเด•เตเด•เดพเดฏเตเดณเตเดณ เดธเตเดฒเตˆเดกเตเด•เตพ เดšเตเดฐเตเด™เตเด™เดฟเดฏ เดธเดฎเดฏเดคเตเดคเดฟเดจเตเดณเตเดณเดฟเตฝ เดคเดฏเตเดฏเดพเดฑเดพเด•เตเด•เดฃเด‚, เดŽเดจเตเดจเดพเตฝ เด‰เดฏเตผเดจเตเดจ เดจเดฟเดฒเดตเดพเดฐเด‚. เดธเตเดฒเตˆเดกเตเด•เดณเตเดŸเต† เดตเดฟเดทเตเดตเตฝ เดกเดฟเดธเตˆเดจเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸ เดœเต‹เดฒเดฟเดฏเตเดŸเต† เด† เดญเดพเด—เด‚ เดฎเดฑเตเดฑเต เด†เดณเตเด•เตพเด•เตเด•เต เดเตฝเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดšเต‹เดฆเตเดฏเด‚ เด‰เดฏเตผเดจเตเดจเต. เด’เดฐเดฟเด•เตเด•เตฝ เดžเดพเตป เด’เดฐเต เดกเดฟเดธเตˆเดจเดฑเตเดฎเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เดพเตป เดถเตเดฐเดฎเดฟเดšเตเดšเต, เดฎเต†เดฏเดฟเตฝ เดตเดดเดฟ .pptx เดซเดฏเดฒเตเด•เตพ เด…เดฏเดšเตเดšเต, เดชเด•เตเดทเต‡ เดœเต‹เดฒเดฟ เด•เตเดดเดชเตเดชเดคเตเดคเดฟเดฒเดพเดฏเดฟ: เดธเตเดฒเตˆเดกเดฟเดจเตเดฑเต† เดเดคเต เดชเดคเดฟเดชเตเดชเดพเดฃเต "เดเดฑเตเดฑเดตเตเด‚ เดชเตเดคเดฟเดฏเดคเต" เดŽเดจเตเดจเต เด†เตผเด•เตเด•เตเด‚ เด…เดฑเดฟเดฏเดฟเดฒเตเดฒ, เดชเดตเตผเดชเต‹เดฏเดฟเดจเตเดฑเดฟเดฒเต† เดตเตเดฏเดคเตเดฏเดพเดธเด‚ เด•เดพเดฐเดฃเด‚ เดฒเต‡เด”เดŸเตเดŸเต "เดšเดฒเดฟเดšเตเดšเต". เดžเด™เตเด™เดณเตเดŸเต† เดฎเต†เดทเต€เดจเตเด•เดณเดฟเตฝ เดชเดคเดฟเดชเตเดชเตเด•เดณเตเด‚ เดซเต‹เดฃเตเดŸเตเด•เดณเตเด‚. เด•เต‚เดŸเดพเดคเต† เดชเตเดคเดฟเดฏ เดŽเดจเตเดคเต†เด™เตเด•เดฟเดฒเตเด‚ เดชเดฐเต€เด•เตเดทเดฟเด•เตเด•เดพเตป เดžเดพเตป เดคเต€เดฐเตเดฎเดพเดจเดฟเดšเตเดšเต. เดžเดพเตป เด‡เดคเต เดชเดฐเต€เด•เตเดทเดฟเดšเตเดšเต, เด…เดคเดฟเดจเตเดถเต‡เดทเด‚ เดชเดตเตผเดชเต‹เดฏเดฟเดจเตเดฑเดฟเดฒเต‡เด•เตเด•เต เดฎเดŸเด™เตเด™เตเดจเตเดจเดคเดฟเดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดžเดพเตป เดšเดฟเดจเตเดคเดฟเดšเตเดšเดฟเดŸเตเดŸเดฟเดฒเตเดฒ.

เดจเดฎเตเด•เตเด•เต เดŽเดจเตเดคเดพเดฃเต เดตเต‡เดฃเตเดŸเดคเต

เดเด•เดฆเต‡เดถเด‚ เด’เดจเตเดจเดฐ เดตเตผเดทเด‚ เดฎเตเดฎเตเดชเต, เดžเด™เตเด™เดณเตเดŸเต† เด•เดฎเตเดชเดจเดฟ เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเต เดกเต‹เด•เตเดฏเตเดฎเต†เดจเตเดฑเต‡เดทเตป เดธเตƒเดทเตเดŸเดฟเด•เตเด•เดพเตป เดตเต‡เดกเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเต เดจเดฟเตผเดคเตเดคเดฟ, เดธเดฎเดพเดจ เดชเตเดฐเดถเตเดจเด™เตเด™เตพ เดจเต‡เดฐเดฟเดŸเตเดŸเต: เด’เดฐเต เดšเต†เดฑเดฟเดฏ เดกเต‹เด•เตเดฏเตเดฎเต†เดจเตเดฑเต เดŸเตˆเดชเตเดชเตเดšเต†เดฏเตเดฏเดพเตป Word เดจเดฒเตเดฒเดคเดพเดฃเต†เด™เตเด•เดฟเดฒเตเด‚, เดตเต‹เดณเดฟเดฏเด‚ เดตเตผเดฆเตเดงเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเดจเตเดธเดฐเดฟเดšเตเดšเต, เดธเดนเด•เดฐเดฃเดคเตเดคเดฟเดฒเตเด‚ เด‰เดฏเตผเดจเตเดจ เดจเดฟเดฒเดตเดพเดฐเด‚ เดจเต‡เดŸเตเดจเตเดจเดคเดฟเดฒเตเด‚ เดฌเตเดฆเตเดงเดฟเดฎเตเดŸเตเดŸเตเด•เตพ เด‰เดฃเตเดŸเดพเด•เตเดจเตเดจเต. เดเด•เต€เด•เตƒเดค เดกเดฟเดธเตˆเตป. เดžเด™เตเด™เดณเตเดŸเต† เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดชเตเดชเต เดตเต€เดฃเต AsciiDoctor, เดˆ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดชเตเดชเดฟเตฝ เดžเด™เตเด™เตพ เด’เดฐเดฟเด•เตเด•เดฒเตเด‚ เดธเดจเตเดคเต‹เดทเดฟเด•เตเด•เตเดจเตเดจเดคเต เด…เดตเดธเดพเดจเดฟเดชเตเดชเดฟเด•เตเด•เดฟเดฒเตเดฒ, เดชเด•เตเดทเต‡ เด‡เดคเต เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เดฒเต‡เด–เดจเดคเตเดคเดฟเดจเตเดณเตเดณ เดตเดฟเดทเดฏเดฎเดพเดฃเต. เดเดคเดพเดฃเตเดŸเต เด…เดคเต‡ เดธเดฎเดฏเด‚, "เดŽเดฒเตเดฒเดพเด‚ เด•เต‹เดกเดพเดฏเดฟ" เดŽเดจเตเดจ DevOps เดคเดคเตเดคเตเดตเด™เตเด™เดณเดฟเดฒเตŠเดจเตเดจเดฟเดจเตเดฑเต† เดซเดฒเดชเตเดฐเดพเดชเตเดคเดฟ เดžเด™เตเด™เตพ เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เตเด•เดฟ, เด…เดคเดฟเดจเดพเตฝ เด…เดตเดคเดฐเดฃ เดธเตเดฒเตˆเดกเตเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดชเตเดคเดฟเดฏ เดธเดพเด™เตเด•เต‡เดคเดฟเด•เดตเดฟเดฆเตเดฏเดฏเตเดŸเต† เด†เดตเดถเตเดฏเด•เดคเด•เตพ เดตเดณเดฐเต† เดตเตเดฏเด•เตเดคเดฎเดพเดฃเต:

  1. เด…เดตเดคเดฐเดฃเด‚ เด’เดฐเต เดฎเดพเตผเด•เตเด•เตเด…เดชเตเดชเต เดญเดพเดทเดฏเดฟเตฝ เด’เดฐเต เดชเตเดฒเต†เดฏเดฟเตป เดŸเต†เด•เตเดธเตเดฑเตเดฑเต เดซเดฏเตฝ เด†เดฏเดฟเดฐเดฟเด•เตเด•เดฃเด‚.
  2. เดžเด™เตเด™เดณเตเดŸเต† เดธเตเดฒเตˆเดกเตเด•เตพ เดตเดฟเด•เดธเดจ เดชเดฆเตเดงเดคเดฟเด•เดณเต† เด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณเดคเดพเดฃเต, เด…เดคเดฟเดจเดพเตฝ เดฌเดพเดนเตเดฏ เดธเด‚เดตเดฟเดงเดพเดจเด™เตเด™เตพ เด…เดตเดฒเด‚เดฌเดฟเด•เตเด•เดพเดคเต† เดฎเดพเตผเด•เตเด•เตเด…เดชเตเดชเต เดŽเดณเตเดชเตเดชเดคเตเดคเดฟเตฝ เดšเต‡เตผเด•เตเด•เดฃเด‚
    • เดตเดพเด•เตเดฏเด˜เดŸเดจ เดนเตˆเดฒเตˆเดฑเตเดฑเดฟเด‚เด—เต เด‰เดณเตเดณ เด•เต‹เดกเต เดถเด•เดฒเด™เตเด™เตพ,
    • เด…เดฎเตเดชเตเด•เดณเดพเตฝ เดฌเดจเตเดงเดฟเดชเตเดชเดฟเดšเตเดš เดœเตเดฏเดพเดฎเดฟเดคเต€เดฏ เดฐเต‚เดชเด™เตเด™เดณเตเดŸเต† เดฐเต‚เดชเดคเตเดคเดฟเตฝ เดฒเดณเดฟเดคเดฎเดพเดฏ เดกเดฏเด—เตเดฐเดฎเตเด•เตพ,
    • UML เดกเดฏเด—เตเดฐเดฎเตเด•เดณเตเด‚ เดซเตเดฒเต‹เดšเดพเตผเดŸเตเดŸเตเด•เดณเตเด‚ เดฎเดฑเตเดฑเตเด‚.
  3. เด…เดตเดคเดฐเดฃ เดกเตเดฐเดพเดซเตเดฑเตเดฑเต เด’เดฐเต เดชเดคเดฟเดชเตเดชเต เดจเดฟเดฏเดจเตเดคเตเดฐเดฃ เดธเด‚เดตเดฟเดงเดพเดจเดคเตเดคเดฟเตฝ เดธเต‚เด•เตเดทเดฟเด•เตเด•เดฃเด‚.
  4. เดชเต‚เตผเดคเตเดคเดฟเดฏเดพเดฏ เดธเตเดฒเตˆเดกเตเด•เดณเตเดŸเต† เดฎเต‚เดฒเตเดฏเดจเดฟเตผเดฃเตเดฃเดฏเดตเตเด‚ เด…เดธเด‚เดฌเตเดฒเดฟเดฏเตเด‚ เด’เดฐเต CI เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตฝ เดšเต†เดฏเตเดฏเดฃเด‚.

เด‡เดจเตเดจเต, เดฎเดพเตผเด•เตเด•เตเด…เดชเตเดชเต เดญเดพเดทเด•เดณเดฟเตฝ เดธเตเดฒเตˆเดกเตเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดฐเดฃเตเดŸเต เด…เดŸเดฟเดธเตเดฅเดพเดจ เด“เดชเตเดทเดจเตเด•เตพ เด‰เดฃเตเดŸเต: เดชเดพเด•เตเด•เต‡เดœเต เดฌเต€เดฎเตผ LaTeX-เดจเต เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ HTML/CSS เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดธเตเดฒเตˆเดกเตเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดšเดŸเตเดŸเด•เตเด•เต‚เดŸเตเด•เดณเดฟเตฝ เด’เดจเตเดจเต (เดตเต†เดณเดฟเดชเตเดชเต†เดŸเตเดคเตเดคเตฝ เดœเต†.เดŽเดธเต, เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚, deck.js เด•เต‚เดŸเดพเดคเต† เดฎเดฑเตเดฑเต เดชเดฒเดคเตเด‚).

เดŽเดจเตเดฑเต† เด†เดคเตเดฎเดพเดตเต LaTeX-เตฝ เด•เดฟเดŸเด•เตเด•เตเดจเตเดจเตเดฃเตเดŸเต†เด™เตเด•เดฟเดฒเตเด‚, เดžเดพเตป เดฎเดพเดคเตเดฐเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเดคเตเดค เด’เดฐเต เดชเดฐเดฟเดนเดพเดฐเดคเตเดคเดฟเดจเตเดฑเต† เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดชเตเดชเต เดตเดฟเดถเดพเดฒเดฎเดพเดฏ เด†เดณเตเด•เตพเด•เตเด•เต เดชเดฐเดฟเดšเดฟเดคเดฎเดพเดฏ เด’เดฐเต เดชเดฐเดฟเดนเดพเดฐเดคเตเดคเดฟเดจเตเดฑเต† เดตเดถเดคเตเดคเดพเดฏเดฟเดฐเดฟเด•เตเด•เดฃเดฎเต†เดจเตเดจเต เดŽเดจเตเดฑเต† เดฎเดจเดธเตเดธเต เดจเดฟเตผเดฆเตเดฆเต‡เดถเดฟเดšเตเดšเต. เดŽเดฒเตเดฒเดพเดตเตผเด•เตเด•เตเด‚ LaTeX เด…เดฑเดฟเดฏเดฟเดฒเตเดฒ, เดจเดฟเด™เตเด™เดณเตเดŸเต† เดฆเตˆเดจเด‚เดฆเดฟเดจ เดชเดฐเดฟเดถเต€เดฒเดจเด‚ เดถเดพเดธเตเดคเตเดฐเต€เดฏ เดฒเต‡เด–เดจเด™เตเด™เตพ เดŽเดดเตเดคเตเดจเตเดจเดคเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸเดคเดฒเตเดฒเต†เด™เตเด•เดฟเตฝ, เดˆ เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเดจเตเดฑเต† เดตเดฒเดฟเดฏ, เดธเด™เตเด•เต€เตผเดฃเตเดฃเดฎเดพเดฏ เดฒเต‹เด•เดคเตเดคเต เดฎเตเดดเตเด•เดพเตป เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดธเดฎเดฏเดฎเตเดฃเตเดŸเดพเด•เดฟเดฒเตเดฒ.

เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, HTML/CSS-เดจเตเดฑเต† เดตเตˆเดฆเด—เตเดงเตเดฏเด‚ เด•เตƒเดคเตเดฏเดฎเดพเดฏเดฟ เดตเตเดฏเดพเดชเด•เดฎเดพเดฏ เด’เดฐเต เดตเตˆเดฆเด—เตเดงเตเดฏเดฎเดฒเตเดฒ: เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดžเดพเตป เด…เดคเดฟเตฝ เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏเดฟ เดชเตเดฐเดพเดตเต€เดฃเตเดฏเด‚ เดจเต‡เดŸเดฟเดฏเดฟเดŸเตเดŸเดฟเดฒเตเดฒ. เดญเดพเด—เตเดฏเดตเดถเดพเตฝ, เด‡เดคเดฟเดจเด•เด‚ เดชเดฐเดฟเดšเดฟเดคเดฎเดพเดฏ AsciiDoctor เดฐเด•เตเดทเดพเดชเตเดฐเดตเตผเดคเตเดคเดจเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดตเดฐเตเดจเตเดจเต: เด’เดฐเต เด•เตบเดตเต†เตผเดŸเตเดŸเตผ asciidoctor-เดตเต†เดณเดฟเดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจเต AsciiDoctor เดฎเดพเตผเด•เตเด•เตเด…เดชเตเดชเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต RevealJS เดธเตเดฒเตˆเดกเตเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เดพเตป เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต. เด•เต‚เดŸเดพเดคเต† เด‡เดคเต เดชเด เดฟเด•เตเด•เดพเตป เดŽเดณเตเดชเตเดชเดตเตเด‚ เดŽเดฒเตเดฒเดพเดตเตผเด•เตเด•เตเด‚ เด†เด•เตเดธเดธเต เดšเต†เดฏเตเดฏเดพเดตเตเดจเตเดจเดคเตเดฎเดพเดฃเต!

เดธเตเดฒเตˆเดกเตเด•เตพ เดŽเด™เตเด™เดจเต† เด•เต‹เดกเต เดšเต†เดฏเตเดฏเดพเด‚

AsciiDoctor-เตฝ เดธเตเดฒเตˆเดกเตเด•เตพ เด•เต‹เดกเตเดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดฑเต† เดธเดพเดฐเดพเด‚เดถเด‚ เดฎเดจเดธเดฟเดฒเดพเด•เตเด•เดพเตป, เดจเดฟเตผเดฆเตเดฆเดฟเดทเตเดŸ เด‰เดฆเดพเดนเดฐเดฃเด™เตเด™เตพ เดจเตฝเด•เตเด• เดŽเดจเตเดจเดคเดพเดฃเต เดเดฑเตเดฑเดตเตเด‚ เดŽเดณเตเดชเตเดชเดฎเตเดณเตเดณ เดฎเดพเตผเด—เด‚. เด‡เดตเดฏเต†เดฒเตเดฒเดพเด‚ เดˆ เดตเตผเดทเดคเตเดคเต† เดŽเดจเตเดฑเต† เด•เต‹เตบเดซเดฑเตปเดธเต เด…เดตเดคเดฐเดฃเด™เตเด™เตพเด•เตเด•เดพเดฏเดฟ เดžเดพเตป เด‰เดฃเตเดŸเดพเด•เตเด•เดฟเดฏ เดฏเดฅเดพเตผเดคเตเดฅ เดธเตเดฒเตˆเดกเตเด•เดณเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณเดคเดพเดฃเต.

เด’เดจเตเดจเดฟเดจเตเดชเตเดฑเด•เต† เด’เดจเตเดจเดพเดฏเดฟ เดคเตเดฑเด•เตเด•เตเดจเตเดจ เด‡เดจเด™เตเด™เดณเดฟเดฒเต† เดถเต€เตผเดทเด•เดตเตเด‚ เดฒเดฟเดธเตเดฑเตเดฑเตเด‚ เด‰เดณเตเดณ เด’เดฐเต เดธเตเดฒเตˆเดกเต:

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

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

เดซเดฒเด‚

เด•เต‹เดกเดพเดฏเดฟ เด…เดตเดคเดฐเดฃเด‚, เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดžเดพเตป เดŽเดจเตเดคเตเด•เตŠเดฃเตเดŸเต เดชเดตเตผเดชเต‹เดฏเดฟเดจเตเดฑเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดฟเดฒเตเดฒ

เดตเดพเด•เตเดฏเด˜เดŸเดจ เดนเตˆเดฒเตˆเดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเดจเตเดจ เดคเดฒเด•เตเด•เต†เดŸเตเดŸเตเด‚ เดธเต‹เดดเตโ€Œเดธเต เด•เต‹เดกเต เดธเตโ€Œเดจเดฟเดชเตเดชเดฑเตเดฑเตเด‚:

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

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

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

เดซเดฒเด‚

เด•เต‹เดกเดพเดฏเดฟ เด…เดตเดคเดฐเดฃเด‚, เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดžเดพเตป เดŽเดจเตเดคเตเด•เตŠเดฃเตเดŸเต เดชเดตเตผเดชเต‹เดฏเดฟเดจเตเดฑเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดฟเดฒเตเดฒ

เด’เดฐเต เดธเด‚เดญเดพเดทเดฃเดคเตเดคเดฟเดจเตเดณเตเดณ เดคเดฏเตเดฏเดพเดฑเต†เดŸเตเดชเตเดชเดฟเตฝ, เด•เต‹เดกเต เดกเต†เดฎเต‹เด•เตพ เด†เดตเตผเดคเตเดคเดฟเดšเตเดšเตเดณเตเดณ เดชเตเดจเดฐเดตเดฒเต‹เด•เดจเด™เตเด™เตพเด•เตเด•เตเด‚ เดฎเต†เดšเตเดšเดชเตเดชเต†เดŸเตเดคเตเดคเดฒเตเด•เตพเด•เตเด•เตเด‚ เดตเดฟเดงเต‡เดฏเดฎเดพเด•เตเดจเตเดจเต, เด…เดคเดฟเดจเดพเตฝ "เดฑเต‹ เด•เต‹เดกเต" เดจเต‡เดฐเดฟเดŸเตเดŸเต เด’เดฐเต เดธเตเดฒเตˆเดกเดฟเดฒเต‡เด•เตเด•เต เดชเด•เตผเดคเตเดคเดฟ เด’เดŸเตเดŸเดฟเด•เตเด•เดพเดจเตเดณเตเดณ เด•เดดเดฟเดตเต เดตเดฟเดฒเดฎเดคเดฟเด•เตเด•เดพเดจเดพเดตเดพเดคเตเดคเดคเดพเดฃเต, เดตเดพเด•เตเดฏเด˜เดŸเดจ เดนเตˆเดฒเตˆเดฑเตเดฑเดฟเด‚เด—เดฟเดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เด†เด•เตเดฒเดชเตเดชเต†เดŸเดพเดคเต† เดกเต†เดฎเต‹ เด•เดพเดฒเดฟเด•เดฎเดพเดฃเต†เดจเตเดจเต เด‰เดฑเดชเตเดชเดพเด•เตเด•เตเดจเตเดจเต.

เดถเต€เตผเดทเด•เดตเตเด‚ เดšเดฟเดคเตเดฐเต€เด•เดฐเดฃเดตเตเด‚ เดตเดพเดšเด•เดตเตเด‚ (เดธเตเดฒเตˆเดกเดฟเดฒเต† เดฒเต‡เด”เดŸเตเดŸเต เดธเต†เดฒเตเดฒเตเด•เดณเดฟเดฒเดพเดฃเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต AsciiDoctor เดชเดŸเตเดŸเดฟเด•เด•เตพ):

== Kafka Streams in Action

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

เดซเดฒเด‚

เด•เต‹เดกเดพเดฏเดฟ เด…เดตเดคเดฐเดฃเด‚, เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดžเดพเตป เดŽเดจเตเดคเตเด•เตŠเดฃเตเดŸเต เดชเดตเตผเดชเต‹เดฏเดฟเดจเตเดฑเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดฟเดฒเตเดฒ

เดšเดฟเดฒเดชเตเดชเต‹เตพ เด’เดฐเต เดถเต€เตผเดทเด•เด‚ เด†เดตเดถเตเดฏเดฎเดฟเดฒเตเดฒ, เดจเดฟเด™เตเด™เดณเตเดŸเต† เดชเต‹เดฏเดฟเดจเตเดฑเต เดšเดฟเดคเตเดฐเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต เดชเต‚เตผเดฃเตเดฃ เดธเตโ€Œเด•เตเดฐเต€เตป เดšเดฟเดคเตเดฐเด‚ เด†เดตเดถเตเดฏเดฎเดพเดฃเต:

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

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

เดซเดฒเด‚

เด•เต‹เดกเดพเดฏเดฟ เด…เดตเดคเดฐเดฃเด‚, เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดžเดพเตป เดŽเดจเตเดคเตเด•เตŠเดฃเตเดŸเต เดชเดตเตผเดชเต‹เดฏเดฟเดจเตเดฑเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดฟเดฒเตเดฒ

เดชเดฒเดชเตเดชเต‹เดดเตเด‚ เด’เดฐเต เด†เดถเดฏเดคเตเดคเต† "เด…เดฎเตเดชเดŸเดฏเดพเดณเด™เตเด™เดณเดพเตฝ เดฌเดจเตเดงเดฟเดชเตเดชเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดšเดคเตเดฐเด™เตเด™เตพ" เดŽเดจเตเดจ เดฐเต‚เดชเดคเตเดคเดฟเตฝ เดฒเดณเดฟเดคเดฎเดพเดฏ เด’เดฐเต เดกเดฏเด—เตเดฐเด‚ เดชเดฟเดจเตเดคเตเดฃเดฏเตเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต. เดญเดพเด—เตเดฏเดตเดถเดพเตฝ, AsciiDoctor เดธเดฟเดธเตเดฑเตเดฑเดตเตเดฎเดพเดฏเดฟ เดธเด‚เดฏเต‹เดœเดฟเดชเตเดชเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต เด—เตเดฐเดพเดซเตเดตเดฟเดธเต โ€” เด—เตเดฐเดพเดซเต เดกเดฏเด—เตเดฐเดฎเตเด•เตพ เดตเดฟเดตเดฐเดฟเด•เตเด•เดพเตป เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเต เดญเดพเดท. เด—เตเดฐเดพเดซเตเดตเดฟเดธเต เด’เดฐเต เดชเด เดจ เดตเด•เตเดฐเด‚ เดŽเดŸเตเด•เตเด•เตเดจเตเดจเต, เดŽเดจเตเดจเดพเตฝ เดจเตฝเด•เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เด‰เดฆเดพเดนเดฐเดฃเด™เตเด™เดณเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟ, เด‡เดคเต เดšเต†เดฏเตเดฏเดพเตป เดตเดณเดฐเต† เดŽเดณเตเดชเตเดชเดฎเดพเดฃเต! เด‡เดคเต เด‡เดคเตเดชเต‹เดฒเต† เด•เดพเดฃเดชเตเดชเต†เดŸเตเดจเตเดจเต:

== ะŸะธัˆะตะผ โ€œ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;}
}
-----

เดซเดฒเด‚

เด•เต‹เดกเดพเดฏเดฟ เด…เดตเดคเดฐเดฃเด‚, เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดžเดพเตป เดŽเดจเตเดคเตเด•เตŠเดฃเตเดŸเต เดชเดตเตผเดชเต‹เดฏเดฟเดจเตเดฑเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดฟเดฒเตเดฒ

เดšเดฟเดคเตเดฐเดคเตเดคเดฟเดฒเต† เด…เดŸเดฟเด•เตเด•เตเดฑเดฟเดชเตเดชเต เดŽเดกเดฟเดฑเตเดฑเต เดšเต†เดฏเตเดฏเต‡เดฃเตเดŸเดคเตเด‚ เด…เดฎเตเดชเดŸเดฏเดพเดณเดคเตเดคเดฟเดจเตเดฑเต† เดฆเดฟเดถ เดฎเดพเดฑเตเดฑเตเดจเตเดจเดคเตเด‚ เดฎเดฑเตเดฑเตเด‚ เด†เดตเดถเตเดฏเดฎเดพเดฏเดฟ เดตเดฐเตเดฎเตเดชเต‹เตพ, เดšเดฟเดคเตเดฐเด‚ เดŽเดตเดฟเดŸเต†เดฏเต†เด™เตเด•เดฟเดฒเตเด‚ เดตเต€เดฃเตเดŸเตเด‚ เดตเดฐเดšเตเดšเต เดธเตเดฒเตˆเดกเดฟเดฒเต‡เด•เตเด•เต เดตเต€เดฃเตเดŸเตเด‚ เดšเต‡เตผเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดชเด•เดฐเด‚ เด‡เดคเต เด…เดตเดคเดฐเดฃ เด•เต‹เดกเดฟเตฝ เดจเต‡เดฐเดฟเดŸเตเดŸเต เดšเต†เดฏเตเดฏเดพเดตเตเดจเตเดจเดคเดพเดฃเต. เด‡เดคเต เดธเตเดฒเตˆเดกเตเด•เดณเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดฑเต† เดตเต‡เด—เดค เด—เดฃเตเดฏเดฎเดพเดฏเดฟ เดตเตผเดฆเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเต.

เด•เต‚เดŸเตเดคเตฝ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดฎเดพเดฏ เด’เดฐเต เด‰เดฆเดพเดนเดฐเดฃเด‚:

== ะะตะฒะพัะฟั€ะพะธะทะฒะพะดะธะผะฐั ัะฑะพั€ะบะฐ
[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;}
}
-----

เดซเดฒเด‚

เด•เต‹เดกเดพเดฏเดฟ เด…เดตเดคเดฐเดฃเด‚, เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดžเดพเตป เดŽเดจเตเดคเตเด•เตŠเดฃเตเดŸเต เดชเดตเตผเดชเต‹เดฏเดฟเดจเตเดฑเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดฟเดฒเตเดฒ

เดตเดดเดฟเดฏเดฟเตฝ, เดชเต‡เดœเดฟเดฒเต† เด—เตเดฐเดพเดซเตเดตเดฟเดธเต, เดกเต€เดฌเด—เต เด‡เดฎเต‡เดœเตเด•เตพ เดŽเดจเตเดจเดฟเดต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดชเดฐเต€เด•เตเดทเดฟเด•เตเด•เตเดจเตเดจเดคเต เดธเต—เด•เดฐเตเดฏเดชเตเดฐเดฆเดฎเดพเดฃเต เด—เตเดฐเดพเดซเตเดตเดฟเดธเต เด“เตบเดฒเตˆเตป.

เด…เดตเดธเดพเดจเดฎเดพเดฏเดฟ, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต เดซเตเดฒเต‹เดšเดพเตผเดŸเตเดŸเต, เด•เตเดฒเดพเดธเต เดกเดฏเด—เตเดฐเด‚ เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดฎเดฑเตเดฑเต เดธเตเดฑเตเดฑเดพเตปเดกเต‡เตผเดกเต เดกเดฏเด—เตเดฐเด‚ เดŽเดจเตเดจเดฟเดต เด’เดฐเต เดธเตเดฒเตˆเดกเดฟเดฒเต‡เด•เตเด•เต เดšเต‡เตผเด•เตเด•เดฃเดฎเต†เด™เตเด•เดฟเตฝ, AsciiDoctor-เดฎเดพเดฏเดฟ เดธเด‚เดฏเต‹เดœเดฟเดชเตเดชเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดฎเดฑเตเดฑเตŠเดฐเต เดธเดฟเดธเตเดฑเตเดฑเด‚ เดฐเด•เตเดทเดพเดชเตเดฐเดตเตผเดคเตเดคเดจเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดตเดฐเดพเด‚, เดชเตเดฒเดพเดจเตเดฑเตโ€ŒเดฏเตเดŽเด‚เดŽเตฝ. เดŽเดจเตเดฑเต† เดธเดนเดชเตเดฐเดตเตผเดคเตเดคเด•เตป เดจเดฟเด•เตเด•เต‹เดณเดพเดฏเต เดชเตŠเดŸเตเดŸเดพเดทเตเดจเดฟเด•เตเด•เต‹เดตเต PlantUML-เดจเตเดฑเต† เดตเดฟเดชเตเดฒเดฎเดพเดฏ เด•เดดเดฟเดตเตเด•เดณเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดŽเดดเตเดคเดฟ. เดชเตเดฐเดคเตเดฏเต‡เด• เดชเต‹เดธเตเดฑเตเดฑเต.

เด’เดฐเต เดชเดคเดฟเดชเตเดชเต เดจเดฟเดฏเดจเตเดคเตเดฐเดฃ เดธเด‚เดตเดฟเดงเดพเดจเดคเตเดคเดฟเตฝ เดธเด‚เดญเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เด•เต‹เดกเดพเดฏเดฟ เด…เดตเดคเดฐเดฃ เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเต เดฎเดพเดฑเตเดฑเตเดจเตเดจเดคเต เด…เดตเดคเดฐเดฃเดคเตเดคเดฟเตฝ เดธเด‚เดฏเตเด•เตเดค เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เดธเด‚เด˜เดŸเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเต เดธเดพเดงเตเดฏเดฎเดพเด•เตเด•เตเดจเตเดจเต, เด’เดจเตเดจเดพเดฎเดคเดพเดฏเดฟ, เด‰เดณเตเดณเดŸเด•เตเด•เดตเตเด‚ เดฐเต‚เดชเด•เตฝเดชเตเดชเดจเดฏเตเด‚ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดšเตเดฎเดคเดฒเด•เตพ เดตเต‡เตผเดคเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต. RevealJS-เดฒเต† เดธเตเดฒเตˆเดกเตเด•เดณเตเดŸเต† (เดซเต‹เดฃเตเดŸเตเด•เตพ, เดชเดถเตเดšเดพเดคเตเดคเดฒเด™เตเด™เตพ, เด‡เตปเดกเดจเตเดฑเตเด•เตพ) เดฐเต‚เดชเด•เตฝเดชเตเดชเดจ CSS เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดตเดฟเดตเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต. เดธเดฟโ€ŒเดŽเดธเตโ€ŒเดŽเดธเดฟเดฒเตเดณเตเดณ เดŽเดจเตเดฑเต† เดตเตเดฏเด•เตเดคเดฟเด—เดค เดตเตˆเดฆเด—เตเดฆเตเดงเตเดฏเด‚ เดเดฑเตเดฑเดตเตเด‚ เดจเดจเตเดจเดพเดฏเดฟ เด…เดฑเดฟเดฏเดฟเด•เตเด•เตเดจเตเดจเต เดˆ gif - เดŽเดจเตเดจเดพเตฝ เดŽเดจเตเดจเต†เด•เตเด•เดพเตพ เดตเดณเดฐเต† เดธเดฎเตผเดคเตเดฅเดฎเดพเดฏเตเด‚ เดตเต‡เด—เดคเตเดคเดฟเดฒเตเด‚ CSS-เตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจ เด†เดณเตเด•เตพ เด‰เดณเตเดณเดชเตเดชเต‹เตพ เด…เดคเต เดญเดฏเดพเดจเด•เดฎเดฒเตเดฒ. เดคเตฝเดซเดฒเดฎเดพเดฏเดฟ, เด’เดฐเต เด…เดตเดคเดฐเดฃเดคเตเดคเดฟเดจเตเดณเตเดณ เด…เดคเดฟเดตเต‡เด—เด‚ เด…เดŸเตเด•เตเด•เตเดจเตเดจ เดธเดฎเดฏเดชเดฐเดฟเดงเดฟเดฏเดฟเตฝ, เดžเด™เตเด™เตพเด•เตเด•เต Git เดตเดดเดฟ เด’เดฐเต‡เดธเดฎเดฏเด‚ เดตเตเดฏเดคเตเดฏเดธเตเดค เดซเดฏเดฒเตเด•เดณเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เดพเดจเตเด‚ เดฎเต†เดฏเดฟเตฝ เดตเดดเดฟ .pptx เดซเดฏเดฒเตเด•เตพ เด…เดฏเดฏเตโ€Œเด•เตเด•เตเดฎเตเดชเต‹เตพ เด…เดธเดพเดงเตเดฏเดฎเดพเดฏ เดธเดนเด•เดฐเดฃ เดตเต‡เด—เดค เดตเดฟเด•เดธเดฟเดชเตเดชเดฟเด•เตเด•เดพเดจเตเด‚ เด•เดดเดฟเดฏเตเดฎเต†เดจเตเดจเต เด‡เดคเต เดฎเดพเดฑเตเดจเตเดจเต.

เดธเตเดฒเตˆเดกเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด’เดฐเต HTML เดชเต‡เดœเต เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เตเดจเตเดจเต

เดชเตเดฒเต†เดฏเดฟเตป เดŸเต†เด•เตโ€Œเดธเตโ€Œเดฑเตเดฑเต เดธเตเดฐเต‹เดคเดธเตเดธเตเด•เตพ เดฎเดฟเด•เดšเตเดšเดคเดพเดฃเต, เดŽเดจเตเดจเดพเตฝ เด…เดต เดŽเด™เตเด™เดจเต† เด…เดตเดคเดฐเดฃเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เด•เด‚เดชเตˆเตฝ เดšเต†เดฏเตเดฏเดพเด‚?

เดฑเต‚เดฌเดฟเดฏเดฟเตฝ เดŽเดดเตเดคเดฟเดฏ เด’เดฐเต เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเดพเดฃเต AsciiDoctor, เด…เดคเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดจเดฟเดฐเดตเดงเดฟ เดฎเดพเตผเด—เด™เตเด™เดณเตเดฃเตเดŸเต. เด†เดฆเตเดฏเด‚, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดฑเต‚เดฌเดฟ เดญเดพเดท เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเดพเดจเตเด‚ Asciidoctor เดจเต‡เดฐเดฟเดŸเตเดŸเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เดพเดจเตเด‚ เด•เดดเดฟเดฏเตเด‚, เด‡เดคเต เดฑเต‚เดฌเดฟ เดกเต†เดตเดฒเดชเตเดชเตผเดฎเดพเตผเด•เตเด•เต เดเดฑเตเดฑเดตเตเด‚ เด…เดŸเตเดคเตเดคเตเดณเตเดณ เด•เดพเดฐเตเดฏเดฎเดพเดฃเต.

เดฑเต‚เดฌเดฟ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเตฝ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด•เตเดดเดชเตเดชเดฎเตเดฃเตเดŸเดพเด•เตเด•เดพเตป เดคเดพเตฝเดชเตเดชเดฐเตเดฏเดฎเดฟเดฒเตเดฒเต†เด™เตเด•เดฟเตฝ, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดกเต‹เด•เตเด•เตผ เด‡เดฎเต‡เดœเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเด‚ เด†เดธเตเด•เดฟเดกเต‹เด•เตเดŸเตผ/เดกเต‹เด•เตเด•เตผ-เด…เดธเดฟเดกเต‹เด•เตเดŸเตผ, เดฒเต‹เดžเตเดšเต เดšเต†เดฏเตเดฏเตเดฎเตเดชเต‹เตพ, เดจเดฟเด™เตเด™เตพเด•เตเด•เต VOLUME เดตเดดเดฟ เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเต เด‰เดฑเดตเดฟเดŸเด™เตเด™เดณเตเดฎเดพเดฏเดฟ เดซเต‹เตพเดกเตผ เด•เดฃเด•เตเดฑเตเดฑเตเดšเต†เดฏเตเดฏเดพเดจเตเด‚ เดคเดจเตเดจเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดธเตเดฅเดฒเดคเตเดคเต เดซเดฒเด‚ เดจเต‡เดŸเดพเดจเตเด‚ เด•เดดเดฟเดฏเตเด‚.

เดžเดพเตป เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดคเตเดค เด“เดชเตเดทเตป เด…เตฝเดชเตเดชเด‚ เด…เดชเตเดฐเดคเต€เด•เตเดทเดฟเดคเดฎเดพเดฏเดฟ เดคเต‹เดจเตเดจเดฟเดฏเต‡เด•เตเด•เดพเด‚, เดชเด•เตเดทเต‡ เด’เดฐเต เดœเดพเดต เดกเต†เดตเดฒเดชเตเดชเตผ เดŽเดจเตเดจ เดจเดฟเดฒเดฏเดฟเตฝ เด‡เดคเต เดŽเดจเดฟเด•เตเด•เต เดเดฑเตเดฑเดตเตเด‚ เดธเต—เด•เดฐเตเดฏเดชเตเดฐเดฆเดฎเดพเดฃเต. เด‡เดคเดฟเดจเต เดฑเต‚เดฌเดฟ เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดกเต‹เด•เตเด•เดฑเดฟเดจเตเดฑเต† เด‡เตปเดธเตเดฑเตเดฑเดพเดณเต‡เดทเตป เด†เดตเดถเตเดฏเดฎเดฟเดฒเตเดฒ, เดชเด•เตเดทเต‡ เด’เดฐเต เดฎเดพเดตเตป เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดธเตเดฒเตˆเดกเตเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เดพเตป เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต.

เดชเดฆเตเดงเดคเดฟ เดŽเดจเตเดจเดคเดพเดฃเต เด•เดพเดฐเตเดฏเด‚ เดœเต† เดฑเต‚เดฌเดฟ - เดฑเต‚เดฌเดฟ เดญเดพเดทเดฏเตเดŸเต† เดœเดพเดต เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตฝ เดตเดณเดฐเต† เดฎเดฟเด•เดšเตเดšเดคเดพเดฃเต, เดฑเต‚เดฌเดฟเด•เตเด•เต เดตเต‡เดฃเตเดŸเดฟ เดธเตƒเดทเตโ€ŒเดŸเดฟเดšเตเดš เดฎเดฟเด•เตเด•เดตเดพเดฑเตเด‚ เดŽเดจเตเดคเตเด‚ เด’เดฐเต เดœเดพเดต เดฎเต†เดทเต€เดจเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เดพเตป เด‡เดคเต เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต, เด•เต‚เดŸเดพเดคเต† AsciiDoctor เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเต JRuby-เดฏเตเดŸเต† เดเดฑเตเดฑเดตเตเด‚ เดธเดพเดงเดพเดฐเดฃเดฎเดพเดฏ เด‰เดชเดฏเต‹เด—เด™เตเด™เดณเดฟเดฒเตŠเดจเตเดจเดพเดฃเต.

เดฒเดญเตเดฏเดค asciidoctor-maven-plugin เด’เดฐเต Java เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเดฟเดจเตเดฑเต† เดญเดพเด—เดฎเดพเดฏ (เดžเด™เตเด™เตพ เดธเดœเต€เดตเดฎเดพเดฏเดฟ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจ) AsciiDoctor เดกเต‹เด•เตเดฏเตเดฎเต†เดจเตเดฑเต‡เดทเตป เดถเต‡เด–เดฐเดฟเด•เตเด•เดพเตป เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต. เด…เดคเต‡ เดธเดฎเดฏเด‚, AsciiDoctor เด‰เด‚ JRuby เด‰เด‚ Maven เดธเตเดตเดฏเดฎเต‡เดต เดกเต—เตบเดฒเต‹เดกเต เดšเต†เดฏเตเดฏเตเดจเตเดจเต, เด•เต‚เดŸเดพเดคเต† AsciiDoctor JRuby เดชเดฐเดฟเดคเดธเตเดฅเดฟเดคเดฟเดฏเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต: เดฎเต†เดทเต€เดจเดฟเตฝ เด’เดจเตเดจเตเด‚ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเต‡เดฃเตเดŸเดคเดฟเดฒเตเดฒ! (เดชเดพเด•เตเด•เต‡เดœเต เด’เดดเดฟเด•เต† graphviz, เดจเดฟเด™เตเด™เตพเด•เตเด•เต GraphViz เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ PlantUML เด—เตเดฐเดพเดซเดฟเด•เตเดธเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดฃเดฎเต†เด™เตเด•เดฟเตฝ เด‡เดคเต เด†เดตเดถเตเดฏเดฎเดพเดฃเต.) เดจเดฟเด™เตเด™เดณเตเดŸเต† .adoc เดซเดฏเดฒเตเด•เตพ เด’เดฐเต เดซเต‹เตพเดกเดฑเดฟเตฝ เดธเตเดฅเดพเดชเดฟเด•เตเด•เตเด• src/main/asciidoc/. เด‡เดตเดฟเดŸเต† เด’เดฐเต เดชเต‹เด‚เดจเดฟเด•เตเด•เดฟเดจเตเดฑเต† เด‰เดฆเดพเดนเดฐเดฃเด‚เดกเดฏเด—เตเดฐเดฎเตเด•เดณเตเดณเตเดณ เดธเตเดฒเตˆเดกเตเด•เตพ เดถเต‡เด–เดฐเดฟเด•เตเด•เตเดจเตเดจเต.

เดธเตเดฒเตˆเดกเตเด•เตพ PDF-เดฒเต‡เด•เตเด•เต เดชเดฐเดฟเดตเตผเดคเตเดคเดจเด‚ เดšเต†เดฏเตเดฏเตเด•

เดธเตเดฒเตˆเดกเตเด•เดณเตเดŸเต† HTML เดชเดคเดฟเดชเตเดชเต เดคเดฟเด•เดšเตเดšเตเด‚ เดธเตเดตเดฏเด‚เดชเดฐเตเดฏเดพเดชเตเดคเดฎเดพเดฃเต†เด™เตเด•เดฟเดฒเตเด‚, เดธเตเดฒเตˆเดกเตเด•เดณเตเดŸเต† เด’เดฐเต PDF เดชเดคเดฟเดชเตเดชเต เด‰เดฃเตเดŸเดพเดฏเดฟเดฐเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเต เด†เดตเดถเตเดฏเดฎเดพเดฃเต. เด’เดจเตเดจเดพเดฎเดคเดพเดฏเดฟ, เดธเตเดชเต€เด•เตเด•เตผเด•เตเด•เต เดธเตเดตเดจเตเดคเด‚ เดฒเดพเดชเตโ€ŒเดŸเต‹เดชเตเดชเต เด•เดฃเด•เตเดฑเตเดฑเตเดšเต†เดฏเตเดฏเดพเดจเตเดณเตเดณ เด…เดตเดธเดฐเด‚ เดจเตฝเด•เดพเดคเตเดค เดšเดฟเดฒ เด•เต‹เตบเดซเดฑเตปเดธเตเด•เดณเดฟเตฝ, เด…เดตเตผเด•เตเด•เต HTML-เดฒเตเด‚ เด‰เดฃเตเดŸเต†เดจเตเดจเต เดชเตเดฐเดคเต€เด•เตเดทเดฟเด•เตเด•เดพเดคเต† โ€œเด•เตผเดถเดจเดฎเดพเดฏเดฟ pptx เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ pdf เดซเต‹เตผเดฎเดพเดฑเตเดฑเดฟเตฝโ€ เดธเตเดฒเตˆเดกเตเด•เตพ เด†เดตเดถเตเดฏเดฎเดพเดฃเต. เดฐเดฃเตเดŸเดพเดฎเดคเดพเดฏเดฟ, เด•เต‹เตบเดซเดฑเตปเดธเต เดฎเต†เดฑเตเดฑเต€เดฐเดฟเดฏเดฒเตเด•เดณเดฟเตฝ เดซเดฏเตฝ เดชเตเดฐเดธเดฟเดฆเตเดงเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, เดฑเดฟเดชเตเดชเต‹เตผเดŸเตเดŸเดฟเตฝ เด•เดพเดฃเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเตเดชเต‹เดฒเต†, เดจเดฟเด™เตเด™เดณเตเดŸเต† เดธเตเดฒเตˆเดกเดฟเดจเตเดฑเต† เดŽเดกเดฟเดฑเตเดฑเต เดšเต†เดฏเตเดฏเดพเดคเตเดค เดชเดคเดฟเดชเตเดชเต เดธเด‚เด˜เดพเดŸเด•เตผเด•เตเด•เต PDF เดซเต‹เตผเดฎเดพเดฑเตเดฑเดฟเตฝ เด…เดฏเดฏเตเด•เตเด•เตเดจเตเดจเดคเต เดจเดฒเตเดฒเดคเดพเดฃเต.

เดญเดพเด—เตเดฏเดตเดถเดพเตฝ, Node.js เดฏเต‚เดŸเตเดŸเดฟเดฒเดฟเดฑเตเดฑเดฟ เดˆ เดŸเดพเดธเตเด•เตเด•เต เด•เตˆเด•เดพเดฐเตเดฏเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เดกเต†เด•เตเด•เต เดŸเต‡เดชเตเดชเต, เด…เดŸเดฟเดธเตเดฅเดพเดจเดคเตเดคเดฟเตฝ เดจเดฟเตผเดฎเตเดฎเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเต เดชเดชเตเดชเดฑเตเดฑเดฟเดฏเตผ โ€” 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 เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเดจเตเดฑเต† เดธเตเดตเดพเดญเดพเดตเดฟเด• เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดชเตเดชเดพเดฃเต เดŸเตเดฐเดพเดตเดฟเดธเตเดธเดฟเด, เด•เต‚เดŸเดพเดคเต† เดฑเต†เดกเดฟเดฎเต†เดฏเตเดกเต เด…เดตเดคเดฐเดฃเด™เตเด™เตพ เดนเต‹เดธเตเดฑเตเดฑเตเดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต - github.io. github.io-เดฏเตเดŸเต† เดชเดฟเดจเตเดจเดฟเดฒเต† เด†เดถเดฏเด‚, เดเดคเต†เด™เตเด•เดฟเดฒเตเด‚ เดธเตเดฑเตเดฑเดพเดฑเตเดฑเดฟเด•เต เด‰เดณเตเดณเดŸเด•เตเด•เด‚ เด’เดฐเต เดฌเตเดฐเดพเดžเตเดšเดฟเดฒเต‡เด•เตเด•เต เดชเต‹เดธเตเดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเดจเตเดจเต เดŽเดจเตเดจเดคเดพเดฃเต gh-pages GitHub-เดฒเต† เดจเดฟเด™เตเด™เดณเตเดŸเต† เดชเตเดฐเต‹เดœเด•เตโ€Œเดฑเตเดฑเต เด‡เดตเดฟเดŸเต† เดฒเดญเตเดฏเดฎเดพเด•เตเด‚ <ะฒะฐัˆะต ะธะผั>.gihub.io/<ะฒะฐัˆ ะฟั€ะพะตะบั‚>.

Maven เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดชเต‡เดœเดฟเดจเตเดฑเต† HTML เดชเดคเดฟเดชเตเดชเต เด•เด‚เดชเตˆเตฝ เดšเต†เดฏเตเดฏเตเด•, เดกเต†เด•เตเด•เตโ€ŒเดŸเต‡เดชเตเดชเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต PDF-เดฒเต‡เด•เตเด•เต เดชเดฐเดฟเดตเตผเดคเตเดคเดจเด‚ เดšเต†เดฏเตเดฏเตเด•, เดซเดฒเด™เตเด™เตพ เด’เดฐเต เดคเตเดฐเต†เดกเดฟเดฒเต‡เด•เตเด•เต เด…เดชเตโ€Œเดฒเต‹เดกเต เดšเต†เดฏเตเดฏเตเด• เดŽเดจเตเดจเดฟเดต เด‰เตพเดชเตเดชเต†เดŸเต† TravisCI เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเตป เดซเดฏเตฝ เดชเต‚เตผเดคเตเดคเดฟเดฏเดพเด•เตเด•เตเด•. 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-เดฒเต‡เด•เตเด•เต เด…เดชเตโ€Œเดฒเต‹เดกเต เดšเต†เดฏเตเดฏเดพเดตเต‚.)

เดชเดฆเตเดงเดคเดฟเด•เดณเตเดŸเต† เด‰เดฆเดพเดนเดฐเดฃเด™เตเด™เตพ

เด…เดตเดธเดพเดจเดฎเดพเดฏเดฟ, เด‡เดทเตโ€ŒเดŸเดพเดจเตเดธเตƒเดคเดฎเดพเด•เตเด•เดฟเดฏ เดฎเดพเดตเตป เดธเตโ€Œเด•เตเดฐเดฟเดชเตโ€Œเดฑเตเดฑเตเด•เดณเตเด‚ เดŸเตเดฐเดพเดตเดฟเดธเต-เดธเดฟเดเดฏเตโ€Œเด•เตเด•เดพเดฏเตเดณเตเดณ CI เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเดจเตเด‚ เด‰เดณเตเดณ เด…เดตเดคเดฐเดฃ เดชเตเดฐเต‹เดœเด•เตโ€Œเดฑเตเดฑเตเด•เดณเตเดŸเต† เดฐเดฃเตเดŸเต เด‰เดฆเดพเดนเดฐเดฃเด™เตเด™เดณเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เดฒเดฟเด™เตเด•เตเด•เตพ เด‡เดคเดพ, เดจเดฟเด™เตเด™เดณเตเดŸเต† เดธเตเดตเดจเตเดคเด‚ เด…เดตเดคเดฐเดฃ เดชเตเดฐเต‹เดœเด•เตโ€Œเดฑเตเดฑเตเด•เตพ เดธเตƒเดทเตโ€ŒเดŸเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เด•เตเดฒเต‹เตบ เดšเต†เดฏเตเดฏเดพเดจเตเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเดจเตเด‚ เด•เดดเดฟเดฏเตเด‚:

  • https://github.com/inponomarev/kstreams-examples (JPoint 2019-เดจเตเดณเตเดณ เดŽเดจเตเดฑเต† เดธเด‚เดธเดพเดฐเด‚)

  • https://github.com/inponomarev/csa-hb (Heisenbug 2019-เดจเตเดณเตเดณ เดŽเดจเตเดฑเต† เดฑเดฟเดชเตเดชเต‹เตผเดŸเตเดŸเต)

เดตเดฟเดŸ เดชเดตเตผเดชเต‹เดฏเดฟเดจเตเดฑเต! เดธเดพเด™เตเด•เต‡เดคเดฟเด• เด…เดตเดคเดฐเดฃเด™เตเด™เตพเด•เตเด•เดพเดฏเดฟ เดŽเดจเดฟเด•เตเด•เต เดจเดฟเด™เตเด™เดณเต† เด’เดฐเดฟเด•เตเด•เดฒเตเด‚ เด†เดตเดถเตเดฏเดฎเตเดฃเตเดŸเต†เดจเตเดจเต เดžเดพเตป เด•เดฐเตเดคเตเดจเตเดจเดฟเดฒเตเดฒ :)

เด…เดตเดฒเด‚เดฌเด‚: www.habr.com

เด’เดฐเต เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚ เดšเต‡เตผเด•เตเด•เตเด•