Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

Unit 6: Software development and design

Programming language
by

Damilola Aresa

on 8 January 2014

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Unit 6: Software development and design

Surprises!
Show... Don't Tell
Unit 6: Software Development and testing
But about
connecting
with your audience
You can fit a story arc in under 1 minute...
Describing the factors influencing the choice of programming language
NEVER underestimate the power of storytelling!
Programming Language
By Damilola Aresa
Program paradigm is a foundational way of computer programming.
These are types of programming language:
Imperative programming language
Functional programming language
Object-oriented programming language
Logic programming language
Visual programming language
Mark-up programming language
Event Driven programming language
Reflective programming language
Scripting programing language
Assembly programming language
Complied programming language
Data-flow programming language
Extension programming language
Programming paradigm
Procedural language
Procedural programming can sometimes be used as a synonym for imperative programming such as C/C++, Java, COBOL, PYTHON and so on. Procedural language determines where and how a process should be done. It can also be defined as a way of communicating with a computer. Procedural language is good for small projects.
Advantages of Procedural language are:
it's an easier way to keep track of program flow
The ability to be strongly modular or structured
It does not need lots of memory space
It also allows you to use the same code at different places in the program without copying it.
Disadvantages of Procedural language are:
Procedural language is difficult to relate with the real world object
It's difficult to create new data types reduces extensibility
There is no security for data because the data is exposed to the whole program
Procedural language are not as effective as Hand-crafted source code written in a low level language
Structural languages
This is a programming language where the program may be broken down into blocks or procedures which can be written without detailed knowledge of the inner workings of other blocks, thus allowing a top-down design approach.
Advantages of Structural language:
It helps to avoid the increase of data corruption
Structures programming language is laid out in a series of explicit statements
Disadvantages of Structural language:
Does not generally contain commands which redirect the execution of statements to other areas of the program
it can take up more time and energy to develop classes rather than simply write a straightforward piece of code.
Object oriented language
This is a programming paradigm that uses “objects” – data structure consisting of data fields. This can be viewed as the collection of interacting objects, as opposed to the conventional model, in which a program is seen as a list of tasks to perform.
Advantages
Provides a clear modular structure for programs which makes it good for defining abstract data types where implementation details are hidden and the unit has a clearly defined interface.
makes it easy to maintain and modify existing code as new objects can be created with small differences to existing ones.
provides a good framework for code libraries where supplied software components can be easily adapted and modified by the programmer.
Disadvantages
programs cannot be modelled accurately by the objects model
You lose some of the features of useful languages if you force the language into the OOP concept e.g. Functional language.
COBOL
Java
Python
C/C++
ZZt
Pycon
Structural programming language
Procedural programming language
Object-oriented programming language
Main programming languages
Procedural programming can sometimes be used as a synonym for imperative programming such as C/C++, Java, COBOL, PYTHON and so on. Procedural language determines where and how a process should be done. It can also be defined as a way of communicating with a computer. Procedural language is good for small projects.
This is a programming language where the program may be broken down into blocks or procedures which can be written without detailed knowledge of the inner workings of other blocks, thus allowing a top-down design approach.
This is a programming paradigm that uses “objects” – data structure consisting of data fields. This can be viewed as the collection of interacting objects, as opposed to the conventional model, in which a program is seen as a list of tasks to perform.
Key words :
Logic programming language
Logic programming is the study of implementation of computer program capable of discovering or checking proofs of formal expressions or segments. Logic programming is based on first order logic.
Example of a form of logical sentences commonly found in logic programming
p (X, Y) if q (X) and r (Y)
Programming language is a language designed to communicate instructions to machines particularly with computer. This can be used to create programs that control the behaviour of a machine.
Programming language
Sources table
http://www.wikipedia.org.uk
http://msdn.microsoft.com
http://chipkidz.wordpress.com
http://www.neilstoolbox.com
havardreference
Website
Books
INFORMATION TECHNOLOGY LEVEL 3
Key words & Image:
P2:
Organisational Policy
Companies mostly large ones have an organisational policy as to what computer hardware and software is to be used to get their works or tasks done. For example, a company might have the policy that they want only Microsoft software to be used for their work because of the level of support that may be provided by such a large software.
Suitability in terms of features and tools
When deciding on suitability of programming, there are two questions that should be answered;
Will it work on the platform, that is the hardware (motherboard) ?
Does it have appropriate features to suit the type of applications that have to be written on the computer?
Some programming languages where specifically designed for particular types of applications. they have features and tools which supports those types of applications. Languages such as Java(tm) are well suited to programming for the internet and mobile devices.

