Describe the Application and Limits of Procedural, Object Oriented and Event Driven Programming Paradigms (P1)
Procedural programming works like a step by step guide. You have to create a sequence of instructions which tells the computer what to do first, second, third and so on. Examples of a procedural programming language would be Pascal, Turbo Pascal and Basic.
Procedural programming would be used when it is necessary to complete steps in a program and is only used when a user is about to do a certain task. An example of a procedural programming scenario would be that if a user has to enter their details into a form in order to move onto the next step such as you need to login first so you can confirm your order then this would require procedural programming. Procedural programming can also help solve calculations for scientific usage too.
There are a few limitations when using procedural programming as is can be very time consuming to write and can not be related to real world objects. Procedural programming is used to instruct a computer on what to do with simple instructions. It is also very difficult to change details once it has be coded due to its layout.
Object Oriented Programming
Object oriented programming is basically having a problem and in order to solve the problem, you break it down into several classes. This makes it easier to change the code as programmers are encouraged to place code in different classes rather than just one so it is less directly accessible by the computer system. Unlike procedural programming which uses an algorithm, object oriented programming is made simpler to code. Examples of a object oriented language would be C++, Java and Microsoft Visual Basic.
Object oriented programming is a language model organised around objects rather than actions and data rather than logic. Object Oriented is a specific class that has two areas, state and behaviour. It not only describes the data base of a data structure but also the type of operations.
There are a few limitations with object oriented programming as there are no tools that develop the application and that this programming language could be used in PHP coding only using software like Adobe Dreamweaver and VB.NET. Another main limitation of object oriented programming is that it has to be done manually; bigger in file size because they have many lines of code for standard applications.
Event Driven Programming
Event driven programming is written using procedural programming and can use object oriented programming. This type of language determines how the program responds to the users’ needs and is not related to the structure of the program. Event Driven programming is only used when it is going to use a windows graphical interface as this may not be suitable on any other interface. An event driven language can be created using Microsoft Visual Basic. Most modern GUI use Event Driven Programming.
Event driven programming is a way that allows the program to respond to many different inputs or events. This is a paradigm in which the flow of the program is determined by events. The events can be from any source such as timers and sensors. An example of an event driven scenario would be like an alarm clock set for a certain time to do a certain task like ring and send a message saying “Wake Up!”.
A limitation of event driven programming would be that it does not automatically allow you to enter event loops and requires the user to manually enter loops. In addition to this, it also require a large amount of processing power due to the need of continuously active event loops.
Supporting Tools and Environments
IDE is a software application that provides tools to programmers. IDEs such as Eclipse and Net Beans which provides a compiler and interpreter unlike some other IDEs. Most other IDEs normally consists of a source code editor, build automation tools and a debugger. Most modern IDEs offer Intelligent code completion feature.
CASE is the use of a computer-assisted method to organise and control the development of software. CASE allows designers, code writers, testers, planners, and managers to share a common view of where a project stands at each stage of development. A CASE tool may show the progress graphically.
Because the development process emphasises testing and redesign, the cost of servicing a product over its lifetime can be reduced consid