Metaprogramming with Python: A programmer's guide to writing reusable code to build smarter applications

ISBN-13: 978-1838554651, ISBN-10: 1838554653
Double-tap to zoom
Enjoy fast, free delivery, exclusive deals, and award-winning movies & TV shows.
$44.85 with 5 percent savings
List Price: $46.99
FREE Returns
FREE delivery Monday, June 30
Or Prime members get FREE delivery Friday, June 27. Order within 6 hrs 46 mins.
In Stock
$$44.85 () Includes selected options. Includes initial monthly payment and selected options. Details
Price
Subtotal
$$44.85
Subtotal
Initial payment breakdown
Shipping cost, delivery date, and order total (including tax) shown at checkout.
Shipped & Sold by
Amazon.com
Amazon.com
Shipped & Sold by
Amazon.com
Payment
Secure transaction
Your transaction is secure
We work hard to protect your security and privacy. Our payment security system encrypts your information during transmission. We don’t share your credit card details with third-party sellers, and we don’t sell your information to others. Learn more
Item couldn't be saved. Please try again later. This item could not be removed from your list. Please try again later
{"mobile_buybox_group_1":[{"displayPrice":"$44.85","priceAmount":44.85,"currencySymbol":"$","integerValue":"44","decimalSeparator":".","fractionalValue":"85","symbolPosition":"left","hasSpace":false,"showFractionalPartIfEmpty":true,"offerListingId":"%2Bb6dc85EDFb6rTMEpVYodTFLL6oqkQvkFUPHAql75rb%2FSnL4QtgAe%2BkzeQMM7quiagaV%2Bnft4vgLUkiO02ZRPYpuKHO3hHhk7w10p22ZQRyTSzHBBLbrZQObkLQO%2F76cDKagAf2GPFZqQIBbjLOGaQ%3D%3D","locale":"en-US","buyingOptionType":"NEW","aapiBuyingOptionIndex":0}]}
Brief content visible, double tap to read full content.
Full content visible, double tap to read brief content.
Brief content visible, double tap to read full content.
Full content visible, double tap to read brief content.

Book details

Brief content visible, double tap to read full content.
Full content visible, double tap to read brief content.

A practical approach to metaprogramming with real-world examples that enables the development of advanced frameworks, libraries, and applications using Python

Key Features

  • Learn applied metaprogramming through a simple step-by-step approach
  • Work with easily understandable examples and explanations that take you deep into the theory of metaprogramming
  • Get practical experience in writing reusable code with real-world examples

Book Description

Effective and reusable code makes your application development process seamless and easily maintainable. With Python, you will have access to advanced metaprogramming features that you can use to build high-performing applications.

The book starts by introducing you to the need and applications of metaprogramming, before navigating the fundamentals of object-oriented programming. Next, you will learn about simple decorators, work with metaclasses, and later focus on introspection and reflection. You'll also delve into generics and typing before defining templates for algorithms. As you progress, you will understand your code using abstract syntax trees and explore method resolution order. This Python book also shows you how to create your own dynamic objects before structuring the objects through design patterns. Finally, you will learn simple code-generation techniques along with discovering best practices and eventually building your own applications.

By the end of this learning journey, you'll have acquired the skills and confidence you need to design and build reusable high-performing applications that can solve real-world problems.

What you will learn

  • Understand the programming paradigm of metaprogramming and its need
  • Revisit the fundamentals of object-oriented programming
  • Define decorators and work with metaclasses
  • Employ introspection and reflection on your code
  • Apply generics, typing, and templates to enhance your code
  • Get to grips with the structure of your code through abstract syntax trees and the behavior through method resolution order
  • Create dynamic objects and generate dynamic code
  • Understand various design patterns and best practices

Who this book is for

If you are an intermediate-level Python programmer looking to enhance your coding skills by developing reusable and advanced frameworks, then this book is for you. Basic knowledge of Python programming will help you get the most out of this learning journey.

