ืื™ืš ื”ื’ืขืชื™ ืœ-ThoughtWorks ืื• ืจืื™ื•ืŸ ืœื“ื•ื’ืžื”

ืื™ืš ื”ื’ืขืชื™ ืœ-ThoughtWorks ืื• ืจืื™ื•ืŸ ืœื“ื•ื’ืžื”

ื”ืื ื–ื” ืœื ื ืจืื” ืœืš ืžื•ื–ืจ ืฉื›ืืฉืจ ืืชื” ืขื•ืžื“ ืœื”ื—ืœื™ืฃ ืžืงื•ื ืขื‘ื•ื“ื” ื•ืขื•ืœื” ื”ืฆื•ืจืš ืœืขื‘ื•ืจ ืจืื™ื•ืŸ, ื”ื“ื‘ืจ ื”ืจืืฉื•ืŸ ืฉืืชื” ื—ื•ืฉื‘ ื”ื•ื "ืืชื” ืฆืจื™ืš ืœื”ืชื›ื•ื ืŸ ืœืจืื™ื•ืŸ". ืคืชืจื• ื‘ืขื™ื•ืช ื‘-HackerRank, ืงืจืื• ืงืจืืง ืืช ืจืื™ื•ืŸ ื”ืงื™ื“ื•ื“, ืฉื ืŸ ื›ื™ืฆื“ ArrayList ืขื•ื‘ื“ ื•ื›ื™ืฆื“ ื”ื™ื ืฉื•ื ื” ืž-LinkedList. ืื” ื›ืŸ, ืื•ืœื™ ื”ื ื’ื ื™ืฉืืœื• ืขืœ ืžื™ื•ืŸ, ื•ื–ื” ื›ืžื•ื‘ืŸ ื™ื”ื™ื” ืœื ืžืงืฆื•ืขื™ ืœื•ืžืจ ืฉืžื™ื•ืŸ ืžื”ื™ืจ ื™ื”ื™ื” ื›ื›ืœ ื”ื ืจืื” ื”ื‘ื—ื™ืจื” ื”ื˜ื•ื‘ื” ื‘ื™ื•ืชืจ.
ืื‘ืœ ืจื’ืข, ืืชื” ืžืชื›ื ืช 8 ืฉืขื•ืช ื‘ื™ื•ื, ืคื•ืชืจ ื‘ืขื™ื•ืช ืžืขื ื™ื™ื ื•ืช ื•ืœื ื˜ืจื™ื•ื•ื™ืืœื™ื•ืช, ื•ื‘ืขื‘ื•ื“ื” ื”ื—ื“ืฉื” ืฉืœืš ืชืขืฉื” ืืช ืื•ืชื• ื”ื“ื‘ืจ, ืคืœื•ืก ืžื™ื ื•ืก. ืื‘ืœ ื‘ื›ืœ ื–ืืช, ื›ื“ื™ ืœืขื‘ื•ืจ ืจืื™ื•ืŸ, ืืชื” ืฆืจื™ืš ืื™ื›ืฉื”ื• ืœื”ืชื›ื•ื ืŸ ื‘ื ื•ืกืฃ, ืืคื™ืœื• ืœื ืœื—ื“ื“ ืืช ื”ื›ื™ืฉื•ืจื™ื ื”ื™ื•ืžื™ื•ืžื™ื™ื ืฉืœืš, ืืœื ืœืœืžื•ื“ ืžืฉื”ื• ืฉืœื ื”ื™ื™ืช ืฆืจื™ืš ื‘ืขื‘ื•ื“ื” ื”ื ื•ื›ื—ื™ืช ืฉืœืš ื•ืกื‘ื™ืจ ืœื”ื ื™ื— ืฉืœื ืชืฆื˜ืจืš ื‘ืขื‘ื•ื“ื” ื”ื‘ืื” ืฉืœืš. ืœื”ืชื ื’ื“ื•ื™ื•ืช ืฉืœืš ืฉืžื“ืขื™ ื”ืžื—ืฉื‘ ื–ื” ื‘ื“ื ืฉืœื ื•, ื•ืื ืชืขื™ืจ ืื•ืชื ื• ื‘ืืžืฆืข ื”ืœื™ืœื”, ืื ื—ื ื• ืžื—ื•ื™ื‘ื™ื ืœื›ืชื•ื‘ ื‘ืขื™ื ื™ื™ื ืขืฆื•ืžื•ืช ืขืœ ืฆื™ืคื™ืช ื˜ื™ื•ืœ ืœืจื•ื—ื‘ื• ืฉืœ ืขืฅ ืžื‘ืœื™ ืœื—ื–ื•ืจ ืœื”ื›ืจื”, ืื ื™ ื™ืขื ื” ืฉืื ืืงื‘ืœ ืขื‘ื•ื“ื” ื‘ืงืจืงืก, ื•ื”ืขื™ืงืจ ืฉืœื™ ื”ื˜ืจื™ืง ื™ื”ื™ื” ื‘ื“ื™ื•ืง ื–ื” - ืื– ืื•ืœื™ ื›ืŸ, ืื ื™ ืžืกื›ื™ื. ืžื™ื•ืžื ื•ืช ื–ื• ืฆืจื™ื›ื” ืœื”ื™ื‘ื“ืง.

ืื‘ืœ ืœืžื” ืœื‘ื“ื•ืง ืžื™ื•ืžื ื•ื™ื•ืช ืฉืื™ื ืŸ ืจืœื•ื•ื ื˜ื™ื•ืช ืœืขื‘ื•ื“ื” ื”ื ื•ื›ื—ื™ืช ืฉืœืš? ืจืง ื‘ื’ืœืœ ืฉื–ื” ื”ืคืš ืœืื•ืคื ืชื™? ื›ื™ ื’ื•ื’ืœ ืขื•ืฉื” ืืช ื–ื”? ืื• ื‘ื’ืœืœ ืฉืจืืฉ ื”ืฆื•ื•ืช ื”ืขืชื™ื“ื™ ืฉืœืš ื”ื™ื” ืฆืจื™ืš ืœืœืžื•ื“ ืืช ื›ืœ ืฉื™ื˜ื•ืช ื”ืžื™ื•ืŸ ืœืคื ื™ ื”ืจืื™ื•ืŸ ื•ื›ืขืช ื”ื•ื ืžืืžื™ืŸ ืฉ"ื›ืœ ืžืชื›ื ืช ื˜ื•ื‘ ื—ื™ื™ื‘ ืœื“ืขืช ื‘ืขืœ ืคื” ืืช ื”ื™ื™ืฉื•ื ืฉืœ ืžืฆื™ืืช ืคืœื™ื ื“ืจื•ื ื‘ืžื—ืจื•ื–ืช".

ื•ื‘ื›ืŸ, ืืชื” ืœื ื’ื•ื’ืœ (ื’). ืžื” ืฉื’ื•ื’ืœ ื™ื›ื•ืœื” ืœื”ืจืฉื•ืช ืœืขืฆืžื”, ื—ื‘ืจื•ืช ืจื’ื™ืœื•ืช ืœื ื™ื›ื•ืœื•ืช. ื’ื•ื’ืœ, ืœืื—ืจ ืฉื ื™ืชื—ื” ืืช ื”ื ืชื•ื ื™ื ืฉืœ ืขื•ื‘ื“ื™ื”, ื”ื’ื™ืขื” ืœืžืกืงื ื” ืฉืžื”ื ื“ืกื™ื ื‘ืขืœื™ ืจืงืข ืื•ืœื™ืžืคื™ืื“ื” ื˜ื•ื‘ื™ื ื‘ื”ืชืžื•ื“ื“ื•ืช ืขื ื”ืžืฉื™ืžื•ืช ื”ืกืคืฆื™ืคื™ื•ืช ืฉืœื”. ื™ืชืจื” ืžื›ืš, ืขืœ ื™ื“ื™ ืขื™ืฆื•ื‘ ืชื”ืœื™ืš ื”ื‘ื—ื™ืจื” ืฉืœื”ื, ื”ื ื™ื›ื•ืœื™ื ืœื”ืจืฉื•ืช ืœืขืฆืžื ืœืงื—ืช ืืช ื”ืกื™ื›ื•ืŸ ืฉื”ื ืขืœื•ืœื™ื ืœื ืœืฉื›ื•ืจ ื›ืžื” ืžื”ื ื“ืกื™ื ื˜ื•ื‘ื™ื ื›ื™ ื”ื ืœื ื™ื›ื•ืœื™ื ืœืคืฆื— ื‘ืขื™ื•ืช ืžืชืžื˜ื™ื•ืช ื‘ืงืœื•ืช. ืื‘ืœ ื–ื• ืœื ื‘ืขื™ื” ืขื‘ื•ืจื, ื™ืฉ ื”ืจื‘ื” ืื ืฉื™ื ืฉืจื•ืฆื™ื ืœืขื‘ื•ื“ ื‘ื’ื•ื’ืœ, ื”ืชืคืงื™ื“ ื™ื™ืกื’ืจ.
ืขื›ืฉื™ื• ื‘ื•ืื• ื ืกืชื›ืœ ืžื”ื—ืœื•ืŸ, ื•ืื ืžื•ืœ ื”ืžืฉืจื“ ืฉืœื›ื ื”ืžื”ื ื“ืกื™ื ืฉืจื•ืฆื™ื ืœืขื‘ื•ื“ ืืฆืœื›ื ืขื“ื™ื™ืŸ ืœื ื”ืงื™ืžื• ืžื—ื ื” ืื•ื”ืœื™ื, ื•ื”ืžืคืชื—ื™ื ืฉืœื›ื ืžื—ืคืฉื™ื ืœืขืชื™ื ืงืจื•ื‘ื•ืช ื™ื•ืชืจ ื‘-stackoverflow ืžื” ืฆืจื™ืš ืœื”ืชืงื™ืŸ ืืช ื”ืขืจืช ื”ืื‘ื™ื‘ ื”ื‘ืื”, ื‘ืžืงื•ื ืืช ื”ืžื•ืจื›ื‘ื•ื™ื•ืช ืฉืœ ืืœื’ื•ืจื™ืชืžื™ ื“ื™ืจื•ื’, ืื–, ื›ื ืจืื”, ื”ื’ื™ืข ื”ื–ืžืŸ ืฉืชื—ืฉื•ื‘ ืื ืขืœื™ืš ืœื”ืขืชื™ืง ืืช ื’ื•ื’ืœ.

