Cantitate/Preț
Produs

Software Design by Example: A Tool-Based Introduction with Python

Autor Greg Wilson
en Limba Engleză Paperback – 5 apr 2024
The best way to learn design in any field is to study examples, and some of the best examples of software design come from the tools programmers use in their own work. Software Design by Example: A Tool-Based Introduction with Python therefore builds small versions of the things programmers use in order to demystify them and give some insights into how experienced programmers think. From a file backup system and a testing framework to a regular expression matcher, a browser layout engine, and a very small compiler, we explore common design patterns, show how making code easier to test also makes it easier to reuse, and help readers understand how debuggers, profilers, package managers, and version control systems work so that they can use them more effectively.
This material can be used for self-paced study, in an undergraduate course on software design, or as the core of an intensive weeklong workshop for working programmers. Each chapter has a set of exercises ranging in size and difficulty from half a dozen lines to a full day’s work. Readers should be familiar with the basics of modern Python, but the more advanced features of the language are explained and illustrated as they are introduced.
All the written material in this project can be freely reused under the terms of the Creative Commons - Attribution license, while all of the software is made available under the terms of the Hippocratic License. All proceeds from sale of this book will go to support the Red Door Family Shelter in Toronto.
Features:
  • Teaches software design by showing programmers how to build the tools they use every day
  • Each chapter includes exercises to help readers check and deepen their understanding
  • All the example code can be downloaded, re-used, and modified under an open license
Citește tot Restrânge

Toate formatele și edițiile

Toate formatele și edițiile Preț Express
Paperback (2) 25921 lei  6-8 săpt. +2581 lei  6-12 zile
  CRC Press – 5 apr 2024 34585 lei  3-5 săpt. +2581 lei  6-12 zile
  CRC Press – 29 dec 2022 25921 lei  6-8 săpt.
Hardback (1) 90781 lei  6-8 săpt.
  CRC Press – 5 apr 2024 90781 lei  6-8 săpt.

Preț: 34585 lei

Preț vechi: 43232 lei
-20% Nou

Puncte Express: 519

Preț estimativ în valută:
6120 7137$ 5373£

Carte disponibilă

Livrare economică 26 decembrie 25 - 09 ianuarie 26
Livrare express 11-17 decembrie pentru 3580 lei

Preluare comenzi: 021 569.72.76

Specificații

ISBN-13: 9781032725215
ISBN-10: 1032725214
Pagini: 342
Ilustrații: 212
Dimensiuni: 178 x 254 x 22 mm
Greutate: 0.6 kg
Ediția:1
Editura: CRC Press
Colecția Chapman and Hall/CRC

Public țintă

Professional Practice & Development

Cuprins

1 Introduction
 
2 Objects and Classes
 
3 Finding Duplicate Files
 
4 Matching Patterns
 
5 Parsing Text
 
6 Running Tests
 
7 An Interpreter
 
8 Functions and Closures
 
9 Protocols
 
10 A File Archiver
 
11 An HTML Validator
 
12 A Template Expander
 
13 A Code Linter
 
14 Page Layout
 
15 Performance Profiling
 
16 Object Persistence
 
17 Binary Data
 
18 A Database
 
19 A Build Manager
 
20 A Package Manager
 
21 Transferring Files
 
22 Serving Web Pages
 
23 A File Viewer
 
24 Undo and Redo
 
25 A Virtual Machine
 
26 A Debugger
 
27 Conclusion
 
A Bibliography
 
B Bonus Material
 
C Syllabus
 
D License
 
E Code of Conduct
 
F Contributing
 
G Glossary
 
H Credits
 
Index

Notă biografică

Dr. Greg Wilson is a programmer, author, and educator based in Toronto. He co-founded and was the first Executive Director of Software Carpentry, which has taught basic software skills to tens of thousands of researchers worldwide, and has authored or edited over a dozen books (including two for children). Greg is a member of the Python Software Foundation and a recipient of ACM SIGSOFT's Influential Educator of the Year award.

Descriere

Software Design by Example: A Tool-Based Introduction with Python builds small versions of the things programmers use in order to give some insights into how experienced programmers think. This material can be used for self-paced study, in an undergraduate course on software design, or as an intensive workshop for programmers.