10 เช‘เชฌเซเชœเซ‡เช•เซเชŸ เช“เชฐเชฟเชเชจเซเชŸเซ‡เชก เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเชฟเช‚เช— เชธเชฟเชฆเซเชงเชพเช‚เชคเซ‹ เชฆเชฐเซ‡เช• เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเชจเซ‡ เชœเชพเชฃเชตเซเช‚ เชœเซ‹เชˆเช

10 เช‘เชฌเซเชœเซ‡เช•เซเชŸ เช“เชฐเชฟเชเชจเซเชŸเซ‡เชก เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเชฟเช‚เช— เชธเชฟเชฆเซเชงเชพเช‚เชคเซ‹ เชฆเชฐเซ‡เช• เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเชจเซ‡ เชœเชพเชฃเชตเซเช‚ เชœเซ‹เชˆเช

เช˜เชฃเซ€ เชตเชพเชฐ เชนเซเช‚ เชเชตเชพ เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเช“เชจเซ‡ เชฎเชณเซเช‚ เช›เซเช‚ เชœเซ‡เชฎเชฃเซ‡ SOLID เชธเชฟเชฆเซเชงเชพเช‚เชคเซ‹ เชตเชฟเชถเซ‡ เชธเชพเช‚เชญเชณเซเชฏเซเช‚ เชจเชฅเซ€ (เช…เชฎเซ‡ เช…เชนเซ€เช‚ เชคเซ‡เชฎเชจเชพ เชตเชฟเชถเซ‡ เชตเชฟเช—เชคเชตเชพเชฐ เชตเชพเชค เช•เชฐเซ€. โ€” เช…เชจเซเชตเชพเชฆ.) เช…เชฅเชตเชพ เช‘เชฌเซเชœเซ‡เช•เซเชŸ-เช“เชฐเชฟเชเชจเซเชŸเซ‡เชก เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเชฟเช‚เช— (OOP), เช…เชฅเชตเชพ เชคเซ‡เชฎเชจเชพ เชตเชฟเชถเซ‡ เชธเชพเช‚เชญเชณเซเชฏเซเช‚ เช›เซ‡, เชชเชฐเช‚เชคเซ เชตเซเชฏเชตเชนเชพเชฐเชฎเชพเช‚ เชคเซ‡เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชถเซ‹ เชจเชนเซ€เช‚. เช† เชฒเซ‡เช– OOP เชธเชฟเชฆเซเชงเชพเช‚เชคเซ‹เชจเชพ เชซเชพเชฏเชฆเชพเช“เชจเซเช‚ เชตเชฐเซเชฃเชจ เช•เชฐเซ‡ เช›เซ‡ เชœเซ‡ เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเชจเซ‡ เชคเซ‡เชจเชพ เชฆเซˆเชจเชฟเช• เช•เชพเชฐเซเชฏเชฎเชพเช‚ เชฎเชฆเชฆ เช•เชฐเซ‡ เช›เซ‡. เชคเซ‡เชฎเชพเช‚เชจเชพ เช•เซ‡เชŸเชฒเชพเช• เชœเชพเชฃเซ€เชคเชพ เช›เซ‡, เช…เชจเซเชฏ เชเชŸเชฒเชพ เชฌเชงเชพ เชจเชฅเซ€, เชคเซ‡เชฅเซ€ เชฒเซ‡เช– เชจเชตเชพ เชจเชฟเชถเชพเชณเซ€เชฏเชพ เช…เชจเซ‡ เช…เชจเซเชญเชตเซ€ เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเชฐเซ‹ เชฌเช‚เชจเซ‡ เชฎเชพเชŸเซ‡ เช‰เชชเชฏเซ‹เช—เซ€ เชฅเชถเซ‡.

เช…เชฎเซ‡ เชฏเชพเชฆ เช•เชฐเชพเชตเซ€เช เช›เซ€เช: Habrเชจเชพ เชคเชฎเชพเชฎ เชตเชพเชšเช•เซ‹ เชฎเชพเชŸเซ‡ - Habr เชชเซเชฐเชฎเซ‹เชถเชจเชฒ เช•เซ‹เชกเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เช•เซ‹เชˆเชชเชฃ เชธเซเช•เชฟเชฒเชฌเซ‹เช•เซเชธ เช•เซ‹เชฐเซเชธเชฎเชพเช‚ เชจเซ‹เช‚เชงเชฃเซ€ เช•เชฐเชคเซ€ เชตเช–เชคเซ‡ 10 เชฐเซเชฌเชฒ เชกเชฟเชธเซเช•เชพเช‰เชจเซเชŸ.

เชธเซเช•เชฟเชฒเชฌเซ‹เช•เซเชธ เชญเชฒเชพเชฎเชฃ เช•เชฐเซ‡ เช›เซ‡: เชถเซˆเช•เซเชทเชฃเชฟเช• เช“เชจเชฒเชพเชˆเชจ เช•เซ‹เชฐเซเชธ "เชœเชพเชตเชพ เชกเซ‡เชตเชฒเชชเชฐ".

เชธเซเช•เชพ (เชคเชฎเชพเชฐเซ€ เชœเชพเชคเชจเซ‡ เชชเซเชจเชฐเชพเชตเชฐเซเชคเชฟเชค เช•เชฐเชถเซ‹ เชจเชนเซ€เช‚)

เชเช•เชฆเชฎ เชธเชฐเชณ เชธเชฟเชฆเซเชงเชพเช‚เชค, เชœเซ‡เชจเซ‹ เชธเชพเชฐ เชจเชพเชฎเชฅเซ€ เชธเซเชชเชทเซเชŸ เช›เซ‡: "เชคเชฎเชพเชฐเซ€ เชœเชพเชคเชจเซ‡ เชชเซเชจเชฐเชพเชตเชฐเซเชคเชจ เช•เชฐเชถเซ‹ เชจเชนเซ€เช‚." เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเชฐ เชฎเชพเชŸเซ‡, เช†เชจเซ‹ เช…เชฐเซเชฅ เช เช›เซ‡ เช•เซ‡ เชกเซเชชเซเชฒเชฟเช•เซ‡เชŸ เช•เซ‹เชกเชจเซ‡ เชŸเชพเชณเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐเชฟเชฏเชพเชค, เชคเซ‡เชฎเชœ เชคเซ‡เชฎเชจเชพ เช•เชพเชฐเซเชฏเชฎเชพเช‚ เชเชฌเซเชธเซเชŸเซเชฐเซ‡เช•เซเชถเชจเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชจเซ€ เชคเช•.