ื•ื‘ื›ืŸ, ืื ื”ืคืขื ื’ื•ื’ืœ ื ื›ืฉืœื” ื•ืœื ืกื™ืคืงื” ืชืฉื•ื‘ื”, ืžื” ืขืœื™ืš ืœืขืฉื•ืช? ื‘ื“ืงื• ื‘ื“ื™ื•ืง ืžื” ื™ืขืฉื” ื”ืžืคืชื— ื‘ืขื‘ื•ื“ื”. ืžื” ืืชื” ืžืขืจื™ืš ืืฆืœ ืžืคืชื—ื™ื?
ืฆื•ืจ ืงืจื™ื˜ืจื™ื•ื ื™ื ืœืžื™ ืืชื” ืจื•ืฆื” ืœื”ืขืกื™ืง ื•ืคืชื— ืžื‘ื—ื ื™ื ืฉื‘ื•ื“ืงื™ื ื‘ื“ื™ื•ืง ืืช ื”ืžื™ื•ืžื ื•ื™ื•ืช ื”ืœืœื•.

ThoughtWorks

ืžื” ื”ืงืฉืจ ืฉืœ ThoughtWorks ืœื–ื”? ื›ืืŸ ืžืฆืืชื™ ื“ื•ื’ืžื” ืœืจืื™ื•ืŸ ื“ื•ื’ืžื” ืœืขืฆืžื™. ืžื™ ื”ื ThoughtWorks? ื‘ืงื™ืฆื•ืจ, ืžื“ื•ื‘ืจ ื‘ื—ื‘ืจืช ื™ื™ืขื•ืฅ High-End ืขื ืžืฉืจื“ื™ื ื‘ื›ืœ ื”ืขื•ืœื, ืžืกื™ืŸ, ืกื™ื ื’ืคื•ืจ ื•ืขื“ ื™ื‘ืฉื•ืช ืืžืจื™ืงื”, ืืฉืจ ืžื™ื™ืขืฆืช ื‘ืชื—ื•ื ื”ืคื™ืชื•ื— ืžื–ื” ื›-25 ืฉื ื”, ื‘ืขืœืช ื—ื˜ื™ื‘ืช Science ืžืฉืœื”, ื‘ืจืืฉื•ืช ืžืจื˜ื™ืŸ. ืคืื•ืœืจ. ืื ืืชื” ืžื—ืคืฉ ืจืฉื™ืžื” ืฉืœ 10 ืกืคืจื™ ื—ื•ื‘ื” ืœืžื”ื ื“ืก ืชื•ื›ื ื”, ืื– ืื•ืœื™ 2-3 ืžื”ื ื™ื™ื›ืชื‘ื• ืขืœ ื™ื“ื™ ื”ื—ื‘ืจ'ื” ืž-ThoughtWorks, ื›ืžื• Refactoring ืžืืช Martin Fowler ื•- Building Microservices: Designing Fine-Grained Systems ืžืืช ืกื ื ื™ื•ืžืŸ ืื• ื‘ื ื™ื™ืŸ ืืจื›ื™ื˜ืงื˜ื•ืจื•ืช ืื‘ื•ืœื•ืฆื™ื•ื ื™ื•ืช
ืžืืช ืคื˜ืจื™ืง ืงื•ืื”, ืจื‘ืงื” ืคืจืกื•ื ืก, ื ื™ืœ ืคื•ืจื“.

ืขืกืงื™ื” ืฉืœ ื”ื—ื‘ืจื” ื‘ื ื•ื™ ืขืœ ืžืชืŸ ืฉื™ืจื•ืชื™ื ื™ืงืจื™ื ืœืžื“ื™, ืืš ื”ืœืงื•ื— ืžืฉืœื ืขืœ ืื™ื›ื•ืช ืคื ื•ืžื ืœื™ืช, ื”ืžื•ืจื›ื‘ืช ืžืžื•ืžื—ื™ื•ืช, ืกื˜ื ื“ืจื˜ื™ื ืคื ื™ืžื™ื™ื ื•ื›ืžื•ื‘ืŸ ืžืื ืฉื™ื. ืœื›ืŸ, ื”ืขืกืงืช ื”ืื ืฉื™ื ื”ื ื›ื•ื ื™ื ื”ื™ื ื—ื™ื•ื ื™ืช ื›ืืŸ.
ืื™ื–ื” ืกื•ื’ ืฉืœ ืื ืฉื™ื ืฆื•ื“ืงื™ื? ื›ืžื•ื‘ืŸ, ื™ืฉื ื ืฉื•ื ื™ื ืขื‘ื•ืจ ื›ืœ ืื—ื“. ThoughtWorks ืงื‘ืขื” ืฉื”ืงืจื™ื˜ืจื™ื•ื ื™ื ื”ื—ืฉื•ื‘ื™ื ื‘ื™ื•ืชืจ ืœืžื•ื“ืœ ื”ืขืกืงื™ ืฉืœ ื”ืžืคืชื—ื™ื ืฉืœื”ื ื”ื:

  • ื™ื›ื•ืœืช ืœื”ืชืคืชื— ื‘ื–ื•ื’ื•ืช. ื–ื• ื™ื›ื•ืœืช, ืœื ื ื™ืกื™ื•ืŸ ืื• ืžื™ื•ืžื ื•ืช. ืืฃ ืื—ื“ ืœื ืžืฆืคื” ืฉืื ืฉื™ื ืฉืžืชืจื’ืœื™ื ืชื›ื ื•ืช ื–ื•ื’ื™ื•ืช ื›ื‘ืจ 5 ืฉื ื™ื ื™ื’ื™ืขื•. ืื‘ืœ ืœื”ื™ื•ืช ืคืชื•ื— ืœื“ืขื•ืช ืฉืœ ืื ืฉื™ื ืื—ืจื™ื ื•ืœื”ืงืฉื™ื‘ ื”ื™ื ืžื™ื•ืžื ื•ืช ื”ื›ืจื—ื™ืช.
  • ื™ื›ื•ืœืช ื›ืชื™ื‘ืช ืžื‘ื—ื ื™ื, ื•ื‘ืื•ืคืŸ ืื™ื“ื™ืืœื™ ืœืชืจื’ืœ TDD
  • ืœื”ื‘ื™ืŸ SOLID ื•- OOP ื•ืœื”ื™ื•ืช ืžืกื•ื’ืœ ืœื™ื™ืฉื ืื•ืชื.
  • ื”ืฆื’ ืืช ื“ืขืชืš. ื›ื™ื•ืขืฅ, ืืชื” ืฆืจื™ืš ืœืขื‘ื•ื“ ืขื ื”ืžืคืชื—ื™ื ืฉืœ ื”ืœืงื•ื—, ืขื ื™ื•ืขืฆื™ื ืื—ืจื™ื, ื•ืื™ืŸ ื”ืจื‘ื” ืชื•ืขืœืช ืื ืื“ื ื™ื•ื“ืข ืœืขืฉื•ืช ืžืฉื”ื• ื˜ื•ื‘, ืื‘ืœ ืœื’ืžืจื™ ืœื ืžืกื•ื’ืœ ืœื”ืขื‘ื™ืจ ืื•ืชื• ืœืฉืืจ ื”ืฆื•ื•ืช.