Table of Contents

  1. The Need For and Applications of Meta programming
  2. Refresher of OOP Concepts in Python
  3. Understanding Decorators and Their Applications
  4. Working with Metaclasses
  5. Understanding Introspection
  6. Implementing Reflection on Python Objects
  7. Understanding Generics and Typing
  8. Defining Templates for Algorithms
  9. Understanding Code through Abstract Syntax Tree
  10. Understanding Method Resolution Order of Inheritance
  11. Creating Dynamic Objects
  12. Applying GOF Design Patterns – Part 1
  13. Applying GOF Design Patterns – Part 2
  14. Generating Code from AST
  15. Implementing a Case Study
  16. Following Best Practices

About the Author

Sulekha AloorRavi is an engineer and a data scientist with a wide technical breadth and deep understanding of many technologies and systems. Her background has led her to advanced Python based application development in the field of artificial intelligence. She enjoys solving real-world business problems with technology and working with data science and business intelligence teams to deliver real value.

She has 15+ years of experience in Software Engineering and worked with major IT solution providers and International Banks. She graduated with an engineering degree in Information Technology and later completed a post-graduation program in Big Data and Machine Learning. She also enjoys teaching Artificial Intelligence and Machine Learning.

About the author

Follow authors to get new release updates, plus improved recommendations.
Brief content visible, double tap to read full content.
Full content visible, double tap to read brief content.
Brief content visible, double tap to read full content.
Full content visible, double tap to read brief content.

Product information

Publisher Packt Publishing
Publication date September 9, 2022
Language ‎English
Print length 402 pages
ISBN-10 1838554653
ISBN-13 978-1838554651
Item Weight ‎1.52 pounds
Dimensions 7.5 x 0.91 x 9.25 inches
Best Sellers Rank
Customer Reviews 3.0 out of 5 stars 2Reviews
Brief content visible, double tap to read full content.
Full content visible, double tap to read brief content.

Top review from the United States

  • 5.0 out of 5 stars
    Metaprogramming Revisited
    Reviewed in the United States on December 13, 2022
    Format: Paperback
    Metaprogramming is nothing new. It is a programming paradigm or technique we use to create programs that can ingest other programs, treating them like data. This can make for a robust and programming environment. This book covers object-oriented programming (OOP),...
    Metaprogramming is nothing new. It is a programming paradigm or technique we use to create programs that can ingest other programs, treating them like data. This can make for a robust and programming environment. This book covers object-oriented programming (OOP), metaclasses, and provides multiple examples of how to use metaprogramming with Python. Knowledge of the Python programming language is assumed and, familiarity with OOP is helpful. This book scratches the surface of metaprogramming with just the right depth of coverage.

Top reviews from other countries

  • John Ferngrove
    1.0 out of 5 starsVerified Purchase
    Truly awful
    Reviewed in the United Kingdom on January 13, 2023
    This book is truly awful, even by Pakt Publishing standards and a grievous waste of money. If you were to get rid of the many pages of output from spurious examples and the numerous init() method listings with their dozens of keyword parameters that are nothing to do with...
    This book is truly awful, even by Pakt Publishing standards and a grievous waste of money. If you were to get rid of the many pages of output from spurious examples and the numerous init() method listings with their dozens of keyword parameters that are nothing to do with the learning material, you'd be left with maybe ten to twenty pages of information that you couldn't find in the standard Python tutorial at Python.org. The coding style is completely undisciplined. Novice programmers could only acquire very bad habits by trying to emulate these techniques. I'm not being snooty or pedantic. One third of a hundred quid is still a lot of money and I wish I had spent it on a slightly more expensive O'Reilly book. Avoid.

How customer reviews and ratings work

Customer Reviews, including Product Star Ratings help customers to learn more about the product and decide whether it is the right product for them.Learn more how customers reviews work on Amazon

Brief content visible, double tap to read full content.
Full content visible, double tap to read brief content.