In: Computer Science
You are the lead trainer for the software development team at a large telecommunications company. You have been tasked with preparing a training document that explains the principles of polymorphism, inheritance, and encapsulation. Research these principles and provide examples for each principle, showing how they would be used in software development. Be sure to answer the question of how each principle would be employed in the software development process. Java programmers use class hierarchies for the purposes of inheritance. For example, given a Tree class, you could define Conifer and Deciduous subclasses that inherit from the parent Tree class, as follows: In your training document explanations regarding inheritance, depict inheritance by using a computer memory hierarchy in a class hierarchy diagram. Prepare a 6-8-page document that provides detailed explanations for polymorphism, inheritance, and encapsulation. Research computer memory hierarchy and the topic to use in your inheritance explanations at this link, making sure to cite it in APA style if you use specific information from the article. Develop a class hierarchy diagram for the memory hierarchy found at the URL. Include in your class hierarchy diagram at least three subclass levels. Each class and subclass must include at least one variable and one method.
Please answer to the questions in bold and don't copy from other posts.I need answers to the question only in bold.
Solution 1: While developing a bigger software application, it is really important to reduce the redundancy within the code itself and hence it is essential for the developers to remove the lines or the blocks of code that has been already written for a particular functionality. In order to introduce the reuability within the software development process so that a particular block of code is not repeated again and again, the concepts of Polymorphism, as well as Inheritance, are developed. In polymorphism, the same function can be used to perform various functionalities within the code and using the inheritance a class can inherit the properties of another class thereby making sure that a particular piece of code cannot be repeated again and again and the same class properties can be easily inherited by another class. All these concepts make the code a lot more modular as well as easy to understand as well as debug.
Solution 2: The memory hierarchy sits at the heart of the computer science and it is the most fundamental thing for someone to understand. In most of the undergrad as well as the postgrad it is the first lecture in which it is made clear which kind of memory is used where. The same is described in brief down below:
1.On top sit the registers that are present within the processors and they are the fastest kind of memory in this hierarchy as they can hold only a very very small amount of data and hence they are the super responsive.
2.On second level is the cache memory that acts as a buffer between the CPU as well as the main memory and it is used to reduce the speed mismatch between the CPU as well as the RAM. It is made up of static RAMs and are faster than the main memory.
3.On the level 3 sit the main memory that holds all the program data that is under execution and it is also a very highly responsive kind of memory and it is made up of the dynamic RAMs and they are expensive as well as much faster as compared to the secondary storage.
4.On the level 4, sit the magnetic disk that acts as the permanent storage in modern computer systems and it has the highest storage capability as compared to all the other memories that are sitting in levels above. It is made up of magnetic material.
5.On level 5 sits the magnetic optical disk or the magnetic tape that is least responsive of all the memories that have been mentioned above. It can hold large amount of data which is also a reason that it is least responsive among all.
Here's the solution to your question, please provide it a 100% rating. Thanks for asking and happy learning!!