ื›ืขืช ื—ืฉื•ื‘ ืœื”ืขืจื™ืš ืืช ื”ืžื™ื•ืžื ื•ื™ื•ืช ื”ืžืกื•ื™ืžื•ืช ื”ืœืœื• ืืฆืœ ื”ืžื•ืขืžื“. ื•ื›ืืŸ ืื ื™ ืจื•ืฆื” ืœื“ื‘ืจ ืขืœ ื”ื—ื•ื•ื™ื” ืฉืœื™ ื‘ืจืื™ื•ื ื•ืช ื‘-ThoughtWorks. ืื ื™ ืื’ื™ื“ ืžื™ื“ ืฉื ืกืขืชื™ ืœืกื™ื ื’ืคื•ืจ ื•ืขื‘ืจืชื™, ืื‘ืœ ืชื”ืœื™ืš ื”ื’ื™ื•ืก ืžืื•ื—ื“ ื•ืœื ื™ื”ื™ื” ืฉื•ื ื” ื‘ื”ืจื‘ื” ืžืžื“ื™ื ื” ืœืžื“ื™ื ื”.

ืฉืœื‘ 0. HR

ื›ืคื™ ืฉืงื•ืจื” ืœืขืชื™ื ืงืจื•ื‘ื•ืช, ืจืื™ื•ืŸ ื‘ืŸ 20 ื“ืงื•ืช ืขื ืžืฉืื‘ื™ ืื ื•ืฉ. ืื ื™ ืœื ืืชืขื›ื‘ ืขืœ ื–ื”, ืื ื™ ืจืง ืื’ื™ื“ ืฉืžืขื•ืœื ืœื ืคื’ืฉืชื™ ืื™ืฉ ืžืฉืื‘ื™ ืื ื•ืฉ ืฉื™ื›ื•ืœ ืœื“ื‘ืจ ื‘ืžืฉืš 15 ื“ืงื•ืช ืขืœ ืชืจื‘ื•ืช ื”ืคื™ืชื•ื— ื‘ื—ื‘ืจื”, ืœืžื” ื”ื ืžืฉืชืžืฉื™ื ื‘-TDD, ืœืžื” ืชื›ื ื•ืช ื–ื•ื’ื™ื•ืช. ื‘ื“ืจืš ื›ืœืœ, ืื ืฉื™ ืžืฉืื‘ื™ ืื ื•ืฉ ืžืชื‘ืœื‘ืœื™ื ื‘ืฉืืœื” ื–ื• ื•ืื•ืžืจื™ื ืฉื”ืชื”ืœื™ืš ืฉืœื”ื ื ื•ืจืžืœื™: ืžืคืชื—ื™ื ืžืคืชื—ื™ื, ื‘ื•ื“ืงื™ื ื‘ื•ื“ืงื™ื, ืžื ื”ืœื™ื ื ื•ื”ื’ื™ื.

ืฉืœื‘ 1. ื›ืžื” ื˜ื•ื‘ ืืชื” ื‘-OOP, TDD?

1.5 ืฉืขื•ืช ืœืคื ื™ ืชื—ื™ืœืช ื”ืจืื™ื•ืŸ, ื ืฉืœื—ื” ืืœื™ื™ ืžืฉื™ืžื” ืœื”ื›ื™ืŸ ืกื™ืžื•ืœื˜ื•ืจ ืฉืœ Mars Rover.

ืžืฉื™ืžืช ืจื•ื‘ืจ ืžืื“ื™ืื—ื•ืœื™ื™ืช ืจื•ื‘ืจื™ื ืจื•ื‘ื•ื˜ื™ื ืืžื•ืจื” ืœื”ื™ื•ืช ื ื—ื™ืชื” ืขืœ ื™ื“ื™ ื ืืก"ื ืขืœ โ€‹โ€‹ืจืžื” ืขืœ ืžืื“ื™ื. ื”ืจืžื” ื”ื–ื•, ืฉื”ื™ื ืžืœื‘ื ื™ืช ื‘ืฆื•ืจื” ืžื•ื–ืจื”, ื—ื™ื™ื‘ืช ืœื ื•ื•ื˜ ืขืœ ื™ื“ื™ ื”ืจื•ื‘ืจื™ื ื›ื“ื™ ืฉื”ืžืฆืœืžื•ืช ื”ืžืฉื•ืœื‘ื•ืช ืฉืœื”ื ื™ื•ื›ืœื• ืœืงื‘ืœ ืชืฆื•ื’ื” ืžืœืื” ืฉืœ ื”ืฉื˜ื— ืฉืžืกื‘ื™ื‘ ื›ื“ื™ ืœืฉืœื•ื— ื‘ื—ื–ืจื” ืœื›ื“ื•ืจ ื”ืืจืฅ. ืžื™ืงื•ืžื• ื•ืžื™ืงื•ืžื• ืฉืœ ืจื•ื‘ืจ ืžื™ื•ืฆื’ื™ื ืขืœ ื™ื“ื™ ืฉื™ืœื•ื‘ ืฉืœ ืงื•ืื•ืจื“ื™ื ื˜ื•ืช x ื•-y ื•ืื•ืช ื”ืžื™ื™ืฆื’ืช ืื—ืช ืžืืจื‘ืข ื ืงื•ื“ื•ืช ื”ืžืฆืคืŸ ื”ืงืจื“ื™ื ืœื™ื•ืช. ื”ืจืžื” ืžื—ื•ืœืงืช ืœืจืฉืช ื›ื“ื™ ืœืคืฉื˜ ืืช ื”ื ื™ื•ื•ื˜. ืžื™ืงื•ื ืœื“ื•ื’ืžื” ื™ื›ื•ืœ ืœื”ื™ื•ืช 0, 0, N, ื›ืœื•ืžืจ ื”ืจื•ื‘ืจ ื ืžืฆื ื‘ืคื™ื ื” ื”ืฉืžืืœื™ืช ื”ืชื—ืชื•ื ื” ื•ืคื•ื ื” ืœืฆืคื•ืŸ. ืขืœ ืžื ืช ืœืฉืœื•ื˜ ืขืœ ืจื•ื‘ืจ, ื ืืก"ื ืฉื•ืœื—ืช ืžื—ืจื•ื–ืช ืื•ืชื™ื•ืช ืคืฉื•ื˜ื”. ื”ืื•ืชื™ื•ืช ื”ืืคืฉืจื™ื•ืช ื”ืŸ 'L', 'R' ื•-'M'. 'L' ื•-'R' ื’ื•ืจืžื™ื ืœืจื•ื‘ืจ ืœื”ืกืชื•ื‘ื‘ 90 ืžืขืœื•ืช ืฉืžืืœื” ืื• ื™ืžื™ื ื” ื‘ื”ืชืืžื”, ืžื‘ืœื™ ืœื–ื•ื– ืžื”ืžืงื•ื ื”ื ื•ื›ื—ื™ ืฉืœื•. 'M' ืคื™ืจื•ืฉื• ืœื ื•ืข ืงื“ื™ืžื” ื ืงื•ื“ืช ืจืฉืช ืื—ืช, ื•ืœืฉืžื•ืจ ืขืœ ืื•ืชื” ื›ื•ืชืจืช.
ื ื ื™ื— ืฉื”ืจื™ื‘ื•ืข ื™ืฉื™ืจื•ืช ืžืฆืคื•ืŸ (x, y) ื”ื•ื (x, y+1).
ืงึถืœึถื˜:
ืงื• ื”ืงืœื˜ ื”ืจืืฉื•ืŸ ื”ื•ื ื”ืงื•ืื•ืจื“ื™ื ื˜ื•ืช ื”ื™ืžื ื™ืช ื”ืขืœื™ื•ื ื” ืฉืœ ื”ืจืžื”, ื”ื”ื ื—ื” ื”ื™ื ืฉื”ืงื•ืื•ืจื“ื™ื ื˜ื•ืช ื”ืฉืžืืœื™ืช ื”ืชื—ืชื•ื ื” ื”ืŸ 0,0.
ืฉืืจ ื”ืงืœื˜ ื”ื•ื ืžื™ื“ืข ื”ื ื•ื’ืข ืœืจื•ื‘ืจื™ื ืฉื ืคืจืกื•. ืœื›ืœ ืจื•ื‘ืจ ื™ืฉ ืฉื ื™ ืงื•ื•ื™ ืงืœื˜. ื”ืฉื•ืจื” ื”ืจืืฉื•ื ื” ื ื•ืชื ืช ืืช ืžื™ืงื•ืžื• ืฉืœ ื”ืจื•ื‘ืจ, ื•ื”ืฉื•ืจื” ื”ืฉื ื™ื™ื” ื”ื™ื ืกื“ืจื” ืฉืœ ื”ื•ืจืื•ืช ื”ืžืกืคืจื•ืช ืœืจื•ื‘ืจ ื›ื™ืฆื“ ืœื—ืงื•ืจ ืืช ื”ืจืžื”. ื”ืžื™ืงื•ื ืžื•ืจื›ื‘ ืžืฉื ื™ ืžืกืคืจื™ื ืฉืœืžื™ื ื•ืžืื•ืช ืžื•ืคืจื“ื™ื ื‘ืจื•ื•ื—ื™ื, ื”ืชื•ืืžื™ื ืœืงื•ืื•ืจื“ื™ื ื˜ื•ืช x ื•-y ื•ืœื›ื™ื•ื•ืŸ ื”ืจื•ื‘ืจ.
ื›ืœ ืจื•ื‘ืจ ื™ืกืชื™ื™ื ื‘ืจืฆืฃ, ืžื” ืฉืื•ืžืจ ืฉื”ืจื•ื‘ืจ ื”ืฉื ื™ ืœื ื™ืชื—ื™ืœ ืœื ื•ืข ืขื“ ืฉื”ืจืืฉื•ืŸ ื™ืกื™ื™ื ืœื ื•ืข.
ืชืคื•ืงื”:
ื”ืคืœื˜ ืขื‘ื•ืจ ื›ืœ ืจื•ื‘ืจ ืฆืจื™ืš ืœื”ื™ื•ืช ื”ืงื•ืื•ืจื“ื™ื ื˜ื•ืช ื•ื”ื›ื™ื•ื•ืŸ ื”ืกื•ืคื™ ืฉืœื•.
ื”ืขืจื•ืช:
ื›ืœ ืฉืขืœื™ืš ืœืขืฉื•ืช ื”ื•ื ืœื™ื™ืฉื ืืช ื”ื“ืจื™ืฉื•ืช ืœืขื™ืœ ื•ืœื”ื•ื›ื™ื— ืฉื•ืื‘ ืื‘ืง ืขื•ื‘ื“ ืขืœ ื™ื“ื™ ื›ืชื™ื‘ืช ื‘ื“ื™ืงื•ืช ื™ื—ื™ื“ื” ืขื‘ื•ืจื•.
ื™ืฆื™ืจืช ื›ืœ ืฆื•ืจื” ืฉืœ ืžืžืฉืง ืžืฉืชืžืฉ ื”ื™ื ืžื—ื•ืฅ ืœืชื—ื•ื.
ืคืชืจื•ืŸ ื”ื‘ืขื™ื” ื‘ืืžืฆืขื•ืช ื’ื™ืฉืช TDD (Test Driven Development) ื™ื•ืขื“ืฃ.
ื‘ื–ืžืŸ ื”ืงืฆืจ ื”ืขื•ืžื“ ืœืจืฉื•ืชื ื•, ืื ื• ื“ื•ืื’ื™ื ื™ื•ืชืจ ืœืื™ื›ื•ืช ืžืืฉืจ ืœืฉืœืžื•ืช.
*ืื ื™ ืœื ื™ื›ื•ืœ ืœืคืจืกื ืืช ื”ืžื˜ืœื” ืฉื ืฉืœื—ื” ืืœื™, ื–ื• ืžื˜ืœื” ื™ืฉื ื” ืฉื ื™ืชื ื” ืœืคื ื™ ืžืกืคืจ ืฉื ื™ื. ืื‘ืœ ืชืืžื™ืŸ ืœื™, ื‘ื™ืกื•ื“ื• ื”ื›ืœ ื ืฉืืจ ืื•ืชื• ื“ื‘ืจ.

ื‘ืจืฆื•ื ื™ ื‘ืžื™ื•ื—ื“ ืœื”ืคื ื•ืช ืืช ืชืฉื•ืžืช ื”ืœื‘ ืœืงืจื™ื˜ืจื™ื•ื ื™ ื”ื”ืขืจื›ื”. ื›ืžื” ืคืขืžื™ื ื ืชืงืœืชื ื‘ืžืฆื‘ ืฉื‘ื• ื“ื‘ืจื™ื ืฉื—ืฉื•ื‘ื™ื ืœืžื•ืขืžื“ ื”ื ื—ืกืจื™ ื—ืฉื™ื‘ื•ืช ืœื—ืœื•ื˜ื™ืŸ ื‘ืžื”ืœืš ื”ื‘ื™ืงื•ืจืช ื•ืœื”ื™ืคืš. ืœื ื›ื•ืœื ื—ื•ืฉื‘ื™ื ื›ืžื•ืš, ืื‘ืœ ืจื‘ื™ื ื™ื›ื•ืœื™ื ืœืงื‘ืœ ื•ืœืขืงื•ื‘ ืื—ืจ ื”ืขืจื›ื™ื ืฉืœืš ืื ื”ื ืžื•ืฆื”ืจื™ื ื‘ื‘ื™ืจื•ืจ. ืœื›ืŸ, ืžืงืจื™ื˜ืจื™ื•ื ื™ ื”ื”ืขืจื›ื” ื‘ืจื•ืจ ืžื™ื“ ืฉื”ื›ื™ืฉื•ืจื™ื ื”ื—ืฉื•ื‘ื™ื ื‘ื™ื•ืชืจ ื‘ืฉืœื‘ ื–ื” ื”ื

  • TDD;
  • ื™ื›ื•ืœืช ืœื”ืฉืชืžืฉ ื‘- OOP ื•ืœื›ืชื•ื‘ ืงื•ื“ ื‘ืจ ืชื—ื–ื•ืงื”;
  • ืฆืžื“ ื™ื›ื•ืœื•ืช ืชื›ื ื•ืช

ืื–, ื”ื–ื”ื™ืจื• ืื•ืชื™ ืœื‘ืœื•ืช ืืช 1.5 ื”ืฉืขื•ืช ื”ืืœื” ื‘ืžื—ืฉื‘ื” ืขืœ ืื™ืš ืื ื™ ื”ื•ืœืš ืœื‘ืฆืข ืืช ื”ืžืฉื™ืžื”, ื‘ืžืงื•ื ืœื›ืชื•ื‘ ืงื•ื“. ื ื›ืชื•ื‘ ืืช ื”ืงื•ื“ ื‘ื™ื—ื“.

ื›ืฉื”ื’ืขื ื• ืœื˜ืœืคื•ืŸ, ื”ื—ื‘ืจ'ื” ืกื™ืคืจื• ืœื ื• ื‘ืงืฆืจื” ืžื™ ื”ื ื•ืžื” ื”ื ืขื•ืฉื™ื ื•ื”ืฆื™ืขื• ืœื”ืชื—ื™ืœ ื‘ืคื™ืชื•ื—.

ื‘ืžื”ืœืš ื›ืœ ื”ืจืื™ื•ืŸ ืœื ื”ื™ื™ืชื” ืœื™ ื”ืจื’ืฉื” ืฉืžืจืื™ื™ื ื™ื ืื•ืชื™. ื™ืฉ ืชื—ื•ืฉื” ืฉืืชื” ืžืคืชื— ืงื•ื“ ื‘ืฆื•ื•ืช. ืื ืืชื” ื ืชืงืข ืื™ืคืฉื”ื•, ื”ื ืขื•ื–ืจื™ื, ืžื™ื™ืขืฆื™ื, ื“ื ื™ื, ืืคื™ืœื• ืžืชื•ื•ื›ื—ื™ื ืื—ื“ ืขื ื”ืฉื ื™ ืขืœ ื”ื“ืจืš ื”ื˜ื•ื‘ื” ื‘ื™ื•ืชืจ ืœืขืฉื•ืช ื–ืืช. ื‘ืจืื™ื•ืŸ ืฉื›ื—ืชื™ ืื™ืš ื‘ื•ื“ืงื™ื ื‘-JUnit 5 ืฉืฉื™ื˜ื” ื–ื•ืจืงืช Exception - ื”ื ื”ืฆื™ืขื• ืœื”ืžืฉื™ืš ืœื›ืชื•ื‘ ืืช ื”ืžื‘ื—ืŸ, ื‘ื–ืžืŸ ืฉืื—ื“ ืžื”ื ื—ื™ืคืฉ ืื™ืš ืขื•ืฉื™ื ืืช ื–ื”.

ืžืžืฉ ื›ืžื” ืฉืขื•ืช ืื—ืจื™ ื”ืจืื™ื•ืŸ, ืงื™ื‘ืœืชื™ ืžืฉื•ื‘ ื‘ื•ื ื” - ืžื” ืื”ื‘ืชื™ ื•ืžื” ืœื. ื‘ืžืงืจื” ืฉืœื™, ืงื™ื‘ืœืชื™ ืฉื‘ื—ื™ื ืขืœ ื”ืฉื™ืžื•ืฉ ื‘ืžื—ืœืงื•ืช Sealed ื›ื—ืœื•ืคื” ืœืื•ื‘ื™ื™ืงื˜ ื”-null; ืขืœ ื›ืš ืฉืœืคื ื™ ื›ืชื™ื‘ืช ื”ืงื•ื“, ื›ืชื‘ืชื™ ื‘ืคืกืื•ื“ื•ืงื•ื“ ื›ื™ืฆื“ ืืจืฆื” ืœืฉืœื•ื˜ ืขืœ ื”ืจื•ื‘ืจ, ื•ื›ืš ืงื™ื‘ืœืชื™ ืกืงื™ืฆื” ืฉืœ ื”ืžื—ืœืงื•ืช, ืœืคื—ื•ืช ืืœื• ืฉืžืขื•ืจื‘ื•ืช ื‘-API ืฉืœ ื”ืจื•ื‘ื•ื˜.

ืฉืœื‘ 2: ืกืคืจ ืœื ื•

ืฉื‘ื•ืข ืœืคื ื™ ื”ืจืื™ื•ืŸ ื”ืชื‘ืงืฉืชื™ ืœื”ื›ื™ืŸ ืžืฆื’ืช ืขืœ ื›ืœ ื ื•ืฉื ืฉืžืขื ื™ื™ืŸ ืื•ืชื™. ื”ืคื•ืจืžื˜ ืคืฉื•ื˜ ื•ืžื•ื›ืจ: 15 ื“ืงื•ืช ืžืฆื’ืช, 15 ื“ืงื•ืช ืžืขื ื” ืœืฉืืœื•ืช.
ื‘ื—ืจืชื™ ื‘- Clean Architecture ืžืืช ื”ื“ื•ื“ ื‘ื•ื‘. ื•ืฉื•ื‘ ื”ืชืจืื™ื™ื ืชื™ ืขืœ ื™ื“ื™ ื›ืžื” ืื ืฉื™ื. ื–ื• ื”ื™ื™ืชื” ื”ื—ื•ื•ื™ื” ื”ืจืืฉื•ื ื” ืฉืœื™ ื‘ื”ืฆื’ื” ื‘ืื ื’ืœื™ืช, ื•ืื•ืœื™, ืื ื”ื™ื™ืชื™ ื‘ืžืฆื‘ ืžืœื—ื™ืฅ, ืœื ื”ื™ื™ืชื™ ืžืกื•ื’ืœ ืœื”ืชืžื•ื“ื“. ืื‘ืœ ืฉื•ื‘, ืืฃ ืคืขื ืœื ื”ื™ื™ืชื” ืœื™ ื”ืจื’ืฉื” ืฉืื ื™ ื‘ืจืื™ื•ืŸ. ื”ื›ืœ ื›ืจื’ื™ืœ - ืื ื™ ืื•ืžืจ ืœื”ื, ื”ื ืžืงืฉื™ื‘ื™ื ื”ื™ื˜ื‘. ืืคื™ืœื• ืžืคื’ืฉ ื”ืฉืืœื•ืช ื•ื”ืชืฉื•ื‘ื•ืช ื”ืžืกื•ืจืชื™ ืœื ื”ื™ื” ื›ืžื• ืจืื™ื•ืŸ; ื”ื™ื” ื‘ืจื•ืจ ืฉื”ืฉืืœื•ืช ืœื ื ืฉืืœื• "ืœืฉืงื•ืข", ืืœื ืืœื• ืฉื‘ืืžืช ืขื ื™ื™ื ื• ืื•ืชืŸ ื‘ืžืฆื’ืช ืฉืœื™.

ื›ืžื” ืฉืขื•ืช ืœืื—ืจ ื”ืจืื™ื•ืŸ ืงื™ื‘ืœืชื™ ืžืฉื•ื‘ - ื”ืžืฆื’ืช ื”ื™ื™ืชื” ืžืื•ื“ ืฉื™ืžื•ืฉื™ืช ื•ื”ื ื ื”ื ื• ืžืื•ื“ ืœื”ืงืฉื™ื‘.

ืฉืœื‘ 3. ืงื•ื“ ืื™ื›ื•ืช ื™ื™ืฆื•ืจ

ืœืื—ืจ ืฉื”ื–ื”ืจืชื™ ืฉื–ื” ื”ืฉืœื‘ ื”ืื—ืจื•ืŸ ืฉืœ ืจืื™ื•ื ื•ืช ื˜ื›ื ื™ื™ื, ื”ืชื‘ืงืฉืชื™ ืœื”ื‘ื™ื ืืช ื”ืงื•ื“ ื‘ื‘ื™ืช ืœืžืฆื‘ ืžื•ื›ืŸ ืœื™ื™ืฆื•ืจ, ื•ืื– ืœืฉืœื•ื— ืืช ื”ืงื•ื“ ืœื‘ื“ื™ืงื” ื•ืœืงื‘ื•ืข ืจืื™ื•ื ื•ืช ืฉื‘ื”ื ื”ื“ืจื™ืฉื•ืช ืœืžืฉื™ืžื” ื™ืฉืชื ื• ื•ื”ืงื•ื“ ื™ืฉืชื ื”. ื“ื•ืจืฉ ืฉื™ื ื•ื™. ื‘ืžื‘ื˜ ืงื“ื™ืžื”, ืื ื™ ื™ื›ื•ืœ ืœื•ืžืจ ืฉื‘ื“ื™ืงืช ื”ืงื•ื“ ืžืชื‘ืฆืขืช ื‘ืฆื•ืจื” ืขื™ื•ื•ืจืช, ื”ืกื•ืงืจื™ื ืœื ื™ื•ื“ืขื™ื ืืช ื”ืชืคืงื™ื“ ืืœื™ื• ืžืชืžื•ื“ื“ ื”ืžื•ืขืžื“, ื”ื ืœื ืจื•ืื™ื ืืช ืงื•ืจื•ืช ื”ื—ื™ื™ื ืฉืœื•, ื”ื ืืคื™ืœื• ืœื ืจื•ืื™ื ืืช ืฉืžื•.

ื”ื˜ืœืคื•ืŸ ืฆืœืฆืœ, ื•ืฉื•ื‘ ื”ื™ื• ื›ืžื” ื‘ื—ื•ืจื™ื ื‘ืฆื“ ื”ืฉื ื™ ืฉืœ ื”ืžื•ื ื™ื˜ื•ืจ. ื”ื›ืœ ืื•ืชื• ื“ื‘ืจ ื›ืžื• ื‘ืจืื™ื•ืŸ ื”ืจืืฉื•ืŸ: ื”ืขื™ืงืจ ืœื ืœืฉื›ื•ื— ืืช TDD, ืœืกืคืจ ืžื” ืืชื” ืขื•ืฉื” ื•ืœืžื”. ืื ืœื ืชืจื’ืœืชื ื‘ืขื‘ืจ TDD, ืื– ืื ื™ ืžืžืœื™ืฅ ืœื”ืชื—ื™ืœ ืœืขืฉื•ืช ืืช ื–ื” ืžื™ื“, ืœื ื›ื™ ื–ื” ื”ื›ืจื—ื™ ื‘ื—ื‘ืจื•ืช, ืืœื ื›ื™ ื–ื” ืžืคืฉื˜ ืืช ื—ื™ื™ื›ื ื‘ืฆื•ืจื” ืžืฉืžืขื•ืชื™ืช, ืžืคื—ื™ืช ืืช ืจืžืช ื”ืœื—ืฅ ืื ืชืจืฆื•. ื–ื•ื›ืจื™ื ืื™ืš ื ืืœืฆืชื ืœื—ืคืฉ ื‘ื˜ื™ืจื•ืฃ ืขื ื‘ืื’ื™ื ืื—ืจ ืฉื’ื™ืื” ืฉื ื™ืชืŸ ืœืฉื—ื–ืจ ืจืง ื“ืจืš ื”ื“ืคื“ืคืŸ, ืื‘ืœ ืื™ ืืคืฉืจ ืœืฉื—ื–ืจ ืื•ืชื” ื‘ื‘ื“ื™ืงื•ืช? ืขื›ืฉื™ื• ื“ืžื™ื™ื ื• ืฉืชืฆื˜ืจื›ื• ืœืชืคื•ืก ื˜ืขื•ืช ื›ื–ื• ื‘ืžื”ืœืš ืจืื™ื•ืŸ - ืžื•ื‘ื˜ื—ื•ืช ืœื›ื ื›ืžื” ืฉืขืจื•ืช ืืคื•ืจื•ืช. ืžื” ืื ื—ื ื• ืžืงื‘ืœื™ื ืขื TDD? ืฉื™ื ื™ื ื• ืืช ื”ืงื•ื“ ื•ื”ื‘ื ื• ื‘ืžืคืชื™ืข ืฉืขื›ืฉื™ื• ื”ื‘ื“ื™ืงื•ืช ืื“ื•ืžื•ืช, ืื‘ืœ ืžื”ื™ ื”ืฉื’ื™ืื” ืฉืื ื—ื ื• ืœื ืžืฆืœื™ื—ื™ื ืœื”ื‘ื™ืŸ ื‘ืคืขื ื”ืจืืฉื•ื ื”? ืื•ืงื™ื™, ืื ื—ื ื• ืื•ืžืจื™ื "ืื•ืคืก" ืœืžืจืื™ื™ื ื™ื, ืœื•ื—ืฆื™ื ืขืœ Ctrl-Z ื•ืžืชื—ื™ืœื™ื ืœืขืฉื•ืช ืฆืขื“ื™ื ืงื˜ื ื™ื ืงื“ื™ืžื”. ื•ื›ืŸ, ืืชื” ืฆืจื™ืš ืœืคืชื— ืืช ื”ื™ื›ื•ืœืช ืœื”ืชืคืชื— ื‘ืืžืฆืขื•ืช TDD ื‘ืขืฆืžืš, ืืช ื”ื™ื›ื•ืœืช ืœืœื›ืช ืœืงืจืืช ื”ืžื˜ืจื” ื›ืš ืฉื”ื‘ื“ื™ืงื•ืช ืฉืœืš ื™ื”ื™ื• ื™ืจื•ืงื•ืช ืœืฆืžื™ืชื•ืช, ื•ืœื ืื“ื•ืžื•ืช ืœืžืฉืš ื—ืฆื™ ื™ื•ื, ื›ื™ "ื™ืฉ ืœืš ื”ืจื‘ื” ื—ื™ื“ื•ืฉื™ื". ื–ื• ื‘ื“ื™ื•ืง ืื•ืชื” ืžื™ื•ืžื ื•ืช ื›ืžื• ื›ืชื™ื‘ืช ืงื•ื“ ื‘ืจ ืชื—ื–ื•ืงื”, ืื• ื›ืชื™ื‘ืช ืงื•ื“ ืคืจื•ื“ื•ืงื˜ื™ื‘ื™.

