αžšαž”αŸ€αž”αžŠαŸ‚αž›αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž…αžΌαž›αž‘αŸ…αž€αŸ’αž“αž»αž„ ThoughtWorks αž¬αžŸαŸ†αž—αžΆαžŸαž“αŸαž‚αŸ†αžšαžΌ

αžšαž”αŸ€αž”αžŠαŸ‚αž›αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž…αžΌαž›αž‘αŸ…αž€αŸ’αž“αž»αž„ ThoughtWorks αž¬αžŸαŸ†αž—αžΆαžŸαž“αŸαž‚αŸ†αžšαžΌ

αžœαžΆαž˜αž·αž“αž…αž˜αŸ’αž›αŸ‚αž€αž‘αŸαž…αŸ†αž–αŸ„αŸ‡αž’αŸ’αž“αž€ αžŠαŸ‚αž›αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž’αŸ’αž“αž€αž αŸ€αž”αž“αžΉαž„αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž€αžΆαžšαž„αžΆαžš αž αžΎαž™αžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαž€αžΎαžαž‘αžΎαž„αžŠαžΎαž˜αŸ’αž”αžΈαž†αŸ’αž›αž„αž€αžΆαžαŸ‹αž€αžΆαžšαžŸαž˜αŸ’αž—αžΆαžŸαž“αŸαž“αŸ„αŸ‡ αžšαžΏαž„αžŠαŸ†αž”αžΌαž„αžŠαŸ‚αž›αž’αŸ’αž“αž€αž‚αž·αžαž‚αžΊ "αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαžšαŸ€αž”αž…αŸ†αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαžŸαž˜αŸ’αž—αžΆαžŸαž“αŸ"αŸ” αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αž‰αŸ’αž αžΆαž“αŸ…αž›αžΎ HackerRank αž’αžΆαž“ Crack αž”αž‘αžŸαž˜αŸ’αž—αžΆαžŸαž“αŸαžŸαžšαžŸαŸαžšαž€αžΌαžŠ αž‘αž“αŸ’αž‘αŸαž‰αž–αžΈαžšαž”αŸ€αž”αžŠαŸ‚αž› ArrayList αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš αž“αž·αž„αžšαž”αŸ€αž”αžŠαŸ‚αž›αžœαžΆαžαž»αžŸαž‚αŸ’αž“αžΆαž–αžΈ LinkedList αŸ” αž’αžΌαž”αžΆαž‘ αž–αž½αž€αž‚αŸαž€αŸαž’αžΆαž…αžŸαž½αžšαž’αŸ†αž–αžΈαž€αžΆαžšαžαž˜αŸ’αžšαŸ€αž”αžŠαŸ‚αžš αž αžΎαž™αžœαžΆαž–αž·αžαž‡αžΆαž‚αŸ’αž˜αžΆαž“αžœαž·αž‡αŸ’αž‡αžΆαž‡αžΈαžœαŸˆαž€αŸ’αž“αž»αž„αž€αžΆαžšαž“αž·αž™αžΆαž™αžαžΆαž€αžΆαžšαžαž˜αŸ’αžšαŸ€αž”αžšαž αŸαžŸαž‘αŸ†αž“αž„αž‡αžΆαž‡αž˜αŸ’αžšαžΎαžŸαžŠαŸαž›αŸ’αž’αž”αŸ†αž•αž»αžαŸ”
αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžšαž„αŸ‹αž…αžΆαŸ† αž’αŸ’αž“αž€αžšαŸ€αž”αž…αŸ†αž€αž˜αŸ’αž˜αžœαž·αž’αžΈ 8 αž˜αŸ‰αŸ„αž„αž€αŸ’αž“αž»αž„αž˜αž½αž™αžαŸ’αž„αŸƒ αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αž‰αŸ’αž αžΆαžŠαŸ‚αž›αž‚αž½αžšαž±αŸ’αž™αž…αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸ αž“αž·αž„αž˜αž·αž“αž˜αŸ‚αž“αž‡αžΆαžšαžΏαž„αžαžΌαž…αžαžΆαž… αž αžΎαž™αž“αŸ…αž€αžΆαžšαž„αžΆαžšαžαŸ’αž˜αžΈαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€ αž’αŸ’αž“αž€αž“αžΉαž„αž’αŸ’αžœαžΎαžŠαžΌαž…αž‚αŸ’αž“αžΆ αž”αžΌαž€αž¬αžŠαž€αŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž‘αŸ„αŸ‡αž‡αžΆαž™αŸ‰αžΆαž„αžŽαžΆ αžŠαžΎαž˜αŸ’αž”αžΈαž†αŸ’αž›αž„αž€αžΆαžαŸ‹αž€αžΆαžšαžŸαž˜αŸ’αž—αžΆαžŸαž“αŸ αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαžšαŸ€αž”αž…αŸ†αžαŸ’αž›αž½αž“αž”αž“αŸ’αžαŸ‚αž˜ αž˜αž·αž“αž˜αŸ‚αž“αžŸαžΌαž˜αŸ’αž”αžΈαžαŸ‚αž‡αŸ†αž“αžΆαž‰αž”αŸ’αžšαž…αžΆαŸ†αžαŸ’αž„αŸƒαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžαŸ’αžšαžΌαžœαžšαŸ€αž“αž’αŸ’αžœαžΈαž˜αž½αž™αžŠαŸ‚αž›αž’αŸ’αž“αž€αž˜αž·αž“αžαŸ’αžšαžΌαžœαž€αžΆαžšαž€αŸ’αž“αž»αž„αž€αžΆαžšαž„αžΆαžšαž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€ αž αžΎαž™αž‘αŸ†αž“αž„αž‡αžΆαž˜αž·αž“αžαŸ’αžšαžΌαžœαž€αžΆαžšαž“αŸ…αž–αŸαž›αž”αž“αŸ’αž‘αžΆαž”αŸ‹αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αŸ” αž…αŸ†αž–αŸ„αŸ‡β€‹αž€αžΆαžšβ€‹αž‡αŸ†αž‘αžΆαžŸαŸ‹β€‹αžšαž”αžŸαŸ‹β€‹αž’αŸ’αž“αž€β€‹αžŠαŸ‚αž›β€‹αžαžΆβ€‹αžœαž·αž‘αŸ’αž™αžΆαžŸαžΆαžŸαŸ’αžαŸ’αžšβ€‹αž€αž»αŸ†αž–αŸ’αž™αžΌαž‘αŸαžšβ€‹αž‚αžΊβ€‹αžŸαŸ’αžαž·αžβ€‹αž“αŸ…β€‹αž€αŸ’αž“αž»αž„β€‹αžˆαžΆαž˜β€‹αžšαž”αžŸαŸ‹β€‹αž™αžΎαž„ αž αžΎαž™β€‹αž”αŸ’αžšαžŸαž·αž“β€‹αž”αžΎβ€‹αž’αŸ’αž“αž€β€‹αžŠαžΆαžŸαŸ‹β€‹αž™αžΎαž„β€‹αž“αŸ…β€‹αž–αžΆαž€αŸ‹β€‹αž€αžŽαŸ’αžαžΆαž›β€‹αž™αž”αŸ‹ αž™αžΎαž„β€‹αžαŸ’αžšαžΌαžœβ€‹αž˜αžΆαž“β€‹αž€αžΆαžαž–αŸ’αžœαž€αž·αž…αŸ’αž…β€‹αžŸαžšαžŸαŸαžšβ€‹αžŠαŸ„αž™β€‹αž”αž·αž‘β€‹αž—αŸ’αž“αŸ‚αž€β€‹αž›αžΎβ€‹αžαŸ’αž“αžΎαž™β€‹αžŠαžΎαžšβ€‹αž‡αž»αŸ†αžœαž·αž‰β€‹αž‘αž‘αžΉαž„β€‹αžŠαžΎαž˜αžˆαžΎβ€‹αžŠαŸ„αž™β€‹αž˜αž·αž“β€‹αž”αžΆαž“β€‹αžŠαžΉαž„β€‹αžαŸ’αž›αž½αž“β€‹αž‘αžΎαž™β€‹αŸ” αž“αžΉαž„αž†αŸ’αž›αžΎαž™αžαžΆαž”αŸ’αžšαžŸαž·αž“αž”αžΎαžαŸ’αž‰αž»αŸ†αž‘αž‘αž½αž›αž”αžΆαž“αž€αžΆαžšαž„αžΆαžšαž“αŸ…αž€αŸ’αž“αž»αž„αžŸαŸ€αž€ αž αžΎαž™αžšαžΏαž„αžŸαŸ†αžαžΆαž“αŸ‹αžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ† αž›αŸ’αž”αž·αž…αž“αžΉαž„αž‡αžΆαž€αžΆαžšαž–αž·αž - αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž”αŸ’αžšαž αŸ‚αž›αž‡αžΆαž”αžΆαž‘ αžαŸ’αž‰αž»αŸ†αž™αž›αŸ‹αž–αŸ’αžšαž˜αŸ” αž‡αŸ†αž“αžΆαž‰αž“αŸαŸ‡αžαŸ’αžšαžΌαžœαžαŸ‚αžŸαžΆαž€αž›αŸ’αž”αž„αŸ”

αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž αŸαžαž»αž’αŸ’αžœαžΈαž”αžΆαž“αž‡αžΆαžαŸαžŸαŸ’αžαž‡αŸ†αž“αžΆαž‰αžŠαŸ‚αž›αž˜αž·αž“αž‘αžΆαž€αŸ‹αž‘αž„αž“αžΉαž„αž€αžΆαžšαž„αžΆαžšαž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€? αžŠαŸ„αž™αžŸαžΆαžšαžαŸ‚αžœαžΆαž€αŸ’αž›αžΆαž™αž‡αžΆαž˜αŸ‰αžΌαž? αžŠαŸ„αž™αžŸαžΆαžšαžαŸ‚ Google αž’αŸ’αžœαžΎαž”αŸ‚αž”αž“αŸαŸ‡? αž¬αžŠαŸ„αž™αžŸαžΆαžšαžαŸ‚αž’αŸ’αž“αž€αžŠαžΉαž€αž“αžΆαŸ†αž€αŸ’αžšαž»αž˜αž“αžΆαž–αŸαž›αž’αž“αžΆαž‚αžαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαžšαŸ€αž“αžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžšαŸ’αžαžαž˜αŸ’αžšαŸ€αž”αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž˜αž»αž“αž–αŸαž›αžŸαž˜αŸ’αž—αžΆαžŸαž“αŸ αž αžΎαž™αž₯αž‘αžΌαžœαž“αŸαŸ‡αž‚αžΆαžαŸ‹αž‡αžΏαžαžΆ "αž’αŸ’αž“αž€αžŸαžšαžŸαŸαžšαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž›αŸ’αž’αž‚αŸ’αžšαž”αŸ‹αžšαžΌαž”αžαŸ’αžšαžΌαžœαžαŸ‚αžŠαžΉαž„αžŠαŸ„αž™αž”αŸαŸ‡αžŠαžΌαž„αž“αžΌαžœαž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž“αŸƒαž€αžΆαžšαžŸαŸ’αžœαŸ‚αž„αžšαž€ palindrome αž“αŸ…αž€αŸ’αž“αž»αž„αžαŸ’αžŸαŸ‚αž’αž€αŸ’αžŸαžš" αŸ”

αž˜αŸ‚αž“αž αžΎαž™ αž’αŸ’αž“αž€αž˜αž·αž“αž˜αŸ‚αž“αž‡αžΆ Google (αž‚) αž‘αŸαŸ” αž’αŸ’αžœαžΈαžŠαŸ‚αž› Google αž’αžΆαž…αž‘αž·αž‰αž”αžΆαž“ αž€αŸ’αžšαž»αž˜αž αŸŠαž»αž“αž’αž˜αŸ’αž˜αžαžΆαž˜αž·αž“αž’αžΆαž…αŸ” Google αžŠαŸ„αž™αž”αžΆαž“αžœαž·αž—αžΆαž‚αž‘αž·αž“αŸ’αž“αž“αŸαž™αžšαž”αžŸαŸ‹αž“αž·αž™αŸ„αž‡αž·αžαžšαž”αžŸαŸ‹αžαŸ’αž›αž½αž“ αž”αžΆαž“αžŸαž“αŸ’αž“αž·αžŠαŸ’αž‹αžΆαž“αžαžΆ αžœαž·αžŸαŸ’αžœαž€αžšαžŠαŸ‚αž›αž˜αžΆαž“αž”αŸ’αžšαžœαžαŸ’αžαž· Olympiad αž‚αžΊαž›αŸ’αž’αž€αŸ’αž“αž»αž„αž€αžΆαžšαžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž—αžΆαžšαž€αž·αž…αŸ’αž…αž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αžšαž”αžŸαŸ‹αžαŸ’αž›αž½αž“αŸ” αž‡αžΆαž„αž“αŸαŸ‡αž‘αŸ…αž‘αŸ€αž αžαžΆαž˜αžšαž™αŸˆαž€αžΆαžšαžšαŸ€αž”αž…αŸ†αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαžšαž”αžŸαŸ‹αž–αž½αž€αž‚αŸ αž–αž½αž€αž‚αŸαž’αžΆαž…αž˜αžΆαž“αž›αž‘αŸ’αž’αž—αžΆαž–αž‘αž‘αž½αž›αž™αž€αž αžΆαž“αž·αž—αŸαž™αžŠαŸ‚αž›αž–αž½αž€αž‚αŸαž’αžΆαž…αž“αžΉαž„αž˜αž·αž“αž‡αž½αž›αžœαž·αžŸαŸ’αžœαž€αžšαž›αŸ’αž’αž˜αž½αž™αž…αŸ†αž“αž½αž“ αžŠαŸ„αž™αžŸαžΆαžšαžαŸ‚αž–αž½αž€αž‚αŸαž˜αž·αž“αž’αžΆαž…αž”αŸ†αž”αŸ‚αž€αž”αž‰αŸ’αž αžΆαž‚αžŽαž·αžαžœαž·αž‘αŸ’αž™αžΆαž”αžΆαž“αž™αŸ‰αžΆαž„αž„αžΆαž™αžŸαŸ’αžšαž½αž›αŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž“αŸαŸ‡αž˜αž·αž“αž˜αŸ‚αž“αž‡αžΆαž”αž‰αŸ’αž αžΆαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž–αž½αž€αž‚αŸαž‘αŸ αž˜αžΆαž“αž˜αž“αž»αžŸαŸ’αžŸαž‡αžΆαž…αŸ’αžšαžΎαž“αžŠαŸ‚αž›αž…αž„αŸ‹αž’αŸ’αžœαžΎαž€αžΆαžšαž“αŸ… Google αž˜αž»αžαžαŸ†αžŽαŸ‚αž„αž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αž·αž‘αŸ”
αž₯αž‘αžΌαžœαž“αŸαŸ‡ αžŸαžΌαž˜αž€αŸ’αžšαž‘αŸαž€αž˜αžΎαž›αž‘αŸ…αž€αŸ’αžšαŸ…αž”αž„αŸ’αž’αž½αž… αž αžΎαž™αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž“αŸ…αž–αžΈαž˜αž»αžαž€αžΆαžšαž·αž™αžΆαž›αŸαž™αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€ αžœαž·αžŸαŸ’αžœαž€αžšαžŠαŸ‚αž›αž…αž„αŸ‹αž’αŸ’αžœαžΎαž€αžΆαžšαž±αŸ’αž™αž’αŸ’αž“αž€αž˜αž·αž“αž‘αžΆαž“αŸ‹αž”αžΆαž“αžšαŸ€αž”αž…αŸ†αž‡αŸ†αžšαž»αŸ†αžαž„αŸ‹ αž αžΎαž™αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž…αŸ’αžšαžΎαž“αžαŸ‚αžŸαž˜αŸ’αž›αžΉαž„αž˜αžΎαž› stackoverflow αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αžœαžΈαžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαžŠαŸ†αž‘αžΎαž„αž…αŸ†αžŽαžΆαžšαž–αž“αŸ’αž™αž›αŸ‹αž“αž·αž‘αžΆαžƒαžšαžŠαžΌαžœαž”αž“αŸ’αž‘αžΆαž”αŸ‹αŸ” αž‡αžΆαž‡αžΆαž„αž—αžΆαž–αžŸαŸ’αž˜αž»αž‚αŸ’αžšαžŸαŸ’αž˜αžΆαž‰αž“αŸƒαž€αŸ’αž”αž½αž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž…αŸ†αžŽαžΆαžαŸ‹αžαŸ’αž“αžΆαž€αŸ‹ αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€ αž‡αžΆαž€αŸ‹αžŸαŸ’αžαŸ‚αž„ αžœαžΆαžŠαž›αŸ‹αž–αŸαž›αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž‚αž·αžαžαžΆαžαžΎαž’αŸ’αž“αž€αž‚αž½αžšαž…αž˜αŸ’αž›αž„ Google αžŠαŸ‚αžšαž¬αž‘αŸαŸ”

