เดธเตเดฎเดพเตผเดŸเตเดŸเต เดชเตเดฐเต‹เด—เตเดฐเดพเดฎเตผเดฎเดพเตผเด•เตเด•เต เดŽเดจเตเดคเตเด•เตŠเดฃเตเดŸเต เด—เต‹ เดกเดฟเดธเตˆเตป เดฎเต‹เดถเดฎเดพเดฃเต

เด•เดดเดฟเดžเตเดž เดฎเดพเดธเด™เตเด™เดณเดฟเตฝ เดžเดพเตป เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดฒเตเด•เตพเด•เตเด•เดพเดฏเดฟ Go เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต. เด†เดถเดฏเดคเตเดคเดฟเดจเตเดฑเต† เดคเต†เดณเดฟเดตเต (เดเด•เดฆเต‡เดถเด‚.: เด’เดฐเต เด†เดถเดฏเดคเตเดคเดฟเดจเตเดฑเต† เดชเตเดฐเดตเตผเดคเตเดคเดจเด•เตเดทเดฎเดค เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เด•เต‹เดกเต) เด…เดตเดจเตเดฑเต† เด’เดดเดฟเดตเตเดธเดฎเดฏเด™เตเด™เดณเดฟเตฝ, เดญเดพเด—เดฟเด•เดฎเดพเดฏเดฟ เดชเตเดฐเต‹เด—เตเดฐเดพเดฎเดฟเด‚เด—เต เดญเดพเดท เดชเด เดฟเด•เตเด•เดพเตป. เดชเตเดฐเต‹เด—เตเดฐเดพเดฎเตเด•เตพ เดคเดจเตเดจเต† เดตเดณเดฐเต† เดฒเดณเดฟเดคเดตเตเด‚ เดˆ เดฒเต‡เด–เดจเดคเตเดคเดฟเดจเตเดฑเต† เด‰เดฆเตเดฆเต‡เดถเตเดฏเดตเตเดฎเดฒเตเดฒ, เดŽเดจเตเดจเดพเตฝ Go เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดฑเต† เด…เดจเตเดญเดตเด‚ เด…เดคเดฟเดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เด•เตเดฑเดšเตเดšเต เดตเดพเด•เตเด•เตเด•เตพ เด…เตผเดนเดฟเด•เตเด•เตเดจเตเดจเต. เดชเต‹เด•เตเดฎเต†เดจเตเดจเต เดตเดพเด—เตเดฆเดพเดจเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต (เดเด•เดฆเต‡เดถเด‚.: 2015-เตฝ เดŽเดดเตเดคเดฟเดฏ เดฒเต‡เด–เดจเด‚) เด—เตเดฐเตเดคเดฐเดฎเดพเดฏ เดธเตเด•เต‡เดฒเดฌเดฟเตพ เด•เต‹เดกเดฟเดจเดพเดฏเดฟ เด’เดฐเต เดœเดจเดชเตเดฐเดฟเดฏ เดญเดพเดท. เดญเดพเดท เดธเตƒเดทเตเดŸเดฟเดšเตเดšเดคเต Google เด†เดฃเต, เด…เดตเดฟเดŸเต† เด…เดคเต เดธเดœเต€เดตเดฎเดพเดฏเดฟ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต. เด…เดŸเดฟเดตเดฐเดฏเดฟเดŸเตเดŸเต, เด—เต‹ เดญเดพเดทเดฏเตเดŸเต† เดฐเต‚เดชเด•เตฝเดชเตเดชเดจ เดธเตเดฎเดพเตผเดŸเตเดŸเต เดชเตเดฐเต‹เด—เตเดฐเดพเดฎเตผเดฎเดพเตผเด•เตเด•เต เดฎเต‹เดถเดฎเดพเดฃเต†เดจเตเดจเต เดžเดพเตป เดธเดคเตเดฏเดธเดจเตเดงเดฎเดพเดฏเดฟ เด•เดฐเตเดคเตเดจเตเดจเต.

เดฆเตเตผเดฌเดฒเดฎเดพเดฏ เดชเตเดฐเต‹เด—เตเดฐเดพเดฎเตผเดฎเดพเตผเด•เตเด•เดพเดฏเดฟ เดฐเต‚เดชเด•เตฝเดชเตเดชเดจ เดšเต†เดฏเตโ€ŒเดคเดฟเดŸเตเดŸเตเดฃเตเดŸเต‹?

เด—เต‹ เดชเด เดฟเด•เตเด•เดพเตป เดตเดณเดฐเต† เดŽเดณเตเดชเตเดชเดฎเดพเดฃเต, เดตเดณเดฐเต† เดŽเดณเตเดชเตเดชเดฎเดพเดฃเต เด†เดฎเตเด–เด‚ เด’เดฐเต เดธเดพเดฏเดพเดนเตเดจเดคเตเดคเดฟเตฝ เดŽเดจเตเดจเต† เด•เตŠเดฃเตเดŸเตเดชเต‹เดฏเดฟ, เด…เดคเดฟเดจเตเดถเต‡เดทเด‚ เดŽเดจเดฟเด•เตเด•เต เด‡เดคเดฟเดจเด•เด‚ เดคเดจเตเดจเต† เด‰เตฝเดชเตเดชเดพเดฆเดจเด•เตเดทเดฎเดฎเดพเดฏเดฟ เด•เต‹เดกเต เดšเต†เดฏเตเดฏเดพเตป เด•เดดเดฟเดฏเตเด‚. เดžเดพเตป เด—เต‹ เดชเด เดฟเดšเตเดšเดฟเดฐเตเดจเตเดจ เดชเตเดธเตเดคเด•เดคเตเดคเดฟเดจเตเดฑเต† เดชเต‡เดฐเต Go-เดฒเต† เดชเตเดฐเต‹เด—เตเดฐเดพเดฎเดฟเด‚เด—เดฟเดจเต เด’เดฐเต เด†เดฎเตเด–เด‚ (เดตเดฟเดตเตผเดคเตเดคเดจเด‚), เด‡เดคเต เด“เตบเดฒเตˆเดจเดฟเตฝ เดฒเดญเตเดฏเดฎเดพเดฃเต. Go เดธเต‹เดดเตเดธเต เด•เต‹เดกเต เดชเต‹เดฒเต† เดคเดจเตเดจเต† เดˆ เดชเตเดธเตเดคเด•เด‚ เดตเดพเดฏเดฟเด•เตเด•เดพเตป เดŽเดณเตเดชเตเดชเดฎเดพเดฃเต, เดจเดฒเตเดฒ เด•เต‹เดกเต เด‰เดฆเดพเดนเดฐเดฃเด™เตเด™เตพ เด‰เดฃเตเดŸเต, เด•เต‚เดŸเดพเดคเต† เด’เดฑเตเดฑเดฏเดฟเดฐเดฟเดชเตเดชเดฟเตฝ เดตเดพเดฏเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเดจเตเดจ 150 เดชเต‡เดœเตเด•เตพ เด…เดŸเด™เตเด™เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต. เดˆ เดฒเดพเดณเดฟเดคเตเดฏเด‚ เด†เดฆเตเดฏเด‚ เด‰เดจเตเดฎเต‡เดทเดฆเดพเดฏเด•เดฎเดพเดฃเต, เดชเตเดฐเดคเตเดฏเต‡เด•เดฟเดšเตเดšเต เด…เดคเดฟเดธเด™เตเด•เต€เตผเดฃเตเดฃเดฎเดพเดฏ เดธเดพเด™เตเด•เต‡เดคเดฟเด•เดตเดฟเดฆเตเดฏเด•เตพ เดจเดฟเดฑเดžเตเดž เด’เดฐเต เดชเตเดฐเต‹เด—เตเดฐเดพเดฎเดฟเด‚เด—เต เดฒเต‹เด•เดคเตเดคเต. เดŽเดจเตเดจเดพเตฝ เด…เดตเดธเดพเดจเด‚, เดคเดพเดฎเดธเดฟเดฏเดพเดคเต† เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดชเดฟเดจเตเดจเต€เดŸเต เดšเดฟเดจเตเดค เด‰เดฏเตผเดจเตเดจเตเดตเดฐเตเดจเตเดจเต: "เด‡เดคเต เดถเดฐเดฟเด•เตเด•เตเด‚ เด…เด™เตเด™เดจเต†เดฏเดพเดฃเต‹?"

