Code reuse in java
In many occasions object oriented programming (OOP) can become an excessively complex way of solving a problem, especially if it is a simple problem. But the level of abstraction offered by this methodology allows complex problems to be tackled in a much simpler way than classical programming. Although we have already made use of this type of techniques in previous articles, in this article we will try to focus on the characteristics that differentiate these techniques.
Nowadays, large real-world problems are being decomposed, from the programming point of view, into objects that enclose certain characteristics and encompass not only the data but also the related functions that operate with them. This allows modularity, encapsulation, polymorphism and inheritance, which are the main characteristics of object-oriented programming.
Advantages of code reuse
Surely you are aware of the great impact of the technological revolution in our society and the importance of the programmer’s figure within this scenario. If you want to dedicate yourself to this profession, you will have to handle Java and know first-hand one of its features: object-oriented programming.
In this article you will learn how to define it and the benefits that its use can bring to your work. At Tokio School you also have a Java Programmer course to deepen your knowledge of this language, and develop as a professional in the technology sector. The course promises a good salary and great prospects for future career growth, so come on and start training!
Object-oriented programming as such is a programming paradigm that innovates the way results are obtained. Objects manipulate input data to obtain specific output data, and each object provides special functionality. The end result of object-oriented programming is the creation of applications.
Code reuse in object-oriented programming
We can define it as the use of software elements or others of higher level, created in previous development, to reduce the time and simplify the software development, improving the quality and reducing its cost.
The existing software can be acquired from a third party or come from one developed internally for a previous project. Called CCYD components (commercial off-the-shelf components), these components are ready to be used in the current project and have been fully validated.
From the point of view of a programmer whose motto is “Keep It Simple Stupid,” evaluating the use of such models is dangerous. For what it tries to accomplish, it makes a program much harder to understand and, consequently, easier to break.
The genius of good programming is in its simplicity ironically. Complex programs may work, but they are nightmares when it comes to maintenance, and when you consider that 2/3 of the time a programmer spends fixing bugs in programs is not worth it in the end.
Cons: Poor toolchain support: – debugger and profiler may not know about “Aspect Oriented Programming” due to this reason they may work on code as if all aspects have been replaced by procedural code.