αž˜αŸ‚αž“αž αžΎαž™ αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž›αžΎαž€αž“αŸαŸ‡ Google αž”αžšαžΆαž‡αŸαž™ αž αžΎαž™αž˜αž·αž“αž•αŸ’αžαž›αŸ‹αž…αž˜αŸ’αž›αžΎαž™ αžαžΎαž’αŸ’αž“αž€αž‚αž½αžšαž’αŸ’αžœαžΎαžŠαžΌαž…αž˜αŸ’αžαŸαž…? αž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž›αž±αŸ’αž™αž…αŸ’αž”αžΆαžŸαŸ‹αž“αžΌαžœαž’αŸ’αžœαžΈαžŠαŸ‚αž›αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž“αžΉαž„αž’αŸ’αžœαžΎαž“αŸ…αž€αž“αŸ’αž›αŸ‚αž„αž’αŸ’αžœαžΎαž€αžΆαžšαŸ” αžαžΎαž’αŸ’αž“αž€αž±αŸ’αž™αžαž˜αŸ’αž›αŸƒαž’αŸ’αžœαžΈαž“αŸ…αž€αŸ’αž“αž»αž„αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸ?
αž”αž„αŸ’αž€αžΎαžαž›αž€αŸ’αžαžŽαŸˆαžœαž·αž“αž·αž…αŸ’αž†αŸαž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αžŠαŸ‚αž›αž’αŸ’αž“αž€αž…αž„αŸ‹αž‡αž½αž› αž“αž·αž„αž”αž„αŸ’αž€αžΎαžαž€αžΆαžšαž’αŸ’αžœαžΎαžαŸαžŸαŸ’αžαžŠαŸ‚αž›αžŸαžΆαž€αž›αŸ’αž”αž„αž‡αŸ†αž“αžΆαž‰αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž™αŸ‰αžΆαž„αž–αž·αžαž”αŸ’αžšαžΆαž€αžŠαŸ”

αž‚αŸ†αž“αž·αž

តើ ThoughtWorks αž˜αžΆαž“β€‹αž’αŸ’αžœαžΈβ€‹αž‘αžΆαž€αŸ‹αž‘αž„β€‹αž“αžΉαž„β€‹αžšαžΏαž„β€‹αž“αŸαŸ‡? αžœαžΆαž“αŸ…αž‘αžΈαž“αŸαŸ‡αžŠαŸ‚αž›αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αžšαž€αžƒαžΎαž‰αž§αž‘αžΆαž αžšαžŽαŸαž“αŸƒαž€αžΆαžšαžŸαž˜αŸ’αž—αžΆαžŸαž“αŸαž‡αžΆαž‚αŸ†αžšαžΌαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžαŸ’αž›αž½αž“αžαŸ’αž‰αž»αŸ†αŸ” αžαžΎβ€‹ThoughtWorksβ€‹αž‡αžΆβ€‹αž“αžšαžŽαžΆ? αžŸαžšαž»αž”αž˜αž€ αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž€αŸ’αžšαž»αž˜αž αŸŠαž»αž“αž”αŸ’αžšαžΉαž€αŸ’αžŸαžΆαž™αŸ„αž”αž›αŸ‹αž€αž˜αŸ’αžšαž·αžαžαŸ’αž–αžŸαŸ‹ αžŠαŸ‚αž›αž˜αžΆαž“αž€αžΆαžšαž·αž™αžΆαž›αŸαž™αž“αŸ…αž‘αžΌαž‘αžΆαŸ†αž„αž–αž·αž—αž–αž›αŸ„αž€ αž…αžΆαž”αŸ‹αž–αžΈαž”αŸ’αžšαž‘αŸαžŸαž…αž·αž“ αžŸαž·αž„αŸ’αž αž”αž»αžšαžΈ αžšαž αžΌαžαžŠαž›αŸ‹αž‘αŸ’αžœαžΈαž”αž’αžΆαž˜αŸαžšαž·αž€ αžŠαŸ‚αž›αž”αžΆαž“αž”αŸ’αžšαžΉαž€αŸ’αžŸαžΆαž™αŸ„αž”αž›αŸ‹αž€αŸ’αž“αž»αž„αžœαž·αžŸαŸαž™αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž’αžŸαŸ‹αžšαž™αŸˆαž–αŸαž›αž”αŸ’αžšαž αŸ‚αž› 25 αž†αŸ’αž“αžΆαŸ† αž˜αžΆαž“αž•αŸ’αž“αŸ‚αž€αžœαž·αž‘αŸ’αž™αžΆαžŸαžΆαžŸαŸ’αžαŸ’αžšαž•αŸ’αž‘αžΆαž›αŸ‹αžαŸ’αž›αž½αž“ αžŠαŸ‚αž›αžŠαžΉαž€αž“αžΆαŸ†αžŠαŸ„αž™ Martin αž αŸ’αžœαžΌαž›αŸαžšαŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αžŸαŸ’αžœαŸ‚αž„αžšαž€αž”αž‰αŸ’αž‡αžΈαžŸαŸ€αžœαž—αŸ…αž…αŸ†αž“αž½αž“ 10 αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž’αžΆαž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžœαž·αžŸαŸ’αžœαž€αžšαž•αŸ’αž“αŸ‚αž€αž‘αž“αŸ‹ αž“αŸ„αŸ‡αž”αŸ’αžšαž αŸ‚αž›αž‡αžΆ 2-3 αžŸαŸ€αžœαž—αŸ…αž‘αžΆαŸ†αž„αž“αŸ„αŸ‡αž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαžšαžŸαŸαžšαžŠαŸ„αž™αž”αž»αžšαžŸαž˜αž€αž–αžΈ ThoughtWorks αžŠαžΌαž…αž‡αžΆ Refactoring By Martin Fowler αž“αž·αž„ Building Microservices: Designing Fine-Grained Systems αžŠαŸ„αž™ Sam Newman αž¬αžŸαŸ†αžŽαž„αŸ‹αžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αž˜αŸ’αž˜αžœαž·αžœαžαŸ’αžαž“αŸ
αžŠαŸ„αž™ Patrick Kua, Rebecca Parsons, Neal Ford αŸ”

αž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžšαž”αžŸαŸ‹αž€αŸ’αžšαž»αž˜αž αŸŠαž»αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž‘αžΎαž„αž“αŸ…αž›αžΎαž€αžΆαžšαž•αŸ’αžαž›αŸ‹αžŸαŸαžœαžΆαžŠαŸ‚αž›αž˜αžΆαž“αžαž˜αŸ’αž›αŸƒαžαŸ’αž›αŸƒαžŸαž˜αžšαž˜αŸ’αž™ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž’αžαž·αžαž·αž‡αž“αž…αŸ†αžŽαžΆαž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž‚αž»αžŽαž—αžΆαž–αžŠαŸαž’αžŸαŸ’αž…αžΆαžšαŸ’αž™ αžŠαŸ‚αž›αžšαž½αž˜αž˜αžΆαž“αž’αŸ’αž“αž€αž‡αŸ†αž“αžΆαž‰ αžŸαŸ’αžαž„αŸ‹αžŠαžΆαžšαž•αŸ’αž‘αŸƒαž€αŸ’αž“αž»αž„ αž“αž·αž„αž‡αžΆαž€αžΆαžšαž–αž·αžαžŽαžΆαžŸαŸ‹αž˜αž“αž»αžŸαŸ’αžŸαŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡ αž€αžΆαžšβ€‹αž‡αž½αž›β€‹αž˜αž“αž»αžŸαŸ’αžŸβ€‹αžŠαŸ‚αž›β€‹αžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœβ€‹αž‚αžΊβ€‹αžŸαŸ†αžαžΆαž“αŸ‹β€‹αž“αŸ…β€‹αž‘αžΈαž“αŸαŸ‡αŸ”
αžαžΎαž˜αž“αž»αžŸαŸ’αžŸαž”αŸ’αžšαž—αŸαž‘αžŽαžΆαžŠαŸ‚αž›αžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœ? αž‡αžΆαž€αžΆαžšαž–αž·αžαžŽαžΆαžŸαŸ‹ αžœαžΆαž˜αžΆαž“αž—αžΆαž–αžαž»αžŸαž‚αŸ’αž“αžΆαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž˜αž“αž»αžŸαŸ’αžŸαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αž“αžΆαŸ” ThoughtWorks αž”αžΆαž“αž€αŸ†αžŽαžαŸ‹αžαžΆαž›αž€αŸ’αžαžŽαŸˆαžœαž·αž“αž·αž…αŸ’αž†αŸαž™αžŸαŸ†αžαžΆαž“αŸ‹αž”αŸ†αž•αž»αžαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž‚αŸ†αžšαžΌαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαžšαž”αžŸαŸ‹αž–αž½αž€αž‚αŸαž‚αžΊαŸ–

  • αžŸαž˜αžαŸ’αžαž—αžΆαž–αž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αž—αž·αžœαžŒαŸ’αžαž‡αžΆαž‚αžΌαŸ” αžœαžΆαž‡αžΆαžŸαž˜αžαŸ’αžαž—αžΆαž– αž˜αž·αž“αž˜αŸ‚αž“αž‡αžΆαž”αž‘αž–αž·αžŸαŸ„αž’αž“αŸ αž¬αž‡αŸ†αž“αžΆαž‰αž“αŸ„αŸ‡αž‘αŸαŸ” αž‚αŸ’αž˜αžΆαž“αž“αžšαžŽαžΆαž˜αŸ’αž“αžΆαž€αŸ‹αžšαŸ†αž–αžΉαž„αžαžΆαž˜αž“αž»αžŸαŸ’αžŸαžŠαŸ‚αž›αž”αžΆαž“αž’αž“αž»αžœαžαŸ’αžαž€αž˜αŸ’αž˜αžœαž·αž’αžΈ Pair αž’αžŸαŸ‹αžšαž™αŸˆαž–αŸαž› 5 αž†αŸ’αž“αžΆαŸ†αž“αžΉαž„αž˜αž€αž“αŸ„αŸ‡αž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž€αžΆαžšαž‘αž‘αž½αž›αž™αž€αž™αŸ„αž”αž›αŸ‹αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αžŠαŸαž‘αŸƒ αž“αž·αž„αž’αžΆαž…αžŸαŸ’αžαžΆαž”αŸ‹αž”αžΆαž“αž‚αžΊαž‡αžΆαž‡αŸ†αž“αžΆαž‰αž…αžΆαŸ†αž”αžΆαž…αŸ‹αž˜αž½αž™αŸ”
  • αžŸαž˜αžαŸ’αžαž—αžΆαž–αž€αŸ’αž“αž»αž„αž€αžΆαžšαžŸαžšαžŸαŸαžšαžαŸαžŸαŸ’αž αž“αž·αž„αž’αž“αž»αžœαžαŸ’αž TDD αžαžΆαž˜αž§αžαŸ’αžŠαž˜αž‚αžαž·
  • αžŸαŸ’αžœαŸ‚αž„αž™αž›αŸ‹αž–αžΈ SOLID αž“αž·αž„ OOP αž αžΎαž™αž’αžΆαž…αž’αž“αž»αžœαžαŸ’αžαžœαžΆαž”αžΆαž“αŸ”
  • αž”αž„αŸ’αž αžΆαž‰αž˜αžαž·αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αŸ” αž€αŸ’αž“αž»αž„αž“αžΆαž˜αž‡αžΆαž’αŸ’αž“αž€αž”αŸ’αžšαžΉαž€αŸ’αžŸαžΆ αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαžαŸ‚αž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαžšαž”αžŸαŸ‹αž’αžαž·αžαž·αž‡αž“ αž‡αžΆαž˜αž½αž™αž’αŸ’αž“αž€αž”αŸ’αžšαžΉαž€αŸ’αžŸαžΆαž•αŸ’αžŸαŸαž„αž‘αŸ€αž αž αžΎαž™αž˜αž·αž“αž˜αžΆαž“αž’αžαŸ’αžαž”αŸ’αžšαž™αŸ„αž‡αž“αŸαž…αŸ’αžšαžΎαž“αž‘αŸ αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž˜αž“αž»αžŸαŸ’αžŸαž˜αŸ’αž“αžΆαž€αŸ‹αžŠαžΉαž„αž–αžΈαžšαž”αŸ€αž”αž’αŸ’αžœαžΎαž’αŸ’αžœαžΈαž˜αž½αž™αž”αžΆαž“αž›αŸ’αž’ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž˜αž·αž“αž’αžΆαž…αž”αž‰αŸ’αž‡αžΌαž“αžœαžΆαž‘αŸ…αž€αŸ’αžšαž»αž˜αžŠαŸ‚αž›αž“αŸ…αžŸαž›αŸ‹αž”αžΆαž“αž‘αŸαŸ”

αž₯αž‘αžΌαžœαž“αŸαŸ‡αžœαžΆαž˜αžΆαž“αžŸαžΆαžšαŸˆαžŸαŸ†αžαžΆαž“αŸ‹αžŽαžΆαžŸαŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαžœαžΆαž™αžαž˜αŸ’αž›αŸƒαž‡αŸ†αž“αžΆαž‰αž–αž·αžŸαŸαžŸαž‘αžΆαŸ†αž„αž“αŸαŸ‡αž“αŸ…αž€αŸ’αž“αž»αž„αž”αŸαž€αŸ’αžαž‡αž“αŸ” αž αžΎαž™αž“αŸ…αž‘αžΈαž“αŸαŸ‡αžαŸ’αž‰αž»αŸ†αž…αž„αŸ‹αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαž”αž‘αž–αž·αžŸαŸ„αž’αž“αŸαžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ†αž€αŸ’αž“αž»αž„αž€αžΆαžšαžŸαž˜αŸ’αž—αžΆαžŸαž“αŸαž“αŸ… ThoughtWorks αŸ” αžαŸ’αž‰αž»αŸ†β€‹αž“αžΉαž„β€‹αž“αž·αž™αžΆαž™β€‹αž—αŸ’αž›αžΆαž˜β€‹αžαžΆβ€‹αžαŸ’αž‰αž»αŸ†β€‹αž”αžΆαž“β€‹αž‘αŸ…β€‹αžŸαž·αž„αŸ’αž αž”αž»αžšαžΈβ€‹αž αžΎαž™β€‹αž”αŸ’αžšαž‘αž„β€‹αž‡αžΆαž”αŸ‹ αž”αŸ‰αž»αž“αŸ’αžαŸ‚β€‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšβ€‹αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸβ€‹αž”αž»αž‚αŸ’αž‚αž›αž·αž€β€‹αžαŸ’αžšαžΌαžœβ€‹αž”αžΆαž“β€‹αžšαž½αž”αžšαž½αž˜β€‹αž‚αŸ’αž“αžΆ αž αžΎαž™β€‹αž˜αž·αž“β€‹αžαž»αžŸβ€‹αž‚αŸ’αž“αžΆβ€‹αž…αŸ’αžšαžΎαž“β€‹αž–αžΈβ€‹αž”αŸ’αžšαž‘αŸαžŸβ€‹αž˜αž½αž™β€‹αž‘αŸ…β€‹αž”αŸ’αžšαž‘αŸαžŸβ€‹αž˜αž½αž™β€‹αž‘αŸαŸ”

αžŠαŸ†αžŽαžΆαž€αŸ‹αž€αžΆαž› 0. αž’αž“αž’αžΆαž“αž˜αž“αž»αžŸαŸ’αžŸ