เชœเซ‹ เช•เซ‹เชกเชฎเชพเช‚ เชฌเซ‡ เชชเซเชจเชฐเชพเชตเชฐเซเชคเชฟเชค เชตเชฟเชญเชพเช—เซ‹ เชนเซ‹เชฏ, เชคเซ‹ เชคเซ‡เช“เชจเซ‡ เชเช• เชชเชฆเซเชงเชคเชฟเชฎเชพเช‚ เชœเซ‹เชกเชตเชพ เชœเซ‹เชˆเช. เชœเซ‹ เชนเชพเชฐเซเชกเช•เซ‹เชกเซ‡เชก เชฎเซ‚เชฒเซเชฏเชจเซ‹ เช‰เชชเชฏเซ‹เช— เชเช• เช•เชฐเชคเชพ เชตเชงเซ เชตเช–เชค เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เชคเซ‹ เชคเซ‡ เชคเซ‡เชจเซ‡ เชธเชพเชฐเซเชตเชœเชจเชฟเช• เชธเซเชฅเชฟเชฐเชพเช‚เช•เชฎเชพเช‚ เชฐเซ‚เชชเชพเช‚เชคเชฐเชฟเชค เช•เชฐเชตเชพ เชฏเซ‹เช—เซเชฏ เช›เซ‡.

เช•เซ‹เชกเชจเซ‡ เชธเชฐเชณ เชฌเชจเชพเชตเชตเชพ เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เชœเชพเชณเชตเชตเชพเชจเซเช‚ เชธเชฐเชณ เชฌเชจเชพเชตเชตเชพ เชฎเชพเชŸเซ‡ เช† เชœเชฐเซ‚เชฐเซ€ เช›เซ‡, เชœเซ‡ OOP เชจเซ‹ เชฎเซเช–เซเชฏ เชงเซเชฏเซ‡เชฏ เช›เซ‡. เชคเชฎเชพเชฐเซ‡ เชฏเซเชจเชฟเชฏเชจเชจเซ‹ เชตเชงเซ เชชเชกเชคเซ‹ เช‰เชชเชฏเซ‹เช— เชชเชฃ เชจ เช•เชฐเชตเซ‹ เชœเซ‹เชˆเช, เช•เชพเชฐเชฃ เช•เซ‡ เชธเชฎเชพเชจ เช•เซ‹เชก OrderId เช…เชจเซ‡ SSN เชฌเช‚เชจเซ‡ เชธเชพเชฅเซ‡ เชšเช•เชพเชธเชฃเซ€ เชชเชธเชพเชฐ เช•เชฐเชถเซ‡ เชจเชนเซ€เช‚.

เชเชจเซเช•เซ‡เชชเซเชธเซเชฏเซเชฒเซ‡เชŸเซ€เช‚เช— เชซเซ‡เชฐเชซเชพเชฐเซ‹

เชฎเซ‹เชŸเชพเชญเชพเช—เชจเซ€ เช•เช‚เชชเชจเซ€เช“เชจเซ€ เชธเซ‹เชซเซเชŸเชตเซ‡เชฐ เชชเซเชฐเซ‹เชกเช•เซเชŸเซเชธ เชธเชคเชค เชตเชฟเช•เชธเชฟเชค เชฅเชˆ เชฐเชนเซ€ เช›เซ‡. เช†เชจเซ‹ เช…เชฐเซเชฅ เช เช›เซ‡ เช•เซ‡ เช•เซ‹เชกเชฎเชพเช‚ เชซเซ‡เชฐเชซเชพเชฐเซ‹ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡, เชคเซ‡เชจเซ‡ เชธเชชเซ‹เชฐเซเชŸ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡. เชคเชฎเซ‡ เชเชจเซเช•เซ‡เชชเซเชธเซเชฏเซเชฒเซ‡เชถเชจเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชคเชฎเชพเชฐเซเช‚ เชœเซ€เชตเชจ เชธเชฐเชณ เชฌเชจเชพเชตเซ€ เชถเช•เซ‹ เช›เซ‹. เช† เชคเชฎเชจเซ‡ เชคเชฎเชพเชฐเชพ เชนเชพเชฒเชจเชพ เช•เซ‹เชก เชฌเซ‡เชเชจเซ‡ เชตเชงเซ เช…เชธเชฐเช•เชพเชฐเช• เชฐเซ€เชคเซ‡ เชชเชฐเซ€เช•เซเชทเชฃ เช…เชจเซ‡ เชœเชพเชณเชตเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเชถเซ‡. เช…เชนเซ€เช‚ เชเช• เช‰เชฆเชพเชนเชฐเชฃ เช›เซ‡.

เชœเซ‹ เชคเชฎเซ‡ เชœเชพเชตเชพเชฎเชพเช‚ เชฒเช–เซ‹ เช›เซ‹, เชคเซ‹ เชชเช›เซ€ เชฎเซ‚เชณเชญเซ‚เชค เชฐเซ€เชคเซ‡ เช–เชพเชจเช—เซ€ เชชเชฆเซเชงเชคเชฟเช“ เช…เชจเซ‡ เชšเชฒเซ‹ เชธเซ‹เช‚เชชเซ‹.

เช–เซเชฒเซเชฒเชพ/เชฌเช‚เชง เชธเชฟเชฆเซเชงเชพเช‚เชค

เชจเซ€เชšเซ‡เชจเชพ เชตเชฟเชงเชพเชจเชจเซ‡ เชตเชพเช‚เชšเซ€เชจเซ‡ เช† เชธเชฟเชฆเซเชงเชพเช‚เชค เชธเชฐเชณเชคเชพเชฅเซ€ เชฏเชพเชฆ เชฐเชพเช–เซ€ เชถเช•เชพเชฏ เช›เซ‡: "เชธเซ‹เชซเซเชŸเชตเซ‡เชฐ เชเชจเซเชŸเชฟเชŸเซ€ (เชตเชฐเซเช—เซ‹, เชฎเซ‹เชกเซเชฏเซเชฒเซ‹, เช•เชพเชฐเซเชฏเซ‹, เชตเช—เซ‡เชฐเซ‡) เชเช•เซเชธเซเชŸเซ‡เช‚เชถเชจ เชฎเชพเชŸเซ‡ เช–เซเชฒเซเชฒเซ€ เชนเซ‹เชตเซ€ เชœเซ‹เชˆเช, เชชเชฐเช‚เชคเซ เชซเซ‡เชฐเชซเชพเชฐ เชฎเชพเชŸเซ‡ เชฌเช‚เชง เชนเซ‹เชตเซ€ เชœเซ‹เชˆเช." เชตเซเชฏเชตเชนเชพเชฐเชฎเชพเช‚, เช†เชจเซ‹ เช…เชฐเซเชฅ เช เช›เซ‡ เช•เซ‡ เชคเซ‡เช“ เชธเซเชฐเซ‹เชค เช•เซ‹เชก เชฌเชฆเชฒเซเชฏเชพ เชตเชฟเชจเชพ เชคเซ‡เชฎเชจเชพ เชตเชฐเซเชคเชจเชจเซ‡ เชฌเชฆเชฒเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ€ เชถเช•เซ‡ เช›เซ‡.

