If you followed some classes in programming you probably are familiar with procedural programming, or scripting programming. In other words you know how you can automatize a set of actions in order to boost your productivity and/or execute complex calculations. Most of my students fall in this category. They get introduced to Python and they use it as scripting language for building some mesh-up with data.
However, modern software use more sophisticated techniques that enable millions of lines of code to co-exist and run simultaneously in your machine. The article that you will find in this list will let you grasp some of these techniques that you could implement in your daily practice in order to produce better code and thus save time in building a prototype.
In this article I am giving a set of pointers for everybody that is familiar with the concept of programming but has not been introduced to Object Oriented Programming (OOP).
But let's start from the beginning:
- In the case you are thinking what language is better to master you may want to start from this article that gives an overview of past, present and future of programming languages .
Take care of the way you program: An Integrated Development Environment (IDE) refers to a set of tools that will facilitate the development of your code. They are specifically designed by programmers for programmers in order to overcome the difficulties of handling large projects, You can know more by:
If you are using python this is how you can install and configure an IDE (Anaconda) in your laptop
Understand how to use the debug features of your IDE and save time in building your code .
Now that your working environment is running properly,let's get familiar with Object Oriented Programming. Objects, not procedures and functions, are the basic building blocks of modern software. You can know more by:
Understand the basic concepts of Object Oriented Programming
Get a grasp of professional best practices for writing and commenting your code. In this way you will be able to understand and maintain code that you wrote in the past without the need to do it from scratch.
If you already know the basic you may think that designing an interface is an easy task. Well is more complicated that you can think as you are actually serving your community of users. This link share and discus some of the best practices in software engineering for designing a good Application Programming Interface (API)
If you will integrate these techniques in your daily practices, once you overcome the initial disorientation, you will quickly experience a tremendous increase of efficiency and you will never want to go back to the “old way” of programming. Thus you will become a better programmer!