αž‡αžΆαž‰αžΉαž€αž‰αžΆαž”αŸ‹αž€αžΎαžαž‘αžΎαž„ αž€αžΆαžšαžŸαž˜αŸ’αž—αžΆαžŸαž“αŸ 20 αž“αžΆαž‘αžΈαž‡αžΆαž˜αž½αž™αž’αž“αž’αžΆαž“αž˜αž“αž»αžŸαŸ’αžŸαŸ” αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž˜αž·αž“αžšαžŸαŸ‹αž“αŸ…αž‡αžΆαž˜αž½αž™αžœαžΆαž‘αŸ αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž“αž·αž™αžΆαž™αžαžΆ αžαŸ’αž‰αž»αŸ†αž˜αž·αž“αžŠαŸ‚αž›αž‡αž½αž”αž˜αž“αž»αžŸαŸ’αžŸ HR αžŠαŸ‚αž›αž’αžΆαž…αž“αž·αž™αžΆαž™αž”αžΆαž“ 15 αž“αžΆαž‘αžΈαž’αŸ†αž–αžΈαžœαž”αŸ’αž”αž’αž˜αŸŒαž“αŸƒαž€αžΆαžšαž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž“αŸ…αž€αŸ’αž“αž»αž„αž€αŸ’αžšαž»αž˜αž αŸŠαž»αž“ αž αŸαžαž»αž’αŸ’αžœαžΈαž”αžΆαž“αž‡αžΆαž–αž½αž€αž‚αŸαž”αŸ’αžšαžΎ TDD αž αŸαžαž»αž’αŸ’αžœαžΈαž”αžΆαž“αž‡αžΆαž€αžΆαžšαžŸαžšαžŸαŸαžšαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž‡αžΆαž‚αžΌαŸ” αž‡αžΆαž’αž˜αŸ’αž˜αžαžΆ HRs αž„αž”αŸ‹αž„αž›αŸ‹αž“αžΉαž„αžŸαŸ†αžŽαž½αžšαž“αŸαŸ‡ αž αžΎαž™αž“αž·αž™αžΆαž™αžαžΆαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžšαž”αžŸαŸ‹αž–αž½αž€αž‚αŸαž‚αžΊαž’αž˜αŸ’αž˜αžαžΆαŸ– αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž’αž—αž·αžœαžŒαŸ’αž αž’αŸ’αž“αž€αžŸαžΆαž€αž›αŸ’αž”αž„ αž’αŸ’αž“αž€αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž”αžΎαž€αž‘αžΆαž“αŸ”

αžŠαŸ†αžŽαžΆαž€αŸ‹αž€αžΆαž›αž‘αžΈ 1. αžαžΎαž’αŸ’αž“αž€αž›αŸ’αž’αž”αŸ‰αž»αžŽαŸ’αžŽαžΆαž“αŸ… OOP, TDD?

1.5 αž˜αŸ‰αŸ„αž„αž˜αž»αž“αž–αŸαž›αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αžŸαŸ†αž—αžΆαžŸαž“αŸ αžαŸ’αž‰αž»αŸ†αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž‰αŸ’αž‡αžΌαž“αž—αžΆαžšαž€αž·αž…αŸ’αž…αž±αŸ’αž™αž”αž„αŸ’αž€αžΎαžαž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αžαŸ’αžšαžΆαž”αŸ‹αžαžΆαž˜ Mars Rover αŸ”

αž”αŸαžŸαž€αž€αž˜αŸ’αž˜αž™αžΆαž“αž’αžœαž€αžΆαžŸ Mars Roverαž€αŸ’αžšαž»αž˜β€‹αž™αžΆαž“β€‹αž™αž“αŸ’αžβ€‹αž αŸ„αŸ‡β€‹αž˜αž½αž™β€‹αž€αŸ’αžšαž»αž˜β€‹αž“αžΉαž„β€‹αžαŸ’αžšαžΌαžœβ€‹αž…αž»αŸ‡β€‹αž…αžβ€‹αžŠαŸ„αž™ NASA αž“αŸ…β€‹αž›αžΎβ€‹αžαŸ’αž–αž„αŸ‹αžšαžΆαž”β€‹αž›αžΎβ€‹αž—αž–β€‹αž’αž„αŸ’αž‚αžΆαžšαŸ” αžαŸ’αž–αž„αŸ‹αžšαžΆαž”αž“αŸαŸ‡αžŠαŸ‚αž›αž˜αžΆαž“αžšαžΆαž„αž…αžαž»αž€αŸ„αžŽαž€αŸ‚αž„ αžαŸ’αžšαžΌαžœαžαŸ‚αžšαž»αž€αžšαž€αžŠαŸ„αž™αž™αžΆαž“αžšαž»αž€αžšαž€ αžŠαžΎαž˜αŸ’αž”αžΈαž±αŸ’αž™αž€αžΆαž˜αŸαžšαŸ‰αžΆαž“αŸ…αž›αžΎαž™αž“αŸ’αžαž αŸ„αŸ‡αžšαž”αžŸαŸ‹αž–αž½αž€αž‚αŸαž’αžΆαž…αž‘αž‘αž½αž›αž”αžΆαž“αž‘αž·αžŠαŸ’αž‹αž—αžΆαž–αž–αŸαž‰αž›αŸαž‰αž“αŸƒαžŠαžΈαž‡αž»αŸ†αžœαž·αž‰αžŠαžΎαž˜αŸ’αž”αžΈαž”αž‰αŸ’αž‡αžΌαž“αžαŸ’αžšαž‘αž”αŸ‹αž˜αž€αž•αŸ‚αž“αžŠαžΈαžœαž·αž‰αŸ” αž‘αžΈαžαžΆαŸ†αž„ αž“αž·αž„αž‘αžΈαžαžΆαŸ†αž„αžšαž”αžŸαŸ‹αžšαŸ‰αžΌαžœαŸαžšαžαŸ’αžšαžΌαžœαž”αžΆαž“αžαŸ†αžŽαžΆαž„αžŠαŸ„αž™αž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž‚αŸ’αž“αžΆαž“αŸƒ x αž“αž·αž„ y co-ordinates αž“αž·αž„αž’αž€αŸ’αžŸαžšαžαŸ†αžŽαžΆαž„αž±αŸ’αž™αž…αŸ†αž“αž»αž…αž˜αž½αž™αž€αŸ’αž“αž»αž„αž…αŸ†αžŽαŸ„αž˜αž…αŸ†αž“αž»αž…αžαŸ’αžšαžΈαžœαž·αžŸαŸαž™αžŸαŸ†αžαžΆαž“αŸ‹αž‘αžΆαŸ†αž„αž”αž½αž“αŸ” αžαŸ’αž–αž„αŸ‹αžšαžΆαž”αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ‚αž„αž…αŸ‚αž€αž‘αŸ…αž‡αžΆαž€αŸ’αžšαž‘αžΆαž…αžαŸ’αžšαž„αŸ’αž‚ αžŠαžΎαž˜αŸ’αž”αžΈαžŸαž˜αŸ’αžšαž½αž›αž€αžΆαžšαžšαž»αž€αžšαž€αŸ” αž‘αžΈαžαžΆαŸ†αž„αž§αž‘αžΆαž αžšαžŽαŸαž˜αž½αž™αž’αžΆαž…αž‡αžΆ 0, 0, N αžŠαŸ‚αž›αž˜αžΆαž“αž“αŸαž™αžαžΆ αžšαŸ‰αžΌαžœαžΎαžšαžŸαŸ’αžαž·αžαž“αŸ…αž‡αŸ’αžšαž»αž„αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αžαžΆαž„αž†αŸ’αžœαŸαž„ αž αžΎαž™αž”αŸ‚αžšαž˜αž»αžαž‘αŸ…αžαžΆαž„αž‡αžΎαž„αŸ” αžŠαžΎαž˜αŸ’αž”αžΈαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž™αžΆαž“αžšαŸ‰αžΌαžœαžΎ αžŽαžΆαžŸαžΆαž”αžΆαž“αž•αŸ’αž‰αžΎαž’αž€αŸ’αžŸαžšαžŸαžΆαž˜αž‰αŸ’αž‰αž˜αž½αž™αŸ” αž’αž€αŸ’αžŸαžšαžŠαŸ‚αž›αž’αžΆαž…αž˜αžΆαž“αž‚αžΊ 'L', 'R' αž“αž·αž„ 'M'αŸ” 'L' αž“αž·αž„ 'R' αž’αŸ’αžœαžΎαž±αŸ’αž™ rover αž”αž„αŸ’αžœαž·αž› 90 αžŠαžΊαž€αŸ’αžšαŸαž‘αŸ…αž†αŸ’αžœαŸαž„ αž¬αžŸαŸ’αžαžΆαŸ†αžšαŸ€αž„αŸ—αžαŸ’αž›αž½αž“ αžŠαŸ„αž™αž˜αž·αž“αž•αŸ’αž›αžΆαžŸαŸ‹αž‘αžΈαž–αžΈαž€αž“αŸ’αž›αŸ‚αž„αž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αžšαž”αžŸαŸ‹αžœαžΆαŸ” 'M' αž˜αžΆαž“αž“αŸαž™αžαžΆαž†αŸ’αž–αŸ„αŸ‡αž‘αŸ…αž˜αž»αžαž…αŸ†αžŽαž»αž…αž€αŸ’αžšαž‘αžΆαž…αžαŸ’αžšαž„αŸ’αž‚αž˜αž½αž™ αž αžΎαž™αžšαž€αŸ’αžŸαžΆαž€αŸ’αž”αžΆαž›αžŠαžΌαž…αž‚αŸ’αž“αžΆαŸ”
αžŸαž“αŸ’αž˜αžαžαžΆαž€αžΆαžšαŸαžŠαŸ„αž™αž•αŸ’αž‘αžΆαž›αŸ‹αž–αžΈ (x, y) αž‚αžΊ (x, y + 1) αŸ”
αž”αž‰αŸ’αž…αžΌαž›αŸ–
αž”αž“αŸ’αž‘αžΆαžαŸ‹αž‘αžΈαž˜αž½αž™αž“αŸƒαž€αžΆαžšαž”αž‰αŸ’αž…αžΌαž›αž‚αžΊαž‡αžΆαž€αžΌαž’αžšαžŠαŸ„αžŽαŸαžαžΆαž„αž›αžΎαžŸαŸ’αžαžΆαŸ†αž“αŸƒαžαŸ’αž–αž„αŸ‹αžšαžΆαž” αž€αžΌαž’αžšαžŠαŸ„αž“αŸαžαžΆαž„αž€αŸ’αžšαŸ„αž˜αž†αŸ’αžœαŸαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαž“αŸ’αž˜αžαŸ‹αžαžΆαž‡αžΆ 0,0 αŸ”
αž’αžΆαžαž»αž…αžΌαž›αžŠαŸ‚αž›αž“αŸ…αžŸαž›αŸ‹αž‚αžΊαž‡αžΆαž–αŸαžαŸŒαž˜αžΆαž“αžŠαŸ‚αž›αž‘αžΆαž€αŸ‹αž‘αž„αž“αžΉαž„αžšαŸ‰αžΌαžœαŸαžšαžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŠαžΆαž€αŸ‹αž–αž„αŸ’αžšαžΆαž™αŸ” αžšαŸ‰αžΌαžœαŸαžšαž“αžΈαž˜αž½αž™αŸ—αž˜αžΆαž“αžαŸ’αžŸαŸ‚αž”αž‰αŸ’αž…αžΌαž›αž–αžΈαžšαŸ” αžαŸ’αžŸαŸ‚αž‘αžΈαž˜αž½αž™αž•αŸ’αžαž›αŸ‹αž‘αžΈαžαžΆαŸ†αž„αžšαž”αžŸαŸ‹αžšαŸ‰αžΌαžœαžΊαžš αž αžΎαž™αžαŸ’αžŸαŸ‚αž‘αžΈαž–αžΈαžšαž‚αžΊαž‡αžΆαž€αžΆαžšαžŽαŸ‚αž“αžΆαŸ†αž‡αžΆαžŸαŸŠαŸαžšαžΈαž”αŸ’αžšαžΆαž”αŸ‹αžšαŸ‰αžΊαžœαžΊαžšαž’αŸ†αž–αžΈαžšαž”αŸ€αž”αžšαž»αž€αžšαž€αžαŸ’αž–αž„αŸ‹αžšαžΆαž”αŸ” αž‘αžΈαžαžΆαŸ†αž„β€‹αžαŸ’αžšαžΌαžœβ€‹αž”αžΆαž“β€‹αž”αž„αŸ’αž€αžΎαžβ€‹αž‘αžΎαž„β€‹αžŠαŸ„αž™β€‹αž…αŸ†αž“αž½αž“β€‹αž‚αžαŸ‹β€‹αž–αžΈαžšβ€‹αž“αž·αž„β€‹αž’αž€αŸ’αžŸαžšβ€‹αž˜αž½αž™β€‹αž”αŸ†αž”αŸ‚αž€β€‹αžŠαŸ„αž™β€‹αžŠαž€αžƒαŸ’αž›αžΆβ€‹αžŠαŸ‚αž›β€‹αžαŸ’αžšαžΌαžœβ€‹αž‚αŸ’αž“αžΆβ€‹αž“αžΉαž„β€‹αž€αžΆαžšβ€‹αžŸαž˜αŸ’αžšαž”αžŸαž˜αŸ’αžšαž½αž› x αž“αž·αž„ y αž“αž·αž„β€‹αž€αžΆαžšβ€‹αžαŸ†αžšαž„αŸ‹β€‹αž‘αž·αžŸβ€‹αžšαž”αžŸαŸ‹β€‹αžšαŸ‰αžΌαžœαžΊαžšαŸ”
αžšαŸ‰αžΌαžœαŸαžšαž“αžΈαž˜αž½αž™αŸ—αž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž‰αŸ’αž…αž”αŸ‹αž‡αžΆαž”αž“αŸ’αžαž”αž“αŸ’αž‘αžΆαž”αŸ‹ αžŠαŸ‚αž›αž˜αžΆαž“αž“αŸαž™αžαžΆ αžšαŸ‰αžΌαžœαžΊαžšαž‘αžΈαž–αžΈαžšαž“αžΉαž„αž˜αž·αž“αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž•αŸ’αž›αžΆαžŸαŸ‹αž‘αžΈαž‘αŸ αžšαž αžΌαžαžŠαž›αŸ‹αž™αžΆαž“αž‘αžΈαž˜αž½αž™αž”αžΆαž“αž”αž‰αŸ’αž…αž”αŸ‹αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž‘αžΈαŸ”
OUTPUTαŸ–
αž‘αž·αž“αŸ’αž“αž•αž›αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ rover αž“αžΈαž˜αž½αž™αŸ—αž‚αž½αžšαžαŸ‚αž‡αžΆαž€αžΆαžšαžŸαž˜αŸ’αžšαž”αžŸαž˜αŸ’αžšαž½αž›αž…αž»αž„αž€αŸ’αžšαŸ„αž™ αž“αž·αž„αž‘αž·αžŸαžŠαŸ…αžšαž”αžŸαŸ‹αžœαžΆαŸ”
αž€αŸ†αžŽαžαŸ‹αž…αŸ†αžŽαžΆαŸ†:
αž‚αŸ’αžšαžΆαž“αŸ‹αžαŸ‚αž’αž“αž»αžœαžαŸ’αžαžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαžαžΆαž„αž›αžΎ αž αžΎαž™αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αžαžΆαž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž”αžΌαž˜αž’αžΌαž›αžΈαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαŸ„αž™αž€αžΆαžšαžŸαžšαžŸαŸαžšαž€αžΆαžšαž’αŸ’αžœαžΎαžαŸαžŸαŸ’αžαž―αž€αžαžΆαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžœαžΆαŸ”
αž€αžΆαžšαž”αž„αŸ’αž€αžΎαžαž‘αž˜αŸ’αžšαž„αŸ‹αž“αŸƒαž…αŸ†αžŽαž»αž…αž”αŸ’αžšαž‘αžΆαž€αŸ‹αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαžŽαžΆαž˜αž½αž™αž‚αžΊαž“αŸ…αž€αŸ’αžšαŸ…αžœαž·αžŸαžΆαž›αž—αžΆαž–αŸ”
αž€αžΆαžšαžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αž‰αŸ’αž αžΆαžŠαŸ„αž™αž’αŸ’αžœαžΎαžαžΆαž˜αžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžšαŸ’αž TDD (Test Driven Development) αž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž–αŸαž‰αž…αž·αžαŸ’αžαŸ”
αž€αŸ’αž“αž»αž„αžšαž™αŸˆαž–αŸαž›αžŠαŸαžαŸ’αž›αžΈαžŠαŸ‚αž›αž’αžΆαž…αž”αŸ’αžšαžΎαž”αžΆαž“ αž™αžΎαž„αž˜αžΆαž“αž€αžΆαžšαž–αŸ’αžšαž½αž™αž”αžΆαžšαž˜αŸ’αž—αž’αŸ†αž–αžΈαž‚αž»αžŽαž—αžΆαž–αž‡αžΆαž„αž—αžΆαž–αž–αŸαž‰αž›αŸαž‰αŸ”
*αžαŸ’αž‰αž»αŸ†αž˜αž·αž“αž’αžΆαž…αž”αŸ’αžšαž€αžΆαžŸαž€αž·αž…αŸ’αž…αž€αžΆαžšαžŠαŸ‚αž›αž”αžΆαž“αž•αŸ’αž‰αžΎαž˜αž€αžαŸ’αž‰αž»αŸ†αž‘αŸ αž“αŸαŸ‡αž‡αžΆαž€αž·αž…αŸ’αž…αž€αžΆαžšαž…αžΆαžŸαŸ‹αžŠαŸ‚αž›αž”αžΆαž“αž•αŸ’αžαž›αŸ‹αž±αŸ’αž™αž‡αžΆαž…αŸ’αžšαžΎαž“αž†αŸ’αž“αžΆαŸ†αž˜αž»αž“αŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž‡αžΏαžαŸ’αž‰αž»αŸ† αž’αŸ’αžœαžΈαž‚αŸ’αžšαž”αŸ‹αž™αŸ‰αžΆαž„αž“αŸ…αžαŸ‚αžŠαžŠαŸ‚αž›αŸ”