เชœเซเชฏเชพเชฐเซ‡ เชธเซเชฐเซ‹เชค เช•เซ‹เชกเชฎเชพเช‚ เชซเซ‡เชฐเชซเชพเชฐ เชฎเชพเชŸเซ‡ เช•เซ‹เชก เชฐเชฟเชตเชฟเชเชจ, เชฏเซเชจเชฟเชŸ เชŸเซ‡เชธเซเชŸเชฟเช‚เช— เช…เชจเซ‡ เช…เชจเซเชฏ เชชเซเชฐเช•เซเชฐเชฟเชฏเชพเช“เชจเซ€ เชœเชฐเซ‚เชฐ เชชเชกเซ‡ เชคเซเชฏเชพเชฐเซ‡ เชธเชฟเชฆเซเชงเชพเช‚เชค เชฎเชนเชคเซเชตเชชเซ‚เชฐเซเชฃ เช›เซ‡. เช•เซ‹เชก เช•เซ‡ เชœเซ‡ เช“เชชเชจ/เช•เซเชฒเซ‹เชเซเชก เชธเชฟเชฆเซเชงเชพเช‚เชคเชจเซ‡ เช…เชจเซเชธเชฐเซ‡ เช›เซ‡ เชœเซเชฏเชพเชฐเซ‡ เชตเชฟเชธเซเชคเซƒเชค เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เชคเซเชฏเชพเชฐเซ‡ เชคเซ‡ เชฌเชฆเชฒเชพเชคเซ‹ เชจเชฅเซ€, เชคเซ‡เชฅเซ€ เชคเซ‡เชจเซ€ เชธเชพเชฅเซ‡ เช˜เชฃเซ€ เช“เช›เซ€ เชธเชฎเชธเซเชฏเชพเช“ เช›เซ‡.

เช…เชนเซ€เช‚ เช•เซ‹เชกเชจเซเช‚ เช‰เชฆเชพเชนเชฐเชฃ เช›เซ‡ เชœเซ‡ เช† เชธเชฟเชฆเซเชงเชพเช‚เชคเชจเซเช‚ เช‰เชฒเซเชฒเช‚เช˜เชจ เช•เชฐเซ‡ เช›เซ‡.

10 เช‘เชฌเซเชœเซ‡เช•เซเชŸ เช“เชฐเชฟเชเชจเซเชŸเซ‡เชก เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเชฟเช‚เช— เชธเชฟเชฆเซเชงเชพเช‚เชคเซ‹ เชฆเชฐเซ‡เช• เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเชจเซ‡ เชœเชพเชฃเชตเซเช‚ เชœเซ‹เชˆเช

เชœเซ‹ เชคเชฎเชพเชฐเซ‡ เชคเซ‡เชฎเชพเช‚ เช•เช‚เชˆเช• เชฌเชฆเชฒเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชนเซ‹เชฏ, เชคเซ‹ เชคเซ‡ เช˜เชฃเซ‹ เชธเชฎเชฏ เชฒเซ‡เชถเซ‡, เช•เชพเชฐเชฃ เช•เซ‡ เช•เซ‹เชกเชจเชพ เชคเชฎเชพเชฎ เชตเชฟเชญเชพเช—เซ‹ เช•เซ‡ เชœเซ‡ เช‡เชšเซเช›เชฟเชค เชŸเซเช•เชกเชพ เชธเชพเชฅเซ‡ เชœเซ‹เชกเชพเชฃ เชงเชฐเชพเชตเซ‡ เช›เซ‡ เชคเซ‡ เชฌเชฆเชฒเชตเชพ เชชเชกเชถเซ‡.

เชฎเชพเชฐเซเช— เชฆเซเชตเชพเชฐเชพ, เชจเชฟเช–เชพเชฒเชธเชคเชพ-เชฌเช‚เชง เช SOLID เชจเชพ เชธเชฟเชฆเซเชงเชพเช‚เชคเซ‹เชฎเชพเช‚เชฅเซ€ เชเช• เช›เซ‡.

เชธเชฟเช‚เช—เชฒ เชฐเชฟเชธเซเชชเซ‹เชจเซเชธเชฟเชฌเชฟเชฒเชฟเชŸเซ€ เชชเซเชฐเชฟเชจเซเชธเชฟเชชเชฒ (SRP)

SOLID เชธเซ‡เชŸเชฎเชพเช‚เชฅเซ€ เชฌเซ€เชœเซ‹ เชธเชฟเชฆเซเชงเชพเช‚เชค. เชคเซ‡ เชœเชฃเชพเชตเซ‡ เช›เซ‡ เช•เซ‡ "เชคเซเชฏเชพเช‚ เชเช• เชœ เช•เชพเชฐเชฃ เช›เซ‡ เชœเซ‡ เชตเชฐเซเช—เชฎเชพเช‚ เชซเซ‡เชฐเชซเชพเชฐเชจเซเช‚ เช•เชพเชฐเชฃ เชฌเชจเซ‡ เช›เซ‡." เชตเชฐเซเช— เชฎเชพเชคเซเชฐ เชเช• เชธเชฎเชธเซเชฏเชพ เชนเชฒ เช•เชฐเซ‡ เช›เซ‡. เชคเซ‡เชฎเชพเช‚ เช˜เชฃเซ€ เชชเชฆเซเชงเชคเชฟเช“ เชนเซ‹เชˆ เชถเช•เซ‡ เช›เซ‡, เชชเชฐเช‚เชคเซ เชคเซ‡เชฎเชพเช‚เชฅเซ€ เชฆเชฐเซ‡เช•เชจเซ‹ เช‰เชชเชฏเซ‹เช— เชซเช•เซเชค เชธเชพเชฎเชพเชจเซเชฏ เชธเชฎเชธเซเชฏเชพเชจเซ‡ เช‰เช•เซ‡เชฒเชตเชพ เชฎเชพเชŸเซ‡ เชฅเชพเชฏ เช›เซ‡. เชฌเชงเซ€ เชชเชฆเซเชงเชคเชฟเช“ เช…เชจเซ‡ เช—เซเชฃเชงเชฐเซเชฎเซ‹ เชซเช•เซเชค เช† เชœ เชธเซ‡เชตเชพ เช†เชชเชตเซ€ เชœเซ‹เชˆเช.

