เปเบฅเบฐ เบžเบฃเบฐโ€‹เบœเบนเป‰โ€‹เป€เบ›เบฑเบ™โ€‹เป€เบˆเบปเป‰เบฒโ€‹เป„เบ”เป‰โ€‹เบšเบฑเบ™โ€‹เบŠเบฒโ€‹เบงเปˆเบฒ: โ€œเปƒเบซเป‰โ€‹เบชเบณโ€‹เบžเบฒเบ” เปเบฅเบฐ เบฎเบฑเบšโ€‹เป€เบญเบปเบฒโ€‹เบ‚เปเป‰โ€‹เบชเบฐโ€‹เป€เปœเบตโ€

เป€เบฅเบทเปˆเบญเบ‡เบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเป€เบซเบ”เบเบฒเบ™ fictional.
เบšเบฑเบ‡เป€เบญเบตเบ™เบ—เบฑเบ‡เปเบปเบ”เบšเปเปˆเปเบกเปˆเบ™เบญเบธเบšเบฑเบ”เบ•เบดเป€เบซเบ”.
เบ•เบฐเบซเบฅเบปเบเบ—เบฑเบ‡เบซเบกเบปเบ”เบšเปเปˆเปเบกเปˆเบ™เป€เบฅเบทเปˆเบญเบ‡เบ•เบฐเบซเบฅเบปเบ.