αž‡αžΆαž–αž·αžŸαŸαžŸαžαŸ’αž‰αž»αŸ†αž…αž„αŸ‹αž‘αžΆαž€αŸ‹αž‘αžΆαž‰αž€αžΆαžšαž™αž€αž…αž·αžαŸ’αžαž‘αž»αž€αžŠαžΆαž€αŸ‹αž…αŸ†αž–αŸ„αŸ‡αž›αž€αŸ’αžαžŽαŸˆαžœαž·αž“αž·αž…αŸ’αž†αŸαž™αžœαžΆαž™αžαž˜αŸ’αž›αŸƒαŸ” αžαžΎαž’αŸ’αž“αž€αž”αžΆαž“αž‡αž½αž”αžŸαŸ’αžαžΆαž“αž—αžΆαž–αž”αŸ‰αž»αž“αŸ’αž˜αžΆαž“αžŠαž„ αžŠαŸ‚αž›αž’αŸ’αžœαžΈαžŠαŸ‚αž›αžŸαŸ†αžαžΆαž“αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αŸαž€αŸ’αžαž‡αž“αž‚αžΊαž˜αž·αž“αžŸαŸ†αžαžΆαž“αŸ‹αž‘αžΆαŸ†αž„αžŸαŸ’αžšαž»αž„αž€αŸ’αž“αž»αž„αž’αŸ†αž‘αž»αž„αž–αŸαž›αžŸαžœαž“αž€αž˜αŸ’αž˜ αž“αž·αž„αž•αŸ’αž‘αž»αž™αž˜αž€αžœαž·αž‰αŸ” αž˜αž·αž“αž˜αŸ‚αž“αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αž“αžΆαž‚αž·αžαžŠαžΌαž…αž’αŸ’αž“αž€αž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž˜αž“αž»αžŸαŸ’αžŸαž‡αžΆαž…αŸ’αžšαžΎαž“αž’αžΆαž…αž‘αž‘αž½αž›αž™αž€ αž“αž·αž„αž’αŸ’αžœαžΎαžαžΆαž˜αžαž˜αŸ’αž›αŸƒαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€ αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž–αž½αž€αž‚αŸαž”αžΆαž“αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αž™αŸ‰αžΆαž„αž…αŸ’αž”αžΆαžŸαŸ‹αŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡ αžαžΆαž˜β€‹αž›αž€αŸ’αžαžŽαŸˆβ€‹αžœαž·αž“αž·αž…αŸ’αž†αŸαž™β€‹αžœαžΆαž™αžαž˜αŸ’αž›αŸƒβ€‹αžœαžΆβ€‹αž…αŸ’αž”αžΆαžŸαŸ‹β€‹αž—αŸ’αž›αžΆαž˜β€‹αžαžΆβ€‹αž‡αŸ†αž“αžΆαž‰β€‹αžŸαŸ†αžαžΆαž“αŸ‹β€‹αž”αŸ†αž•αž»αžβ€‹αž“αŸ…β€‹αžŠαŸ†αžŽαžΆαž€αŸ‹αž€αžΆαž›β€‹αž“αŸαŸ‡β€‹

  • TDD;
  • αžŸαž˜αžαŸ’αžαž—αžΆαž–αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αŸ’αžšαžΎ OOP αž“αž·αž„αžŸαžšαžŸαŸαžšαž€αžΌαžŠαžŠαŸ‚αž›αž’αžΆαž…αžšαž€αŸ’αžŸαžΆαž”αžΆαž“;
  • αžŸαž˜αžαŸ’αžαž—αžΆαž–αžŸαžšαžŸαŸαžšαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž‡αžΆαž‚αžΌ

αžŠαžΌαž…αŸ’αž“αŸαŸ‡ αžαŸ’αž‰αž»αŸ†β€‹αžαŸ’αžšαžΌαžœβ€‹αž”αžΆαž“β€‹αž‚αŸβ€‹αž–αŸ’αžšαž˜αžΆαž“β€‹αž±αŸ’αž™β€‹αž…αŸ†αžŽαžΆαž™β€‹αž–αŸαž› 1.5 αž˜αŸ‰αŸ„αž„β€‹αž“αŸ„αŸ‡β€‹αž‚αž·αžβ€‹αž–αžΈβ€‹αžšαž”αŸ€αž”β€‹αžŠαŸ‚αž›β€‹αžαŸ’αž‰αž»αŸ†β€‹αž“αžΉαž„β€‹αž’αŸ’αžœαžΎβ€‹αž€αž·αž…αŸ’αž…αž€αžΆαžšβ€‹αž“αŸαŸ‡ αž‡αžΆαž‡αžΆαž„β€‹αž€αžΆαžšβ€‹αžŸαžšαžŸαŸαžšβ€‹αž€αžΌαžŠαŸ” αž™αžΎαž„αž“αžΉαž„αžŸαžšαžŸαŸαžšαž€αžΌαžŠαž‡αžΆαž˜αž½αž™αž‚αŸ’αž“αžΆαŸ”

αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž™αžΎαž„αž‘αžΌαžšαžŸαŸαž–αŸ’αž‘αž˜αž€ αž”αž»αžšαžŸαž‘αžΆαŸ†αž„αž“αŸ„αŸ‡αž”αžΆαž“αž”αŸ’αžšαžΆαž”αŸ‹αž™αžΎαž„αž™αŸ‰αžΆαž„αžαŸ’αž›αžΈαžαžΆαž–αž½αž€αž‚αŸαž‡αžΆαž“αžšαžŽαžΆ αž“αž·αž„αž’αŸ’αžœαžΈαžŠαŸ‚αž›αž–αž½αž€αž‚αŸαž’αŸ’αžœαžΎ αž“αž·αž„αž•αŸ’αžαž›αŸ‹αž‡αžΌαž“αžŠαžΎαž˜αŸ’αž”αžΈαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž€αžΆαžšαž’αž—αž·αžœαžŒαŸ’αžαž“αŸαŸ”

αž€αŸ’αž“αž»αž„αž’αŸ†αž‘αž»αž„αž–αŸαž›αžŸαž˜αŸ’αž—αžΆαžŸαž“αŸαž‘αžΆαŸ†αž„αž˜αžΌαž› αžαŸ’αž‰αž»αŸ†αž˜αž·αž“αžŠαŸ‚αž›αž˜αžΆαž“αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαžαžΆαžαŸ’αž‰αž»αŸ†αž€αŸ†αž–αž»αž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαž˜αŸ’αž—αžΆαžŸαž“αŸαž˜αŸ’αžαž„αžŽαžΆαž‘αžΎαž™αŸ” αž˜αžΆαž“αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαžαžΆαž’αŸ’αž“αž€αž€αŸ†αž–αž»αž„αž”αž„αŸ’αž€αžΎαžαž€αžΌαžŠαž“αŸ…αž€αŸ’αž“αž»αž„αž€αŸ’αžšαž»αž˜αŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αž‡αžΆαž”αŸ‹αž‚αžΆαŸ†αž„αž“αŸ…αž€αž“αŸ’αž›αŸ‚αž„αžŽαžΆαž˜αž½αž™ αž–αž½αž€αž‚αŸαž‡αž½αž™ αž•αŸ’αžαž›αŸ‹αž™αŸ„αž”αž›αŸ‹ αž–αž·αž—αžΆαž€αŸ’αžŸαžΆ αžŸαžΌαž˜αŸ’αž”αžΈαžαŸ‚αž‡αž‡αŸ‚αž€αž‚αŸ’αž“αžΆαž’αŸ†αž–αžΈαžœαž·αž’αžΈαžŠαŸ‚αž›αž›αŸ’αž’αž”αŸ†αž•αž»αžαž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αŸ’αžœαžΎαžœαžΆαŸ” αž“αŸ…αž―αž€αžΆαžšαžŸαž˜αŸ’αž—αžΆαžŸαž“αŸ αžαŸ’αž‰αž»αŸ†αž—αŸ’αž›αŸαž…αž–αžΈαžšαž”αŸ€αž”αž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž›αž€αŸ’αž“αž»αž„ JUnit 5 αžαžΆαžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžšαŸ’αžαž˜αž½αž™αž”αžΆαž“αž”αŸ„αŸ‡αž…αŸ„αž› Exception - αž–αž½αž€αž‚αŸαž”αžΆαž“αž•αŸ’αžαž›αŸ‹αž‡αžΌαž“αžŠαžΎαž˜αŸ’αž”αžΈαž”αž“αŸ’αžαž€αžΆαžšαžŸαžšαžŸαŸαžšαž€αžΆαžšαž’αŸ’αžœαžΎαžαŸαžŸαŸ’αž αžαžŽαŸˆαžŠαŸ‚αž›αž˜αž½αž™αž€αŸ’αž“αž»αž„αž…αŸ†αžŽαŸ„αž˜αž–αž½αž€αž‚αŸαž€αŸ†αž–αž»αž„αžŸαŸ’αžœαŸ‚αž„αžšαž€αžœαž·αž’αžΈαž’αŸ’αžœαžΎαžœαžΆαŸ”

αžαžΆαž˜αž–αŸ’αž™αž‰αŸ’αž‡αž“αŸˆαž–αžΈαžšαž”αžΈαž˜αŸ‰αŸ„αž„αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž€αžΆαžšαžŸαž˜αŸ’αž—αžΆαžŸαž“αŸ αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž‘αž‘αž½αž›αž˜αžαž·αžŸαŸ’αžαžΆαž”αž“αžΆ - αž’αŸ’αžœαžΈαžŠαŸ‚αž›αžαŸ’αž‰αž»αŸ†αž…αžΌαž›αž…αž·αžαŸ’αž αž“αž·αž„αž’αŸ’αžœαžΈαžŠαŸ‚αž›αžαŸ’αž‰αž»αŸ†αž˜αž·αž“αž˜αžΆαž“αŸ” αž€αŸ’αž“αž»αž„β€‹αž€αžšαžŽαžΈβ€‹αžšαž”αžŸαŸ‹β€‹αžαŸ’αž‰αž»αŸ† αžαŸ’αž‰αž»αŸ†β€‹αžαŸ’αžšαžΌαžœβ€‹αž”αžΆαž“β€‹αž‚αŸβ€‹αžŸαžšαžŸαžΎαžšβ€‹αž…αŸ†αž–αŸ„αŸ‡β€‹αž€αžΆαžšβ€‹αž”αŸ’αžšαžΎβ€‹αžαŸ’αž“αžΆαž€αŸ‹ Sealed αž‡αžΆβ€‹αž‡αž˜αŸ’αžšαžΎαžŸβ€‹αž‡αŸ†αž“αž½αžŸβ€‹αžœαžαŸ’αžαž»β€‹αž‘αž‘αŸαŸ” αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž–αž·αžαžŠαŸ‚αž›αžαžΆαž˜αž»αž“αž–αŸαž›αžŸαžšαžŸαŸαžšαž€αžΌαžŠαžαŸ’αž‰αž»αŸ†αž”αžΆαž“αžŸαžšαžŸαŸαžšαž“αŸ…αž€αŸ’αž“αž»αž„ pseudocode αž–αžΈαžšαž”αŸ€αž”αžŠαŸ‚αž›αžαŸ’αž‰αž»αŸ†αž…αž„αŸ‹αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„ rover αž αžΎαž™αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž”αžΆαž“αž‘αž‘αž½αž›αž‚αŸ†αž“αžΌαžšαž–αŸ’αžšαžΆαž„αž“αŸƒαžαŸ’αž“αžΆαž€αŸ‹αž™αŸ‰αžΆαž„αž αŸ„αž…αžŽαžΆαžŸαŸ‹αž’αŸ’αž“αž€αžŠαŸ‚αž›αž–αžΆαž€αŸ‹αž–αŸαž“αŸ’αž’αž“αžΉαž„ API αžšαž”αžŸαŸ‹αž˜αž“αž»αžŸαŸ’αžŸαž™αž“αŸ’αžαŸ”

αž‡αŸ†αž αžΆαž“αž‘αžΈ 2: αž”αŸ’αžšαžΆαž”αŸ‹αž™αžΎαž„