10 เช‘เชฌเซเชœเซ‡เช•เซเชŸ เช“เชฐเชฟเชเชจเซเชŸเซ‡เชก เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเชฟเช‚เช— เชธเชฟเชฆเซเชงเชพเช‚เชคเซ‹ เชฆเชฐเซ‡เช• เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเชจเซ‡ เชœเชพเชฃเชตเซเช‚ เชœเซ‹เชˆเช

เช† เชธเชฟเชฆเซเชงเชพเช‚เชคเชจเซเช‚ เชฎเซ‚เชฒเซเชฏ เช เช›เซ‡ เช•เซ‡ เชคเซ‡ เชตเซเชฏเช•เซเชคเชฟเช—เชค เชธเซ‹เชซเซเชŸเชตเซ‡เชฐ เช˜เชŸเช• เช…เชจเซ‡ เช•เซ‹เชก เชตเชšเซเชšเซ‡เชจเชพ เชœเซ‹เชกเชพเชฃเชจเซ‡ เชขเซ€เชฒเซเช‚ เช•เชฐเซ‡ เช›เซ‡. เชœเซ‹ เชคเชฎเซ‡ เชตเชฐเซเช—เชฎเชพเช‚ เชเช• เช•เชฐเชคเชพเช‚ เชตเชงเซ เช•เชพเชฐเซเชฏเช•เซเชทเชฎเชคเชพ เช‰เชฎเซ‡เชฐเซ‹ เช›เซ‹, เชคเซ‹ เชคเซ‡ เชฌเซ‡ เช•เชพเชฐเซเชฏเซ‹ เชตเชšเซเชšเซ‡เชจเซ‹ เชธเช‚เชฌเช‚เชง เชฐเชœเซ‚ เช•เชฐเซ‡ เช›เซ‡. เช†เชฎ, เชœเซ‹ เชคเชฎเซ‡ เชคเซ‡เชฎเชพเช‚เชจเชพ เชเช•เชจเซ‡ เชฌเชฆเชฒเซ‹ เช›เซ‹, เชคเซ‹ เชฌเซ€เชœเชพเชจเซ‡ เชฌเชฐเชฌเชพเชฆ เช•เชฐเชตเชพเชจเซ€ เช‰เชšเซเชš เชธเช‚เชญเชพเชตเชจเชพ เช›เซ‡, เชœเซ‡ เชชเซเชฐเชฅเชฎ เชธเชพเชฅเซ‡ เชœเซ‹เชกเชพเชฏเซ‡เชฒ เช›เซ‡. เช…เชจเซ‡ เช†เชจเซ‹ เช…เชฐเซเชฅ เช เช›เซ‡ เช•เซ‡ เชคเชฎเชพเชฎ เชธเชฎเชธเซเชฏเชพเช“เชจเซ‡ เช…เช—เชพเช‰เชฅเซ€ เช“เชณเช–เชตเชพ เชฎเชพเชŸเซ‡ เชชเชฐเซ€เช•เซเชทเชฃ เชšเช•เซเชฐเชฎเชพเช‚ เชตเชงเชพเชฐเซ‹ เช•เชฐเชตเซ‹.

เช…เชตเชฒเช‚เชฌเชจ เชตเซเชฏเซเชคเซเช•เซเชฐเชฎ เชธเชฟเชฆเซเชงเชพเช‚เชค (DIP)

10 เช‘เชฌเซเชœเซ‡เช•เซเชŸ เช“เชฐเชฟเชเชจเซเชŸเซ‡เชก เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเชฟเช‚เช— เชธเชฟเชฆเซเชงเชพเช‚เชคเซ‹ เชฆเชฐเซ‡เช• เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเชจเซ‡ เชœเชพเชฃเชตเซเช‚ เชœเซ‹เชˆเช

เช‰เชชเชฐ เชเช• เช•เซ‹เชก เช‰เชฆเชพเชนเชฐเชฃ เช›เซ‡ เชœเซเชฏเชพเช‚ AppManager EventLogWriter เชชเชฐ เช†เชงเชพเชฐ เชฐเชพเช–เซ‡ เช›เซ‡, เชœเซ‡ เชฌเชฆเชฒเชพเชฎเชพเช‚ AppManager เชธเชพเชฅเซ‡ เชจเชœเซ€เช•เชฅเซ€ เชœเซ‹เชกเชพเชฏเซ‡เชฒเซเช‚ เช›เซ‡. เชœเซ‹ เชคเชฎเชจเซ‡ เชธเซ‚เชšเชจเชพ เชฌเชคเชพเชตเชตเชพ เชฎเชพเชŸเซ‡ เช•เซ‹เชˆ เช…เชฒเช— เชฐเซ€เชคเชจเซ€ เชœเชฐเซ‚เชฐ เชนเซ‹เชฏ, เชชเช›เซ€ เชคเซ‡ เชชเซเชถ, SMS เช…เชฅเชตเชพ เช‡เชฎเซ‡เช‡เชฒ เชนเซ‹เชฏ, เชคเชฎเชพเชฐเซ‡ AppManager เชตเชฐเซเช— เชฌเชฆเชฒเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡.

DIP เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชธเชฎเชธเซเชฏเชพ เชนเชฒ เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡. เชคเซ‡เชฅเซ€, AppManager เชจเซ‡ เชฌเชฆเชฒเซ‡, เช…เชฎเซ‡ เชเช• EventLogWriterเชจเซ€ เชตเชฟเชจเช‚เชคเซ€ เช•เชฐเซ€เช เช›เซ€เช, เชœเซ‡ เชซเซเชฐเซ‡เชฎเชตเชฐเซเช•เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชฆเชพเช–เชฒ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเชถเซ‡.

