Sunday, 10 November 2013

Unit 6 P1

Describe the application and limits of procedural, object oriented and event driven programming paradigms.


Event driven
Event driven programming means an event needs to happen before the code will run. It could be classed as a domino effect as in the first domino has to fall before the domino in front will fall.












Button
Some of these events can be found on other objects but some events may only be for one object.

Double click- When an object is clicked twice with the mouse wheel that is the event which will run the code that is set to the event.

Enter- If the enter button on the keyboard is pressed it will run the code set to the event.

DragDrop- when an item is dragged and dropped in to the object it will run the code.

Click- Click means when you click the button it will run the code behind the button like an exit button when clicked the code “exit()” will run





Textbox
Textbox are used for the user to type in to on the application.

MouseHover- Mousehover means when the user hovers the mouse over the textbox which will cause it to run the code behind it for example if the maker of the game wants when the textbox is hovered over it will change colour of the textbox.

Text change- Text change means when the user enters text into the textbox it will run the code for example if the maker of the game wants it to check if the answer is correct he would use this event to check if its the right answer.

Label
Labels are used as titles,headings and a lot more.

Enter- Enter means when you press the enter key on the keyboard it will activate the code behind it.

Mousewheel- Mousewheel means when the user moves the mouse wheel up or down it will activate the code.

Object Oriented
Object oriented is programming code which holds data fields for example the code could hold the age, gender and qualifications of a student in a college which then the code has data behind it. It builds a table of the data fields like this…
Age
Gender
qualifications
17
m
A,B
16
f
C,F
17
f
D,B

All this data would be held in the code each data field that is there. The information which the code holds can be used in different functions for example if the maker of the application wanted a random age, gender and qualification to show they would have all that information randomly picked with another piece of code. Object oriented lets programmers create modules that can be inherited from other objects and it does not need to be changed to work on the new object. A programmer can make a new object and use most of the features from other objects.

Procedural
Procedural programming is a set of code and it goes in order one line after another going down till it finishes like html code will be procedural programming because it will run each line of code after one another. You can have multiple blocks of code that run one after the other. It is like step by step instructions for a computer to carry out and can also have loops and branch off to other code.

Programming languages
There are over 100’s and 100’s of programming languages because there are so many different platforms and different applications so this means we can’t have just one programming language. Some of the programming languages are rarely used at all but these are the top 5 mostly used programming languages are…
C
Java
Objective-C
C++
C#
C Is used the most out of all the Programming languages most programming languages borrow off this programming languages in someway. C is the programming language that Unix operating system is mostly written in. The programming language C has been used in just about every category of software imaginable.

Java was release in 1995 by sun microsystem which changed the world of programming. Oracle then bought out sun microsystems. james gosling who designed java wanted a programming language where he could write his program once and run it anywhere on any hardware platform. He was able to do this by having java run on a virtual machine.

Objective-C and is mainly used for the iphone. It is the primary language for the apple iOS operating system which is on iPads, iPhones and some iPods. Although just recently rising in popularity due to the devices and Apple’s backing most people do not realize the language has been around since 1983.



C++ was created by bjarne stroustrup in 1979. it was made to be a superset of the C programming language, adding specific features that C lacked including object-oriented support and easier memory management. It is typically the language of choice of high performance applications including entertainment software, video games, device drivers, embedded software and scientific computing.

C# was released in 2000 and has quickly become one of the most popular programming languages in the world. it is often compared with java and is considered one of the best viable alternatives to java. it is a very popular language for designing large distributer services. It is also good for applications meant to run in embedded devices.

Thursday, 7 November 2013

Unit 6 P2

Time constraints
A developer needs to understand the programming language this will stop time constraints of learning how to use the language and they may get stuck on parts they do not know how to do. The developer would pick a programming language they understand like Visual Basics I am able to use the language and a developer would know other language which they prefer to use which they are faster using.

Organisational policy
The developer may have to use what the company say you can use like some companies may say you can only use Visual Basic because that's the only programming language they can use because it is the only one they own other programming language could get the company sued for using them without paying or asking to use them. 

Suitability
A developer has a suitable language they like to use like I know Visual Basics the best this means I would rather use this over other programming languages because I find it easier to use. A developer may have a different programming language they prefer to use and it is there suitable language.  

Availability of trained staff
Companies may have staff that only know how to use one programming language this means the staff would have to learn a new language or the company would have to change to a different language that the staff know how to use if the company want to use a different language the staff may have to go on a training course to learn how to use it this could cost the company more money training the staff to use the other language or the company may fire the current staff and have to find new staff which know how to use the programming language.

Reliability
A developer wants to use a programming language which is reliable and will not break like Visual Basic is not reliable for a developer because it breaks alot this would not be reliable to use for a developer. 

Environment
o Hardware
Hardware the components which create the computer without most the parts the computer would not run. A application has certain specifications like the minum amount of ram and what processor speed is the minimun you can use. A developer would have to use the correct programming language which does not use up alot of memory to run if it is going to be a big application if it did most computers would not be able to run it. 

o Operating systems
A developer has to know what operating system the application will be ran on like Visual basics which you cannot run on Mac but it will run on windows meaning if the developer uses Visual basics to make the application it means it will only run on windows and the customer wants it to run on Mac the developer will have to make it again. 

Development and Maintenance costs
Development of the application means the developer makes sure the application is working and if the customer find anything wrong with it and the developer has to fix it. If the developer uses a language which breaks a lot this could make development a lot harder to do and could cost the developer a lot more in maintenance cost. 

Expandability
The developer has to pick a language which is expandable like in case the customer wants another part adding to the application like a calculator to a maths game and the maths game being updated.