Go- เดฏเตเดŸเต† เดฒเดพเดณเดฟเดคเตเดฏเดฎเดพเดฃเต เด…เดคเดฟเดจเตเดฑเต† เดตเดฟเตฝเดชเตเดชเดจ เด•เต‡เดจเตเดฆเตเดฐเด‚ เดŽเดจเตเดจเต Google เด…เดตเด•เดพเดถเดชเตเดชเต†เดŸเตเดจเตเดจเต, เดตเดฒเดฟเดฏ เดŸเต€เดฎเตเด•เดณเดฟเตฝ เดชเดฐเดฎเดพเดตเดงเดฟ เด‰เตฝเดชเตเดชเดพเดฆเดจเด•เตเดทเดฎเดคเดฏเตโ€Œเด•เตเด•เดพเดฏเดฟ เดญเดพเดท เดฐเต‚เดชเด•เตฝเดชเตเดชเดจ เดšเต†เดฏเตโ€Œเดคเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต, เดชเด•เตเดทเต‡ เดŽเดจเดฟเด•เตเด•เต เดธเด‚เดถเดฏเดฎเตเดฃเตเดŸเต. เดจเดทเตโ€ŒเดŸเดฎเดพเดฏเดคเต‹ เด…เดฎเดฟเดคเดฎเดพเดฏเดฟ เดตเดฟเดถเดฆเดฎเดพเด•เตเด•เดฟเดฏเดคเต‹ เด†เดฏ เดธเดตเดฟเดถเต‡เดทเดคเด•เตพ เด‰เดฃเตเดŸเต. เดกเต†เดตเดฒเดชเตเดชเตผเดฎเดพเดฐเดฟเตฝ เดตเดฟเดถเตเดตเดพเดธเด•เตเด•เตเดฑเดตเต เด•เดพเดฐเดฃเด‚, เด…เดตเตผเด•เตเด•เต เด’เดจเตเดจเตเด‚ เดถเดฐเดฟเดฏเดพเดฏเดฟ เดšเต†เดฏเตเดฏเดพเตป เด•เดดเดฟเดฏเตเดจเตเดจเดฟเดฒเตเดฒ เดŽเดจเตเดจ เด…เดจเตเดฎเดพเดจเดคเตเดคเต‹เดŸเต†. เดฒเดพเดณเดฟเดคเตเดฏเดคเตเดคเดฟเดจเดพเดฏเตเดณเตเดณ เดˆ เด†เด—เตเดฐเดนเด‚ เดญเดพเดทเดฏเตเดŸเต† เดกเดฟเดธเตˆเดจเตผเดฎเดพเดฐเตเดŸเต† เดฌเต‹เดงเดชเต‚เตผเดตเดฎเดพเดฏ เดคเต€เดฐเตเดฎเดพเดจเดฎเดพเดฏเดฟเดฐเตเดจเตเดจเต, เด…เดคเต เดŽเดจเตเดคเดฟเดจเดพเดฃเต เด†เดตเดถเตเดฏเดฎเดพเดฏเดฟ เดตเดจเตเดจเดคเต†เดจเตเดจเต เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏเดฟ เดฎเดจเดธเดฟเดฒเดพเด•เตเด•เดพเตป, เดกเต†เดตเดฒเดชเตเดชเตผเดฎเดพเดฐเตเดŸเต† เดชเตเดฐเดšเต‹เดฆเดจเดตเตเด‚ เด…เดตเตผ Go-เดฏเดฟเตฝ เดŽเดจเตเดคเดพเดฃเต เดจเต‡เดŸเดพเตป เดถเตเดฐเดฎเดฟเด•เตเด•เตเดจเตเดจเดคเต†เดจเตเดจเตเด‚ เดจเดฎเตเดฎเตพ เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เตเด•เดฃเด‚.

เดชเดฟเดจเตเดจเต† เดŽเดจเตเดคเดฟเดจเดพเดฃเต เด‡เดคเต เด‡เดคเตเดฐ เดฒเดณเดฟเดคเดฎเดพเด•เตเด•เดฟเดฏเดคเต? เด‡เดตเดฟเดŸเต† เดšเดฟเดฒ เด‰เดฆเตเดงเดฐเดฃเดฟเด•เตพ เด‰เดฃเตเดŸเต เดฑเต‹เดฌเต เดชเตˆเด•เตเด•เต (เดเด•เดฆเต‡เดถเด‚.: เด—เต‹ เดญเดพเดทเดฏเตเดŸเต† เดธเดน-เดธเตเดฐเดทเตเดŸเดพเด•เตเด•เดณเดฟเตฝ เด’เดฐเดพเตพ):

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