เชกเซ€เช†เชˆเชชเซ€ เชกเชฟเชชเซ‡เชจเซเชกเชจเซเชธเซ€ เชฎเซ‹เชกเซเชฏเซเชฒเชจเซ‡ เชฌเชฆเชฒเซ€เชจเซ‡ เชตเซเชฏเช•เซเชคเชฟเช—เชค เชฎเซ‹เชกเซเชฏเซเชฒเชจเซ‡ เช…เชจเซเชฏ เชฒเซ‹เช•เซ‹ เชธเชพเชฅเซ‡ เชธเชฐเชณเชคเชพเชฅเซ€ เชฌเชฆเชฒเชตเชพเชจเซเช‚ เชถเช•เซเชฏ เชฌเชจเชพเชตเซ‡ เช›เซ‡. เช† เช…เชจเซเชฏเชจเซ‡ เช…เชธเชฐ เช•เชฐเซเชฏเชพ เชตเชฟเชจเชพ เชเช• เชฎเซ‹เชกเซเชฏเซเชฒเชจเซ‡ เชฌเชฆเชฒเชตเชพเชจเซเช‚ เชถเช•เซเชฏ เชฌเชจเชพเชตเซ‡ เช›เซ‡.

เชตเชพเชฐเชธเชพเชจเซ‡ เชฌเชฆเชฒเซ‡ เชฐเชšเชจเชพ

10 เช‘เชฌเซเชœเซ‡เช•เซเชŸ เช“เชฐเชฟเชเชจเซเชŸเซ‡เชก เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเชฟเช‚เช— เชธเชฟเชฆเซเชงเชพเช‚เชคเซ‹ เชฆเชฐเซ‡เช• เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเชจเซ‡ เชœเชพเชฃเชตเซเช‚ เชœเซ‹เชˆเชเช•เซ‹เชกเชจเซ‹ เชชเซเชจเชƒเช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชจเซ€ เชฌเซ‡ เชฎเซเช–เซเชฏ เชฐเซ€เชคเซ‹ เช›เซ‡: เชตเชพเชฐเชธเซ‹ เช…เชจเซ‡ เชฐเชšเชจเชพ, เชœเซ‡ เชฌเช‚เชจเซ‡เชจเชพ เชชเซ‹เชคเชพเชจเชพ เชซเชพเชฏเชฆเชพ เช…เชจเซ‡ เช—เซ‡เชฐเชซเชพเชฏเชฆเชพ เช›เซ‡. เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡ เชฌเซ€เชœเซ‹ เชชเชธเช‚เชฆ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡ เช•เชพเชฐเชฃ เช•เซ‡ เชคเซ‡ เชตเชงเซ เชฒเชตเชšเซ€เช• เช›เซ‡.

เช•เชฎเซเชชเซ‹เชเชฟเชถเชจ เชคเชฎเชจเซ‡ เช•เซเชฒเชพเชธเชจเชพ เชชเซเชฐเซ‹เชชเชฐเซเชŸเซ€เช เชธเซ‡เชŸ เช•เชฐเซ€เชจเซ‡ เชฐเชจเชŸเชพเช‡เชฎ เชชเชฐ เชคเซ‡เชจเซ€ เชตเชฐเซเชคเชฃเซ‚เช• เชฌเชฆเชฒเชตเชพเชจเซ€ เช•เซเชทเชฎเชคเชพ เช†เชชเซ‡ เช›เซ‡. เช‡เชจเซเชŸเชฐเชซเซ‡เชธเชจเซ‹ เช…เชฎเชฒ เช•เชฐเชคเซ€ เชตเช–เชคเซ‡, เชชเซ‹เชฒเชฟเชฎเซ‹เชฐเซเชซเชฟเชเชฎเชจเซ‹ เช‰เชชเชฏเซ‹เช— เชฅเชพเชฏ เช›เซ‡, เชœเซ‡ เชตเชงเซ เชฒเชตเชšเซ€เช• เช…เชฎเชฒเซ€เช•เชฐเชฃ เช†เชชเซ‡ เช›เซ‡.

เชœเซ‹เชถเซเช† เชฌเซเชฒเซ‹เชš เชฆเซเชตเชพเชฐเชพ เชชเชฃ เช…เชธเชฐเช•เชพเชฐเช• เชœเชพเชตเชพ เชตเชพเชฐเชธเชพ เชชเชฐ เช•เชฎเซเชชเซ‹เชเชฟเชถเชจ เชชเชธเช‚เชฆ เช•เชฐเชตเชพเชจเซ€ เชธเชฒเชพเชน เช†เชชเซ‡ เช›เซ‡.

เชฌเชพเชฐเซเชฌเชฐเชพ เชฒเชฟเชธเซเช•เซ‹เชต เช…เชตเซ‡เชœเซ€ เชธเชฟเชฆเซเชงเชพเช‚เชค (LSP)

SOLID เชŸเซ‚เชฒเช•เซ€เชŸเชจเซ‹ เชฌเซ€เชœเซ‹ เชธเชฟเชฆเซเชงเชพเช‚เชค. เชคเซ‡ เชœเชฃเชพเชตเซ‡ เช›เซ‡ เช•เซ‡ เชธเชฌเชŸเชพเชˆเชช เชธเซเชชเชฐเชŸเชพเชˆเชช เชฎเชพเชŸเซ‡ เช…เชตเซ‡เชœเซ€เชชเชพเชคเซเชฐ เชนเซ‹เชตเชพ เชœเซ‹เชˆเช. เชเชŸเชฒเซ‡ เช•เซ‡, เชธเซเชชเชฐเช•เซเชฒเชพเชธ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชคเซ€ เชชเชฆเซเชงเชคเชฟเช“ เช…เชจเซ‡ เชซเช‚เช•เซเชถเชจเซเชธ เชคเซ‡เชจเชพ เชชเซ‡เชŸเชพเช•เซเชฒเชพเชธ เชธเชพเชฅเซ‡ เชธเชฎเชธเซเชฏเชพ เชตเชฟเชจเชพ เช•เชพเชฎ เช•เชฐเชตเชพ เชธเช•เซเชทเชฎ เชนเซ‹เชตเชพ เชœเซ‹เชˆเช.

LSP เชเช•เชฒ เชœเชตเชพเชฌเชฆเชพเชฐเซ€ เชธเชฟเชฆเซเชงเชพเช‚เชค เช…เชจเซ‡ เชตเชนเซ‡เช‚เชšเชพเชฏเซ‡เชฒ เชœเชตเชพเชฌเชฆเชพเชฐเซ€ เชธเชฟเชฆเซเชงเชพเช‚เชค เชฌเช‚เชจเซ‡ เชธเชพเชฅเซ‡ เชธเช‚เช•เชณเชพเชฏเซ‡เชฒเซเช‚ เช›เซ‡. เชœเซ‹ เช•เซ‹เชˆ เชตเชฐเซเช— เชธเชฌเช•เซเชฒเชพเชธ เช•เชฐเชคเชพเช‚ เชตเชงเซ เช•เชพเชฐเซเชฏเช•เซเชทเชฎเชคเชพ เชชเซเชฐเชฆเชพเชจ เช•เชฐเซ‡ เช›เซ‡, เชคเซ‹ เชฌเชพเชฆเชฎเชพเช‚ เช† เชธเชฟเชฆเซเชงเชพเช‚เชคเชจเซเช‚ เช‰เชฒเซเชฒเช‚เช˜เชจ เช•เชฐเซ€เชจเซ‡ เช•เซ‡เชŸเชฒเซ€เช• เช•เชพเชฐเซเชฏเช•เซเชทเชฎเชคเชพเชจเซ‡ เชธเชฎเชฐเซเชฅเชจ เช†เชชเชถเซ‡ เชจเชนเซ€เช‚.

เช…เชนเซ€เช‚ เช•เซ‹เชกเชจเซ‹ เชเช• เชญเชพเช— เช›เซ‡ เชœเซ‡ LSP เชจเซ‹ เชตเชฟเชฐเซ‹เชงเชพเชญเชพเชธ เช•เชฐเซ‡ เช›เซ‡.

10 เช‘เชฌเซเชœเซ‡เช•เซเชŸ เช“เชฐเชฟเชเชจเซเชŸเซ‡เชก เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเชฟเช‚เช— เชธเชฟเชฆเซเชงเชพเช‚เชคเซ‹ เชฆเชฐเซ‡เช• เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเชจเซ‡ เชœเชพเชฃเชตเซเช‚ เชœเซ‹เชˆเช

เชตเชฟเชธเซเชคเชพเชฐ(เชฐเซ‡เช•เซเชŸเซ‡เช‚เช—เชฒ เช†เชฐ) เชชเชฆเซเชงเชคเชฟ เชฒเช‚เชฌเชšเซ‹เชฐเชธเชจเชพ เช•เซเชทเซ‡เชคเซเชฐเชซเชณเชจเซ€ เช—เชฃเชคเชฐเซ€ เช•เชฐเซ‡ เช›เซ‡. เชธเซเช•เซเชตเซ‡เชฐเชจเซ‡ เชเช•เซเชเชฟเช•เซเชฏเซเชŸ เช•เชฐเซเชฏเชพ เชชเช›เซ€ เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎ เช•เซเชฐเซ‡เชถ เชฅเชถเซ‡ เช•เชพเชฐเชฃ เช•เซ‡ เชธเซเช•เซเชตเซ‡เชฐ เช…เชนเซ€เช‚ เชฒเช‚เชฌเชšเซ‹เชฐเชธ เชจเชฅเซ€. LSP เชธเชฟเชฆเซเชงเชพเช‚เชค เช…เชจเซเชธเชพเชฐ, เชซเช‚เช•เซเชถเชจ เช•เซ‡ เชœเซ‡ เชฌเซ‡เช เช•เซเชฒเชพเชธเชจเชพ เชธเช‚เชฆเชฐเซเชญเซ‹เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‡ เช›เซ‡ เชคเซ‡ เชตเชงเชพเชฐเชพเชจเชพ เชธเซ‚เชšเชจเซ‹ เชตเชฟเชจเชพ เชตเซเชฏเซเชคเซเชชเชจเซเชจ เชตเชฐเซเช—เซ‹เชจเซ€ เชตเชธเซเชคเซเช“เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพ เชธเช•เซเชทเชฎ เชนเซ‹เชตเชพ เชœเซ‹เชˆเช.

เช† เชธเชฟเชฆเซเชงเชพเช‚เชค, เชœเซ‡ เชชเซ‡เชŸเชพเชชเซเชฐเช•เชพเชฐเชจเซ€ เชšเซ‹เช•เซเช•เชธ เชตเซเชฏเชพเช–เซเชฏเชพ เช›เซ‡, เชฌเชพเชฐเซเชฌเชฐเชพ เชฒเชฟเชธเซเช•เซ‹เชต เชฆเซเชตเชพเชฐเชพ "เชกเซ‡เชŸเชพ เชเชฌเซเชธเซเชŸเซเชฐเซ‡เช•เซเชถเชจ เช…เชจเซ‡ เชนเชพเชฏเชฐเชพเชฐเซเช•เซ€" เชถเซ€เชฐเซเชทเช•เชตเชพเชณเซ€ 1987 เช•เซ‹เชจเซเชซเชฐเชจเซเชธ เช•เซ€เชจเซ‹เชŸเชฎเชพเช‚ เชชเซเชฐเชธเซเชคเชพเชตเชฟเชค เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซ‹ เชนเชคเซ‹, เชคเซ‡เชฅเซ€ เชคเซ‡เชจเซเช‚ เชจเชพเชฎ.

เช‡เชจเซเชŸเชฐเชซเซ‡เชธ เชธเซเชชเซเชฒเชฟเชŸ เชธเชฟเชฆเซเชงเชพเช‚เชค (ISP)

เช…เชจเซเชฏ เชจเช•เซเช•เชฐ เชธเชฟเชฆเซเชงเชพเช‚เชค. เชคเซ‡เชจเชพ เช…เชจเซเชธเชพเชฐ, เชœเซ‡ เช‡เชจเซเชŸเชฐเชซเซ‡เชธเชจเซ‹ เช‰เชชเชฏเซ‹เช— เชจ เชฅเชคเซ‹ เชนเซ‹เชฏ เชคเซ‡เชจเซ‡ เช…เชฎเชฒเชฎเชพเช‚ เชฎเซ‚เช•เชตเซ‹ เชœเซ‹เชˆเช เชจเชนเซ€เช‚. เช† เชธเชฟเชฆเซเชงเชพเช‚เชคเชจเซ‡ เช…เชจเซเชธเชฐเชตเชพเชฅเซ€ เชœเซเชฏเชพเชฐเซ‡ เช“เชชเชฐเซ‡เชŸเชฟเช‚เช— เชฒเซ‹เชœเชฟเช•เชฎเชพเช‚ เชซเซ‡เชฐเชซเชพเชฐ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เชคเซเชฏเชพเชฐเซ‡ เชธเชฟเชธเซเชŸเชฎเชจเซ‡ เชฒเชตเชšเซ€เช• เช…เชจเซ‡ เชฐเชฟเชซเซ…เช•เซเชŸเชฐเชฟเช‚เช— เชฎเชพเชŸเซ‡ เชฏเซ‹เช—เซเชฏ เชฐเชนเซ‡เชตเชพเชฎเชพเช‚ เชฎเชฆเชฆ เชฎเชณเซ‡ เช›เซ‡.

เชฎเซ‹เชŸเซ‡เชญเชพเช—เซ‡, เช† เชชเชฐเชฟเชธเซเชฅเชฟเชคเชฟ เชคเซเชฏเชพเชฐเซ‡ เชฅเชพเชฏ เช›เซ‡ เชœเซเชฏเชพเชฐเซ‡ เช‡เชจเซเชŸเชฐเชซเซ‡เชธเชฎเชพเช‚ เชเช• เชธเชพเชฅเซ‡ เช…เชจเซ‡เช• เช•เชพเชฐเซเชฏเซ‹ เชนเซ‹เชฏ เช›เซ‡, เช…เชจเซ‡ เช•เซเชฒเชพเชฏเช‚เชŸเชจเซ‡ เชคเซ‡เชฎเชพเช‚เชฅเซ€ เชซเช•เซเชค เชเช•เชจเซ€ เชœเชฐเซ‚เชฐ เชนเซ‹เชฏ เช›เซ‡.

เชˆเชจเซเชŸเชฐเชซเซ‡เชธ เชฒเช–เชตเชพเชจเซเช‚ เชฎเซเชถเซเช•เซ‡เชฒ เช•เชพเชฐเซเชฏ เชนเซ‹เชตเชพเชฅเซ€, เช•เช‚เชˆเชชเชฃ เชคเซ‹เชกเซเชฏเชพ เชตเชฟเชจเชพ เช•เชพเชฐเซเชฏ เชชเซ‚เชฐเซเชฃ เชฅเชฏเชพ เชชเช›เซ€ เชคเซ‡เชจเซ‡ เชฌเชฆเชฒเชตเซเช‚ เชเช• เชชเชกเช•เชพเชฐ เชฌเชจเซ€ เชฐเชนเซ‡เชถเซ‡.

เชœเชพเชตเชพเชฎเชพเช‚ ISP เชธเชฟเชฆเซเชงเชพเช‚เชคเชจเซ‹ เชซเชพเชฏเชฆเซ‹ เช เช›เซ‡ เช•เซ‡ เชคเชฎเชพเชฎ เชชเชฆเซเชงเชคเชฟเช“เชจเซ‹ เชชเซเชฐเชฅเชฎ เช…เชฎเชฒ เชฅเชตเซ‹ เชœเซ‹เชˆเช, เช…เชจเซ‡ เชคเซ‡ เชชเช›เซ€ เชœ เชคเซ‡เชจเซ‹ เชตเชฐเซเช—เซ‹ เชฆเซเชตเชพเชฐเชพ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡. เชคเซ‡เชฅเซ€, เชธเชฟเชฆเซเชงเชพเช‚เชค เชชเชฆเซเชงเชคเชฟเช“เชจเซ€ เชธเช‚เช–เซเชฏเชพ เช˜เชŸเชพเชกเชตเชพเชจเซเช‚ เชถเช•เซเชฏ เชฌเชจเชพเชตเซ‡ เช›เซ‡.

10 เช‘เชฌเซเชœเซ‡เช•เซเชŸ เช“เชฐเชฟเชเชจเซเชŸเซ‡เชก เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเชฟเช‚เช— เชธเชฟเชฆเซเชงเชพเช‚เชคเซ‹ เชฆเชฐเซ‡เช• เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเชจเซ‡ เชœเชพเชฃเชตเซเช‚ เชœเซ‹เชˆเช

เช‡เชจเซเชŸเชฐเชซเซ‡เชธ เชฎเชพเชŸเซ‡ เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเชฟเช‚เช—, เช…เชฎเชฒเซ€เช•เชฐเชฃ เชฎเชพเชŸเซ‡ เชจเชนเซ€เช‚

เช…เชนเซ€เช‚ เชฌเชงเซเช‚ เชถเซ€เชฐเซเชทเช• เชชเชฐเชฅเซ€ เชธเซเชชเชทเซเชŸ เช›เซ‡. เช† เชธเชฟเชฆเซเชงเชพเช‚เชคเชจเซ‡ เชฒเชพเช—เซ เช•เชฐเชตเชพเชฅเซ€ เชฒเชตเชšเซ€เช• เช•เซ‹เชกเชจเซ€ เชฐเชšเชจเชพ เชฅเชพเชฏ เช›เซ‡ เชœเซ‡ เช‡เชจเซเชŸเชฐเชซเซ‡เชธเชจเชพ เช•เซ‹เชˆเชชเชฃ เชจเชตเชพ เช…เชฎเชฒเซ€เช•เชฐเชฃ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเซ€ เชถเช•เซ‡ เช›เซ‡.

เชคเชฎเชพเชฐเซ‡ เชšเชฒเซ‹, เชฐเซ€เชŸเชฐเซเชจ เชชเซเชฐเช•เชพเชฐเซ‹ เช…เชฅเชตเชพ เชชเชฆเซเชงเชคเชฟ เชฆเชฒเซ€เชฒ เชชเซเชฐเช•เชพเชฐ เชฎเชพเชŸเซ‡ เช‡เชจเซเชŸเชฐเชซเซ‡เชธ เชชเซเชฐเช•เชพเชฐเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเซ‹ เชœเซ‹เชˆเช. เชธเชฌเช•เซเชฒเชพเชธเชจเซ‡ เชฌเชฆเชฒเซ‡ เชธเซเชชเชฐเช•เซเชฒเชพเชธเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชจเซเช‚ เช‰เชฆเชพเชนเชฐเชฃ เช›เซ‡.

เชคเซ‡ เชœ:

