Stage 1 - python as a scriptIn this stage, I normally don't know what I don't know. So, I just use python's method to get the functionality I need. Python is superb: it has almost every library I need, it has every container I need, and it means I can code pretty fast.
Stage 2 - python as a procedural languageWhen I pass the stage one, I can see the methods(functions) that I need to make as I see the duplications clearly. with def, I extract duplicate code into a method.
Stage 3 - python as an OOP languageIn this stage, I can see what module/class I need to make. I extract methods into a python class, and I can easily separate the client and python object.
Things to considerWith this three stage python programming model, I need to answer those questions.
- What refactoring tools do I need to get the kaizen work effectively?
- When do I need to start making testing code?
- What method/technique do I need to be more effective? logging the procedure?