เดŽเดจเตเดคเต? เด—เต‚เด—เดฟเดณเดฟเดฒเต† เดกเต†เดตเดฒเดชเตเดชเตผเดฎเดพเตผ เด…เดคเตเดฐ เดจเดฒเตเดฒเดตเดฐเดฒเตเดฒ เดŽเดจเตเดจเดพเดฃเต เดฑเต‹เดฌเต เดชเตˆเด•เตเด•เต เด…เดŸเดฟเดธเตเดฅเดพเดจเดชเดฐเดฎเดพเดฏเดฟ เดชเดฑเดฏเตเดจเตเดจเดคเต, เด…เดคเตเด•เตŠเดฃเตเดŸเดพเดฃเต เด…เดตเตผ เดตเดฟเดกเตเดขเดฟเด•เตพเด•เตเด•เดพเดฏเดฟ เด’เดฐเต เดญเดพเดท เดธเตƒเดทเตเดŸเดฟเดšเตเดšเดคเต (เดเด•เดฆเต‡เดถเด‚.: เดŠเดฎเดฏเดพเดฏเดฟ) เด…เด™เตเด™เดจเต† เด…เดตเตผเด•เตเด•เต เดŽเดจเตเดคเต†เด™เตเด•เดฟเดฒเตเด‚ เดšเต†เดฏเตเดฏเดพเตป เด•เดดเดฟเดฏเตเด‚. เดธเตเดตเดจเตเดคเด‚ เดธเดนเดชเตเดฐเดตเตผเดคเตเดคเด•เดฐเต‹เดŸเต เดŽเดจเตเดคเต เดงเดฟเด•เตเด•เดพเดฐเดชเดฐเดฎเดพเดฏ เดจเต‹เดŸเตเดŸเด‚? เด—เต‚เด—เดฟเดณเดฟเดจเตเดฑเต† เดกเต†เดตเดฒเดชเตเดชเตผเดฎเดพเตผ เดญเต‚เดฎเดฟเดฏเดฟเดฒเต† เดเดฑเตเดฑเดตเตเด‚ เดคเดฟเดณเด•เตเด•เดฎเตเดณเตเดณเดตเดฐเดฟเตฝ เดจเดฟเดจเตเดจเตเด‚ เดฎเดฟเด•เดšเตเดšเดตเดฐเดฟเตฝ เดจเดฟเดจเตเดจเตเด‚ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เดชเตเดชเต†เดŸเตเดŸเดตเดฐเดพเดฃเต†เดจเตเดจเต เดžเดพเตป เดŽเดชเตเดชเต‹เดดเตเด‚ เดตเดฟเดถเตเดตเดธเดฟเด•เตเด•เตเดจเตเดจเต. เดคเต€เตผเดšเตเดšเดฏเดพเดฏเตเด‚ เด…เดตเตผเด•เตเด•เต เด•เต‚เดŸเตเดคเตฝ เดฌเตเดฆเตเดงเดฟเดฎเตเดŸเตเดŸเตเดณเตเดณ เดŽเดจเตเดคเต†เด™เตเด•เดฟเดฒเตเด‚ เด•เตˆเด•เดพเดฐเตเดฏเด‚ เดšเต†เดฏเตเดฏเดพเตป เด•เดดเดฟเดฏเตเดฎเต‹?

เด…เดฎเดฟเดคเดฎเดพเดฏ เดฒเดพเดณเดฟเดคเตเดฏเดคเตเดคเดฟเดจเตเดฑเต† เด•เดฒเดพเดฐเต‚เดชเด™เตเด™เตพ

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

เดตเดณเดฐเต† เดชเตเดฐเด•เดŸเดฎเดฒเตเดฒ

เดฒเดพเดณเดฟเดคเตเดฏเดคเตเดคเต‹เดŸเตเดณเตเดณ เดชเตเดฐเดคเดฟเดฌเดฆเตเดงเดค เดจเดฟเดฎเดฟเดคเตเดคเด‚, เดฎเดฑเตเดฑเต เดญเดพเดทเด•เดณเดฟเตฝ เดธเตเดตเดพเดญเดพเดตเดฟเด•เดฎเต†เดจเตเดจเต เด•เดฐเตเดคเดชเตเดชเต†เดŸเตเดจเตเดจ เดจเดฟเตผเดฎเตเดฎเดฟเดคเดฟเด•เตพ Go-เดฏเตเด•เตเด•เต เด‡เดฒเตเดฒ. เด‡เดคเต เด†เดฆเตเดฏเด‚ เดจเดฒเตเดฒ เด†เดถเดฏเดฎเดพเดฏเดฟ เดคเต‹เดจเตเดจเดฟเดฏเต‡เด•เตเด•เดพเด‚, เดŽเดจเตเดจเดพเตฝ เดชเตเดฐเดพเดฏเต‹เด—เดฟเด•เดฎเดพเดฏเดฟ เด‡เดคเต เดตเต†เตผเดฌเต‹เดธเต เด•เต‹เดกเดฟเตฝ เด•เดฒเดพเดถเดฟเด•เตเด•เตเดจเตเดจเต. เด‡เดคเดฟเดจเตเดฑเต† เด•เดพเดฐเดฃเด‚ เดตเตเดฏเด•เตเดคเดฎเดพเดฏเดฟเดฐเดฟเด•เตเด•เดฃเด‚ - เดกเดตเดฒเดชเตเดชเตผเดฎเดพเตผเด•เตเด•เต เดฎเดฑเตเดฑเตเดณเตเดณเดตเดฐเตเดŸเต† เด•เต‹เดกเต เดตเดพเดฏเดฟเด•เตเด•เตเดจเตเดจเดคเต เดŽเดณเตเดชเตเดชเดฎเดพเดฏเดฟเดฐเดฟเด•เตเด•เดฃเด‚, เดŽเดจเตเดจเดพเตฝ เดตเดพเดธเตเดคเดตเดคเตเดคเดฟเตฝ เดˆ เดฒเดณเดฟเดคเดตเตฝเด•เตเด•เดฐเดฃเด™เตเด™เตพ เดตเดพเดฏเดจเดพเด•เตเดทเดฎเดคเดฏเต† เดฆเต‹เดทเด•เดฐเดฎเดพเดฏเดฟ เดฌเดพเดงเดฟเด•เตเด•เตเด•เดฏเต‡ เด‰เดณเตเดณเต‚. Go-เดฏเดฟเตฝ เดšเตเดฐเตเด•เตเด•เด™เตเด™เดณเตŠเดจเตเดจเตเดฎเดฟเดฒเตเดฒ: เด’เดจเตเดจเตเด•เดฟเตฝ เดงเดพเดฐเดพเดณเด‚ เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เด’เดจเตเดจเตเดฎเดฟเดฒเตเดฒ.

เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, stdin เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เด•เดฎเดพเตปเดกเต เดฒเตˆเตป เด†เตผเด—เตเดฏเตเดฎเต†เดจเตเดฑเตเด•เดณเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เด’เดฐเต เดซเดฏเตฝ เดตเดพเดฏเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเต เด•เตบเดธเต‹เตพ เดฏเต‚เดŸเตเดŸเดฟเดฒเดฟเดฑเตเดฑเดฟ เด‡เดคเตเดชเต‹เดฒเต† เด•เดพเดฃเดชเตเดชเต†เดŸเตเด‚:

package main

import (
    "bufio"
    "flag"
    "fmt"
    "log"
    "os"
)

func main() {

    flag.Parse()
    flags := flag.Args()

    var text string
    var scanner *bufio.Scanner
    var err error

    if len(flags) > 0 {

        file, err := os.Open(flags[0])

        if err != nil {
            log.Fatal(err)
        }

        scanner = bufio.NewScanner(file)

    } else {
        scanner = bufio.NewScanner(os.Stdin)
    }

    for scanner.Scan() {
        text += scanner.Text()
    }

    err = scanner.Err()
    if err != nil {
        log.Fatal(err)
    }

    fmt.Println(text)
}

เดˆ เด•เต‹เดกเตเด‚ เด•เดดเดฟเดฏเตเดจเตเดจเดคเตเดฐ เดชเตŠเดคเตเดตเดพเดฏเดคเดพเดฏเดฟเดฐเดฟเด•เตเด•เดพเตป เดถเตเดฐเดฎเดฟเด•เตเด•เตเดจเตเดจเตเดฃเตเดŸเต†เด™เตเด•เดฟเดฒเตเด‚, Go- เดฏเตเดŸเต† เดจเดฟเตผเดฌเดจเตเดงเดฟเดค เดตเดพเดšเดพเดŸเต‹เดชเด‚ เดคเดŸเดธเตเดธเดฎเดพเด•เตเดจเตเดจเต, เดคเตฝเดซเดฒเดฎเดพเดฏเดฟ, เด’เดฐเต เดฒเดณเดฟเดคเดฎเดพเดฏ เดชเตเดฐเดถเตเดจเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเต เดตเดฒเดฟเดฏ เด…เดณเดตเดฟเดฒเตเดณเตเดณ เด•เต‹เดกเดฟเดจเต เด•เดพเดฐเดฃเดฎเดพเด•เตเดจเตเดจเต.

เด‡เดตเดฟเดŸเต†, เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เด…เดคเต‡ เดชเตเดฐเดถเตเดจเดคเตเดคเดฟเดจเตเดณเตเดณ เด’เดฐเต เดชเดฐเดฟเดนเดพเดฐเดฎเดพเดฃเต D:

import std.stdio, std.array, std.conv;

void main(string[] args)
{
    try
    {
        auto source = args.length > 1 ? File(args[1], "r") : stdin;
        auto text   = source.byLine.join.to!(string);

        writeln(text);
    }
    catch (Exception ex)
    {
        writeln(ex.msg);
    }
}

เด‡เดชเตเดชเต‹เตพ เด†เดฐเดพเดฃเต เด•เต‚เดŸเตเดคเตฝ เดตเดพเดฏเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเดจเตเดจเดคเต? เดžเดพเตป เดŽเดจเตเดฑเต† เดตเต‹เดŸเตเดŸเต เดกเดฟเด•เตเด•เต เดจเตฝเด•เตเด‚. เด…เดตเตป เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เด•เต‚เดŸเตเดคเตฝ เดตเตเดฏเด•เตเดคเดฎเดพเดฏเดฟ เดตเดฟเดตเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเดพเตฝ เด…เดฆเตเดฆเต‡เดนเดคเตเดคเดฟเดจเตเดฑเต† เด•เต‹เดกเต เด•เต‚เดŸเตเดคเตฝ เดตเดพเดฏเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚. เดกเดฟ เด•เต‚เดŸเตเดคเตฝ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดฎเดพเดฏ เด†เดถเดฏเด™เตเด™เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต (เดเด•เดฆเต‡เดถเด‚.: เด‡เดคเดฐ เดซเด‚เด—เตเดทเตป เด•เต‹เตพ ะธ เดŸเต†เด‚เดชเตเดฒเต‡เดฑเตเดฑเตเด•เตพ) เด—เต‹ เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเต‡เด•เตเด•เดพเตพ, เดŽเดจเตเดจเดพเตฝ เด…เดต เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเดคเดฟเตฝ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดฎเดพเดฏ เด’เดจเตเดจเตเด‚ เดคเดจเตเดจเต†เดฏเดฟเดฒเตเดฒ.

เดจเดฐเด•เด‚ เดชเด•เตผเดคเตเดคเตเด•

เด—เต‹ เดฎเต†เดšเตเดšเดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เด’เดฐเต เดœเดจเดชเตเดฐเดฟเดฏ เดจเดฟเตผเดฆเตเดฆเต‡เดถเด‚ เดธเดพเดฎเดพเดจเตเดฏเดคเดฏเดพเดฃเต. เดŽเดฒเตเดฒเดพ เดกเดพเดฑเตเดฑเดพ เดคเดฐเด™เตเด™เดณเต†เดฏเตเด‚ เดชเดฟเดจเตเดคเตเดฃเดฏเตโ€Œเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เด•เต‹เดกเต เด…เดจเดพเดตเดถเตเดฏเดฎเดพเดฏเดฟ เดชเด•เตผเดคเตเดคเตเดจเตเดจเดคเต เด’เดดเดฟเดตเดพเด•เตเด•เดพเตป เด‡เดคเต เดธเดนเดพเดฏเดฟเด•เตเด•เตเด‚. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดชเต‚เตผเดฃเตเดฃเดธเด‚เด–เตเดฏเด•เดณเตเดŸเต† เด’เดฐเต เดฒเดฟเดธเตเดฑเตเดฑเต เดธเด‚เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เด’เดฐเต เดซเด‚เด—เตโ€Œเดทเตป, เด“เดฐเต‹ เดชเต‚เตผเดฃเตเดฃเดธเด‚เด–เตเดฏ เดคเดฐเดคเตเดคเดฟเดจเตเด‚ เด…เดคเดฟเดจเตเดฑเต† เด…เดŸเดฟเดธเตเดฅเดพเดจ เดซเด‚เด—เตโ€Œเดทเตป เด•เต‹เดชเตเดชเดฟ-เดชเต‡เดธเตเดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฒเตเดฒเดพเดคเต† เดฎเดฑเตเดฑเตŠเดฐเต เดตเดฟเดงเดคเตเดคเดฟเดฒเตเด‚ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดพเตป เด•เดดเดฟเดฏเดฟเดฒเตเดฒ; เดฎเดฑเตเดฑเตŠเดฐเต เดฎเดพเตผเด—เดตเตเดฎเดฟเดฒเตเดฒ:

