Build strong software engineering skills by applying proven design, development, testing, and deployment best practices through hands-on Python projects that reflect real-world production workflows. Key Features Understand what makes Software Engineering a discipline, distinct from basic programming Gain practical insight into updating, refactoring, and scaling an existing Python system Implement robust testing, CI/CD pipelines, and cloud-ready architecture decisions Book DescriptionSoftware engineering is more than coding; it’s the strategic design and continuous improvement of systems that serve real-world needs. This newly updated second edition of Hands-On Software Engineering with Python expands on its foundational approach to help you grow into a senior or staff-level engineering role. Fully revised for today’s Python ecosystem, this edition includes updated tooling, practices, and architectural patterns. You’ll explore key changes across five minor Python versions, examine new features like dataclasses and type hinting, and evaluate modern tools such as Poetry, pytest, and GitHub Actions. A new chapter introduces high-performance computing in Python, and the entire development process is enhanced with cloud-readiness in mind. You’ll follow a complete redesign and refactor of a multi-tier system from the first edition, gaining insight into how software evolves—and what it takes to do that responsibly. From system modeling and SDLC phases to data persistence, testing, and CI/CD automation, each chapter builds your engineering mindset while updating your hands-on skills. By the end of this book, you'll have mastered modern Python software engineering practices and be equipped to revise and future-proof complex systems with confidence.What you will learn Distinguish software engineering from general programming Break down and apply each phase of the SDLC to Python systems Create system models to plan architecture before writing code Apply Agile, Scrum, and other modern development methodologies Use dataclasses, pydantic, and schemas for robust data modeling Set up CI/CD pipelines with GitHub Actions and cloud build tools Write and structure unit, integration, and end-to-end tests Evaluate and integrate tools like Poetry, pytest, and Docker Who this book is forThis book is for Python developers with a basic grasp of software development who want to grow into senior or staff-level engineering roles. It’s ideal for professionals looking to deepen their understanding of software architecture, system modeling, testing strategies, and cloud-aware development. Familiarity with core Python programming is required, as the book focuses on applying engineering principles to maintain, extend, and modernize real-world systems.
Les mer
Table of Contents
  1. Introduction
  2. Programming Versus Software Engineering Revisited
  3. The Software Development Life Cycle
  4. System Modeling
  5. Methodologies, Paradigms, and Practices
  6. Code Style and Related Standards
  7. Functional Code Standards
  8. Revisiting Development Tools
  9. Revising the hms_sys System Project
  10. Updating Projects and Processes
  11. Re-Examining Options for Business Objects
  12. Reviewing Business Object Data Persistence
  13. Data Persistence and BaseDataObject
  14. Testing the Business Objects
  15. CI/CD Options
  16. API Options
  17. Assembling the API
  18. The Final API, Deployed to AWS
Les mer

Produktdetaljer

ISBN
9781835888001
Publisert
2025-12-23
Utgave
2. utgave
Utgiver
Packt Publishing Limited
Høyde
235 mm
Bredde
191 mm
Aldersnivå
01, P, 06
Språk
Product language
Engelsk
Format
Product format
Heftet
Antall sider
628

Forfatter

Biografisk notat

Brian Allbee has been a developer professionally for two decades. His experience includes web and system applications in several languages, for industries as varied as organization membership services, consumer health-care reporting, advertising, and cloud automation. He fell in love with Python just before 2.6 was available, and has focused his development efforts as much on Python as time and professional obligations allowed since then. He lives and codes in the Denver area.