PHP
is an open-source, server-side scripting language used to create dynamic web pages and is well suited to web server programming.
Some programming language only work with particular hardware and software. For example is The Visual Basic programming language, it will only work on PC hardware, running the windows operating system.
Availability of trained staff
In a commercial programming environment, the programmer who work for a particular company may already be skilled in using a particular language, so that language may be the natural choice for a new project.
Reliability
Some programming language have features built into them which helps to make the program more reliable and less likely to crash.
Development and maintenance cost
The cost of developing and maintaining program is an important consideration when embarking on a software development project. Some languages have a reputation of cutting development costs by making it quick and easy to develop and maintain program.
Expandability
Expandability can be simply defined as being able to expand. It can also be to increase the size, volume, quality or scope.
While most of the program you will write for this unit will only be used by one person at a time, some software systems have to support hundreds or even thousands of simultaneous users.
Some language expand or scale better than others and have features which support large system.
Example of expandability is to open up or out a folder (unfold).
I will be choosing four of the types of programming language and I will be explaining them.
I will be explaining:
Procedural programming language
Structural programming language
Object-oriented programming language
Logic programming language
Introduction
In P2 i will be explaining what organisational policy are, the suitability in terms of features and tools, PHP, availability of trained staff, reliability, development and maintenance cost and also expandability.
DFDs (data flow diagram): Data flow diagram is a graphic representing the flow of data through an information system.
Keywords
ERMs (entity relationship models): Entity relationship models are abstract and conceptual representation of data.
HTML (hypertext mark-up language): Hypertext mark-up language is a standard system or default characteristics for tagging texts and files on the computer to achieve colour, graphics, and hyper link effects.
IDE (integrated development environment): Integrated development environment is a standard for interfacing computers and there peripherals (monitor, mouse, keyboard).
Scripts are small piece of code which are included in wed pages to provide additional functionality and interactivity that cannot be provided by HTML.
PHP (Personal Home Page Tools)A shortened form of PHP Hypertext pre-processor. The initial come from the earliest version of the program, which was called personal Home Page Tools.
Keywords
Reserved word: A word used within a programming language as part of a command, for example PRINT.
Dim: The instruction used in the Visual Basic® programming language to create a variable.
Array: A variable which rather than storing one value can store a series of related values (called elements), rather like a table
Iteration construct (Also called a loop): A part of a program that is repeated. For example, if you wanted a program that printed out a times table from 1 to 12, the most efficient way to write the program would be with a section of code that repeats 12 times.
Incremented: When 1 is added to a variable, so it ‘counts’.
Logical operators AND, OR and NOT are used to combine conditions together using Boolean logic.
Control: An object on a form such as a text box, label or drop-down box. Controls have attributes which decide how they look (such as their colour and front) and behave.
Keywords
Bug: A fault or error in a program which causes it to crash (end unexpectedly) or produce unexpected results.
Class: In the OO approach to programming a class is a program building block which provides a template for the creation of objects.
Attributes: The data that belongs to the class, i.e. the things that describe the class
Method: Functions of a class, i.e. the things that the class can do
Message passing: The technical name for the process by which one class gets another class to do something by calling one of its methods.
Abstraction of data: Data within the object is hidden from the object’s users.
Structure diagram: A simple diagram that shows how a program will be split into procedures.
Pseudocode (Comes from ‘pseudo’ meaning ‘like’ or ‘a form of’ and ‘code’) an informal version of programming code that uses the structure of a programming language (e.g. decisions, loops, etc.) but does not worry about the strict syntax (rules) of the language. Flow charts can be thought of as diagrammatical pseudocode.
Full transcript