package main

import "fmt"

func int64Sum(list []int64) (uint64) {
    var result int64 = 0
    for x := 0; x < len(list); x++ {
        result += list[x]
    }
    return uint64(result)
}

func int32Sum(list []int32) (uint64) {
    var result int32 = 0
    for x := 0; x < len(list); x++ {
        result += list[x]
    }
    return uint64(result)
}

func int16Sum(list []int16) (uint64) {
    var result int16 = 0
    for x := 0; x < len(list); x++ {
        result += list[x]
    }
    return uint64(result)
}

func int8Sum(list []int8) (uint64) {
    var result int8 = 0
    for x := 0; x < len(list); x++ {
        result += list[x]
    }
    return uint64(result)
}

func main() {

    list8  := []int8 {1, 2, 3, 4, 5}
    list16 := []int16{1, 2, 3, 4, 5}
    list32 := []int32{1, 2, 3, 4, 5}
    list64 := []int64{1, 2, 3, 4, 5}

    fmt.Println(int8Sum(list8))
    fmt.Println(int16Sum(list16))
    fmt.Println(int32Sum(list32))
    fmt.Println(int64Sum(list64))
}

เด’เดชเตเดชเดฟเดŸเตเดŸ เดคเดฐเด™เตเด™เตพเด•เตเด•เต เดชเต‹เดฒเตเด‚ เดˆ เด‰เดฆเดพเดนเดฐเดฃเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เดฟเดฒเตเดฒ. เดˆ เดธเดฎเต€เดชเดจเด‚ เดธเตเดตเดฏเด‚ เด†เดตเตผเดคเตเดคเดฟเด•เตเด•เดฐเตเดคเต เดŽเดจเตเดจ เดคเดคเตเดตเดคเตเดคเต† เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏเตเด‚ เดฒเด‚เด˜เดฟเด•เตเด•เตเดจเตเดจเต (เด‰เดฃเด™เตเด™เดฟเดฏ), เดเดฑเตเดฑเดตเตเด‚ เดชเตเดฐเดธเดฟเดฆเตเดงเดตเตเด‚ เดตเตเดฏเด•เตเดคเดตเตเดฎเดพเดฏ เดคเดคเตเดคเตเดตเด™เตเด™เดณเดฟเตฝ เด’เดจเตเดจเต, เด…เดต เด…เดตเด—เดฃเดฟเด•เตเด•เตเดจเตเดจเดคเต เดจเดฟเดฐเดตเดงเดฟ เดชเดฟเดถเด•เตเด•เดณเตเดŸเต† เด‰เดฑเดตเดฟเดŸเดฎเดพเดฃเต. เดŽเดจเตเดคเตเด•เตŠเดฃเตเดŸเดพเดฃเต เด—เต‹ เด‡เดคเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต? เด‡เดคเต เดญเดพเดทเดฏเตเดŸเต† เดญเดฏเดพเดจเด•เดฎเดพเดฏ เด’เดฐเต เดตเดถเดฎเดพเดฃเต.

เดกเดฟเดฏเดฟเดฒเต† เด…เดคเต‡ เด‰เดฆเดพเดนเดฐเดฃเด‚:

import std.stdio;
import std.algorithm;

void main(string[] args)
{
    [1, 2, 3, 4, 5].reduce!((a, b) => a + b).writeln;
}

เดฒเดณเดฟเดคเดตเตเด‚ เด—เด‚เดญเต€เดฐเดตเตเด‚ เดจเต‡เดฐเดพเดฏ เด•เดพเดฐเตเดฏเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต. เด‡เดตเดฟเดŸเต† เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ reduce เดŸเต†เด‚เดชเตเดฒเต‡เดฑเตเดฑเต เดคเดฐเดคเตเดคเดฟเดจเตเด‚ เดชเตเดฐเดตเดšเดจเดคเตเดคเดฟเดจเตเด‚. เด…เดคเต†, เด‡เดคเต เดตเต€เดฃเตเดŸเตเด‚ Go เดชเดคเดฟเดชเตเดชเดฟเดจเต‡เด•เตเด•เดพเตพ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดฎเดพเดฃเต, เดŽเดจเตเดจเดพเตฝ เดธเตเดฎเดพเตผเดŸเตเดŸเต เดชเตเดฐเต‹เด—เตเดฐเดพเดฎเตผเดฎเดพเตผเด•เตเด•เต เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เตเด•เดพเตป เดฌเตเดฆเตเดงเดฟเดฎเตเดŸเตเดŸเตเดณเตเดณ เด•เดพเดฐเตเดฏเดฎเดฒเตเดฒ. เดเดคเต เด‰เดฆเดพเดนเดฐเดฃเดฎเดพเดฃเต เดชเดฐเดฟเดชเดพเดฒเดฟเด•เตเด•เดพเตป เดŽเดณเตเดชเตเดชเดฎเตเดณเตเดณเดคเตเด‚ เดตเดพเดฏเดฟเด•เตเด•เดพเตป เดŽเดณเตเดชเตเดชเดฎเตเดณเตเดณเดคเตเด‚?

เดฒเดณเดฟเดคเดฎเดพเดฏ เดคเดฐเด‚ เดธเดฟเดธเตเดฑเตเดฑเด‚ เดฌเตˆเดชเดพเดธเต

เด‡เดคเต เดตเดพเดฏเดฟเด•เตเด•เตเดจเตเดจ เด—เต‹ เดชเตเดฐเต‹เด—เตเดฐเดพเดฎเตผเดฎเดพเตผ เดตเดพเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดจเตเดฐเดฏเตเด‚ เดชเดคเดฏเตเด‚ เดตเดจเตเดจเต, โ€œเดจเดฟเด™เตเด™เตพ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต เดคเต†เดฑเตเดฑเดพเดฃเต!โ€ เดŽเดจเตเดจเต เดจเดฟเดฒเดตเดฟเดณเดฟเด•เตเด•เตเดฎเต†เดจเตเดจเต เดžเดพเตป เด•เดฐเตเดคเตเดจเตเดจเต. เดถเดฐเดฟ, เด’เดฐเต เดœเดจเดฑเดฟเด•เต เดซเด‚เด—เตเดทเดจเตเด‚ เดคเดฐเด™เตเด™เดณเตเด‚ เด‰เดฃเตเดŸเดพเด•เตเด•เดพเตป เดฎเดฑเตเดฑเตŠเดฐเต เดตเดดเดฟเดฏเตเดฃเตเดŸเต, เดชเด•เตเดทเต‡ เด‡เดคเต เดŸเตˆเดชเตเดชเต เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเต† เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏเตเด‚ เดคเด•เตผเด•เตเด•เตเดจเตเดจเต!

เดชเตเดฐเดถเตโ€Œเดจเดชเดฐเดฟเดนเดพเดฐเดคเตเดคเดฟเดจเดพเดฏเดฟ เด’เดฐเต เดฎเดฃเตเดŸเตป เดญเดพเดทเดพ เดชเดฐเดฟเดนเดพเดฐเดคเตเดคเดฟเดจเตเดฑเต† เดˆ เด‰เดฆเดพเดนเดฐเดฃเด‚ เดจเต‹เด•เตเด•เตเด•:

package main

import "fmt"
import "reflect"

func Reduce(in interface{}, memo interface{}, fn func(interface{}, interface{}) interface{}) interface{} {
    val := reflect.ValueOf(in)

    for i := 0; i < val.Len(); i++ {
        memo = fn(val.Index(i).Interface(), memo)
    }

    return memo
}

func main() {

    list := []int{1, 2, 3, 4, 5}

    result := Reduce(list, 0, func(val interface{}, memo interface{}) interface{} {
        return memo.(int) + val.(int)
    })

    fmt.Println(result)
}

เดˆ เดจเดŸเดชเตเดชเดพเด•เตเด•เตฝ Reduce เดฒเต‡เด–เดจเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เด•เดŸเดฎเต†เดŸเตเดคเตเดคเดคเดพเดฃเต เด—เต‹เดฏเดฟเดฒเต† เด‡เดกเดฟเดฏเตŠเดฎเดพเดฑเตเดฑเดฟเด•เต เดœเดจเดฑเดฟเด•เตโ€Œเดธเต (เดเด•เดฆเต‡เดถเด‚.: เดŽเดจเดฟเด•เตเด•เต เดตเดฟเดตเตผเดคเตเดคเดจเด‚ เด•เดฃเตเดŸเต†เดคเตเดคเดพเตป เด•เดดเดฟเดžเตเดžเดฟเดฒเตเดฒ, เดจเดฟเด™เตเด™เตพ เด‡เดคเต เดธเดนเดพเดฏเดฟเดšเตเดšเดพเตฝ เดžเดพเตป เดธเดจเตเดคเต‹เดทเดฟเด•เตเด•เตเด‚). เดถเดฐเดฟ, เด‡เดคเต เดญเดพเดทเดพเดชเดฐเดฎเดพเดฏเดคเดพเดฃเต†เด™เตเด•เดฟเตฝ, เดญเดพเดทเดพเดญเต‡เดฆเดฎเดฟเดฒเตเดฒเดพเดคเตเดค เด’เดฐเต เด‰เดฆเดพเดนเดฐเดฃเด‚ เด•เดพเดฃเดพเตป เดžเดพเตป เดตเต†เดฑเตเด•เตเด•เตเดจเตเดจเต. เด‰เดชเดฏเต‹เด—เด‚ interface{} - เด’เดฐเต เดชเตเดฐเดนเดธเดจเด‚, เดญเดพเดทเดฏเดฟเตฝ เด‡เดคเต เดŸเตˆเดชเตเดชเดฟเด‚เด—เต เดฎเดฑเดฟเด•เดŸเด•เตเด•เดพเตป เดฎเดพเดคเตเดฐเดฎเต‡ เด†เดตเดถเตเดฏเดฎเตเดณเตเดณเต‚. เด‡เดคเตŠเดฐเต เดถเต‚เดจเตเดฏเดฎเดพเดฏ เด‡เดจเตเดฑเตผเดซเต‡เดธเดพเดฃเต, เดŽเดฒเตเดฒเดพ เดคเดฐเดคเตเดคเดฟเดฒเตเด‚ เด‡เดคเต เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเต, เดŽเดฒเตเดฒเดพเดตเตผเด•เตเด•เตเด‚ เดชเต‚เตผเดฃเตเดฃ เดธเตเดตเดพเดคเดจเตเดคเตเดฐเตเดฏเด‚ เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต. เดˆ เดชเตเดฐเต‹เด—เตเดฐเดพเดฎเดฟเด‚เด—เต เดถเตˆเดฒเดฟ เดญเดฏเด™เตเด•เดฐ เดตเตƒเดคเตเดคเดฟเด•เต†เดŸเตเดŸเดคเดพเดฃเต, เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ. เด‡เดคเตเดชเต‹เดฒเตเดณเตเดณ เด…เด•เตเดฐเต‹เดฌเดพเดฑเตเดฑเดฟเด•เต เดซเต€เดฑเตเดฑเตเด•เตพเด•เตเด•เต เดฑเตบเดŸเตˆเด‚ เดชเตเดฐเดคเดฟเดซเดฒเดจเด‚ เด†เดตเดถเตเดฏเดฎเดพเดฃเต. เดฑเต‹เดฌเต เดชเตˆเด•เตเด•เต เดชเต‹เดฒเตเด‚ เด‡เดคเต เดฆเตเดฐเตเดชเดฏเต‹เด—เด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจ เดตเตเดฏเด•เตเดคเดฟเด•เดณเต† เด‡เดทเตเดŸเดชเตเดชเต†เดŸเตเดจเตเดจเดฟเดฒเตเดฒ, เด…เดฆเตเดฆเต‡เดนเด‚ เดคเดจเตเดฑเต† เดฑเดฟเดชเตเดชเต‹เตผเดŸเตเดŸเตเด•เดณเดฟเดฒเตŠเดจเตเดจเดฟเตฝ เดธเต‚เดšเดฟเดชเตเดชเดฟเดšเตเดšเดคเตเดชเต‹เดฒเต†.

เดœเดพเด—เตเดฐเดคเดฏเต‹เดŸเต† เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เต‡เดฃเตเดŸ เดถเด•เตเดคเดฎเดพเดฏ เด‰เดชเด•เดฐเดฃเดฎเดพเดฃเดฟเดคเต. เด•เตผเดถเดจเดฎเดพเดฏเดฟ เด†เดตเดถเตเดฏเดฎเดฟเดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เด…เดคเต เด’เดดเดฟเดตเดพเด•เตเด•เดฃเด‚.