αž˜αž½αž™αžŸαž”αŸ’αžαžΆαž αŸαž˜αž»αž“αž€αžΆαžšαžŸαž˜αŸ’αž—αžΆαžŸαž“αŸ αžαŸ’αž‰αž»αŸ†αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαŸ’αž“αžΎαž±αŸ’αž™αžšαŸ€αž”αž…αŸ†αž”αž‘αž”αž„αŸ’αž αžΆαž‰αž’αŸ†αž–αžΈαž”αŸ’αžšαž’αžΆαž“αž”αž‘αžŽαžΆαž˜αž½αž™αžŠαŸ‚αž›αžαŸ’αž‰αž»αŸ†αž…αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαŸ” αž‘αž˜αŸ’αžšαž„αŸ‹αž‚αžΊαžŸαžΆαž˜αž‰αŸ’αž‰ αž“αž·αž„αž’αŸ’αž›αžΆαž”αŸ‹αžŸαŸ’αž‚αžΆαž›αŸ‹αŸ– αž”αž‘αž”αž„αŸ’αž αžΆαž‰ ៑αŸ₯ αž“αžΆαž‘αžΈ αž€αžΆαžšαž†αŸ’αž›αžΎαž™αžŸαŸ†αžŽαž½αžš ៑αŸ₯ αž“αžΆαž‘αžΈ
αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸ Clean Architecture αžŠαŸ„αž™αž–αžΌ Bob αŸ” αž αžΎαž™αž˜αŸ’αžαž„αž‘αŸ€αž αžαŸ’αž‰αž»αŸ†αžαŸ’αžšαžΌαžœαž”αžΆαž“αž˜αž“αž»αžŸαŸ’αžŸαž–αžΈαžšαž”αžΈαž“αžΆαž€αŸ‹αžŸαž˜αŸ’αž—αžΆαžŸαž“αŸαŸ” αž“αŸαŸ‡αž‡αžΆαž”αž‘αž–αž·αžŸαŸ„αž’αž“αŸαžŠαŸ†αž”αžΌαž„αžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ†αž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αŸ’αžœαžΎαž”αž‘αž”αž„αŸ’αž αžΆαž‰αž‡αžΆαž—αžΆαžŸαžΆαž’αž„αŸ‹αž‚αŸ’αž›αŸαžŸ αž αžΎαž™αž”αŸ’αžšαž αŸ‚αž›αž‡αžΆαž”αŸ’αžšαžŸαž·αž“αž”αžΎαžαŸ’αž‰αž»αŸ†αžŸαŸ’αžαž·αžαž€αŸ’αž“αž»αž„αžŸαŸ’αžαžΆαž“αž—αžΆαž–αžŸαŸ’αžαŸ’αžšαŸαžŸ αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž˜αž·αž“αž’αžΆαž…αž‘αž”αŸ‹αž‘αž›αŸ‹αž”αžΆαž“αŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚β€‹αž˜αŸ’αžαž„β€‹αž‘αŸ€αž αžαŸ’αž‰αž»αŸ†β€‹αž˜αž·αž“β€‹αžŠαŸ‚αž›β€‹αž˜αžΆαž“β€‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸβ€‹αžαžΆβ€‹αžαŸ’αž‰αž»αŸ†β€‹αž“αŸ…β€‹αž–αŸαž›β€‹αžŸαž˜αŸ’αž—αžΆαžŸβ€‹αž“αŸ„αŸ‡β€‹αž‘αŸαŸ” αž’αŸ’αžœαžΈαž‚αŸ’αžšαž”αŸ‹αž™αŸ‰αžΆαž„αž‚αžΊαžŠαžΌαž…αž’αž˜αŸ’αž˜αžαžΆ - αžαŸ’αž‰αž»αŸ†αž”αŸ’αžšαžΆαž”αŸ‹αž–αž½αž€αž‚αŸαž–αž½αž€αž‚αŸαžŸαŸ’αžαžΆαž”αŸ‹αžŠαŸ„αž™αž”αŸ’αžšαž»αž„αž”αŸ’αžšαž™αŸαžαŸ’αž“αŸ” αžŸαžΌαž˜αŸ’αž”αžΈαžαŸ‚αžœαž‚αŸ’αž‚αžŸαŸ†αžŽαž½αžš αž“αž·αž„αž…αž˜αŸ’αž›αžΎαž™αž”αŸ‚αž”αž”αŸ’αžšαž–αŸƒαžŽαžΈαž€αŸαž˜αž·αž“αžŠαžΌαž…αž€αžΆαžšαžŸαž˜αŸ’αž—αžΆαžŸαž“αŸαžŠαŸ‚αžš αžœαžΆαž…αŸ’αž”αžΆαžŸαŸ‹αžŽαžΆαžŸαŸ‹αžαžΆαžŸαŸ†αžŽαž½αžšαž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαž½αžšαž±αŸ’αž™ "αž›αž·αž…" αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž’αŸ’αž“αž€αžŠαŸ‚αž›αž…αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαž–αž½αž€αž‚αŸαž™αŸ‰αžΆαž„αž–αž·αžαž”αŸ’αžšαžΆαž€αžŠαž“αŸ…αž€αŸ’αž“αž»αž„αž”αž‘αž”αž„αŸ’αž αžΆαž‰αžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ†αŸ”

αž–αžΈαžšαž”αžΈαž˜αŸ‰αŸ„αž„αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž€αžΆαžšαžŸαž˜αŸ’αž—αžΆαžŸαž“αŸ αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž‘αž‘αž½αž›αž˜αžαž·αž€αŸ‚αž›αž˜αŸ’αž’ - αž”αž‘αž”αž„αŸ’αž αžΆαž‰αž˜αžΆαž“αž”αŸ’αžšαž™αŸ„αž‡αž“αŸαžŽαžΆαžŸαŸ‹ αž αžΎαž™αž–αž½αž€αž‚αŸαž–αž·αžαž‡αžΆαž…αžΌαž›αž…αž·αžαŸ’αžαžŸαŸ’αžαžΆαž”αŸ‹αžŽαžΆαžŸαŸ‹αŸ”

αžŠαŸ†αžŽαžΆαž€αŸ‹αž€αžΆαž›αž‘αžΈ 3. αž€αŸ’αžšαž˜αž‚αž»αžŽαž—αžΆαž–αž•αž›αž·αžαž€αž˜αŸ’αž˜

αžŠαŸ„αž™αž”αžΆαž“αž–αŸ’αžšαž˜αžΆαž“αžαžΆαž“αŸαŸ‡αž‡αžΆαžŠαŸ†αžŽαžΆαž€αŸ‹αž€αžΆαž›αž…αž»αž„αž€αŸ’αžšαŸ„αž™αž“αŸƒαž€αžΆαžšαžŸαž˜αŸ’αž—αžΆαžŸαž”αž…αŸ’αž…αŸαž€αž‘αŸαžŸ αžαŸ’αž‰αž»αŸ†αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαŸ’αž“αžΎαž±αŸ’αž™αž“αžΆαŸ†αž™αž€αž€αžΌαžŠαž“αŸ…αž•αŸ’αž‘αŸ‡αž‘αŸ…αž€αžΆαž“αŸ‹αžŸαŸ’αžαžΆαž“αž—αžΆαž–αžŠαŸ‚αž›αžαŸ’αžšαŸ€αž˜αžšαž½αž…αž‡αžΆαžŸαŸ’αžšαŸαž…αž€αŸ’αž“αž»αž„αž€αžΆαžšαž•αž›αž·αž αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž•αŸ’αž‰αžΎαž›αŸαžαž€αžΌαžŠαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž–αž·αž“αž·αžαŸ’αž™ αž“αž·αž„αž€αŸ†αžŽαžαŸ‹αž–αŸαž›αžŸαž˜αŸ’αž—αžΆαžŸαž“αŸ αžŠαŸ‚αž›αžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αž·αž…αŸ’αž…αž€αžΆαžšαž“αžΉαž„αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžš αž αžΎαž™αž›αŸαžαž€αžΌαžŠαž“αžΉαž„ αž‘αžΆαž˜αž‘αžΆαžšαž€αžΆαžšαž€αŸ‚αž”αŸ’αžšαŸ‚αŸ” αž€αŸ’αžšαž‘αŸαž€αž˜αžΎαž›αž‘αŸ…αž˜αž»αž αžαŸ’αž‰αž»αŸ†αž’αžΆαž…αž“αž·αž™αžΆαž™αž”αžΆαž“αžαžΆ αž€αžΆαžšαž–αž·αž“αž·αžαŸ’αž™αž€αžΌαžŠαžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αž“αž»αžœαžαŸ’αžαžŠαŸ„αž™αž„αž„αžΉαžαž„αž„αž»αž› αž’αŸ’αž“αž€αžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž˜αž·αž“αžŸαŸ’αž‚αžΆαž›αŸ‹αž˜αž»αžαžαŸ†αžŽαŸ‚αž„αžŠαŸ‚αž›αž”αŸαž€αŸ’αžαž‡αž“αžŠαžΆαž€αŸ‹αž–αžΆαž€αŸ’αž™ αž–αž½αž€αž‚αŸαž˜αž·αž“αž”αžΆαž“αžƒαžΎαž‰ CV αžšαž”αžŸαŸ‹αž‚αžΆαžαŸ‹ αž€αŸαž˜αž·αž“αžƒαžΎαž‰αžˆαŸ’αž˜αŸ„αŸ‡αž‚αžΆαžαŸ‹αžŠαŸ‚αžšαŸ”

αž‘αžΌαžšαžŸαž–αŸ’αž‘αžšαŸ„αž‘αž·αŸ αž αžΎαž™αž˜αŸ’αžαž„αž‘αŸ€αžαž˜αžΆαž“αž”αž»αžšαžŸαž–αžΈαžšαž”αžΈαž“αžΆαž€αŸ‹αž“αŸ…αž˜αŸ’αžαžΆαž„αž‘αŸ€αžαž“αŸƒαž˜αŸ‰αžΌαž“αžΈαž‘αŸαžšαŸ” αž’αŸ’αžœαžΈαž‚αŸ’αžšαž”αŸ‹αž™αŸ‰αžΆαž„αž‚αžΊαžŠαžΌαž…αž‚αŸ’αž“αžΆαž“αžΉαž„αž€αžΆαžšαžŸαž˜αŸ’αž—αžΆαžŸαž“αŸαžŠαŸ†αž”αžΌαž„αžŠαŸ‚αžšαŸ– αžšαžΏαž„αžŸαŸ†αžαžΆαž“αŸ‹αž‚αžΊαž€αž»αŸ†αž—αŸ’αž›αŸαž…αž’αŸ†αž–αžΈ TDD αž”αŸ’αžšαžΆαž”αŸ‹αž–αžΈαž’αŸ’αžœαžΈαžŠαŸ‚αž›αž’αŸ’αž“αž€αž’αŸ’αžœαžΎ αž“αž·αž„αž˜αžΌαž›αž αŸαžαž»αŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αž˜αž·αž“αž”αžΆαž“αž’αž“αž»αžœαžαŸ’αž TDD αž–αžΈαž˜αž»αž“αž‘αŸαž“αŸ„αŸ‡ αžαŸ’αž‰αž»αŸ†αžŸαžΌαž˜αžŽαŸ‚αž“αžΆαŸ†αž±αŸ’αž™αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž’αŸ’αžœαžΎαžœαžΆαž—αŸ’αž›αžΆαž˜αŸ— αž˜αž·αž“αž˜αŸ‚αž“αžŠαŸ„αž™αžŸαžΆαžšαžαŸ‚αžœαžΆαž…αžΆαŸ†αž”αžΆαž…αŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„αž€αŸ’αžšαž»αž˜αž αŸŠαž»αž“αž“αŸ„αŸ‡αž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž–αŸ’αžšαŸ„αŸ‡αžœαžΆαž‡αž½αž™αžŸαž˜αŸ’αžšαž½αž›αžŠαž›αŸ‹αž‡αžΈαžœαž·αžαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž™αŸ‰αžΆαž„αžŸαŸ†αžαžΆαž“αŸ‹ αž€αžΆαžαŸ‹αž”αž“αŸ’αžαž™αž€αž˜αŸ’αžšαž·αžαžŸαŸ’αžαŸ’αžšαŸαžŸαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€ αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αž…αžΌαž›αž…αž·αžαŸ’αžαŸ” αž…αž„αž…αžΆαŸ†αž–αžΈαžšαž”αŸ€αž”αžŠαŸ‚αž›αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαžŸαŸ’αžœαŸ‚αž„αžšαž€αž™αŸ‰αžΆαž„αž’αž“αŸ’αž‘αŸ‡αž’αž“αŸ’αž‘αŸ‚αž„αžŠαŸ„αž™αž”αŸ’αžšαžΎαž§αž”αž€αžšαžŽαŸαž”αŸ†αž”αžΆαžαŸ‹αž€αŸ†αž αž»αžŸαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αŸ†αž αž»αžŸαžŠαŸ‚αž›αž’αžΆαž…αž•αž›αž·αžαž‘αžΎαž„αžœαž·αž‰αž”αžΆαž“αžαžΆαž˜αžšαž™αŸˆαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžšαž»αž€αžšαž€ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž’αŸ’αž“αž€αž˜αž·αž“αž’αžΆαž…αž•αž›αž·αžαžœαžΆαž‘αžΎαž„αžœαž·αž‰αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž€αžΆαžšαž’αŸ’αžœαžΎαžαŸαžŸαŸ’αžαž”αžΆαž“αž‘αŸ? αž₯αž‘αžΌαžœαž“αŸαŸ‡αžŸαŸ’αžšαž˜αŸƒαžαžΆαž’αŸ’αž“αž€αž“αžΉαž„αžαŸ’αžšαžΌαžœαž…αžΆαž”αŸ‹αž€αŸ†αž αž»αžŸαž”αŸ‚αž”αž“αŸαŸ‡αž€αŸ’αž“αž»αž„αž’αŸ†αž‘αž»αž„αž–αŸαž›αžŸαž˜αŸ’αž—αžΆαžŸαž“αŸ - αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αžΆαž“αžΆαžŸαž€αŸ‹αž–αžŽαŸŒαž”αŸ’αžšαž•αŸαŸ‡αž–αžΈαžšαž”αžΈαŸ” αžαžΎαž™αžΎαž„αž‘αž‘αž½αž›αž”αžΆαž“αž’αŸ’αžœαžΈαž‡αžΆαž˜αž½αž™ TDD? αž™αžΎαž„αž”αžΆαž“αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž›αŸαžαž€αžΌαžŠ αž αžΎαž™αž˜αž·αž“αž”αžΆαž“αžšαŸ†αž–αžΉαž„αž‘αž»αž€αžαžΆαž₯αž‘αžΌαžœαž“αŸαŸ‡αž€αžΆαžšαž’αŸ’αžœαžΎαžαŸαžŸαŸ’αžαž˜αžΆαž“αž–αžŽαŸŒαž€αŸ’αžšαž αž˜ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžαžΎαž’αŸ’αžœαžΈαž‘αŸ…αž‡αžΆαž€αŸ†αž αž»αžŸαžŠαŸ‚αž›αž™αžΎαž„αž˜αž·αž“αž’αžΆαž…αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž‡αžΆαž›αžΎαž€αžŠαŸ†αž”αžΌαž„? αž˜αž·αž“αž’αžΈαž‘αŸ αž™αžΎαž„αž“αž·αž™αžΆαž™αžαžΆ "ធូ៎" αž‘αŸ…αž€αžΆαž“αŸ‹αž’αŸ’αž“αž€αžŸαž˜αŸ’αž—αžΆαžŸαž“αŸ αž…αž»αž… Ctrl-Z αž αžΎαž™αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž‡αŸ†αž αžΆαž“αžαžΌαž…αŸ—αž‘αŸ…αž˜αž»αžαŸ” αž αžΎαž™αž”αžΆαž‘ αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž’αž—αž·αžœαžŒαŸ’αžαžŸαž˜αžαŸ’αžαž—αžΆαž–αž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αž—αž·αžœαžŒαŸ’αžαžŠαŸ„αž™αž”αŸ’αžšαžΎ TDD αž“αŸ…αž€αŸ’αž“αž»αž„αžαŸ’αž›αž½αž“αž’αŸ’αž“αž€ αžŸαž˜αžαŸ’αžαž—αžΆαž–αž€αŸ’αž“αž»αž„αž€αžΆαžšαž†αŸ’αž–αŸ„αŸ‡αž‘αŸ…αžšαž€αž‚αŸ„αž›αžŠαŸ… αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž€αžΆαžšαž’αŸ’αžœαžΎαžαŸαžŸαŸ’αžαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž˜αžΆαž“αž–αžŽαŸŒαž”αŸƒαžαž„αž‡αžΆαž’αž…αž·αž“αŸ’αžαŸ’αžšαŸƒαž™αŸ αž“αž·αž„αž˜αž·αž“αž€αŸ’αžšαž αž˜αž€αŸ’αž“αž»αž„αžšαž™αŸˆαž–αŸαž›αž€αž“αŸ’αž›αŸ‡αžαŸ’αž„αŸƒ αž–αžΈαž–αŸ’αžšαŸ„αŸ‡ "αž’αŸ’αž“αž€αž˜αžΆαž“αž”αŸ’αžšαžαž·αž€αž˜αŸ’αž˜αž…αŸ’αžšαžΎαž“" αŸ” αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž‡αŸ†αž“αžΆαž‰αžŠαžΌαž…αž‚αŸ’αž“αžΆαž‘αŸ…αž“αžΉαž„αž€αžΆαžšαžŸαžšαžŸαŸαžšαž€αžΌαžŠαžŠαŸ‚αž›αž’αžΆαž…αžšαž€αŸ’αžŸαžΆαž”αžΆαž“ αž¬αžŸαžšαžŸαŸαžšαž€αžΌαžŠαžŠαŸ‚αž›αž˜αžΆαž“αž•αž›αž·αžαž—αžΆαž–αŸ”

αžŠαžΌαž…αŸ’αž“αŸαŸ‡ αžαžΎαž€αžΌαžŠαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž’αžΆαž…αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž”αžΆαž“αž›αŸ’αž’αž”αŸ‰αž»αžŽαŸ’αžŽαžΆ αž’αžΆαžŸαŸ’αžšαŸαž™αž›αžΎαž€αžΆαžšαžšαž…αž“αžΆαžŠαŸ‚αž›αž’αŸ’αž“αž€αž˜αžΆαž“αž€αŸ’αž“αž»αž„αž…αž·αžαŸ’αžαžŠαžΎαž˜αŸ’αž”αžΈαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜ αžαžΎαžœαžΆαžŸαžΆαž˜αž‰αŸ’αž‰αž”αŸ‰αž»αžŽαŸ’αžŽαžΆ αž“αž·αž„αžαžΆαžαžΎαž€αžΆαžšαžŸαžΆαž€αž›αŸ’αž”αž„αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž›αŸ’αž’αž”αŸ‰αž»αžŽαŸ’αžŽαžΆαŸ”