ืœื›ืŸ, ืขื“ ื›ืžื” ื ื™ืชืŸ ืœืฉื ื•ืช ืืช ื”ืงื•ื“ ืฉืœืš ืชืœื•ื™ ื‘ืื™ื–ื” ืขื™ืฆื•ื‘ ืืชื” ื—ื•ืฉื‘ ืžืœื›ืชื—ื™ืœื”, ื›ืžื” ื–ื” ืคืฉื•ื˜ ื•ืขื“ ื›ืžื” ื”ื‘ื“ื™ืงื•ืช ืฉืœืš ื˜ื•ื‘ื•ืช.

ืœืื—ืจ ื”ืจืื™ื•ืŸ ืงื™ื‘ืœืชื™ ืžืฉื•ื‘ ืชื•ืš ืžืกืคืจ ืฉืขื•ืช. ื‘ืฉืœื‘ ื”ื–ื”, ื”ื‘ื ืชื™ ืฉื›ืžืขื˜ ืกื™ื™ืžืชื™ ื•ื ืฉืืจ ืžืขื˜ ืžืื•ื“ ืขื“ ืฉ"ืคื’ืฉืชื™ ืืช ืคืื•ืœืจ".

ืฉืœื‘ 4. ื’ืžืจ. ืžืกืคื™ืง ืฉืืœื•ืช ื˜ื›ื ื™ื•ืช. ืื ื—ื ื• ืจื•ืฆื™ื ืœื“ืขืช ืžื™ ืืชื”!

ืœืžืขืŸ ื”ืืžืช, ื”ื™ื™ืชื™ ืงืฆืช ืžื‘ื•ืœื‘ืœ ืžื”ื ื™ืกื•ื— ื”ื–ื” ืฉืœ ื”ืฉืืœื”. ืื™ืš ืืชื” ื™ื›ื•ืœ ืœื”ื‘ื™ืŸ ืื™ื–ื” ื‘ืŸ ืื“ื ืื ื™ ื‘ืฉืขื” ืื—ืช ืฉืœ ืฉื™ื—ื”? ื•ืขื•ื“ ื™ื•ืชืจ ืžื›ืš, ืื™ืš ืืชื” ื™ื›ื•ืœ ืœื”ื‘ื™ืŸ ืืช ื–ื” ื›ืฉืื ื™ ืžื“ื‘ืจ ื‘ืฉืคื” ืฉืื™ื ื” ืฉืคืช ื”ืื ืฉืœื™, ื•ืœืžืขืŸ ื”ืืžืช, ืžืื•ื“ ืขืœื•ื‘ ื•ืขื ืœืฉื•ืŸ. ื‘ืจืื™ื•ื ื•ืช ืงื•ื“ืžื™ื ื”ื™ื” ืœื™ ื™ื•ืชืจ ืงืœ ืœื“ื‘ืจ ื•ืœื ืœืขื ื•ืช ืขืœ ืฉืืœื•ืช, ื•ื”ืžื‘ื˜ื ื”ื™ื” ืืฉื. ืœืคื—ื•ืช ืื—ื“ ืžื”ืžืจืื™ื™ื ื™ื ื”ื™ื” ืืกื™ื™ืชื™ - ื•ื”ืžื‘ื˜ื ืฉืœื”ื, ื•ื‘ื›ืŸ, ื‘ื•ื ื ื’ื™ื“, ื”ื•ื ืงืฆืช ืกืคืฆื™ืคื™ ืœืื•ื–ืŸ ื”ืื™ืจื•ืคื™ืช. ืœื›ืŸ ื”ื—ืœื˜ืชื™ ืœื ืงื•ื˜ ื‘ื’ื™ืฉื” ื™ื–ื•ืžื” โ€“ ืœื”ื›ื™ืŸ ืžืฆื’ืช ืขืœ ืขืฆืžื™ ื•ื‘ืชื—ื™ืœืช ื”ืจืื™ื•ืŸ ืœื”ืฆื™ืข ืœื“ื‘ืจ ืขืœ ืขืฆืžื™ ืขื ื”ืžืฆื’ืช ื”ื–ื•. ืื ื”ื ื™ืกื›ื™ืžื•, ืื– ืœืคื—ื•ืช ื™ื”ื™ื• ืคื—ื•ืช ืฉืืœื•ืช ืขื‘ื•ืจื™; ืื ื”ื ื™ื“ื—ื• ืืช ื”ื”ืฆืขื”, ื•ื‘ื›ืŸ, 3 ืฉืขื•ืช ืžื—ื™ื™ ืฉื”ื•ืฉืงืขื• ื‘ืžืฆื’ืช ื–ื” ืœื ืžื—ื™ืจ ื›ืœ ื›ืš ื’ื‘ื•ื”. ืื‘ืœ ืžื” ื›ื“ืื™ ืœื›ืชื•ื‘ ื‘ืžืฆื’ืช? ื‘ื™ื•ื’ืจืคื™ื” - ื ื•ืœื“ ืฉื, ื‘ืื•ืชื” ืชืงื•ืคื”, ื”ืœืš ืœื‘ื™ืช ื”ืกืคืจ, ืกื™ื™ื ืืช ืœื™ืžื•ื“ื™ื• ื‘ืื•ื ื™ื‘ืจืกื™ื˜ื” - ืื‘ืœ ืœืžื™ ืื›ืคืช?

ืื ืชื—ืคืฉื• ืงืฆืช ื‘ื’ื•ื’ืœ ืขืœ โ€‹โ€‹ืชืจื‘ื•ืช Thoughtworks, ืชืžืฆืื• ืžืืžืจ ืžืืช ืžืจื˜ื™ืŸ ืคืื•ืœืจ [https://martinfowler.com/bliki/ThreePillars.html] ืฉืžืชืืจ ืืช 3 ืขืžื•ื“ื™ ื”ืชื•ื•ืš: ืขืกืงื™ื ื‘ืจ ืงื™ื™ืžื, ืžืฆื•ื™ื ื•ืช ื‘ืชื•ื›ื ื” ื•ืฆื“ืง ื—ื‘ืจืชื™.

ื‘ื•ื ื ื ื™ื— ืฉืžืฆื•ื™ื ื•ืช ืชื•ื›ื ื” ื›ื‘ืจ ื ื‘ื“ืงื” ืขื‘ื•ืจื™. ื ื•ืชืจ ืœื”ืจืื•ืช ืขืกืงื™ื ื‘ืจ ืงื™ื™ืžื ื•ืฆื“ืง ื—ื‘ืจืชื™.

ื™ืชืจ ืขืœ ื›ืŸ, ื”ื—ืœื˜ืชื™ ืœื”ืชืžืงื“ ื‘ืื—ืจื•ืŸ.

ืžืœื›ืชื—ื™ืœื”, ืกื™ืคืจืชื™ ืœื• ืžื“ื•ืข ThoughtWorks - ืงืจืืชื™ ืืช ื”ื‘ืœื•ื’ ืฉืœ ืžืจื˜ื™ืŸ ืคืื•ืœืจ ืขื•ื“ ื‘ืžื›ืœืœื”, ื•ืžื›ืืŸ ืื”ื‘ืชื™ ืœืงื•ื“ ื ืงื™.

ื ื™ืชืŸ ืœื”ืฆื™ื’ ืคืจื•ื™ืงื˜ื™ื ื’ื ืžื–ื•ื•ื™ื•ืช ืฉื•ื ื•ืช. ื”ื•ื ื’ื ืคื™ืชื— ืชื•ื›ื ื” ืœืจืคื•ืื” ืฉืคืฉื˜ื” ืืช ื—ื™ื™ื”ื ืฉืœ ื—ื•ืœื™ื, ื•ืืคื™ืœื•, ืขืœ ืคื™ ื”ืฉืžื•ืขื•ืช, ื”ืฆื™ืœื” ื—ื™ื™ื ืื—ื“. ืคื™ืชื—ืชื™ ื’ื ืชื•ื›ื ื” ืœื‘ื ืงื™ื, ืฉื’ื ื”ืงืœื” ืขืœ ื”ืื–ืจื—ื™ื. ื‘ืžื™ื•ื—ื“ ืื ื”ื‘ื ืง ื”ื–ื” ืžืฉืžืฉ 70% ืžืื•ื›ืœื•ืกื™ื™ืช ื”ืžื“ื™ื ื”. ืœื ืžื“ื•ื‘ืจ ื‘ืกื‘ืจื‘ื ืง ื•ืืคื™ืœื• ืœื ื‘ืจื•ืกื™ื”.

ืจื•ืฆื” ืœื“ืขืช ืขืœื™? ื‘ืกื“ืจ. ื”ืชื—ื‘ื™ื‘ ืฉืœื™ ื”ื•ื ืฆื™ืœื•ื, ื›ืš ืื• ื›ืš ืื ื™ ืžื—ื–ื™ืง ืžืฆืœืžื” ื‘ื™ื“ื™ื™ื ื‘ืขืจืš 10 ืฉื ื™ื, ื™ืฉ ืฆื™ืœื•ืžื™ื ืฉืื ื™ ืœื ืžืชื‘ื™ื™ืฉ ื™ื•ืชืจ ืžื“ื™ ืœื”ืจืื•ืช. ื›ืžื• ื›ืŸ, ืคืขื ืขื–ืจืชื™ ืœืžืงืœื˜ ืœื—ืชื•ืœื™ื: ืฆื™ืœืžืชื™ ื—ืชื•ืœื™ื ืฉื–ืงื•ืงื™ื ืœื‘ื™ืช ืงื‘ืข. ื•ืขื ืฆื™ืœื•ืžื™ื ื˜ื•ื‘ื™ื ื”ืจื‘ื” ื™ื•ืชืจ ืงืœ ืœืžืงื ื—ืชื•ืœ. ื›ื ืจืื” ืฆื™ืœืžืชื™ ืžืื” ื—ืชื•ืœื™ื :)