เดˆ เด…เดธเด‚เดฌเดจเตเดงเดคเตเดคเดฟเดจเต เดชเด•เดฐเด‚ เดžเดพเตป D เดŸเต†เด‚เดชเตเดฒเต‡เดฑเตเดฑเตเด•เตพ เดŽเดŸเตเด•เตเด•เตเด‚. เด†เตผเด•เตเด•เต†เด™เตเด•เดฟเดฒเตเด‚ เด…เดคเต เดŽเด™เตเด™เดจเต† เดชเดฑเดฏเดพเตป เด•เดดเดฟเดฏเตเด‚ interface{} เด•เต‚เดŸเตเดคเตฝ เดตเดพเดฏเดฟเด•เตเด•เดพเดจเดพเด•เตเดจเตเดจเดคเต‹ เดธเตเดฐเด•เตเดทเดฟเดคเดฎเดพเดฏเดฟ เดŸเตˆเดชเตเดชเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต‹?

เด†เดถเตเดฐเดฟเดคเดคเตเดต เดฎเดพเดจเต‡เดœเตเดฎเต†เดจเตเดฑเดฟเดจเตเดฑเต† เดฆเตเดฐเดฟเดคเด™เตเด™เตพ

เดœเดจเดชเตเดฐเดฟเดฏ เดนเต‹เดธเตเดฑเตเดฑเดฟเด‚เด—เต เดฆเดพเดคเดพเด•เตเด•เดณเตเดŸเต† เดฎเตเด•เดณเดฟเตฝ เดจเดฟเตผเดฎเตเดฎเดฟเดšเตเดš เด’เดฐเต เดฌเดฟเตฝเดฑเตเดฑเต-เด‡เตป เดกเดฟเดชเตปเดกเตปเดธเดฟ เดธเดฟเดธเตเดฑเตเดฑเด‚ Go-เดฏเตเด•เตเด•เต เด‰เดฃเตเดŸเต เดตเดฟ.เดธเดฟ.เดŽเดธเต. Go-เดฏเตโ€Œเด•เตเด•เตŠเดชเตเดชเด‚ เดตเดฐเตเดจเตเดจ เดŸเต‚เดณเตเด•เตพเด•เตเด•เต เดˆ เดธเต‡เดตเดจเด™เตเด™เดณเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เด…เดฑเดฟเดฏเดพเด‚, เด…เดตเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เด’เดฑเตเดฑเดฏเดŸเดฟเด•เตเด•เต เด•เต‹เดกเต เดกเต—เตบเดฒเต‹เดกเต เดšเต†เดฏเตเดฏเดพเดจเตเด‚ เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เดพเดจเตเด‚ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเดพเดจเตเด‚ เด•เดดเดฟเดฏเตเด‚. เด‡เดคเต เดฎเดฟเด•เดšเตเดšเดคเดพเดฃเต†เด™เตเด•เดฟเดฒเตเด‚, เดชเดคเดฟเดชเตเดชเดฟเตฝ เด’เดฐเต เดชเตเดฐเดงเดพเดจ เดชเต‹เดฐเดพเดฏเตเดฎเดฏเตเดฃเตเดŸเต! เด…เดคเต†, Go เดŸเต‚เดณเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต github เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ bitbucket เดชเต‹เดฒเตเดณเตเดณ เดธเต‡เดตเดจเด™เตเด™เดณเดฟเตฝ เดจเดฟเดจเตเดจเต เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดธเต‹เดดเตเดธเต เด•เต‹เดกเต เดฒเดญเดฟเด•เตเด•เตเดฎเต†เดจเตเดจเดคเต เดถเดฐเดฟเดฏเดพเดฃเต, เดŽเดจเตเดจเดพเตฝ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดชเดคเดฟเดชเตเดชเต เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เดพเตป เด•เดดเดฟเดฏเดฟเดฒเตเดฒ. เด‰เดชเดฏเต‹เด—เดคเตเดคเดฟเดจเตเดฑเต† เดšเต†เดฒเดตเดฟเตฝ เดตเต€เดฃเตเดŸเตเด‚ เดฒเดพเดณเดฟเดคเตเดฏเด‚. เด…เดคเตเดคเดฐเดฎเตŠเดฐเต เดคเต€เดฐเตเดฎเดพเดจเดคเตเดคเดฟเดจเตเดฑเต† เดฏเตเด•เตเดคเดฟ เดŽเดจเดฟเด•เตเด•เต เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเดจเตเดจเดฟเดฒเตเดฒ.

เดˆ เดชเตเดฐเดถเตโ€Œเดจเดคเตเดคเดฟเดจเตเดณเตเดณ เดชเดฐเดฟเดนเดพเดฐเดคเตเดคเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดšเต‹เดฆเตเดฏเด™เตเด™เตพ เดšเต‹เดฆเดฟเดšเตเดšเดคเดฟเดจเต เดถเต‡เดทเด‚, เด—เต‹ เดกเต†เดตเดฒเดชเตโ€Œเดฎเต†เดจเตเดฑเต เดŸเต€เด‚ เดธเตƒเดทเตโ€ŒเดŸเดฟเดšเตเดšเต เดซเต‹เดฑเด‚ เดคเตเดฐเต†เดกเต, เด…เดตเตผ เดˆ เดชเตเดฐเดถเตโ€Œเดจเดคเตเดคเต† เดŽเด™เตเด™เดจเต† เดจเต‡เดฐเดฟเดŸเดพเตป เดชเต‹เด•เตเดจเตเดจเตเดตเต†เดจเตเดจเต เด‡เดคเต เดตเดฟเดถเดฆเต€เด•เดฐเดฟเดšเตเดšเต. เด’เดฐเต เดฆเดฟเดตเดธเด‚ เดจเดฟเด™เตเด™เดณเตเดŸเต† เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเดฟเดฒเต‡เด•เตเด•เต เดฎเตเดดเตเดตเตป เดถเต‡เด–เดฐเดฃเดตเตเด‚ เดชเด•เตผเดคเตเดคเดฟ "เด…เดคเตเดชเต‹เดฒเต† เดคเดจเตเดจเต†" เดตเดฟเดŸเตเด• เดŽเดจเตเดจเดคเดพเดฏเดฟเดฐเตเดจเตเดจเต เด…เดตเดฐเตเดŸเต† เดถเตเดชเดพเตผเดถ. เดŽเดจเตเดคเดพเดฃเต เด…เดตเตผ เดšเดฟเดจเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเต? Go เดธเตเดฐเดทเตโ€ŒเดŸเดพเด•เตเด•เตพ เด…เดตเด—เดฃเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดธเต‹เดดเตโ€Œเดธเต เด•เต‹เดกเต เดชเด•เตผเดคเตเดคเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจ เดฎเดฟเด•เดšเตเดš เดŸเดพเด—เดฟเด‚เด—เตเด‚ เดชเดคเดฟเดชเตเดชเต เดชเดฟเดจเตเดคเตเดฃเดฏเตเดฎเตเดณเตเดณ เด…เดคเดฟเดถเดฏเด•เดฐเดฎเดพเดฏ เดชเดคเดฟเดชเตเดชเต เดจเดฟเดฏเดจเตเดคเตเดฐเดฃ เดธเด‚เดตเดฟเดงเดพเดจเด™เตเด™เตพ เดžเด™เตเด™เดณเตเดŸเต† เดชเด•เตเด•เดฒเตเดฃเตเดŸเต.

