Clean Code in Python - Second Edition by Mariano Anaya

Clean Code in Python - Second Edition by Mariano Anaya

Author:Mariano Anaya
Language: eng
Format: epub, mobi
Tags: COM051360 - COMPUTERS / Programming Languages / Python, COM005000 - COMPUTERS / Enterprise Applications / General, COM051000 - COMPUTERS / Programming / General
Publisher: Packt
Published: 2020-12-24T17:31:29+00:00


As we have revisited the DRY principle from the point of view of decorators, we can still discuss the separation of concerns applied to decorators, as explored in the next section.

Decorators and separation of concerns

The last point in the previous list is so important that it deserves a section of its own. We have already explored the idea of reusing code and noticed that a key element of reusing code is having components that are cohesive. This means that they should have the minimum level of responsibility—do one thing, one thing only, and do it well. The smaller our components, the more reusable, and the more they can be applied in a different context without carrying extra behavior that will cause coupling and dependencies, which will make the software rigid.

To show you what this means, let's reprise one of the decorators that we used in a previous example. We created a decorator that traced the execution of certain functions with code similar to the following:

def traced_function(function): @functools.wraps(function) def wrapped(*args, **kwargs): logger.info("started execution of %s", function.__qualname__) start_time = time.time() result = function(*args, **kwargs) logger.info( "function %s took %.2fs", function.__qualname__, time.time() - start_time ) return result return wrapped



Download



Copyright Disclaimer:
This site does not store any files on its server. We only index and link to content provided by other sites. Please contact the content providers to delete copyright contents if any and email us, we'll remove relevant links or contents immediately.
Popular ebooks
Whisky: Malt Whiskies of Scotland (Collins Little Books) by dominic roskrow(55928)
What's Done in Darkness by Kayla Perrin(26533)
Shot Through the Heart: DI Grace Fisher 2 by Isabelle Grey(19015)
The Fifty Shades Trilogy & Grey by E L James(18971)
Shot Through the Heart by Mercy Celeste(18889)
Wolf & Parchment: New Theory Spice & Wolf, Vol. 10 by Isuna Hasekura and Jyuu Ayakura(16994)
Python GUI Applications using PyQt5 : The hands-on guide to build apps with Python by Verdugo Leire(16888)
Peren F. Statistics for Business and Economics...Essential Formulas 3ed 2025 by Unknown(16813)
Wolf & Parchment: New Theory Spice & Wolf, Vol. 03 by Isuna Hasekura and Jyuu Ayakura & Jyuu Ayakura(16710)
Wolf & Parchment: New Theory Spice & Wolf, Vol. 01 by Isuna Hasekura and Jyuu Ayakura & Jyuu Ayakura(16337)
The Subtle Art of Not Giving a F*ck by Mark Manson(14274)
The 3rd Cycle of the Betrayed Series Collection: Extremely Controversial Historical Thrillers (Betrayed Series Boxed set) by McCray Carolyn(14081)
Stepbrother Stories 2 - 21 Taboo Story Collection (Brother Sister Stepbrother Stepsister Taboo Pseudo Incest Family Virgin Creampie Pregnant Forced Pregnancy Breeding) by Roxi Harding(13442)
Scorched Earth by Nick Kyme(12720)
Drei Generationen auf dem Jakobsweg by Stein Pia(10927)
Suna by Ziefle Pia(10852)
Scythe by Neal Shusterman(10281)
International Relations from the Global South; Worlds of Difference; First Edition by Arlene B. Tickner & Karen Smith(9484)
Successful Proposal Strategies for Small Businesses: Using Knowledge Management ot Win Govenment, Private Sector, and International Contracts 3rd Edition by Robert Frey(9326)
This is Going to Hurt by Adam Kay(9113)