ื‘ืกื•ืคื• ืฉืœ ื“ื‘ืจ, 80% ืžื”ืžืฆื’ืช ืฉืœื™ ื”ื™ื™ืชื” ืžืœืื” ื‘ื—ืชื•ืœื™ื.

ืžื™ื“ ืœืื—ืจ ื”ืžืฆื’ืช, HR ื›ืชื‘ ืœื™ ืฉื”ื•ื ืขื“ื™ื™ืŸ ืœื ื™ื•ื“ืข ืืช ืชื•ืฆืื•ืช ื”ืจืื™ื•ืŸ, ืื‘ืœ ื›ืœ ื”ืžืฉืจื“ ื›ื‘ืจ ื”ืชืจืฉื ืžื”ื—ืชื•ืœื™ื.

ื‘ืกื•ืคื• ืฉืœ ื“ื‘ืจ, ื—ื™ื›ื™ืชื™ ืœืžืฉื•ื‘ - ืกื™ืคืงืชื™ ืืช ื›ื•ืœื ื›ืื“ื.

ืื‘ืœ ื‘ืžื”ืœืš ื”ืฉื™ื—ื” ื”ืื—ืจื•ื ื”, HR ืืžืจ ื‘ื˜ืงื˜ ืฉืฆื“ืง ื—ื‘ืจืชื™ ื”ื•ื ื˜ื•ื‘ ืžืื•ื“ ื•ื”ื›ืจื—ื™, ืื‘ืœ ืœื ื›ืœ ื”ืคืจื•ื™ืงื˜ื™ื ื”ื ื›ืืœื”. ื•ื”ื•ื ืฉืืœ ืื ื–ื” ืžืคื—ื™ื“ ืื•ืชื™. ื‘ืื•ืคืŸ ื›ืœืœื™, ืงืฆืช ื”ื’ื–ืžืชื™ ืขื ืฆื“ืง ื—ื‘ืจืชื™, ื–ื” ืงื•ืจื” :)

ืกืš ื”ื›ืœ

ื›ืชื•ืฆืื” ืžื›ืš, ืื ื™ ืขื•ื‘ื“ ื‘ืกื™ื ื’ืคื•ืจ ื‘-Thoughtworks ื›ื‘ืจ ื›ืžื” ื—ื•ื“ืฉื™ื, ื•ืื ื™ ืจื•ืื” ืฉื’ื ื›ืืŸ ื—ื‘ืจื•ืช ืจื‘ื•ืช ืžืืžืฆื•ืช "ืฉื™ื˜ื•ืช ืจืื™ื•ื ื•ืช ืžื•ืžืœืฆื•ืช" ืžื’ื•ื’ืœ, ืžืฉืชืžืฉื•ืช ื‘ืขืœื™ื ื•ื‘ืœื•ื— ืœื‘ืŸ ืœืงื™ื“ื•ื“, ืœืžืจื•ืช ืฉื™ืฉ ืœื”ืŸ ื™ื•ืชืจ ื™ื“ืข ืžืืฉืจ ื‘-Spring, Symfony, RubyOnRails (ื”ื“ื’ืฉ ืืช ื”ื“ืจื•ืฉ) ืื™ื ื• ื ื“ืจืฉ ื‘ืขื‘ื•ื“ื”. ืžื”ื ื“ืกื™ื ืœื•ืงื—ื™ื ืฉื‘ื•ืข ื—ื•ืคืฉ ืœืคื ื™ ืจืื™ื•ืŸ ื›ื“ื™ "ืœื”ืชื›ื•ื ืŸ".

ื‘ื—ื‘ืจืช Thoughtworks, ื‘ื ื•ืกืฃ ืœื“ืจื™ืฉื•ืช ืžืชืื™ืžื•ืช ืœืžื•ืขืžื“, ื”ืขืงืจื•ื ื•ืช ื”ื‘ืื™ื ืขื•ืžื“ื™ื ื‘ื—ื–ื™ืช:
ืฉืžื—ืช ืจืื™ื•ืŸ. ื™ืชืจ ืขืœ ื›ืŸ, ืœืฉื ื™ ื”ืฆื“ื“ื™ื. ื•ืื›ืŸ, ืื ืืชื” ืจื•ืฆื” ืœื”ืฉื™ื’ ืืช ื›ื•ื— ื”ืื“ื ื”ื˜ื•ื‘ ื‘ื™ื•ืชืจ (ื•ืžื™ ืœื?), ืื– ืจืื™ื•ืŸ ื”ื•ื ืœื ืฉื•ืง ืฉื‘ื• ื‘ื•ื—ืจื™ื ืขื‘ื“ื™ื, ืืœื ื”ืฆื’ื” ืฉื‘ื” ื’ื ื”ืžืขืกื™ืง ื•ื’ื ื”ืžื•ืขืžื“ ืžืขืจื™ื›ื™ื ื–ื” ืืช ื–ื”. ื•ืื ืžื•ืขืžื“ ืžืงืฉืจ ืจื’ืฉื•ืช ื ืขื™ืžื™ื ืœื—ื‘ืจื”, ืกื‘ื™ืจ ืœื”ื ื™ื— ืฉื”ื•ื ื™ื‘ื—ืจ ื“ื•ื•ืงื ื‘ื—ื‘ืจื” ื”ื–ื•

ืžืจืื™ื™ื ื™ื ืžืจื•ื‘ื™ื ื›ื“ื™ ืœืžืชืŸ ื”ื˜ื™ื”. ื‘-Thoughtworks, ืชื›ื ื•ืช ื–ื•ื’ื™ ื”ื•ื ื”ืกื˜ื ื“ืจื˜ ื“ื” ืคืงื˜ื•. ื•ืื ื ื™ืชืŸ ืœื™ื™ืฉื ืืช ื”ืชืจื’ื•ืœ ื”ื–ื” ืขืœ ืชื—ื•ืžื™ื ืื—ืจื™ื, TW ืžื ืกื” ืœืขืฉื•ืช ื–ืืช. ื‘ื›ืœ ืฉืœื‘, ื”ืจืื™ื•ืŸ ืžืชื‘ืฆืข ืขืœ ื™ื“ื™ 2 ืื ืฉื™ื. ืœืคื™ื›ืš, ื›ืœ ืื“ื ืžื•ืขืจืš ืขืœ ื™ื“ื™ ืœืคื—ื•ืช 8 ืื ืฉื™ื, ื•-TW ืžื ืกื” ืœื‘ื—ื•ืจ ืžืจืื™ื™ื ื™ื ืขื ืจืงืข ืฉื•ื ื”, ื›ื™ื•ื•ื ื™ื ืฉื•ื ื™ื (ืœื ืจืง ืื ืฉื™ ื˜ื›ื ื•ืœื•ื’ื™ื”) ื•ืžื’ื“ืจ.

