Expert Python Programming

    Expert Python Programming Most recently (09.24.08) Tarek Ziadé announced the publication of his remarkable book ( IMHO ).

     For whom is written


     First of all, it is intended for people with experience in programming in Python, and wanting to improve their skills.

    Expert Python Programming is not another book about the syntax of the Python programming language, it is a book about the Python platform, about the main libraries and tools used to write professional applications. It discusses such software development processes as continuous integration , documentation, testing, release, refactoring and more.

    From the book you will learn how to use IDE, DVCS, test frameworks, optimization techniques; how to release and maintain developed applications; how to document code using reStructuredText and Sphynx; how to distribute using setuptools and other tools ( PasteScript , zc.buildout , builbots ); how to use issue / bag tracking system Trac .

    References


    * Detailed book information
    * Detailed review by Michele Simionato
    * Author's blog
    * Chapter 10, Documenting Your Project. [PDF 3MB]


    A bit of information about each chapter


    Chapter 1 , Introduction. The process of installing and configuring a convenient developer environment for working with Python is described.

    Chapter 2 and 3 , Best Practices for Programming. In these chapters you will learn why super () is dangerous, how MRO , meta-programming, and so on works .

    Chapter 4 , Choosing the Right Names. This chapter will teach you to choose good names, introduce Python coding style, and also show how to properly organize and build a modular application.

    Chapter 5 , Writing a Package. The basic idea is to write and distribute all your packages in one way, use templates and distutils for this.

    Chapter 6Writing an application. Same as in chapter 5, but at the application level. In this area, it depends a lot on which frameworks you use and part of which community you are.

    Chapter 7 , Working with zc.buildout. Buildout is widely used in Plone and Zope. This chapter tells how it works and how to use it to distribute your application.

    Chapter 8 , Source Control. We are talking about cutting-edge version control systems and the principles of continuous integration. Work with mercurial and buildbot is considered.

    Chapter 9 , Life Cycle Management. Same as chapter 8, but focuses on the software life cycles, and why iterative ways rule. Also about how to use Trac.

    Chapter 10, Project Documentation.

    Chapter 11 , Test-Driven Development.

    Chapter 12 and 13 , Optimization. Does everyone want to know how to calculate code complexity? How to measure and how to optimize?

    Chapter 14 , Useful Design Patterns, From a Python Programmer’s Perspective.

    Also popular now: