Refactoring to Patterns

ยท Pearson Education
4.6
5 เจธเจฎเฉ€เจ–เจฟเจ†เจตเจพเจ‚
เจˆ-เจ•เจฟเจคเจพเจฌ
400
เจชเฉฐเจจเฉ‡
เจฏเฉ‹เจ—

เจ‡เจธ เจˆ-เจ•เจฟเจคเจพเจฌ เจฌเจพเจฐเฉ‡

In 1994, Design Patterns changed the landscape of object-oriented development by introducing classic solutions to recurring design problems. In 1999, Refactoring revolutionized design by introducing an effective process for improving code. With the highly anticipated Refactoring to Patterns, Joshua Kerievsky has changed our approach to design by forever uniting patterns with the evolutionary process of refactoring.

This book introduces the theory and practice of pattern-directed refactorings: sequences of low-level refactorings that allow designers to safely move designs to, towards, or away from pattern implementations. Using code from real-world projects, Kerievsky documents the thinking and steps underlying over two dozen pattern-based design transformations. Along the way he offers insights into pattern differences and how to implement patterns in the simplest possible ways.

Coverage includes:

  • A catalog of twenty-seven pattern-directed refactorings, featuring real-world code examples
  • Descriptions of twelve design smells that indicate the need for this bookโ€™s refactorings
  • General information and new insights about patterns and refactoring
  • Detailed implementation mechanics: how low-level refactorings are combined to implement high-level patterns
  • Multiple ways to implement the same patternโ€“and when to use each
  • Practical ways to get started even if you have little experience with patterns or refactoring

Refactoring to Patterns reflects three years of refinement and the insights of more than sixty software engineering thought leaders in the global patterns, refactoring, and agile development communities. Whether youโ€™re focused on legacy or โ€œgreenfieldโ€ development, this book will make you a better software designer by helping you learn how to make important design changes safely and effectively.

เจนเฉ‹เจฐ เจฒเฉฑเจญเฉ‹

เจฐเฉ‡เจŸเจฟเฉฐเจ—เจพเจ‚ เจ…เจคเฉ‡ เจธเจฎเฉ€เจ–เจฟเจ†เจตเจพเจ‚

4.6
5 เจธเจฎเฉ€เจ–เจฟเจ†เจตเจพเจ‚

เจฒเฉ‡เจ–เจ• เจฌเจพเจฐเฉ‡

Joshua Kerievsky is the founder of Industrial Logic (http://industriallogic.com), a company specializing in Extreme Programming. Since 1988, Joshua has been a professional software developer, coach, and instructor for clients such as Bankers Trust, MTV, MBNA, Ansys, MDS Sciex, Nielsen Media Research, and Sun Microsystems. He speaks regularly at conferences, has written numerous articles, and contributed chapters to Extreme Programming Explored (Addison-Wesley, 2001) and Extreme Programming Perspectives (Addison-Wesley, 2002). Joshua lives with his wife and daughters in Berkeley, California.

เจ‡เจธ เจˆ-เจ•เจฟเจคเจพเจฌ เจจเฉ‚เฉฐ เจฐเฉ‡เจŸ เจ•เจฐเฉ‹

เจ†เจชเจฃเฉ‡ เจตเจฟเจšเจพเจฐ เจฆเฉฑเจธเฉ‹

เจชเฉœเฉเจนเจจ เจธเฉฐเจฌเฉฐเจงเฉ€ เจœเจพเจฃเจ•เจพเจฐเฉ€

เจธเจฎเจพเจฐเจŸเจซเจผเฉ‹เจจ เจ…เจคเฉ‡ เจŸเฉˆเจฌเจฒเฉˆเฉฑเจŸ
Google Play Books เจเจช เจจเฉ‚เฉฐ Android เจ…เจคเฉ‡ iPad/iPhone เจฒเจˆ เจธเจฅเจพเจชเจค เจ•เจฐเฉ‹เฅค เจ‡เจน เจคเฉเจนเจพเจกเฉ‡ เจ–เจพเจคเฉ‡ เจจเจพเจฒ เจธเจตเฉˆเจšเจฒเจฟเจค เจคเฉŒเจฐ 'เจคเฉ‡ เจธเจฟเฉฐเจ• เจ•เจฐเจฆเฉ€ เจนเฉˆ เจ…เจคเฉ‡ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ•เจฟเจคเฉ‹เจ‚ เจตเฉ€ เจ†เจจเจฒเจพเจˆเจจ เจœเจพเจ‚ เจ†เจซเจผเจฒเจพเจˆเจจ เจชเฉœเฉเจนเจจ เจฆเจฟเฉฐเจฆเฉ€ เจนเฉˆเฅค
เจฒเฉˆเจชเจŸเจพเจช เจ…เจคเฉ‡ เจ•เฉฐเจชเจฟเจŠเจŸเจฐ
เจคเฉเจธเฉ€เจ‚ เจ†เจชเจฃเฉ‡ เจ•เฉฐเจชเจฟเจŠเจŸเจฐ เจฆเจพ เจตเฉˆเฉฑเจฌ เจฌเฉเจฐเจพเจŠเจœเจผเจฐ เจตเจฐเจคเจฆเฉ‡ เจนเฉ‹เจ Google Play 'เจคเฉ‡ เจ–เจฐเฉ€เจฆเฉ€เจ†เจ‚ เจ—เจˆเจ†เจ‚ เจ†เจกเฉ€เจ“-เจ•เจฟเจคเจพเจฌเจพเจ‚ เจธเฉเจฃ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค
eReaders เจ…เจคเฉ‡ เจนเฉ‹เจฐ เจกเฉ€เจตเจพเจˆเจธเจพเจ‚
e-ink เจกเฉ€เจตเจพเจˆเจธเจพเจ‚ 'เจคเฉ‡ เจชเฉœเฉเจนเจจ เจฒเจˆ เจœเจฟเจตเฉ‡เจ‚ Kobo eReaders, เจคเฉเจนเจพเจจเฉ‚เฉฐ เฉžเจพเจˆเจฒ เจกเจพเจŠเจจเจฒเฉ‹เจก เจ•เจฐเจจ เจ…เจคเฉ‡ เจ‡เจธเจจเฉ‚เฉฐ เจ†เจชเจฃเฉ‡ เจกเฉ€เจตเจพเจˆเจธ 'เจคเฉ‡ เจŸเฉเจฐเจพเจ‚เจธเจซเจฐ เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉ‹เจตเฉ‡เจ—เฉ€เฅค เจธเจฎเจฐเจฅเจฟเจค eReaders 'เจคเฉ‡ เฉžเจพเจˆเจฒเจพเจ‚ เจŸเฉเจฐเจพเจ‚เจธเจซเจฐ เจ•เจฐเจจ เจฒเจˆ เจตเฉ‡เจฐเจตเฉ‡ เจธเจนเจฟเจค เจฎเจฆเจฆ เจ•เฉ‡เจ‚เจฆเจฐ เจนเจฟเจฆเจพเจ‡เจคเจพเจ‚ เจฆเฉ€ เจชเจพเจฒเจฃเจพ เจ•เจฐเฉ‹เฅค