Xi-เตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดธเดพเด‚เดธเตเด•เดพเดฐเดฟเด• เดฒเด—เต‡เดœเต

เดŽเดจเตเดฑเต† เด…เดญเดฟเดชเตเดฐเดพเดฏเดคเตเดคเดฟเตฝ, เดœเต€เดตเดฟเดคเด•เดพเดฒเด‚ เดฎเตเดดเตเดตเตป เดธเดฟ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเดตเดฐเตเด‚ เดชเตเดคเดฟเดฏ เดŽเดจเตเดคเต†เด™เตเด•เดฟเดฒเตเด‚ เดชเดฐเต€เด•เตเดทเดฟเด•เตเด•เดพเตป เด†เด—เตเดฐเดนเดฟเด•เตเด•เดพเดคเตเดคเดตเดฐเตเด‚ เดšเต‡เตผเดจเตเดจเดพเดฃเต เด—เต‹ เดตเดฟเด•เดธเดฟเดชเตเดชเดฟเดšเตเดšเต†เดŸเตเดคเตเดคเดคเต. เดญเดพเดทเดฏเต† เด…เดงเดฟเด• เดšเด•เตเดฐเด™เตเด™เดณเตเดณเตเดณ เดธเดฟ เดŽเดจเตเดจเต เดตเดฟเดถเต‡เดทเดฟเดชเตเดชเดฟเด•เตเด•เดพเด‚(เด’เดฑเดฟเด—เต.: เดชเดฐเดฟเดถเต€เดฒเดจ เดšเด•เตเดฐเด™เตเด™เตพ). เดธเดฎเดพเดจเตเดคเดฐเดคเตเดตเดคเตเดคเดฟเดจเตเดณเตเดณ เดชเดฟเดจเตเดคเตเดฃ เด’เดดเดฟเด•เต† เด…เดคเดฟเตฝ เดชเตเดคเดฟเดฏ เด†เดถเดฏเด™เตเด™เดณเตŠเดจเตเดจเตเดฎเดฟเดฒเตเดฒ (เด‡เดคเต เด…เดคเดฟเดถเดฏเด•เดฐเดฎเดพเดฃเต) เด‡เดคเต เดฒเดœเตเดœเดพเด•เดฐเดฎเดพเดฃเต. เด•เดทเตเดŸเดฟเดšเตเดšเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเดตเตเดจเตเดจ, เดฎเตเดŸเดจเตเดคเตป เดญเดพเดทเดฏเดฟเตฝ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดฎเดฟเด•เดšเตเดš เดธเดฎเดพเดจเตเดคเดฐเดคเดฏเตเดฃเตเดŸเต.

เด—เต‹ เด’เดฐเต เดจเดŸเดชเดŸเดฟเด•เตเดฐเดฎ เดญเดพเดทเดฏเดพเดฃเต (เดธเดฟ เดฏเตเดŸเต† เดจเดฟเดถเดฌเตเดฆ เดญเต€เด•เดฐเดค เดชเต‹เดฒเต†) เดŽเดจเตเดจเดคเดพเดฃเต เดฎเดฑเตเดฑเตŠเดฐเต เดชเตเดฐเดถเตโ€Œเดจเด‚. เดชเตเดฐเดพเดšเต€เดจเดตเตเด‚ เด•เดพเดฒเดนเดฐเดฃเดชเตเดชเต†เดŸเตเดŸเดคเตเดฎเดพเดฏเดฟ เดคเต‹เดจเตเดจเตเดจเตเดจ เด’เดฐเต เดจเดŸเดชเดŸเดฟเด•เตเดฐเดฎ เดถเตˆเดฒเดฟเดฏเดฟเตฝ เดจเดฟเด™เตเด™เตพ เด•เต‹เดกเต เดŽเดดเตเดคเตเดจเตเดจเต. เด’เดฌเตโ€Œเดœเด•เตโ€Œเดฑเตเดฑเต เด“เดฑเดฟเดฏเดจเตเดฑเดกเต เดชเตเดฐเต‹เด—เตเดฐเดพเดฎเดฟเด‚เด—เต เด’เดฐเต เดธเดฟเตฝเดตเตผ เดฌเตเดณเตเดณเดฑเตเดฑเดฒเตเดฒเต†เดจเตเดจเต เดŽเดจเดฟเด•เตเด•เดฑเดฟเดฏเดพเด‚, เดŽเดจเตเดจเดพเตฝ เดตเดฟเดถเดฆเดพเด‚เดถเด™เตเด™เดณเต† เดคเดฐเด™เตเด™เดณเดพเดฏเดฟ เดธเด‚เด—เตเดฐเดนเดฟเด•เตเด•เดพเดจเตเด‚ เดŽเตปเด•เตเดฏเดพเดชเตโ€Œเดธเตเดฒเต‡เดทเตป เดจเตฝเด•เดพเดจเตเด‚ เด•เดดเดฟเดฏเตเดจเตเดจเดคเต เดตเดณเดฐเต† เดฎเดฟเด•เดšเตเดšเดคเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเด‚.

เดจเดฟเด™เตเด™เดณเตเดŸเต† เดธเตเดตเดจเตเดคเด‚ เดจเต‡เดŸเตเดŸเดคเตเดคเดฟเดจเดพเดฏเดฟ เดฒเดพเดณเดฟเดคเตเดฏเด‚

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

เด‡เดคเต เด…เด™เตเด™เต‡เดฏเดฑเตเดฑเด‚ เดตเดพเดšเดพเดŸเต‹เดชเดฎเตเดณเตเดณเดคเตเด‚ เด†เด•เตผเดทเด•เดฎเดฒเตเดฒเดพเดคเตเดคเดคเตเด‚ เดธเตเดฎเดพเตผเดŸเตเดŸเต เดชเตเดฐเต‹เด—เตเดฐเดพเดฎเตผเดฎเดพเตผเด•เตเด•เต เดฎเต‹เดถเดตเตเดฎเดพเดฃเต.

ะกะฟะฐัะธะฑะพ เดฎเต†เตผเดธเดฟเตปเดตเดพเตพเดกเต เดŽเดกเดฟเดฑเตเดฑเตเด•เตพเด•เตเด•เดพเดฏเดฟ

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

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