αž”αž“αŸ’αž‘αžΆαž”αŸ‹β€‹αž–αžΈβ€‹αž€αžΆαžšβ€‹αžŸαž˜αŸ’αž—αžΆαžŸ αžαŸ’αž‰αž»αŸ†β€‹αž”αžΆαž“β€‹αž‘αž‘αž½αž›β€‹αž˜αžαž·β€‹αž€αŸ‚αž›αž˜αŸ’αž’β€‹αž€αŸ’αž“αž»αž„β€‹αžšαž™αŸˆβ€‹αž–αŸαž›β€‹αž–αžΈαžšβ€‹αž”αžΈβ€‹αž˜αŸ‰αŸ„αž„αŸ” αž“αŸ…αžŠαŸ†αžŽαžΆαž€αŸ‹αž€αžΆαž›αž“αŸαŸ‡ αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αžŠαžΉαž„αžαžΆαžαŸ’αž‰αž»αŸ†αžŸαŸ’αž‘αžΎαžšαžαŸ‚αž†αŸ’αž›αž„αž•αž»αžαž‘αŸ…αž αžΎαž™ αž αžΎαž™αž“αŸ…αžŸαž›αŸ‹αžαž·αž…αžαž½αž…αž”αŸ†αž•αž»αžαžšαž αžΌαžαžŠαž›αŸ‹αžαŸ’αž‰αž»αŸ† "αž”αžΆαž“αž‡αž½αž” Fowler" αŸ”

αžŠαŸ†αžŽαžΆαž€αŸ‹αž€αžΆαž›αž‘αžΈ 4. αž…αž»αž„αž€αŸ’αžšαŸ„αž™αŸ” αžŸαŸ†αžŽαž½αžšαž”αž…αŸ’αž…αŸαž€αž‘αŸαžŸαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαžΆαž“αŸ‹αŸ” αž™αžΎαž„αž…αž„αŸ‹αžŠαžΉαž„αžαžΆαž’αŸ’αž“αž€αž‡αžΆαž“αžšαžŽαžΆ!

αž“αž·αž™αžΆαž™αž±αŸ’αž™αžαŸ’αžšαž„αŸ‹αž‘αŸ… αžαŸ’αž‰αž»αŸ†αž˜αžΆαž“αž€αžΆαžšαž„αžΏαž„αž†αŸ’αž„αž›αŸ‹αžαŸ’αž›αŸ‡αŸ—αž…αŸ†αž–αŸ„αŸ‡αž€αžΆαžšαž”αž„αŸ’αž€αžΎαžαžŸαŸ†αžŽαž½αžšαž“αŸαŸ‡αŸ” αžαžΎβ€‹αž’αŸ’αž“αž€β€‹αž’αžΆαž…β€‹αž™αž›αŸ‹β€‹αžαžΆβ€‹αžαŸ’αž‰αž»αŸ†β€‹αž‡αžΆβ€‹αž˜αž“αž»αžŸαŸ’αžŸβ€‹αž”αŸ’αžšαž—αŸαž‘β€‹αžŽαžΆβ€‹αž€αŸ’αž“αž»αž„β€‹αžšαž™αŸˆαž–αŸαž›β€‹αž˜αž½αž™β€‹αž˜αŸ‰αŸ„αž„β€‹αž“αŸƒβ€‹αž€αžΆαžšβ€‹αžŸαž“αŸ’αž‘αž“αžΆ? αž αžΎαž™αž›αžΎαžŸαž–αžΈαž“αŸαŸ‡αž‘αŸ…αž‘αŸ€αž αžαžΎαž’αŸ’αž“αž€αž’αžΆαž…αž™αž›αŸ‹αžšαžΏαž„αž“αŸαŸ‡αžŠαŸ„αž™αžšαž”αŸ€αž”αžŽαžΆ αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αžαŸ’αž‰αž»αŸ†αž“αž·αž™αžΆαž™αž—αžΆαžŸαžΆαžŠαŸ‚αž›αž˜αž·αž“αž˜αŸ‚αž“αž‡αžΆαž—αžΆαžŸαžΆαž€αŸ†αžŽαžΎαžαžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ† αž αžΎαž™αž“αž·αž™αžΆαž™αžŠαŸ„αž™αžαŸ’αžšαž„αŸ‹αž‘αŸ…αž‚αžΊαž’αžΆαž€αŸ’αžšαž€αŸ‹αžŽαžΆαžŸαŸ‹ αž αžΎαž™αž‡αžΆαž”αŸ‹αž“αžΉαž„αž’αžŽαŸ’αžαžΆαžαŸ” αž“αŸ…αž€αŸ’αž“αž»αž„αž”αž‘αžŸαž˜αŸ’αž—αžΆαžŸαž“αŸαž˜αž»αž“αŸ— αžœαžΆαž„αžΆαž™αžŸαŸ’αžšαž½αž›αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžαŸ’αž‰αž»αŸ†αž•αŸ’αž‘αžΆαž›αŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαž“αž·αž™αžΆαž™αž‡αžΆαž‡αžΆαž„αž†αŸ’αž›αžΎαž™αžŸαŸ†αžŽαž½αžš αž αžΎαž™αž€αžΆαžšαž”αž‰αŸ’αž…αŸαž‰αžŸαŸ†αž‘αŸαž„αž‚αžΊαžαŸ’αžšαžΌαžœαžŸαŸ’αžαžΈαž”αž“αŸ’αž‘αŸ„αžŸαŸ” αž™αŸ‰αžΆαž„αž αŸ„αž…αžŽαžΆαžŸαŸ‹αž˜αžΆαž“αž’αŸ’αž“αž€αžŸαž˜αŸ’αž—αžΆαžŸαž“αŸαž˜αŸ’αž“αžΆαž€αŸ‹αž‡αžΆαž‡αž“αž‡αžΆαžαž·αž’αžΆαžŸαŸŠαžΈ αž αžΎαž™αž€αžΆαžšαžŸαž„αŸ’αž€αžαŸ‹αžŸαŸ†αž‘αŸαž„αžšαž”αžŸαŸ‹αž–αž½αž€αž‚αŸ αž‡αžΆαž€αžΆαžšαž”αŸ’αžšαžŸαžΎαžšαžŽαžΆαžŸαŸ‹ αžŸαžΌαž˜αž“αž·αž™αžΆαž™αž”αž“αŸ’αžαž·αž…αž‘αŸ…αžαŸ’αžšαž…αŸ€αž€αž’αžΊαžšαŸ‰αž»αž”αŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž αžΎαž™ αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αžŸαž˜αŸ’αžšαŸαž…αž…αž·αžαŸ’αžαž™αž€αžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžšαŸ’αžαžŸαž€αž˜αŸ’αž˜αž˜αž½αž™ αžšαŸ€αž”αž…αŸ†αž”αž‘αž”αž„αŸ’αž αžΆαž‰αž’αŸ†αž–αžΈαžαŸ’αž›αž½αž“αžαŸ’αž‰αž»αŸ† αž αžΎαž™αž“αŸ…αžŠαžΎαž˜αžŠαŸ†αž”αžΌαž„αž“αŸƒαž€αžΆαžšαžŸαž˜αŸ’αž—αžΆαžŸαž“αŸ αž•αŸ’αžαž›αŸ‹αž‡αžΌαž“αžŠαžΎαž˜αŸ’αž”αžΈαž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαžαŸ’αž›αž½αž“αžαŸ’αž‰αž»αŸ†αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž”αž‘αž”αž„αŸ’αž αžΆαž‰αž“αŸαŸ‡αŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž–αž½αž€αž‚αŸαž™αž›αŸ‹αž–αŸ’αžšαž˜ αž“αŸ„αŸ‡αž™αŸ‰αžΆαž„αž αŸ„αž…αžŽαžΆαžŸαŸ‹αž“αžΉαž„αž˜αžΆαž“αžŸαŸ†αžŽαž½αžšαžαž·αž…αžαž½αž…αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžαŸ’αž‰αž»αŸ† αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž–αž½αž€αž‚αŸαž”αžŠαž·αžŸαŸαž’αž€αžΆαžšαž•αŸ’αžαž›αŸ‹αž‡αžΌαž“αž“αŸαŸ‡ αž‡αžΆαž€αžΆαžšαž”αŸ’αžšαžŸαžΎαžšαžŽαžΆαžŸαŸ‹ 3 αž˜αŸ‰αŸ„αž„αž“αŸƒαž‡αžΈαžœαž·αžαžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ†αžŠαŸ‚αž›αž”αžΆαž“αž…αŸ†αžŽαžΆαž™αž›αžΎαž€αžΆαžšαž’αŸ’αžœαžΎαž”αž‘αž”αž„αŸ’αž αžΆαž‰αž‚αžΊαž˜αž·αž“αž˜αžΆαž“αžαž˜αŸ’αž›αŸƒαžαŸ’αž–αžŸαŸ‹αž“αŸ„αŸ‡αž‘αŸαŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžαžΎαž’αŸ’αž“αž€αž‚αž½αžšαžŸαžšαžŸαŸαžšαž’αŸ’αžœαžΈαž“αŸ…αž€αŸ’αž“αž»αž„αž”αž‘αž”αž„αŸ’αž αžΆαž‰αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€? αž‡αžΈαžœαž”αŸ’αžšαžœαžαŸ’αžαž· - αž€αžΎαžαž“αŸ…αž‘αžΈαž“αŸ„αŸ‡ αž–αŸαž›αž“αŸ„αŸ‡αž”αžΆαž“αž…αžΌαž›αžšαŸ€αž“ αžšαŸ€αž“αž…αž”αŸ‹αžŸαž€αž›αžœαž·αž‘αŸ’αž™αžΆαž›αŸαž™ - αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž’αŸ’αž“αž€αžŽαžΆαžαŸ’αžœαž›αŸ‹?

αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€ Google αž”αž“αŸ’αžαž·αž…αž’αŸ†αž–αžΈαžœαž”αŸ’αž”αž’αž˜αŸŒ Thoughtworks αž’αŸ’αž“αž€αž“αžΉαž„αžƒαžΎαž‰αž’αžαŸ’αžαž”αž‘αž˜αž½αž™αžŠαŸ„αž™ Martin Fowler [https://martinfowler.com/bliki/ThreePillars.html] αžŠαŸ‚αž›αž–αž·αž–αžŽαŸŒαž“αžΆαž’αŸ†αž–αžΈαžŸαžŸαžšαžŸαŸ’αžαž˜αŸ’αž—αž‘αžΆαŸ†αž„ 3αŸ– αž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž”αŸ’αžšαž€αž”αžŠαŸ„αž™αž“αž·αžšαž“αŸ’αžαžšαž—αžΆαž– αž§αžαŸ’αžαž˜αž—αžΆαž–αž•αŸ’αž“αŸ‚αž€αž‘αž“αŸ‹ αž“αž·αž„αž™αž»αžαŸ’αžαž·αž’αž˜αŸŒαžŸαž„αŸ’αž‚αž˜αŸ”

αž§αž”αž˜αžΆαžαžΆ Software Excellence αžαŸ’αžšαžΌαžœαž”αžΆαž“αž–αž·αž“αž·αžαŸ’αž™αžšαž½αž…αž αžΎαž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžαŸ’αž‰αž»αŸ†αŸ” αžœαžΆαž“αŸ…αžŸαž›αŸ‹αžŠαžΎαž˜αŸ’αž”αžΈαž”αž„αŸ’αž αžΆαž‰αž–αžΈαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž”αŸ’αžšαž€αž”αžŠαŸ„αž™αž“αž·αžšαž“αŸ’αžαžšαž—αžΆαž– αž“αž·αž„αž™αž»αžαŸ’αžαž·αž’αž˜αŸŒαžŸαž„αŸ’αž‚αž˜αŸ”

αž‡αžΆαž„αž“αŸαŸ‡αž‘αŸ…αž‘αŸ€αž αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αžŸαž˜αŸ’αžšαŸαž…αž…αž·αžαŸ’αžαž•αŸ’αžαŸ„αžαž›αžΎαžšαžΏαž„αž€αŸ’αžšαŸ„αž™αŸ—αž‘αŸ€αžαŸ”

αžŠαžΎαž˜αŸ’αž”αžΈαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž”αŸ’αžšαžΆαž”αŸ‹αž‚αžΆαžαŸ‹αžαžΆαž αŸαžαž»αž’αŸ’αžœαžΈαž”αžΆαž“αž‡αžΆ ThoughtWorks - αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž’αžΆαž“αž”αŸ’αž›αž€αŸ‹αžšαž”αžŸαŸ‹ Martin Fowler αžαŸ’αžšαž›αž”αŸ‹αž˜αž€αž˜αž αžΆαžœαž·αž‘αŸ’αž™αžΆαž›αŸαž™αžœαž·αž‰ αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž αžΎαž™αž€αžΆαžšαžŸαŸ’αžšαž›αžΆαž‰αŸ‹αžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ†αž…αŸ†αž–αŸ„αŸ‡αž€αžΌαžŠαžŸαŸ’αž’αžΆαžαŸ”

αž‚αž˜αŸ’αžšαŸ„αž„αž€αŸαž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž αžΆαž‰αž–αžΈαž˜αž»αŸ†αž•αŸ’αžŸαŸαž„αŸ—αž‚αŸ’αž“αžΆαž•αž„αžŠαŸ‚αžšαŸ” αž‚αžΆαžαŸ‹αž€αŸαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžαŸ’αž“αžΆαŸ†αžŠαŸ‚αž›αž‡αž½αž™αžŸαž˜αŸ’αžšαž½αž›αžŠαž›αŸ‹αž‡αžΈαžœαž·αžαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž‡αŸ†αž„αžΊ αž αžΎαž™αžŸαžΌαž˜αŸ’αž”αžΈαžαŸ‚αž”αžΎαž™αŸ„αž„αžαžΆαž˜αž–αžΆαž€αŸ’αž™αž…αž…αžΆαž˜αž’αžΆαžšαŸ‰αžΆαž˜αž”αžΆαž“αž‡αž½αž™αžŸαž„αŸ’αž‚αŸ’αžšαŸ„αŸ‡αž‡αžΈαžœαž·αžαž˜αž“αž»αžŸαŸ’αžŸαž˜αŸ’αž“αžΆαž€αŸ‹αŸ” αžαŸ’αž‰αž»αŸ†β€‹αž€αŸβ€‹αž”αžΆαž“β€‹αž”αž„αŸ’αž€αžΎαžβ€‹αž€αž˜αŸ’αž˜αžœαž·αž’αžΈβ€‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹β€‹αž’αž“αžΆαž‚αžΆαžš αžŠαŸ‚αž›β€‹αž‡αž½αž™β€‹αžŸαž˜αŸ’αžšαž½αž›β€‹αžŠαž›αŸ‹β€‹αž‡αžΈαžœαž—αžΆαž–β€‹αžšαž”αžŸαŸ‹β€‹αž”αŸ’αžšαž‡αžΆαž–αž›αžšαžŠαŸ’αž‹β€‹αž•αž„β€‹αžŠαŸ‚αžšαŸ” αž‡αžΆαž–αž·αžŸαŸαžŸαž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αž“αžΆαž‚αžΆαžšαž“αŸαŸ‡αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžŠαŸ„αž™ 70% αž“αŸƒαž…αŸ†αž“αž½αž“αž”αŸ’αžšαž‡αžΆαž‡αž“αžšαž”αžŸαŸ‹αž”αŸ’αžšαž‘αŸαžŸαŸ” αž“αŸαŸ‡αž˜αž·αž“αž˜αŸ‚αž“αž’αŸ†αž–αžΈ Sberbank αž‘αŸ αž αžΎαž™αž€αŸαž˜αž·αž“αž˜αŸ‚αž“αž’αŸ†αž–αžΈαžšαž»αžŸαŸ’αžŸαŸŠαžΈαžŠαŸ‚αžšαŸ”

αž…αž„αŸ‹αžŠαžΉαž„αž–αžΈαžαŸ’αž‰αž»αŸ†αž‘αŸ? αž™αž›αŸ‹αž–αŸ’αžšαž˜αŸ” αž…αŸ†αžŽαž„αŸ‹αž…αŸ†αžŽαžΌαž›αž…αž·αžαŸ’αžαžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ†αž‚αžΊαž€αžΆαžšαžαžαžšαžΌαž” αž˜αž’αŸ’αž™αŸ„αž”αžΆαž™αž˜αž½αž™ αž¬αž˜αž’αŸ’αž™αŸ„αž”αžΆαž™αž•αŸ’αžŸαŸαž„αž‘αŸ€αž αžŠαŸ‚αž›αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž€αžΆαž“αŸ‹αž€αžΆαž˜αŸαžšαŸ‰αžΆαž“αŸ…αž€αŸ’αž“αž»αž„αžŠαŸƒαžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ†αž’αžŸαŸ‹αžšαž™αŸˆαž–αŸαž›αž”αŸ’αžšαž αŸ‚αž› 10 αž†αŸ’αž“αžΆαŸ†αž˜αž€αž αžΎαž™ αž˜αžΆαž“αžšαžΌαž”αžαžαžŠαŸ‚αž›αžαŸ’αž‰αž»αŸ†αž˜αž·αž“αžαŸ’αž˜αžΆαžŸαŸ‹αž’αŸ€αž“αž–αŸαž€αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αž„αŸ’αž αžΆαž‰αŸ” αžŠαžΌαž…αž‚αŸ’αž“αžΆαž“αŸαŸ‡αžŠαŸ‚αžš αž“αŸ…αž–αŸαž›αž˜αž½αž™ αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž‡αž½αž™αž‡αž˜αŸ’αžšαž€αž†αŸ’αž˜αžΆαž˜αž½αž™αŸ– αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αžαžαžšαžΌαž”αž†αŸ’αž˜αžΆαžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž€αžΆαžšαž•αŸ’αž‘αŸ‡αž’αž…αž·αž“αŸ’αžαŸ’αžšαŸƒαž™αŸαŸ” αž αžΎαž™αž‡αžΆαž˜αž½αž™αž“αžΉαž„αžšαžΌαž”αžαžαžŠαŸαž›αŸ’αž’αžœαžΆαž€αžΆαž“αŸ‹αžαŸ‚αž„αžΆαž™αžŸαŸ’αžšαž½αž›αž€αŸ’αž“αž»αž„αž€αžΆαžšαžŠαžΆαž€αŸ‹αž†αŸ’αž˜αžΆαŸ” αžαŸ’αž‰αž»αŸ†αž”αŸ’αžšαž αŸ‚αž›αž‡αžΆαžαžαžšαžΌαž”αž†αŸ’αž˜αžΆαž˜αž½αž™αžšαž™αž€αŸ’αž”αžΆαž› :)