โ€” Sergey, เบชเบฐเบšเบฒเบเบ”เบต. เบ‚เป‰เบญเบเบŠเบทเปˆ Bibi, เป€เบžเบทเปˆเบญเบ™เบฎเปˆเบงเบกเบ‡เบฒเบ™เบ‚เบญเบ‡เบ‚เป‰เบญเบเปเบกเปˆเบ™ Bob เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเป€เบ›เบฑเบ™เบชเบญเบ‡ ... เบซเบปเบงเบซเบ™เป‰เบฒเบ—เบตเบก, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบขเบนเปˆเปƒเบ™เป‚เบ„เบ‡เบเบฒเบ™เป€เบ›เบฑเบ™เป€เบงเบฅเบฒเบ”เบปเบ™เบ™เบฒเบ™, เบžเบงเบเป€เบฎเบปเบฒเบฎเบนเป‰เบชเบดเปˆเบ‡เบ—เบตเปˆเบ•เป‰เบญเบ‡เป€เบฎเบฑเบ”เบ—เบฑเบ‡เบซเบกเบปเบ”เบ”เป‰เบงเบเบซเบปเบงเปƒเบˆเปเบฅเบฐเบกเบทเป‰เบ™เบตเป‰เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบชเบทเปˆเบชเบฒเบ™เบเปˆเบฝเบงเบเบฑเบšเบ„เบงเบฒเบกเบฎเบนเป‰เปเบฅเบฐเบ—เบฑเบเบชเบฐเบ‚เบญเบ‡เป€เบˆเบปเป‰เบฒ.
CV เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เบšเบญเบเบงเปˆเบฒเบ—เปˆเบฒเบ™เป€เบ›เบฑเบ™เบœเบนเป‰เบญเบฒเบงเบธเป‚เบช, เป€เบฎเบฑเบ”เบงเบฝเบเบชเปˆเบงเบ™เปƒเบซเบเปˆเบเบฑเบš .NET, เป€เบ‚เบปเป‰เบฒเปƒเบˆเบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบฅเปเบเบฅเบก asynchronous เปเบฅเบฐ multi-threaded, เบซเบกเบฑเป‰เบ™เปƒเบˆเป„เบ”เป‰เปƒเบ™เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡ algorithms เปเบฅเบฐเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบ‚เปเป‰เบกเบนเบ™, เบกเบตเบ›เบฐเบชเบปเบšเบเบฒเบ™เปƒเบ™เบ—เบฑเบ‡ refactoring เปเบฅเบฐเบเบฒเบ™เบญเบญเบเปเบšเบšเป‚เบกเบ”เบนเบ™เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเบ•เบฑเป‰เบ‡เปเบ•เปˆเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™. เปเบฅเบฐเบขเปˆเบฒเบ‡เปƒเบ”เบเปเปˆเบ•เบฒเบก, เบ„เบปเบ™เป€เบฎเบปเบฒเบšเปเปˆเบชเบฒเบกเบฒเบ”เบŠเปˆเบงเบเป„เบ”เป‰เปเบ•เปˆเบ–เบฒเบกเบ„เปเบฒเบ–เบฒเบกเป‚เบ‡เปˆเป†เบ™เบตเป‰: เบšเบญเบเบžเบงเบเป€เบฎเบปเบฒเบชเบฑเป‰เบ™เป†เบเปˆเบฝเบงเบเบฑเบšเบ•เบปเบงเบ—เปˆเบฒเบ™เป€เบญเบ‡เบšเป?
โ€” เบชเบฐเบšเบฒเบเบ”เบต, Bibi เปเบฅเบฐ Boba. เบ‚เป‰เบญเบเป€เบฎเบฑเบ”เบงเบฝเบเบ•เบปเป‰เบ™เบ•เปเบเบฑเบš .NET, เบ‚เป‰เบญเบเป€เบ‚เบปเป‰เบฒเปƒเบˆเบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบฅเปเบเบฅเบก asynchronous เปเบฅเบฐ multithreaded, เบ‚เป‰เบญเบเบกเบตเบ„เปเบฒเบชเบฑเปˆเบ‡เบ—เบตเปˆเบซเบกเบฑเป‰เบ™เปƒเบˆเบเปˆเบฝเบงเบเบฑเบšเบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡ algorithms เปเบฅเบฐเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบ‚เปเป‰เบกเบนเบ™, เปเบฅเบฐเบ‚เป‰เบญเบเบกเบตเบ›เบฐเบชเบปเบšเบเบฒเบ™เปƒเบ™เบ—เบฑเบ‡ refactoring เปเบฅเบฐเบเบฒเบ™เบญเบญเบเปเบšเบšเป‚เบกเบ”เบนเบ™เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเบˆเบฒเบ scratch. เบ™เบฑเป‰เบ™เปเบกเปˆเบ™เบกเบฑเบ™เบขเบนเปˆเปƒเบ™เบชเบฐเบซเบผเบธเบš.
- เบ‚เบญเบšโ€‹เปƒเบˆ. เปเบฅเป‰เบง, เปƒเบซเป‰เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™! เป€เบžเบทเปˆเบญเบ„เบงเบฒเบกเบญเบปเบšเบญเบธเปˆเบ™, เบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบ—เบตเปˆเบ‡เปˆเบฒเบเบ”เบฒเบเบเบงเปˆเบฒ: เป€เบˆเบปเป‰เบฒเบฎเบนเป‰เบ•เบปเป‰เบ™เป„เบกเป‰เบซเบเบฑเบ‡เปเบฅเบฐเบงเบดเบ—เบตเบเบฒเบ™เบญเป‰เบญเบกเบžเบงเบเบกเบฑเบ™?
- Oak, acacia, maple, cherry ... เบชเบฐเบ™เบฑเป‰เบ™เบ—เบฑเบ™เบ—เบตเบšเปเปˆเบกเบตเบซเบเบฑเบ‡เบญเบตเบเบกเบฒเปƒเบ™เปƒเบˆ. เบชเบณ เบฅเบฑเบšเบเบฒเบ™เบ‚เป‰เบฒเบกเบ•เบปเป‰เบ™เป„เบกเป‰, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ‚เป‰เบฒเบกเบ•เบปเป‰เบ™เป„เบกเป‰เบˆเบฒเบเบ”เป‰เบฒเบ™เบ•เปˆเบฒเบ‡เป†: เป€เบšเบทเป‰เบญเบ‡เบŠเป‰เบฒเบเบซเบผเบทเป€เบšเบทเป‰เบญเบ‡เบ‚เบงเบฒ. เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบเบฑเบ‡โ€‹เบฎเบนเป‰โ€‹เบงเปˆเบฒโ€‹เบ—เปˆเบฒเบ™โ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เบ›เบตเบ™โ€‹เบ•เบปเป‰เบ™โ€‹เป„เบกเป‰โ€‹เปเบฅเบฐโ€‹เบงเปˆเบฒโ€‹เบกเบตโ€‹เบฎเบนโ€‹เบขเบนเปˆโ€‹เปƒเบ™โ€‹เบ•เบปเป‰เบ™โ€‹เป„เบกเป‰โ€‹เบ—เบตเปˆโ€‹เบšเบฒเบ‡โ€‹เบ„เบฑเป‰เบ‡โ€‹เบเบฐโ€‹เบฎเบญเบโ€‹เบญเบฒโ€‹เป„เบชโ€‹เบขเบนเปˆ.
- เบ”เบต. เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบ„เปเบฒเบ–เบฒเบกเปเบกเปˆเบ™ - เบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบ–เปˆเบฒเบเบ—เบญเบ”เบงเบฑเบ”เบ–เบธเป‚เบ”เบเบเบฒเบ™เบญเป‰เบฒเบ‡เบญเบตเบ‡เปเบฅเบฐเบเบฒเบ™เบ„เบฑเบ”เบฅเบญเบเบกเบฑเบ™เบขเปˆเบฒเบ‡เบชเบปเบกเบšเบนเบ™เปเบกเปˆเบ™เบซเบเบฑเบ‡?
โ€” เบ„เบงเบฒเบกโ€‹เปเบ•เบโ€‹เบ•เปˆเบฒเบ‡โ€‹เบเบฑเบ™โ€‹เปเบกเปˆเบ™โ€‹เบงเปˆเบฒโ€‹เปƒเบ™โ€‹เบเปโ€‹เบฅเบฐโ€‹เบ™เบตโ€‹เบ—เปเบฒโ€‹เบญเบดเบ”โ€‹เบงเบฑเบ”โ€‹เบ–เบธโ€‹เปเบกเปˆเบ™โ€‹เบœเปˆเบฒเบ™โ€‹เบเบฒเบ™โ€‹เบเบฐโ€‹เบชเบฒเบ™โ€‹เบญเป‰เบฒเบ‡โ€‹เบญเบตเบ‡โ€‹, เปเบฅเบฐโ€‹เปƒเบ™โ€‹เบ„เบฑเป‰เบ‡โ€‹เบ—เบตโ€‹เบชเบญเบ‡โ€‹เบกเบฑเบ™โ€‹เบ–เบทเบโ€‹เบ„เบฑเบ”โ€‹เบฅเบญเบโ€‹เบซเบกเบปเบ”โ€‹.
โ€” เป€เบˆเบปเป‰เบฒเบฎเบนเป‰เบซเบเบฑเบ‡เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบŸ?
โ€” เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เป€เบ„เบปเบฒโ€‹เบฅเบปเบšโ€‹เบ™เบฑเบšโ€‹เบ–เบท Lev Nikolaevich Tolstoy เป€เบ›เบฑเบ™โ€‹เป€เบ”เบฑเบโ€‹เบ™เป‰เบญเบโ€‹เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เป„เบ”เป‰โ€‹เบญเปˆเบฒเบ™โ€‹เบซเบ™เบฑเบ‡โ€‹เบชเบท โ€œเบ™เบฑเบšโ€‹เบ‚เบญเบ‡ Monte Cristoโ€‹.โ€ เปเบฅเบฐเปƒเบœเบšเปเปˆเบฎเบนเป‰เบˆเบฑเบ Count Dracula?!
โ€” โ€œSOLIDโ€ เปเบกเปˆเบ™เบซเบเบฑเบ‡?
- "เปเบ‚เบ‡", เบซเบ™เป‰เบญเบเบฅเบปเบ‡ - "เปเบ‚เบ‡". เปเบกเปˆเบ™เบ‚เบถเป‰เบ™เบเบฑเบšเบชเบฐเบžเบฒเบšเบเบฒเบ™, เปเบ™เปˆเบ™เบญเบ™.
โ€” เบ„เบปเบ™เป€เบเบฑเบšเบ‚เบตเป‰เป€เบซเบเบทเป‰เบญเป€เบฎเบฑเบ”เบงเบฝเบเปเบ™เบงเปƒเบ”?
- เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบฎเบนเป‰โ€‹เบงเปˆเบฒโ€‹เป€เบŠเบฑเปˆเบ™โ€‹เบ”เบฝเบงโ€‹เบเบฑเบ™โ€‹. เบ„เบปเบ™เป€เบเบฑเบšเบ‚เบตเป‰เป€เบซเบเบทเป‰เบญเบ›เบปเบเบเบฐเบ•เบดเปƒเบชเปˆเป€เบชเบทเป‰เบญเบ„เบธเบกเบชเบตเบชเบปเป‰เบกเบชเบปเบ”เปƒเบช เปเบฅเบฐเป€เบเบตเบšเบ„เบงเบฒเบกเบ›เบญเบ”เป„เบž. เบฅเบฒเบงเป€เบฎเบฑเบ”เบงเบฝเบเบชเปˆเบงเบ™เปƒเบซเบเปˆเปƒเบ™เบ•เบญเบ™เบเบฒเบ‡เบ„เบทเบ™ - เปƒเบ™เบฅเบปเบ”เบ‚เบตเป‰เป€เบซเบเบทเป‰เบญ. เปœเป‰เบฒเบ—เบตเปˆเบซเบผเบฑเบเบ‚เบญเบ‡เบœเบนเป‰เป€เบเบฑเบšเบ‚เบตเป‰เป€เบซเบเบทเป‰เบญเปเบกเปˆเบ™เป‚เบญเบ™เป€เบ™เบทเป‰เบญเปƒเบ™เบ‚เบญเบ‡เบ–เบฑเบ‡เบ‚เบตเป‰เป€เบซเบเบทเป‰เบญเป„เบ›เปƒเบชเปˆเบซเบผเบฑเบ‡เบฅเบปเบ”เป€เบเบฑเบšเบ‚เบตเป‰เป€เบซเบเบทเป‰เบญ, เบฅเบฐเบงเบฑเบ‡เบšเปเปˆเปƒเบซเป‰เบ‚เบตเป‰เป€เบซเบเบทเป‰เบญเบกเบตเบเบดเปˆเบ™เป€เปเบฑเบ™เบ•เบฒเบกเบ—เป‰เบญเบ‡เบ–เบฐเปœเบปเบ™. เบชเบฐเบซเบผเบธเบš, เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เป€เบงเบปเป‰เบฒเป„เบ”เป‰เบงเปˆเบฒเบ„เบงเบฒเบกเบชเปเบฒเบ„เบฑเบ™เบ‚เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เป€เบเบฑเบšเบ‚เบตเป‰เป€เบซเบเบทเป‰เบญเปเบกเปˆเบ™ underestimated เป‚เบ”เบเบชเบฑเบ‡เบ„เบปเบกเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, เปเบ•เปˆเบงเบฝเบเบ‡เบฒเบ™เบ‚เบญเบ‡เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเบกเบตเบ„เบธเบ™เบ„เปˆเบฒเป€เบ—เบปเปˆเบฒเบเบฑเบšเบงเบฝเบเบ‡เบฒเบ™เบ‚เบญเบ‡เบ„เบนเบญเบฒเบˆเบฒเบ™เปเบฅเบฐ bakers!
โ€” เปเบฅเบฐโ€‹เบ„เบณโ€‹เบ–เบฒเบกโ€‹เบ—เบตเปˆโ€‹เป‚เบ‡เปˆโ€‹เบญเบฑเบ™โ€‹เบชเบธเบ”โ€‹เบ—เป‰เบฒเบโ€‹เบชเบณโ€‹เบฅเบฑเบšโ€‹เบกเบทเป‰โ€‹เบ™เบตเป‰: เบชเบปเบกโ€‹เบกเบธเบ”โ€‹เบงเปˆเบฒโ€‹เป€เบฎเบปเบฒโ€‹เบกเบตโ€‹เบกเป‰เบฒโ€‹เบŠเบปเบ‡โ€‹เบเบปเบกโ€‹เบ—เบตเปˆโ€‹เบชเบฒเบกเบฒเบ”โ€‹เบเปˆเบฒเบ‡โ€‹เบ‚เบฒโ€‹เบซเบผเบฑเบ‡โ€‹เป„เบ”เป‰โ€‹เบ„เบทโ€‹เบเบฑเบšโ€‹เบกเบฐเบ™เบธเบ”. knight เบกเบตเบšเปเบฅเบดเบšเบปเบ”เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบเบฒเบ™เบชเบทเบšเบ•เปเปˆเป€เบงเบฅเบฒเบญเบฒเบงเบฐเบเบฒเบ”เปƒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™. เบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบˆเปเบฒเป€เบ›เบฑเบ™เบ—เบตเปˆเบˆเบฐเบฎเบฑเบšเบฎเบนเป‰เบชเบฐเบ™เบธเบเป€เบเบตเบ‚เบญเบ‡เบกเป‰เบฒเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบเบฒเบ™เบ‚เบฑเบ”เปเบเป‰เบ‡เบ—เบฒเบ‡เบ—เบฐเบซเบฒเบ™เปƒเบ™เบ•เบฒเป€เบงเบฑเบ™เบญเบญเบเบเบฒเบ‡. เป€เบˆเบปเป‰เบฒเบˆเบฐเป€เบฎเบฑเบ”เปเบ™เบงเปƒเบ”เปƒเบ™ O( n * log(n) )?
- Hmm ... เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบˆเบฐเบ›เบฐเบ–เบดเป‰เบกเบ„เปเบฒเบ•เบฑเบ”เบชเบดเบ™เบ‚เบญเบ‡เบกเบนเบ™เบ„เปˆเบฒ. เปƒเบ™โ€‹เบ—เบตเปˆโ€‹เบชเบธเบ”โ€‹เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบˆเบฐโ€‹เบฎเบฑเบšโ€‹เบฎเบนเป‰โ€‹เบงเปˆเบฒโ€‹เบšเปเปˆโ€‹เบกเบตโ€‹เบชเบฐโ€‹เบ™เบธเบโ€‹เป€เบเบตโ€‹เบ‚เบญเบ‡โ€‹เบกเป‰เบฒ spherical - เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบชเป‰เบฒเบ‡โ€‹เบ•เบฑเป‰เบ‡โ€‹เบซเบผเบฒเบโ€‹เบ‚เบญเบ‡โ€‹เบ„เปเบฒโ€‹เบ–เบฒเบกโ€‹เบˆเบฐโ€‹เบชเบนเบ™โ€‹เป€เบชเบโ€‹เบ„เบงเบฒเบกโ€‹เบซเบกเบฒเบโ€‹เบ—เบฑเบ‡โ€‹เบซเบกเบปเบ”. เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป€เบญเบ‡เบˆเบฐเบเบฒเบเป€เบ›เบฑเบ™เปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™เบกเป‰เบฒเบ™เบตเป‰, เปเบฅเบฐเบชเบฐเบ™เบธเบเป€เบเบตเบ‚เบญเบ‡เบกเป‰เบฒเบ”เบฑเปˆเบ‡เบเปˆเบฒเบง, เปเบฅเบฐเบ•เบฒเป€เบงเบฑเบ™เบญเบญเบเบเบฒเบ‡. เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบเบฒเบ™โ€‹เบฅเบงเบกโ€‹เป€เบ‚เบปเป‰เบฒโ€‹เบเบฑเบšโ€‹เบ™เบดโ€‹เบฅเบฑเบ™โ€‹เบ”เบญเบ™โ€‹, O( n * log(nโ€‹) ) เปเบกเปˆเบ™โ€‹เบขเปˆเบฒเบ‡โ€‹เบชเบปเบกโ€‹เบšเบนเบ™ indistinguishable เบˆเบฒเบ O ( n ^ n ).
- เบ‚เบญเบšเปƒเบˆ, Sergey. เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเป‚เบ—เบซเบฒเบ—เปˆเบฒเบ™เบเบฑเบšเบ„เบทเบ™.
- เบ™เบฑเป‰เบ™โ€‹เปเบกเปˆเบ™โ€‹เบกเบฑเบ™โ€‹: เบ—เปˆเบฒเบ™โ€‹เบเบดเบ™โ€‹เบ”เบตโ€‹เบ•เป‰เบญเบ™โ€‹เบฎเบฑเบšโ€‹. เบšเปเปˆโ€‹เบˆเปเบฒโ€‹เป€เบ›เบฑเบ™โ€‹เบ•เป‰เบญเบ‡โ€‹เป‚เบ—โ€‹เบเบฑเบšโ€‹เบ„เบทเบ™โ€‹เป„เบ›โ€‹เบšเปˆเบญเบ™โ€‹.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: www.habr.com

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™