Digital List Price: | $20.99 |
Kindle Price: | $12.64 Save $8.35 (40%) |
Sold by: | Amazon.com Services LLC |
Your Memberships & Subscriptions
Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet, or computer - no Kindle device required.
Read instantly on your browser with Kindle for Web.
Using your mobile phone camera - scan the code below and download the Kindle app.
OK
Agile Technical Practices Distilled: A learning journey in technical practices and principles of software design Kindle Edition
Delve deep into the various technical practices, principles, and values of Agile.
Key Features
- Discover the essence of Agile software development and the key principles of software design
- Explore the fundamental practices of Agile working, including test-driven development (TDD), refactoring, pair programming, and continuous integration
- Learn and apply the four elements of simple design
Book Description
The number of popular technical practices has grown exponentially in the last few years. Learning the common fundamental software development practices can help you become a better programmer. This book uses the term Agile as a wide umbrella and covers Agile principles and practices, as well as most methodologies associated with it.
You’ll begin by discovering how driver-navigator, chess clock, and other techniques used in the pair programming approach introduce discipline while writing code. You’ll then learn to safely change the design of your code using refactoring. While learning these techniques, you’ll also explore various best practices to write efficient tests. The concluding chapters of the book delve deep into the SOLID principles - the five design principles that you can use to make your software more understandable, flexible and maintainable.
By the end of the book, you will have discovered new ideas for improving your software design skills, the relationship within your team, and the way your business works.
What you will learn
- Learn the red, green, refactor cycle of classic TDD and practice the best habits such as the rule of 3, triangulation, object calisthenics, and more
- Refactor using parallel change and improve legacy code with characterization tests, approval tests, and Golden Master
- Use code smells as feedback to improve your design
- Learn the double cycle of ATDD and the outside-in mindset using mocks and stubs correctly in your tests
- Understand how Coupling, Cohesion, Connascence, SOLID principles, and code smells are all related
- Improve the understanding of your business domain using BDD and other principles for "doing the right thing, not only the thing right"
Who this book is for
This book is designed for software developers looking to improve their technical practices. Software coaches may also find it helpful as a teaching reference manual. This is not a beginner's book on how to program. You must be comfortable with at least one programming language and must be able to write unit tests using any unit testing framework.
Table of Contents
- Pair Programming
- Classic TDD I – Test-Driven Development
- Classic TDD II
- Classic TDD III – Transformation Priority Premise
- Design I – Object Calisthenics
- Design II – Refactoring
- Design III – Code Smells
- Test Doubles
- Testing Legacy Code
- Design Patterns
- Cohesion and Coupling
- Solid Principles ++
- Design VII – Connascence
- The Four Elements of Simple Design
- Conclusion
- Outside-In Development
- Behavior-Driven Development
- Understand the Business
- The Story of Team C
- Conclusion
- The 12 Agile Principles
- PopcornFlow by Claudio Perrone
- EventStorming by Alberto Brandolini
- License: CyberDojo
- Sample Solutions
- LanguageEnglish
- PublisherPackt Publishing
- Publication dateJune 28, 2019
- File size21285 KB
Customers who bought this item also bought
Editorial Reviews
About the Author
Pedro M. Santos has over 25 years of experience in the software industry. He has worked in the finance, aviation, consultancy, media, and retail industries and has built a wide range of software, ranging from embedded systems to cloud-based distributed applications. He has lived in Portugal (Lisbon), Brazil (São Paulo), Spain (Madrid, Barcelona), Netherlands (Hilversum), and Belgium (Gent), and, currently, he is based in the UK (London), where he focuses on educating and inspiring other developers. He has spent hundreds of hours in pairing sessions as well as coaching and mentoring developers at all levels of proficiency. His tutoring experience covers almost every aspect of software development: programming basics, object-oriented and functional design principles, refactoring legacy applications, pragmatic testing practices, architectural decisions, and career development choices. Follow Pedro on Twitter at @pedromsantos.
Marco Consolaro is a software craftsman, systems thinker, agile technical coach, entrepreneur, philosopher, and restless traveler – all blended with Venetian humor. Marco learned to code in Basic on a Commodore when he was 9 years old. He graduated from Venice University in 2001 with a degree in Computer Science. Since then, Marco has worked in Italy and the UK and is always looking to learn something new. When his journey led him to the agile principles, he quickly realized the effectiveness of such an approach for both technical and organizational areas. He now strongly believes that an iterative approach based on trust, transparency, self-organization, and quick feedback loops is the key to success for any team in any discipline. His dream is to see these principles based on systems thinking understood and implemented at every level in businesses and public administrations. Follow Marco on Twitter at @consolondon.
Alessandro Di Gioia has helped a variety of companies (from small startups to large enterprises for the past 18 years) embrace agile technical practices. He has worked in Italy and Norway. For the past few years, he has resided in London. His professional life changed when he came across agile methodologies, especially Extreme Programming. He likes concise, expressive, and readable code as well as making existing solutions better when needed. He is always trying to learn better ways of designing asynchronous distributed architectures and crafting software, in either an object-oriented or functional style. Although Alessandro considers himself a forever learner, he is also a coach and a mentor because he loves to share his experiences with others. Follow Alessandro on Twitter at @Parajao.
Product details
- ASIN : B07TWBZX82
- Publisher : Packt Publishing; 1st edition (June 28, 2019)
- Publication date : June 28, 2019
- Language : English
- File size : 21285 KB
- Text-to-Speech : Enabled
- Screen Reader : Supported
- Enhanced typesetting : Enabled
- X-Ray : Not Enabled
- Word Wise : Not Enabled
- Sticky notes : On Kindle Scribe
- Print length : 442 pages
- Page numbers source ISBN : 1838980849
- Best Sellers Rank: #1,165,357 in Kindle Store (See Top 100 in Kindle Store)
- #200 in IT Project Management
- #292 in Software Project Management
- #961 in Software Development (Kindle Store)
- Customer Reviews:
About the author
Describing himself as a Software Craftsman, Systems' thinker, Agile technical coach, entrepreneur, philosopher, restless traveler – all blended with Venetian humor – Marco learned coding in Basic on a Commodore when he was nine years old. He graduated from Venice University in 2001 with a degree in Computer Science.
Since then, Marco has worked in Italy and the UK, always looking to learn something new. When his journey led him to the Agile principles, he quickly realized the effectiveness of such an approach for both technical and organizational areas. He now strongly believes that an iterative approach based on trust, transparency, self-organization and quick feedback loops is the key to success for any team in any discipline.
His dream is to see these principles understood and implemented at every level in businesses and public administrations.
"One of the best new Continuous Integration books" - BookAuthority
Customer reviews
Customer Reviews, including Product Star Ratings help customers to learn more about the product and decide whether it is the right product for them.
To calculate the overall star rating and percentage breakdown by star, we don’t use a simple average. Instead, our system considers things like how recent a review is and if the reviewer bought the item on Amazon. It also analyzed reviews to verify trustworthiness.
Learn more how customers reviews work on AmazonTop reviews from other countries
Lo que si quería comentar son las calidades del libro.
En un primer momento me pareció raro que un libro técnico de más de 400 páginas costase 24 euros. Entendí el porqué en cuando lo recibí.
Obviando el tema de que el libro me llegó en buen estado (a veces ya sabemos como llegan los libros de Amazon, con esquinas dobladas o manchados), los materiales no son para nada buenos.
La primera impresión es de que parece un libro print on demand. La calidad de las páginas y la portada es como si fueran folios (nada que ver con libros como Clean Code, donde las páginas tienen un buen gramaje y brillo).
El interior del libro no mejora, han reducido los márgenes a la mínima expresión y da la sensación de estar todo apelotonado. Supongo que ha sido para condensar contenido, pero un poco más de espacio no hubiera estado mal.
Por si fuera poco, las imágenes están pixeladas.
Al final de cada capítulo se incluye un apartado de recursos. El problema es que han metido, literalmente, los chorizos de URLs sin acortar. Entiendo que en PDF esto funcione, pero en papel es una locura querer acceder al recurso y tener que meter a mano una URL gigante. Además, algunos de estos enlaces están rotos.
En fin, entiendo que será cosa de esta editorial baratera. Tenía el libro en PDF pero lo quería en papel por la comodidad, pero ya veo cómo se las gasta esta gente.
Leider ist das Buch nicht ausgereift. Zum einen liest es sich an vielen Stellen wie eine Sammlung unaufgearbeiteter Notizen, denen nur mit Mühe zu folgen ist. Zum anderen enthält das Buch zahlreiche inhaltliche, Formatierungs- und Flüchtigkeitsfehler.
So wird z. B. die vollständige Rekursion in der Implementierung der Fibonacci-Folge als "Tail Recursion" bezeichnet. Ganze Absätze werden wiederholt. Refactorings werden anders ausgeführt als im Text beschrieben und ändern Funktionalität (was der Definition von "Refactoring" widerspricht).
Leider gibt es auch nur zu den Katas in den ersten paar Kapiteln Lösungen. Bei den komplexeren Katas in späteren Kapiteln fehlen diese, so dass man seine Vorgehensweise nicht validieren kann.
Von daher kann ich das Buch in der aktuellen Ausgabe (Stand Januar 2022) nicht empfehlen.
In der hier bewerteten Kindle-Ausgabe sind übrigens die Quellcodes nicht formatiert, wofür ich einen weiteren Punkt abziehen muss.
Sollte eine neue, überarbeitete Ausgabe veröffentlicht werden, bin ich gerne bereit meine Rezension zu überarbeiten. Das Buch hat viel Potential.
The biggest issue however is the "Where are we in the big picture" diagrams are practically unreadable due to the print resolution, and got progressively worse as the chapters added more circles with micro-text.