αž“αŸ…αž‘αžΈαž”αž‰αŸ’αž…αž”αŸ‹ 80% αž“αŸƒαž”αž‘αž”αž„αŸ’αž αžΆαž‰αžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ†αž‚αžΊαž–αŸ„αžšαž–αŸαž‰αž‘αŸ…αžŠαŸ„αž™αž†αŸ’αž˜αžΆαŸ”

αž—αŸ’αž›αžΆαž˜αŸ—αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž€αžΆαžšαž’αŸ’αžœαžΎαž”αž‘αž”αž„αŸ’αž αžΆαž‰ HR αž”αžΆαž“αžŸαžšαžŸαŸαžšαž˜αž€αžαŸ’αž‰αž»αŸ†αžαžΆ αž‚αžΆαžαŸ‹αž˜αž·αž“αž‘αžΆαž“αŸ‹αžŠαžΉαž„αž–αžΈαž›αž‘αŸ’αž’αž•αž›αž“αŸƒαž€αžΆαžšαžŸαž˜αŸ’αž—αžΆαžŸαž“αŸαž“αŸ…αž‘αžΎαž™αž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž€αžΆαžšαž·αž™αžΆαž›αŸαž™αž‘αžΆαŸ†αž„αž˜αžΌαž›αž”αžΆαž“αž…αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαž“αžΉαž„αž†αŸ’αž˜αžΆαžšαž½αž…αž‘αŸ…αž αžΎαž™αŸ”

αž‘αžΈαž”αŸ†αž•αž»αž αžαŸ’αž‰αž»αŸ†β€‹αž”αžΆαž“β€‹αžšαž„αŸ‹β€‹αž…αžΆαŸ†β€‹αž˜αžαž·β€‹αž€αŸ‚αž›αž˜αŸ’αž’ - αžαŸ’αž‰αž»αŸ†β€‹αž–αŸαž‰β€‹αž…αž·αžαŸ’αžβ€‹αž’αŸ’αž“αž€β€‹αžšαžΆαž›αŸ‹β€‹αž‚αŸ’αž“αžΆβ€‹αž‡αžΆβ€‹αž˜αž“αž»αžŸαŸ’αžŸβ€‹αž˜αŸ’αž“αžΆαž€αŸ‹αŸ”

αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž€αŸ’αž“αž»αž„αž’αŸ†αž‘αž»αž„αž–αŸαž›αž“αŸƒαž€αžΆαžšαžŸαž“αŸ’αž‘αž“αžΆαž…αž»αž„αž€αŸ’αžšαŸ„αž™ HR αž”αžΆαž“αž“αž·αž™αžΆαž™αž™αŸ‰αžΆαž„αž˜αŸ‰αžΊαž„αž˜αŸ‰αžΆαžαŸ‹αžαžΆ αž™αž»αžαŸ’αžαž·αž’αž˜αŸŒαžŸαž„αŸ’αž‚αž˜αž‚αžΊαž›αŸ’αž’αžŽαžΆαžŸαŸ‹ αž“αž·αž„αž…αžΆαŸ†αž”αžΆαž…αŸ‹ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž˜αž·αž“αž˜αŸ‚αž“αž‚αŸ’αžšαž”αŸ‹αž‚αž˜αŸ’αžšαŸ„αž„αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžŸαž»αž‘αŸ’αž’αžαŸ‚αž˜αžΆαž“αž›αž€αŸ’αžαžŽαŸˆαž”αŸ‚αž”αž“αŸαŸ‡αž‘αŸαŸ” αž αžΎαž™β€‹αž‚αžΆαžαŸ‹β€‹αž”αžΆαž“β€‹αžŸαž½αžšβ€‹αžαžΆβ€‹αžαžΎβ€‹αžœαžΆβ€‹αž’αŸ’αžœαžΎβ€‹αž±αŸ’αž™β€‹αžαŸ’αž‰αž»αŸ†β€‹αž—αŸαž™β€‹αžαŸ’αž›αžΆαž…β€‹αŸ” αž‡αžΆαž‘αžΌαž‘αŸ… αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž‡αž·αŸ‡αž‡αžΆαž“αŸ‹αž”αž“αŸ’αžαž·αž…αž‡αžΆαž˜αž½αž™αž™αž»αžαŸ’αžαž·αž’αž˜αŸŒαžŸαž„αŸ’αž‚αž˜ αžœαžΆαž€αžΎαžαž‘αžΎαž„ :)

αž›αž‘αŸ’αž’αž•αž›

αž‡αžΆαž›αž‘αŸ’αž’αž•αž› αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž’αŸ’αžœαžΎαž€αžΆαžšαž“αŸ…αž”αŸ’αžšαž‘αŸαžŸαžŸαž·αž„αŸ’αž αž”αž»αžšαžΈαž“αŸ… Thoughtworks αž’αžŸαŸ‹αžšαž™αŸˆαž–αŸαž›αž‡αžΆαž…αŸ’αžšαžΎαž“αžαŸ‚αž αžΎαž™ αž αžΎαž™αžαŸ’αž‰αž»αŸ†αžƒαžΎαž‰αžαžΆαž“αŸ…αž‘αžΈαž“αŸαŸ‡αž˜αžΆαž“αž€αŸ’αžšαž»αž˜αž αŸŠαž»αž“αž‡αžΆαž…αŸ’αžšαžΎαž“αž•αž„αžŠαŸ‚αžšαž€αŸ†αž–αž»αž„αž‘αž‘αž½αž›αž™αž€ "αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž€αžΆαžšαžŸαž˜αŸ’αž—αžΆαžŸαž“αŸαž›αŸ’αž’αž”αŸ†αž•αž»αž" αž–αžΈ Google αžŠαŸ„αž™αž”αŸ’αžšαžΎαžŸαŸ’αž›αžΉαž€ αž“αž·αž„ Whiteboard αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŸαžšαžŸαŸαžšαž€αžΌαžŠ αž‘αŸ„αŸ‡αž”αžΈαž‡αžΆαž˜αžΆαž“αž…αŸ†αžŽαŸαŸ‡αžŠαžΉαž„αž…αŸ’αžšαžΎαž“αž‡αžΆαž„ Spring αž€αŸαžŠαŸ„αž™αŸ” Symfony, RubyOnRails (αž‚αžΌαžŸαž”αž“αŸ’αž‘αžΆαžαŸ‹αž–αžΈαž’αŸ’αžœαžΈαžŠαŸ‚αž›αž…αžΆαŸ†αž”αžΆαž…αŸ‹) αž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‘αžΆαž˜αž‘αžΆαžšαž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαž„αžΆαžšαž“αŸ„αŸ‡αž‘αŸαŸ” αžœαž·αžŸαŸ’αžœαž€αžšαžˆαž”αŸ‹αžŸαž˜αŸ’αžšαžΆαž€αž˜αž½αž™αžŸαž”αŸ’αžαžΆαž αŸαž˜αž»αž“αž–αŸαž›αžŸαž˜αŸ’αž—αžΆαžŸαž“αŸαžŠαžΎαž˜αŸ’αž”αžΈ "αžšαŸ€αž”αž…αŸ†" αŸ”

αž“αŸ… Thoughtworks αž”αž“αŸ’αžαŸ‚αž˜αž–αžΈαž›αžΎαžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαžΆαž“αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αŸαž€αŸ’αžαž‡αž“ αž‚αŸ„αž›αž€αžΆαžšαžŽαŸαžαžΆαž„αž€αŸ’αžšαŸ„αž˜αž‚αžΊαž“αŸ…αž‡αž½αžšαž˜αž»αžαŸ–
αž—αžΆαž–αžšαžΈαž€αžšαžΆαž™αž“αŸƒαž€αžΆαžšαžŸαž˜αŸ’αž—αžΆαžŸαž“αŸαŸ” αž›αžΎαžŸαž–αžΈαž“αŸαŸ‡αž‘αŸ…αž‘αŸ€αžαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž—αžΆαž‚αžΈαž‘αžΆαŸ†αž„αž–αžΈαžšαŸ” αž‡αžΆαž€αžΆαžšαž–αž·αžαžŽαžΆαžŸαŸ‹ αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αž…αž„αŸ‹αž‘αž‘αž½αž›αž”αžΆαž“αž”αž»αž‚αŸ’αž‚αž›αž·αž€αž›αŸ’αž’αž”αŸ†αž•αž»αž (αž αžΎαž™αž’αŸ’αž“αž€αžŽαžΆαž˜αž·αž“?) αž“αŸ„αŸ‡αž€αžΆαžšαžŸαž˜αŸ’αž—αžΆαžŸαž“αŸαž˜αž·αž“αž˜αŸ‚αž“αž‡αžΆαž‘αžΈαž•αŸ’αžŸαžΆαžšαžŠαŸ‚αž›αž‘αžΆαžŸαž€αžšαžαŸ’αžšαžΌαžœαž”αžΆαž“αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž“αŸ„αŸ‡αž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž‡αžΆαž€αžΆαžšαž”αž„αŸ’αž αžΆαž‰αžŠαŸ‚αž›αž‘αžΆαŸ†αž„αž“αž·αž™αŸ„αž‡αž€ αž“αž·αž„αž”αŸαž€αŸ’αžαž‡αž“αžœαžΆαž™αžαž˜αŸ’αž›αŸƒαž‚αŸ’αž“αžΆαž‘αŸ…αžœαž·αž‰αž‘αŸ…αž˜αž€αŸ” αž αžΎαž™αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž”αŸαž€αŸ’αžαž‡αž“αž—αŸ’αž‡αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαžšαžΈαž€αžšαžΆαž™αž‡αžΆαž˜αž½αž™αž€αŸ’αžšαž»αž˜αž αŸŠαž»αž“αž“αŸ„αŸ‡ αž‘αŸ†αž“αž„αž‡αžΆαž‚αžΆαžαŸ‹αž“αžΉαž„αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž€αŸ’αžšαž»αž˜αž αŸŠαž»αž“αž–αž·αžŸαŸαžŸαž“αŸαŸ‡αŸ”

αž’αŸ’αž“αž€αžŸαž˜αŸ’αž—αžΆαžŸαž“αŸαž…αŸ’αžšαžΎαž“αž“αžΆαž€αŸ‹ αžŠαžΎαž˜αŸ’αž”αžΈαž€αžΆαžαŸ‹αž”αž“αŸ’αžαž™αž€αžΆαžšαž›αŸ†αž’αŸ€αž„αŸ” αž“αŸ… Thoughtworks αž€αžΆαžšαžŸαžšαžŸαŸαžšαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž‡αžΆαž‚αžΌαž‚αžΊαž‡αžΆαžŸαŸ’αžαž„αŸ‹αžŠαžΆαžšαž‡αžΆαž€αŸ‹αžŸαŸ’αžαŸ‚αž„αŸ” αž αžΎαž™αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž“αŸαŸ‡αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αž“αž»αžœαžαŸ’αžαž‘αŸ…αž•αŸ’αž“αŸ‚αž€αž•αŸ’αžŸαŸαž„αž‘αŸ€αž TW αž–αŸ’αž™αžΆαž™αžΆαž˜αž’αŸ’αžœαžΎαžŠαžΌαž…αŸ’αž“αŸαŸ‡αŸ” αž“αŸ…αžŠαŸ†αžŽαžΆαž€αŸ‹αž€αžΆαž›αž“αžΈαž˜αž½αž™αŸ— αž€αžΆαžšαžŸαž˜αŸ’αž—αžΆαžŸαž“αŸαžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αŸ’αžœαžΎαž‘αžΎαž„αžŠαŸ„αž™αž˜αž“αž»αžŸαŸ’αžŸ 2 αž“αžΆαž€αŸ‹αŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡ αž˜αž“αž»αžŸαŸ’αžŸαž˜αŸ’αž“αžΆαž€αŸ‹αŸ—αžαŸ’αžšαžΌαžœαž”αžΆαž“αžœαžΆαž™αžαž˜αŸ’αž›αŸƒαžŠαŸ„αž™αž˜αž“αž»αžŸαŸ’αžŸαž™αŸ‰αžΆαž„αž αŸ„αž…αžŽαžΆαžŸαŸ‹ 8 αž“αžΆαž€αŸ‹ αž αžΎαž™ TW αž–αŸ’αž™αžΆαž™αžΆαž˜αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž’αŸ’αž“αž€αžŸαž˜αŸ’αž—αžΆαžŸαž“αŸαžŠαŸ‚αž›αž˜αžΆαž“αž”αŸ’αžšαžœαžαŸ’αžαž·αžαž»αžŸαŸ—αž‚αŸ’αž“αžΆ αž‘αž·αžŸαžŠαŸ…αž•αŸ’αžŸαŸαž„αŸ—αž‚αŸ’αž“αžΆ (αž˜αž·αž“αžαŸ’αžšαžΉαž˜αžαŸ‚αž”αž…αŸ’αž…αŸαž€αžœαž·αž‘αŸ’αž™αžΆ) αž“αž·αž„αž—αŸαž‘αŸ”

αž‘αžΈαž”αŸ†αž•αž»αž αž€αžΆαžšαžŸαž˜αŸ’αžšαŸαž…αž…αž·αžαŸ’αžαž‡αž½αž›αž“αžΉαž„αž’αŸ’αžœαžΎαž‘αžΎαž„αžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαž˜αžαž·αžšαž”αžŸαŸ‹αž˜αž“αž»αžŸαŸ’αžŸαž™αŸ‰αžΆαž„αžαž·αž… 8 αž“αžΆαž€αŸ‹ αž αžΎαž™αž‚αŸ’αž˜αžΆαž“αž“αžšαžŽαžΆαž˜αŸ’αž“αžΆαž€αŸ‹αž˜αžΆαž“αž€αžΆαžšαž”αŸ„αŸ‡αž†αŸ’αž“αŸ„αžαž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž‘αŸαŸ”