ื‘ืกื•ืคื• ืฉืœ ื“ื‘ืจ, ื”ื—ืœื˜ืช ื”ื’ื™ื•ืก ืชืชืงื‘ืœ ืขืœ ืกืžืš ื“ืขื•ืชื™ื”ื ืฉืœ ืœืคื—ื•ืช 8 ืื ืฉื™ื, ื•ืœืืฃ ืื—ื“ ืื™ืŸ ืงื•ืœ ืžื›ืจื™ืข.

ื’ื™ื•ืก ืขื•ื‘ื“ื™ื ืžื‘ื•ืกืก ืชื›ื•ื ื•ืช ื‘ืžืงื•ื ืœืงื‘ืœ ื”ื—ืœื˜ื” ืขืœ ืกืžืš ืื”ื‘ืชื• ืื• ืœื ืื”ื‘ืชื™ ืฉืœ ื”ืžื•ืขืžื“, ืคื•ืชื— ื˜ื•ืคืก ืœื›ืœ ืชืคืงื™ื“ ื•ืœื›ืœ ืฉืœื‘ ื”ื›ื•ืœืœ ืืช ื”ืชื›ื•ื ื•ืช ื”ื ื‘ื“ืงื•ืช. ื™ื—ื“ ืขื ื–ืืช, ื‘ืขืช ื”ืขืจื›ื”, ืžื•ืžืœืฅ ืžืื•ื“ ืœื”ืขืจื™ืš ืœื ื ื™ืกื™ื•ืŸ ื‘ืžื™ื•ืžื ื•ืช ืžืกื•ื™ืžืช, ืืœื ืืช ื”ื™ื›ื•ืœืช ืœื™ื™ืฉื ืื•ืชื”. ืœืคื™ื›ืš, ืื ืžื•ืขืžื“ ืœื ื”ืฆืœื™ื— ืœื™ื™ืฉื ืžื™ื•ืžื ื•ื™ื•ืช ื›ืœืฉื”ืŸ, ื›ื’ื•ืŸ TDD, ืืš ื‘ื›ืœ ื–ืืช ื”ื•ื ืžื ืกื” ืœื™ื™ืฉื ืื•ืชืŸ, ืžืงืฉื™ื‘ ืœืขืฆื•ืช ื›ื™ืฆื“ ืœื”ืฉืชืžืฉ ื‘ื”ืŸ ื ื›ื•ืŸ, ื™ืฉ ืœื• ื›ืœ ืกื™ื›ื•ื™ ืœืขื‘ื•ืจ ืืช ื”ืจืื™ื•ืŸ.

ืื™ืŸ ืฆื•ืจืš ื‘ืชืขื•ื“ื•ืช ื”ืฉื›ืœื” TW ืื™ื ื• ื“ื•ืจืฉ ืฉื•ื ื”ืกืžื›ื” ืื• ื”ืฉื›ืœื” ื‘ืžื“ืขื™ ื”ืžื—ืฉื‘. ืจืง ื›ื™ืฉื•ืจื™ื ืžื•ืขืจื›ื™ื.

ื–ื” ื”ืจืื™ื•ืŸ ื”ืจืืฉื•ืŸ ืฉืงื™ื™ืžืชื™ ืขื ื—ื‘ืจื•ืช ื–ืจื•ืช ืฉืœื ื”ื™ื™ืชื™ ืฆืจื™ืš ืœื”ืชื›ื•ื ืŸ ืืœื™ื•. ืื—ืจื™ ื›ืœ ืฉืœื‘, ืœื ื”ืจื’ืฉืชื™ ืžื•ืชืฉ, ืืœื ืœื”ื™ืคืš, ืฉืžื—ืชื™ ืฉื™ื›ื•ืœืชื™ ืœื™ื™ืฉื ืืช ื”ืฉื™ื˜ื•ืช ื”ืžื•ืžืœืฆื•ืช, ืฉืื ืฉื™ื ื‘ืฆื“ ื”ืฉื ื™ ืฉืœ ื”ืžื•ื ื™ื˜ื•ืจ ื”ืขืจื™ื›ื• ืืช ื–ื” ื•ื™ื™ืฉืžื• ืื•ืชื ื›ืœ ื™ื•ื.

ืœืื—ืจ ืžืกืคืจ ื—ื•ื“ืฉื™ื, ืื ื™ ื™ื›ื•ืœ ืœื•ืžืจ ืฉื”ืฆื™ืคื™ื•ืช ืฉืœื™ ื”ืชื’ืฉืžื• ื‘ืžืœื•ืืŸ. ื‘ืžื” ืฉื•ื ื” ThoughtWorks ืžื—ื‘ืจื” ืจื’ื™ืœื”? ื‘ื—ื‘ืจื” ืจื’ื™ืœื” ืืคืฉืจ ืœืžืฆื•ื ืžืคืชื—ื™ื ื˜ื•ื‘ื™ื ื•ืื ืฉื™ื ื ื—ืžื“ื™ื, ืื‘ืœ ื‘-TW ื”ืจื™ื›ื•ื– ืฉืœื”ื ื™ื•ืจื“ ืžื”ื˜ื‘ืœืื•ืช.

ืื ืืชื” ืžืขื•ื ื™ื™ืŸ ืœื”ืฆื˜ืจืฃ ืœ-ThoughtWorks, ืชื•ื›ืœ ืœืฆืคื•ืช ื‘ืžืฉืจื•ืช ื”ืคืชื•ื—ื•ืช ืฉืœื ื• ื›ืืŸ
ืื ื™ ืžืฆื™ืข ื’ื ืœืฉื™ื ืœื‘ ืœืžืฉืจื•ืช ืคื ื•ื™ื•ืช ืžืขื ื™ื™ื ื•ืช:
ืžื”ื ื“ืก ืชื•ื›ื ื” ืžื•ื‘ื™ืœ: ื’ืจืžื ื™ื”, ืœื•ื ื“ื•ืŸ, ืžื“ืจื™ื“, ืกื™ื ื’ืคื•ืจ
ืžื”ื ื“ืก ืชื•ื›ื ื” ื‘ื›ื™ืจ: ืกื™ื“ื ื™, ื’ืจืžื ื™ื”, ืžื ืฆ'ืกื˜ืจ, ื‘ื ื’ืงื•ืง
ืžื”ื ื“ืก ืชื•ื›ื ื”: ืกื™ื“ื ื™, ื‘ืจืฆืœื•ื ื”, ืžื™ืœืื ื•
ืžื”ื ื“ืก ื ืชื•ื ื™ื ื‘ื›ื™ืจ: ืžื™ืœืื ื•
ืื ืœื™ืกื˜ ืื™ื›ื•ืช: ื’ืจืžื ื™ื” ืกื™ืŸ
ืชึทืฉืืชึดื™ืช: ื’ืจืžื ื™ื”, ืœื•ื ื“ื•ืŸ, ืฆ'ื™ืœื”
(ืื ื™ ืจื•ืฆื” ืœื”ื–ื”ื™ืจ ืื•ืชืš ื‘ื›ื ื•ืช ืฉื”ืงื™ืฉื•ืจ ื”ื•ื ืงื™ืฉื•ืจ ื”ืคื ื™ื”, ืื ืชืœืš ืœ-TW, ืืงื‘ืœ ื‘ื•ื ื•ืก ื ื—ืžื“). ื‘ื—ืจ ืžืฉืจื“ ืฉืืชื” ืื•ื”ื‘, ืืชื” ืœื ืฆืจื™ืš ืœื”ื’ื‘ื™ืœ ืืช ืขืฆืžืš ืœืื™ืจื•ืคื”, ืื—ืจื™ ื”ื›ืœ, ื›ืœ ืฉื ืชื™ื™ื TW ืชืฉืžื— ืœื”ืขื‘ื™ืจ ืื•ืชืš ืœืžื“ื™ื ื” ืื—ืจืช, ื›ื™... ื–ื” ื—ืœืง ืžืžื“ื™ื ื™ื•ืช ThoughtWorks, ื›ืš ืฉื”ืชืจื‘ื•ืช ืžื•ืคืฆืช ื•ื”ื•ืžื•ื’ื ื™ืช.

ืืชื ืžื•ื–ืžื ื™ื ืœืฉืื•ืœ ืฉืืœื•ืช ื‘ืชื’ื•ื‘ื•ืช ืื• ืœื‘ืงืฉ ืžืžื ื™ ื”ืžืœืฆื•ืช.
ืื ื”ื ื•ืฉื ื ืจืื” ืžืขื ื™ื™ืŸ, ืื›ืชื•ื‘ ืขืœ ืื™ืš ื–ื” ืœืขื‘ื•ื“ ื‘-ThoughtWorks ื•ืื™ืš ื ืจืื™ื ื”ื—ื™ื™ื ื‘ืกื™ื ื’ืคื•ืจ.

ืžืงื•ืจ: www.habr.com

ื”ื•ืกืคืช ืชื’ื•ื‘ื”