เชฏเชพเชฆเซ€ เชจเช‚เชฌเชฐเซ‹ = getNumbers();

เชชเชฃ เชจเชนเซ€เช‚:

เชเชฐเซ‡เชฒเชฟเชธเซเชŸ เชจเช‚เชฌเชฐเซเชธ = getNumbers();

เช‰เชชเชฐ เชœเซ‡ เชšเชฐเซเชšเชพ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เช›เซ‡ เชคเซ‡เชจเซเช‚ เชตเซเชฏเชตเชนเชพเชฐเซ เช…เชฎเชฒเซ€เช•เชฐเชฃ เช…เชนเซ€เช‚ เช›เซ‡.

10 เช‘เชฌเซเชœเซ‡เช•เซเชŸ เช“เชฐเชฟเชเชจเซเชŸเซ‡เชก เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเชฟเช‚เช— เชธเชฟเชฆเซเชงเชพเช‚เชคเซ‹ เชฆเชฐเซ‡เช• เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเชจเซ‡ เชœเชพเชฃเชตเซเช‚ เชœเซ‹เชˆเช

เชชเซเชฐเชคเชฟเชจเชฟเชงเชฟเชฎเช‚เชกเชณเชจเซ‹ เชธเชฟเชฆเซเชงเชพเช‚เชค

เชเช• เชธเชพเชฎเชพเชจเซเชฏ เช‰เชฆเชพเชนเชฐเชฃ Java เชฎเชพเช‚ equals() เช…เชจเซ‡ hashCode() เชชเชฆเซเชงเชคเชฟเช“ เช›เซ‡. เชœเซเชฏเชพเชฐเซ‡ เชฌเซ‡ เช‘เชฌเซเชœเซ‡เช•เซเชŸเซเชธเชจเซ€ เชคเซเชฒเชจเชพ เช•เชฐเชตเซ€ เชœเชฐเซ‚เชฐเซ€ เชนเซ‹เชฏ, เชคเซเชฏเชพเชฐเซ‡ เช† เช•เซเชฐเชฟเชฏเชพ เช•เซเชฒเชพเชฏเช‚เชŸ เชเช•เชจเซ‡ เชฌเชฆเชฒเซ‡ เชธเช‚เชฌเช‚เชงเชฟเชค เชตเชฐเซเช—เชจเซ‡ เชธเซ‹เช‚เชชเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡.

เชธเชฟเชฆเซเชงเชพเช‚เชคเชจเซ‹ เชซเชพเชฏเชฆเซ‹ เช เช›เซ‡ เช•เซ‡ เช•เซ‹เชกเชจเซเช‚ เช•เซ‹เชˆ เชกเซเชชเซเชฒเชฟเช•เซ‡เชถเชจ เชจเชฅเซ€ เช…เชจเซ‡ เชตเชฐเซเชคเชจ เชฌเชฆเชฒเชตเซเช‚ เชคเซ‡ เชชเซเชฐเชฎเชพเชฃเชฎเชพเช‚ เชธเชฐเชณ เช›เซ‡. เชคเซ‡ เช‡เชตเซ‡เชจเซเชŸ เชกเซ‡เชฒเชฟเช—เซ‡เชถเชจเชจเซ‡ เชชเชฃ เชฒเชพเช—เซ เชชเชกเซ‡ เช›เซ‡.

10 เช‘เชฌเซเชœเซ‡เช•เซเชŸ เช“เชฐเชฟเชเชจเซเชŸเซ‡เชก เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเชฟเช‚เช— เชธเชฟเชฆเซเชงเชพเช‚เชคเซ‹ เชฆเชฐเซ‡เช• เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเชจเซ‡ เชœเชพเชฃเชตเซเช‚ เชœเซ‹เชˆเช

เช† เชฌเชงเชพ เชธเชฟเชฆเซเชงเชพเช‚เชคเซ‹ เชคเชฎเชจเซ‡ เช‰เชšเซเชš เชธเซเชธเช‚เช—เชคเชคเชพ เช…เชจเซ‡ เช“เช›เชพ เชœเซ‹เชกเชพเชฃ เชธเชพเชฅเซ‡ เชตเชงเซ เชฒเชตเชšเซ€เช•, เชธเซเช‚เชฆเชฐ เช…เชจเซ‡ เชตเชฟเชถเซเชตเชธเชจเซ€เชฏ เช•เซ‹เชก เชฒเช–เชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡. เช…เชฒเชฌเชคเซเชค, เชฅเชฟเชฏเชฐเซ€ เชธเชพเชฐเซ€ เช›เซ‡, เชชเชฐเช‚เชคเซ เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเชจเซ‡ เชชเซเชฐเชพเชชเซเชค เชœเซเชžเชพเชจเชจเซ‹ เชตเชพเชธเซเชคเชตเชฎเชพเช‚ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เชชเซเชฐเซ‡เช•เซเชŸเชฟเชธเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡. เชเช•เชตเชพเชฐ เชคเชฎเซ‡ OOP เชธเชฟเชฆเซเชงเชพเช‚เชคเซ‹เชฎเชพเช‚ เชจเชฟเชชเซเชฃเชคเชพ เชฎเซ‡เชณเชตเซ€ เชฒเซ‹ เชคเซ‡ เชชเช›เซ€, เชคเชฎเชพเชฐเซเช‚ เช†เช—เชฒเซเช‚ เชชเช—เชฒเซเช‚ เชธเชพเชฎเชพเชจเซเชฏ เชธเซ‹เชซเซเชŸเชตเซ‡เชฐ เชกเซ‡เชตเชฒเชชเชฎเซ‡เชจเซเชŸ เชธเชฎเชธเซเชฏเชพเช“ เช‰เช•เซ‡เชฒเชตเชพ เชฎเชพเชŸเซ‡ เชกเชฟเชเชพเช‡เชจ เชชเซ‡เชŸเชฐเซเชจ เชถเซ€เช–เชตเชพเชจเซเช‚ เชนเซ‹เชˆ เชถเช•เซ‡ เช›เซ‡.

เชธเซเช•เชฟเชฒเชฌเซ‹เช•เซเชธ เชญเชฒเชพเชฎเชฃ เช•เชฐเซ‡ เช›เซ‡:

เชธเซ‹เชฐเซเชธ: www.habr.com

เชเช• เชŸเชฟเชชเซเชชเชฃเซ€ เช‰เชฎเซ‡เชฐเซ‹