αž€αžΆαžšαž‡αž½αž›αž•αŸ’αž’αŸ‚αž€αž›αžΎαž‚αž»αžŽαž›αž€αŸ’αžαžŽαŸˆ αž‡αŸ†αž“αž½αžŸαž±αŸ’αž™αž€αžΆαžšαžŸαž˜αŸ’αžšαŸαž…αž…αž·αžαŸ’αžαžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαž€αžΆαžšαž…αžΌαž›αž…αž·αžαŸ’αž αž¬αž˜αž·αž“αž…αžΌαž›αž…αž·αžαŸ’αžαžšαž”αžŸαŸ‹αž”αŸαž€αŸ’αžαž‡αž“ αž‘αž˜αŸ’αžšαž„αŸ‹αž”αŸ‚αž”αž”αž‘αž˜αž½αž™αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž‘αžΎαž„αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžαž½αž“αžΆαž‘αžΈαž“αžΈαž˜αž½αž™αŸ— αž“αž·αž„αžŠαŸ†αžŽαžΆαž€αŸ‹αž€αžΆαž›αž“αžΈαž˜αž½αž™αŸ—αžŠαŸ‚αž›αžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž‚αž»αžŽαž›αž€αŸ’αžαžŽαŸˆαžŠαŸ‚αž›αž€αŸ†αž–αž»αž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αžœαžΆαž™αžαž˜αŸ’αž›αŸƒαŸ” αž€αŸ’αž“αž»αž„αž–αŸαž›αž‡αžΆαž˜αž½αž™αž‚αŸ’αž“αžΆαž“αŸαŸ‡αžŠαŸ‚αžš αž“αŸ…αž–αŸαž›αžœαžΆαž™αžαž˜αŸ’αž›αŸƒ αžœαžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αž•αŸ’αžαž›αŸ‹αž’αž“αž»αžŸαžΆαžŸαž“αŸαž™αŸ‰αžΆαž„αžαŸ’αž–αžŸαŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαžœαžΆαž™αžαž˜αŸ’αž›αŸƒ αž˜αž·αž“αž˜αŸ‚αž“αž”αž‘αž–αž·αžŸαŸ„αž’αž“αŸαž€αŸ’αž“αž»αž„αž‡αŸ†αž“αžΆαž‰αž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αžŽαžΆαž˜αž½αž™αž“αŸ„αŸ‡αž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž‡αžΆαžŸαž˜αžαŸ’αžαž—αžΆαž–αž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαžœαžΆαŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž”αŸαž€αŸ’αžαž‡αž“αž˜αž·αž“αž’αžΆαž…αž’αž“αž»αžœαžαŸ’αžαž‡αŸ†αž“αžΆαž‰αžŽαžΆαž˜αž½αž™αžŠαžΌαž…αž‡αžΆ TDD αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž™αŸ‰αžΆαž„αžŽαžΆαž€αŸαžŠαŸ„αž™ αž‚αžΆαžαŸ‹αž–αŸ’αž™αžΆαž™αžΆαž˜αž’αž“αž»αžœαžαŸ’αžαž–αž½αž€αž‚αŸ αžŸαŸ’αžαžΆαž”αŸ‹αžŠαŸ†αž”αžΌαž“αŸ’αž˜αžΆαž“αž’αŸ†αž–αžΈαžšαž”αŸ€αž”αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž±αŸ’αž™αž”αžΆαž“αžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœ αž‚αžΆαžαŸ‹αž˜αžΆαž“αž±αž€αžΆαžŸαž†αŸ’αž›αž„αž€αžΆαžαŸ‹αž€αžΆαžšαžŸαž˜αŸ’αž—αžΆαžŸαž“αŸαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αŸ”

αžœαž·αž‰αŸ’αž‰αžΆαž”αž“αž”αžαŸ’αžšαž’αž”αŸ‹αžšαŸ†αž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‘αžΆαž˜αž‘αžΆαžš TW αž˜αž·αž“αžαž˜αŸ’αžšαžΌαžœαž±αŸ’αž™αž˜αžΆαž“αžœαž·αž‰αŸ’αž‰αžΆαž”αž“αž”αŸαžαŸ’αžš αž¬αž€αžΆαžšαž’αž”αŸ‹αžšαŸ†αž•αŸ’αž“αŸ‚αž€αžœαž·αž‘αŸ’αž™αžΆαžŸαžΆαžŸαŸ’αžαŸ’αžšαž€αž»αŸ†αž–αŸ’αž™αžΌαž‘αŸαžšαž‘αŸαŸ” αž˜αžΆαž“αžαŸ‚αž‡αŸ†αž“αžΆαž‰αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αžœαžΆαž™αžαž˜αŸ’αž›αŸƒαŸ”

αž“αŸαŸ‡β€‹αž‡αžΆβ€‹αž”αž‘β€‹αžŸαž˜αŸ’αž—αžΆαžŸαž“αŸβ€‹αž›αžΎαž€β€‹αžŠαŸ†αž”αžΌαž„β€‹αžŠαŸ‚αž›β€‹αžαŸ’αž‰αž»αŸ†β€‹αž”αžΆαž“β€‹αž‡αž½αž”β€‹αž‡αžΆαž˜αž½αž™β€‹αž€αŸ’αžšαž»αž˜αž αŸŠαž»αž“β€‹αž”αžšαž‘αŸαžŸ αžŠαŸ‚αž›β€‹αžαŸ’αž‰αž»αŸ†β€‹αž˜αž·αž“β€‹αž…αžΆαŸ†αž”αžΆαž…αŸ‹β€‹αžšαŸ€αž”αž…αŸ†αŸ” αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαžŠαŸ†αžŽαžΆαž€αŸ‹αž€αžΆαž›αž“αžΈαž˜αž½αž™αŸ— αžαŸ’αž‰αž»αŸ†αž˜αž·αž“αž˜αžΆαž“αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαž“αžΏαž™αž αžαŸ‹αž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž•αŸ’αž‘αž»αž™αž‘αŸ…αžœαž·αž‰ αžαŸ’αž‰αž»αŸ†αžšαžΈαž€αžšαžΆαž™αžŠαŸ‚αž›αžαŸ’αž‰αž»αŸ†αž’αžΆαž…αž’αž“αž»αžœαžαŸ’αžαž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž›αŸ’αž’αž”αŸ†αž•αž»αž αžŠαŸ‚αž›αž˜αž“αž»αžŸαŸ’αžŸαž“αŸ…αž˜αŸ’αžαžΆαž„αž‘αŸ€αžαž“αŸƒαž˜αŸ‰αžΌαž“αžΈαž‘αŸαžšαž”αžΆαž“αž€αŸ„αžαžŸαžšαžŸαžΎαžš αž“αž·αž„αž’αž“αž»αžœαžαŸ’αžαžœαžΆαž‡αžΆαžšαŸ€αž„αžšαžΆαž›αŸ‹αžαŸ’αž„αŸƒαŸ”

αž”αŸ‰αž»αž“αŸ’αž˜αžΆαž“αžαŸ‚αž€αŸ’αžšαŸ„αž™αž˜αž€ αžαŸ’αž‰αž»αŸ†αž’αžΆαž…αž“αž·αž™αžΆαž™αž”αžΆαž“αžαžΆ αž€αžΆαžšαžšαŸ†αž–αžΉαž„αž‘αž»αž€αžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ†αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ†αž–αŸαž‰αž™αŸ‰αžΆαž„αž–αŸαž‰αž›αŸαž‰αŸ” តើ ThoughtWorks αžαž»αžŸαž–αžΈαž€αŸ’αžšαž»αž˜αž αŸŠαž»αž“αž’αž˜αŸ’αž˜αžαžΆαž™αŸ‰αžΆαž„αžŠαžΌαž…αž˜αŸ’αžαŸαž…? αž“αŸ…αž€αŸ’αž“αž»αž„αž€αŸ’αžšαž»αž˜αž αŸŠαž»αž“αž’αž˜αŸ’αž˜αžαžΆ αž’αŸ’αž“αž€αž’αžΆαž…αžŸαŸ’αžœαŸ‚αž„αžšαž€αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž›αŸ’αž’ αž“αž·αž„αž˜αž“αž»αžŸαŸ’αžŸαž›αŸ’αž’ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž“αŸ…αž€αŸ’αž“αž»αž„ TW αž€αžΆαžšαž•αŸ’αžαŸ„αžαž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαžšαž”αžŸαŸ‹αž–αž½αž€αž‚αŸαž‚αžΊαž…αŸαž‰αž–αžΈαžαžΆαžšαžΆαž„αŸ”

αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αž…αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαž€αŸ’αž“αž»αž„αž€αžΆαžšαž…αžΌαž›αžšαž½αž˜αž‡αžΆαž˜αž½αž™ ThoughtWorks αž’αŸ’αž“αž€αž’αžΆαž…αž˜αžΎαž›αž˜αž»αžαžαŸ†αžŽαŸ‚αž„αž”αžΎαž€αž…αŸ†αž αžšαž”αžŸαŸ‹αž™αžΎαž„αŸ” αž“αŸ…αž‘αžΈαž“αŸαŸ‡
αžαŸ’αž‰αž»αŸ†αž€αŸαžŸαŸ’αž“αžΎαž±αŸ’αž™αž™αž€αž…αž·αžαŸ’αžαž‘αž»αž€αžŠαžΆαž€αŸ‹αž…αŸ†αž–αŸ„αŸ‡αžŠαŸ†αžŽαžΉαž„αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž”αž»αž‚αŸ’αž‚αž›αž·αž€αžŠαŸ‚αž›αž‚αž½αžšαž±αŸ’αž™αž…αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαž•αž„αžŠαŸ‚αžšαŸ–
αžœαž·αžŸαŸ’αžœαž€αžšαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž“αžΆαŸ†αž˜αž»αžαž‚αŸαŸ– αž”αŸ’αžšαž‘αŸαžŸαž’αžΆαž›αŸ’αž›αžΊαž˜αŸ‰αž„αŸ‹, αž‘αžΈαž€αŸ’αžšαž»αž„αž‘αž»αž„αžŠαŸ, αž˜αŸ‰αžΆαžŒαŸ’αžšαžΈαžŠ, αžŸαŸŠαžΈαž αŸ’αž‚αŸ„
αžœαž·αžŸαŸ’αžœαž€αžšαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž‡αžΆαž“αŸ‹αžαŸ’αž–αžŸαŸ‹αŸ– αžŸαŸŠαžΈαžŠαž“αžΈ, αž”αŸ’αžšαž‘αŸαžŸαž’αžΆαž›αŸ’αž›αžΊαž˜αŸ‰αž„αŸ‹, αž€αŸ’αžšαž»αž˜ Manchester, αž‘αžΈαž€αŸ’αžšαž»αž„αž”αžΆαž„αž€αž€
αžœαž·αžŸαŸ’αžœαž€αžšβ€‹αž€αž˜αŸ’αž˜αžœαž·αž’αžΈ: αžŸαŸŠαžΈαžŠαž“αžΈ, Barcelona, αž’αŸŠαžΈαžαžΆαž›αžΈ
αžœαž·αžŸαŸ’αžœαž€αžšαž‘αž·αž“αŸ’αž“αž“αŸαž™αž‡αžΆαž“αŸ‹αžαŸ’αž–αžŸαŸ‹αŸ– αž’αŸŠαžΈαžαžΆαž›αžΈ
αž’αŸ’αž“αž€αžœαž·αž—αžΆαž‚αž‚αž»αžŽαž—αžΆαž–αŸ– αž”αŸ’αžšαž‘αŸαžŸαž’αžΆαž›αŸ’αž›αžΊαž˜αŸ‰αž„αŸ‹ αž…αž·αž“
αž αŸαžŠαŸ’αž‹αžΆαžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αŸ– αž”αŸ’αžšαž‘αŸαžŸαž’αžΆαž›αŸ’αž›αžΊαž˜αŸ‰αž„αŸ‹, αž‘αžΈαž€αŸ’αžšαž»αž„αž‘αž»αž„αžŠαŸ, αžˆαžΈαž›αžΈ
(αžαŸ’αž‰αž»αŸ†αž…αž„αŸ‹αž–αŸ’αžšαž˜αžΆαž“αž’αŸ’αž“αž€αžŠαŸ„αž™αžŸαŸ’αž˜αŸ„αŸ‡αžαŸ’αžšαž„αŸ‹αžαžΆαžαŸ†αžŽαž—αŸ’αž‡αžΆαž”αŸ‹αž‚αžΊαž‡αžΆαžαŸ†αžŽαž—αŸ’αž‡αžΆαž”αŸ‹αž™αŸ„αž„αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αž…αžΌαž›αž‘αŸ…αž€αžΆαž“αŸ‹ TW αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž‘αž‘αž½αž›αž”αžΆαž“αž”αŸ’αžšαžΆαž€αŸ‹αžšαž„αŸ’αžœαžΆαž“αŸ‹αžŠαŸαžŸαŸ’αžšαžŸαŸ‹αžŸαŸ’αž’αžΆαž) αŸ” αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž€αžΆαžšαž·αž™αžΆαž›αŸαž™αžŠαŸ‚αž›αž’αŸ’αž“αž€αž…αžΌαž›αž…αž·αžαŸ’αž αž’αŸ’αž“αž€αž˜αž·αž“αž…αžΆαŸ†αž”αžΆαž…αŸ‹αžŠαžΆαž€αŸ‹αž€αž˜αŸ’αžšαž·αžαžαŸ’αž›αž½αž“αž―αž„αž‘αŸ…αž’αžΊαžšαŸ‰αž»αž”αž‘αŸ αžšαŸ€αž„αžšαžΆαž›αŸ‹ 2 αž†αŸ’αž“αžΆαŸ†αž˜αŸ’αžαž„ TW αž“αžΉαž„αžŸαž”αŸ’αž”αžΆαž™αž…αž·αžαŸ’αžαž“αžΉαž„αž•αŸ’αž›αžΆαžŸαŸ‹αž‘αžΈαž’αŸ’αž“αž€αž‘αŸ…αž”αŸ’αžšαž‘αŸαžŸαž•αŸ’αžŸαŸαž„ αž–αŸ’αžšαŸ„αŸ‡... αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž•αŸ’αž“αŸ‚αž€αž˜αž½αž™αž“αŸƒαž‚αŸ„αž›αž“αž™αŸ„αž”αžΆαž™ ThoughtWorks αžŠαžΌαž…αŸ’αž“αŸαŸ‡αžœαž”αŸ’αž”αž’αž˜αŸŒαžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαžΈαž€αžšαžΆαž›αžŠαžΆαž› αž“αž·αž„αž˜αžΆαž“αž›αž€αŸ’αžαžŽαŸˆαžŠαžΌαž…αž‚αŸ’αž“αžΆαŸ”

αž˜αžΆαž“αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαžŸαŸαžšαžΈαžŠαžΎαž˜αŸ’αž”αžΈαžŸαž½αžšαžŸαŸ†αžŽαž½αžšαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžαž·αž™αŸ„αž”αž›αŸ‹αž¬αžŸαž½αžšαžαŸ’αž‰αž»αŸ†αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αž“αž»αžŸαžΆαžŸαž“αŸαŸ”
αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž”αŸ’αžšαž’αžΆαž“αž”αž‘αž αžΆαž€αŸ‹αžŠαžΌαž…αž‡αžΆαž‚αž½αžšαž±αŸ’αž™αž…αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸ αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αžŸαžšαžŸαŸαžšαž’αŸ†αž–αžΈαž’αŸ’αžœαžΈαžŠαŸ‚αž›αžœαžΆαž…αžΌαž›αž…αž·αžαŸ’αžαž‘αŸ…αž’αŸ’αžœαžΎαž€αžΆαžšαž“αŸ… ThoughtWorks αž“αž·αž„αžαžΆαžαžΎαž‡αžΈαžœαž·αžαž”αŸ‚αž”αžŽαžΆαž“αŸ…αž”αŸ’αžšαž‘αŸαžŸαžŸαž·αž„αŸ’αž αž”αž»αžšαžΈαŸ”

αž”αŸ’αžšαž—αž–: www.habr.com

αž”αž“αŸ’αžαŸ‚αž˜αž˜αžαž·αž™αŸ„αž”αž›αŸ‹