SlideShare ist ein Scribd-Unternehmen logo
1 von 48
‫بسم‬‫هللا‬‫الرحمن‬‫الرحيم‬
Assalam o Alaikum!
Software Programming and Development
Presented to: Waqar Azeem
Presented by: M. Haseeb Akhtar BSCS-(14-32)
Asadullah BSCS-(14-25)
Farwa Shabbir BSCS-(14-09)
Hiba Amjad BSCS-(14-22)
Wasfa Aslam BSCS-(14-07)
Maria Asif BSCS-(14-23)
University of Gujrat
Lahore Campus
Introduction to Computers and Technology
Table of Content
 Introduction
 Definition
 Hardware, software and interaction between the them.
 Code and Machine Code
 Programming Languages
 Language Translators
 Planning a computer program and problem solving
 Object-orientated programming
 File and its types
Introduction:
Software development is a complicated process. It requires careful planning
and execution to meet the goals. Sometimes a developer must react quickly
and aggressively to meet ever-changing market demands. Maintaining
software quality hinders fast-paced software development, as many testing
cycles are necessary to ensure quality products.
Definition:
A computer program is a set of instructions or statement to be carried out by
the computer. It is a set of step by step instructions that directs the computer
to do the tasks you want it to do and produce the results you want.
There are at least two good reason for learning programming:
 Programming helps you understand computers.
 Writing a few programs increases your confidence level.
Hardware:
Computer Hardware is the collection of physical parts of the computer system.
Main examples of hardware are:
 Motherboard
 Processor
 Hard drive
 RAM etc.
Software:
 Software is a set of instruction that makes the computer to perform task. In
other words software tells the computer what to do.
 It also creates an interface between
computer hardware and user.
Type of Program Input What the Program Does Output
Word processor Characters you type from
the keyboard
Formats the text; corrects
spelling etc.
Displays and prints neatly
organized text
Interaction between Software and
hardware:
 Hardware and software are inter-related.
 User inputs the instruction of data into the computer with the help of
software.
 Computer hardware doesn’t know what action to be performed on that
instruction without software.
Code:
 A set of symbols and mnemonics for representing something. For example,
most computers use ASCII codes to represent character.
 In programming, code is of two types:
 Source code:
It is the list of commands to be assembled or compiled into an executable computer
program.
 Object code:
It refers to the code produced by the compiler or assembler.
Machine Code:
Machine code, also called machine language, is a computer programming
language consisting of binary or hexadecimal instructions which can be
directly executed by the computer.
It is the language into which all programs
must be converted before they can
be run.
Programming Languages:
 The language used to write a program is called programming language.
 it is the way of creating set of instructions.
 Creates a source code.
Types of Programming Languages
Low-level High-level
Types of Programming Languages:
Low Level Languages:
 Instruction given to the computer in the binary form.
 It is further divided into two types.
Low-Level Language
1st Generation 2nd Generation
1st Generation Language:
 1st generation language is also known as Machine language.
 By using machine language, a programmer creates instructions in the form
of binary codes (i.e. 1’s and 0’s).
2nd Generation Language:
 2nd generation language is also called assembly language.
 It uses simple phrasing in place of the complex series of binary numbers,
used in machine language.
 To develop a software with it, a programmer uses text editor for source files.
 A special translator program is used to convert source files into object code.
 This special translator program is called assembler, that converts assembly
language instructions into machine language.
High-level Languages:
 It is the language that is easily understood by the humans and written in the
form of human friendly manner.
 It consists of different functions to create a program.
 It is divided into three categories.
High-Level Language
3rd Generation 4th Generation 5th Generation
3rd Generation Languages:
 There are four languages that are categorized in 3rd generation languages.
 These four languages are:
 C
 C++
 Java
 ActiveX
C Language:
 C is a powerful language that is used to create programs with fast and
efficient code.
 It is extremely popular with professional developers.
 C compiler is used to compile or translate code written on it into machine
readable form.
 Turbo C is a common example of C compiler.
C++ Language:
 C++ is an object oriented implementation of C.
 It is an extremely efficient and powerful language.
 It also uses C compiler for the same purpose as C language.
 Turbo C is used for compiling both C and C++ language.
Java:
 It creates cross-platform programs.
 Java enables web page designer to include small applications called
applets in web pages.
 It creates self-contained functions.
ActiveX:
 It is Microsoft’s answer to java.
 It can create signed applications that has been verified as being safe to
run on a computer.
 It can also create self contained functions.
4th Generation Languages:
 4GL uses text environment or visual environment.
 In text environment, the programmer uses English text or word.
 In visual environment, the programmer uses toolbar to drag items like labels,
test boxes and buttons to make an application.
 4GL includes:
 .NET
 Authoring Environment
 Sun Studio One
.NET:
 It is Microsoft’s newest entry.
 It combines several programming languages into one IDE.
 For example, Visual basic, C++,C# and J#.
 Programs can be written for windows, www and pocket pc.
Authoring Environment:
 Authoring environment consists of special programming tools to create:
 Multimedia
 Applications
 Web pages (e.g. Macromedia Director)
It includes its own language which is called scripting language.
Sun Studio One:
 It is used to for java for visual editing.
 It is developed by sun, the creators of Java.
5th Generation Language:
 In principle, a 5GL would use artificial intelligence to create software based
on description of what the software should do.
 This type of system is proving more difficult to invent than the code it was
intended to create.
 It is basically a conceptual language.
Language Translators:
 For converting the source code into object code, translators or converters
are used.
 These translators are of three types:
 Assembler
 Compiler
 Interpreter
Assembler is not commonly used, so we’ll only discuss the compiler and
interpreter.
Compiler:
 Translates the whole program at a time.
 Common reason to convert all the source code into object code is to
creating an executable file.
 Each programming language requires its own compiler to translate code
written in that language.
 For example, the programming language C++ requires a C++ compiler,
while the language Pascal requires a Pascal compiler.
 The source code is translated into object code successfully with the help of
compiler if it is free of errors.
 If there is any error in the source code, the compiler identifies the error at the
end of the compilation.
 The error must be removed for successful compilation.
Interpreter:
 translates the source code into machine code statement by statement is
called interpreter.
 Translate one line at a time and executes it.
 if an error comes, translation process will be terminated.
 Makes it easier to detect and remove errors in the source program.
 It is a time consuming process of translating and executing statement one
by one.
 Each time the program is run, the source code is translated again, and for
this purpose you must have a translator program (interpreter) permanently
in your computer.
Basic difference between Compiler
and Interpreter:
Compiler Takes the entire
program as an input
Interpreter takes single
instruction as input
Basic difference between Compiler
and Interpreter:
Program execution is
very fast.
Program execution is
very slow.
Basic differences between Compiler
and Interpreter:
It is difficult to trace a
problem in compiler.
It is easy to trace a
problem in interpreter due
to line by line interpreting.
Basic differences between Compiler
and Interpreter:
Errors are displayed
after the entire program
is checked
Errors are displayed for
every instruction
Planning a Computer Program and
problem solving:
 Planning means creating an image about what will you do in future.
 In computer programming, it means creating an image about how you will
create a specific program.
 Planning and problem solving of a computer program can be divided into
three types:
 Algorithms
 Flow Charts
 Pseudo Codes
Algorithms:
 It is a set of well defined instructions in a sequence to solve a problem.
 An Algorithm should have:
 A clear starting point.
 Precisely defined input/output parameters.
 Clear processing steps.
 A clear stopping point
 It should not have computer code, instead, it should be written in simple and
efficient format, which can be used in writing a code.
 It is written in a format that is closer to high-level language.
 For example: Algorithm of Addition of two numbers
Step 1: Start
Step 2: Declare variables number1,number2 and sum
Step 3: Read values
Step 4: Add number1 and number2 and store in sum
Step 5: Display sum
Step 6: Stop
Flow Charts:
 It is a visual representation of an Algorithm.
 You can also say that is the diagrammatic representation of an algorithm.
 Importance of Flow chart:
 Using flow chart technique, the sequence of program can be easily determined.
 It is used to convert algorithm in simple program flow form.
 Different symbols are used to show the flow of program
 E.g.:
Start or
Stop
Conditions
Flow
 Flow chart of Addition of two numbers:
Start
Declare number1,
number2 and sum
Read values
Sum=number1+nu
mber2
Display
Sum
Stop
Pseudo Codes:
 It is a simple way of writing a program code in a syntax closer to high-level
language.
 It does not use program language syntax.
 It is a simple phrase to plan our program before we actually develop a
program.
 A Pseudo code:
 helps to understand the program easy way.
 Is easy to understand.
 Is generally short and precise.
 can be easily detectable to the mistakes and errors.
 Pseudo code for addition of two numbers:
A number1
B number2
S sum
Start
Display: enter two numbers
Read: Read numbers
Add: S=A+B
Display: sum, S
Stop
That was all about software programming
and development….
Thank you for you support 

Weitere ähnliche Inhalte

Was ist angesagt? (20)

Programming languages
Programming languagesProgramming languages
Programming languages
 
Computer Language Translator
Computer Language TranslatorComputer Language Translator
Computer Language Translator
 
Computer languages
Computer languagesComputer languages
Computer languages
 
Software and its types
Software and its typesSoftware and its types
Software and its types
 
High level and Low level Language
High level and Low level Language High level and Low level Language
High level and Low level Language
 
Programming languages
Programming languagesProgramming languages
Programming languages
 
Introduction to Operating Systems
Introduction to Operating SystemsIntroduction to Operating Systems
Introduction to Operating Systems
 
System software
System softwareSystem software
System software
 
Computer languages 11
Computer languages 11Computer languages 11
Computer languages 11
 
4 evolution-of-programming-languages
4 evolution-of-programming-languages4 evolution-of-programming-languages
4 evolution-of-programming-languages
 
Introduction to Computer Programming
Introduction to Computer ProgrammingIntroduction to Computer Programming
Introduction to Computer Programming
 
Basic+machine+organization
Basic+machine+organizationBasic+machine+organization
Basic+machine+organization
 
Application Software
Application Software Application Software
Application Software
 
Computer Programming
Computer Programming Computer Programming
Computer Programming
 
Introduction to programming
Introduction to programmingIntroduction to programming
Introduction to programming
 
Computer Software & It's types.
Computer Software &  It's types.Computer Software &  It's types.
Computer Software & It's types.
 
Classification Of Software
Classification Of SoftwareClassification Of Software
Classification Of Software
 
Basic programming concepts
Basic programming conceptsBasic programming concepts
Basic programming concepts
 
Introduction to Compiler Construction
Introduction to Compiler Construction Introduction to Compiler Construction
Introduction to Compiler Construction
 
Os ppt
Os pptOs ppt
Os ppt
 

Andere mochten auch

automation process
automation processautomation process
automation processDhiraj Jha
 
Intro Ch 07 B
Intro Ch 07 BIntro Ch 07 B
Intro Ch 07 Bali00061
 
Baptism ritual structure and symbols
Baptism ritual structure and symbolsBaptism ritual structure and symbols
Baptism ritual structure and symbolsmariacatherinelucia
 
Places to see in your lifetime
Places to see in your lifetimePlaces to see in your lifetime
Places to see in your lifetimeClaudia Vlad
 
Eurorail Project: CEE Sea-to-Sea Connectivity
Eurorail Project: CEE Sea-to-Sea ConnectivityEurorail Project: CEE Sea-to-Sea Connectivity
Eurorail Project: CEE Sea-to-Sea ConnectivitySergii Kiral
 
Suzuki violin method vol 01
Suzuki violin method   vol 01Suzuki violin method   vol 01
Suzuki violin method vol 01Mariel Guzmán
 
RF coaxial connector - dongya electronic
RF coaxial connector - dongya electronicRF coaxial connector - dongya electronic
RF coaxial connector - dongya electronicFocus_Shu
 
Forms and conventions of a music video
Forms and conventions of a music videoForms and conventions of a music video
Forms and conventions of a music videoSeandoel97
 
Lineas de prodcuto de software y Metodo watch
Lineas de prodcuto de software y Metodo watchLineas de prodcuto de software y Metodo watch
Lineas de prodcuto de software y Metodo watchJhoncruz_22
 
Hasil Review
Hasil Review Hasil Review
Hasil Review Ali Raza
 
Flickr by Olivia and Stacie
Flickr by Olivia and StacieFlickr by Olivia and Stacie
Flickr by Olivia and Staciestacielynnscott
 

Andere mochten auch (20)

Brain Programming Software By Mr. Prashant Sawant
Brain Programming Software By Mr. Prashant Sawant Brain Programming Software By Mr. Prashant Sawant
Brain Programming Software By Mr. Prashant Sawant
 
automation process
automation processautomation process
automation process
 
Intro Ch 07 B
Intro Ch 07 BIntro Ch 07 B
Intro Ch 07 B
 
System programming
System programmingSystem programming
System programming
 
Baptism ritual structure and symbols
Baptism ritual structure and symbolsBaptism ritual structure and symbols
Baptism ritual structure and symbols
 
Places to see in your lifetime
Places to see in your lifetimePlaces to see in your lifetime
Places to see in your lifetime
 
Eurorail Project: CEE Sea-to-Sea Connectivity
Eurorail Project: CEE Sea-to-Sea ConnectivityEurorail Project: CEE Sea-to-Sea Connectivity
Eurorail Project: CEE Sea-to-Sea Connectivity
 
Presentation1
Presentation1Presentation1
Presentation1
 
Suzuki violin method vol 01
Suzuki violin method   vol 01Suzuki violin method   vol 01
Suzuki violin method vol 01
 
RF coaxial connector - dongya electronic
RF coaxial connector - dongya electronicRF coaxial connector - dongya electronic
RF coaxial connector - dongya electronic
 
Verb
VerbVerb
Verb
 
Mystery Audit
Mystery AuditMystery Audit
Mystery Audit
 
Presentation1
Presentation1Presentation1
Presentation1
 
What animal
What animalWhat animal
What animal
 
What animal
What animalWhat animal
What animal
 
howti
howtihowti
howti
 
Forms and conventions of a music video
Forms and conventions of a music videoForms and conventions of a music video
Forms and conventions of a music video
 
Lineas de prodcuto de software y Metodo watch
Lineas de prodcuto de software y Metodo watchLineas de prodcuto de software y Metodo watch
Lineas de prodcuto de software y Metodo watch
 
Hasil Review
Hasil Review Hasil Review
Hasil Review
 
Flickr by Olivia and Stacie
Flickr by Olivia and StacieFlickr by Olivia and Stacie
Flickr by Olivia and Stacie
 

Ähnlich wie Software programming and development

Introduction to programming language (basic)
Introduction to programming language (basic)Introduction to programming language (basic)
Introduction to programming language (basic)nharsh2308
 
Introduction to Computers Lecture # 12
Introduction to Computers Lecture # 12Introduction to Computers Lecture # 12
Introduction to Computers Lecture # 12Sehrish Rafiq
 
Fundamentals of programming with C++
Fundamentals of programming with C++Fundamentals of programming with C++
Fundamentals of programming with C++Seble Nigussie
 
1.Overview of Programming.pptx
1.Overview of Programming.pptx1.Overview of Programming.pptx
1.Overview of Programming.pptxVishwas459764
 
Introduction to Computer
Introduction to ComputerIntroduction to Computer
Introduction to Computerzaheeriqbal41
 
INTRODUCTION TO C PROGRAMMING MATERIAL.pdf
INTRODUCTION TO C PROGRAMMING MATERIAL.pdfINTRODUCTION TO C PROGRAMMING MATERIAL.pdf
INTRODUCTION TO C PROGRAMMING MATERIAL.pdfSubramanyambharathis
 
Computer program, computer languages, computer software
Computer program, computer languages, computer softwareComputer program, computer languages, computer software
Computer program, computer languages, computer softwareSweta Kumari Barnwal
 
Introduction to Computer Programming (general background)
Introduction to Computer Programming (general background)Introduction to Computer Programming (general background)
Introduction to Computer Programming (general background)Chao-Lung Yang
 
Introduction to Programming Concepts By Aamir Saleem Ansari
Introduction to Programming Concepts By Aamir Saleem AnsariIntroduction to Programming Concepts By Aamir Saleem Ansari
Introduction to Programming Concepts By Aamir Saleem AnsariTech
 
Lesson 1 - Introduction to Computer Programming.pptx
Lesson 1 - Introduction to Computer Programming.pptxLesson 1 - Introduction to Computer Programming.pptx
Lesson 1 - Introduction to Computer Programming.pptxNeil Mutia
 
Introduction to computer programming
Introduction to computer programmingIntroduction to computer programming
Introduction to computer programmingNoel Malle
 
notes on Programming fundamentals
notes on Programming fundamentals notes on Programming fundamentals
notes on Programming fundamentals ArghodeepPaul
 
Introduction_to_Programming.pptx
Introduction_to_Programming.pptxIntroduction_to_Programming.pptx
Introduction_to_Programming.pptxPmarkNorcio
 

Ähnlich wie Software programming and development (20)

Introduction to programming language (basic)
Introduction to programming language (basic)Introduction to programming language (basic)
Introduction to programming language (basic)
 
Introduction to Computers Lecture # 12
Introduction to Computers Lecture # 12Introduction to Computers Lecture # 12
Introduction to Computers Lecture # 12
 
Fundamentals of programming with C++
Fundamentals of programming with C++Fundamentals of programming with C++
Fundamentals of programming with C++
 
Chapter1.pdf
Chapter1.pdfChapter1.pdf
Chapter1.pdf
 
Ppt 1
Ppt 1Ppt 1
Ppt 1
 
1.Overview of Programming.pptx
1.Overview of Programming.pptx1.Overview of Programming.pptx
1.Overview of Programming.pptx
 
Introduction to programming c
Introduction to programming cIntroduction to programming c
Introduction to programming c
 
Introduction to Computer
Introduction to ComputerIntroduction to Computer
Introduction to Computer
 
INTRODUCTION TO C PROGRAMMING MATERIAL.pdf
INTRODUCTION TO C PROGRAMMING MATERIAL.pdfINTRODUCTION TO C PROGRAMMING MATERIAL.pdf
INTRODUCTION TO C PROGRAMMING MATERIAL.pdf
 
Computer program, computer languages, computer software
Computer program, computer languages, computer softwareComputer program, computer languages, computer software
Computer program, computer languages, computer software
 
Introduction to Computer Programming (general background)
Introduction to Computer Programming (general background)Introduction to Computer Programming (general background)
Introduction to Computer Programming (general background)
 
CS3251-_PIC
CS3251-_PICCS3251-_PIC
CS3251-_PIC
 
Introduction to Programming Concepts By Aamir Saleem Ansari
Introduction to Programming Concepts By Aamir Saleem AnsariIntroduction to Programming Concepts By Aamir Saleem Ansari
Introduction to Programming Concepts By Aamir Saleem Ansari
 
C lecture notes new
C lecture notes newC lecture notes new
C lecture notes new
 
Lesson 1 - Introduction to Computer Programming.pptx
Lesson 1 - Introduction to Computer Programming.pptxLesson 1 - Introduction to Computer Programming.pptx
Lesson 1 - Introduction to Computer Programming.pptx
 
Programming in c
Programming in cProgramming in c
Programming in c
 
Programming in C
Programming in CProgramming in C
Programming in C
 
Introduction to computer programming
Introduction to computer programmingIntroduction to computer programming
Introduction to computer programming
 
notes on Programming fundamentals
notes on Programming fundamentals notes on Programming fundamentals
notes on Programming fundamentals
 
Introduction_to_Programming.pptx
Introduction_to_Programming.pptxIntroduction_to_Programming.pptx
Introduction_to_Programming.pptx
 

Mehr von Ali Raza

Parallel Processors (SIMD)
Parallel Processors (SIMD) Parallel Processors (SIMD)
Parallel Processors (SIMD) Ali Raza
 
Parallel Processors (SIMD)
Parallel Processors (SIMD) Parallel Processors (SIMD)
Parallel Processors (SIMD) Ali Raza
 
Difference
DifferenceDifference
DifferenceAli Raza
 
The mughal empire
The mughal empireThe mughal empire
The mughal empireAli Raza
 
Psychology
PsychologyPsychology
PsychologyAli Raza
 
Assignment of ict robotics
Assignment of ict roboticsAssignment of ict robotics
Assignment of ict roboticsAli Raza
 
Operating system
Operating systemOperating system
Operating systemAli Raza
 
artificial intelligence
artificial intelligence artificial intelligence
artificial intelligence Ali Raza
 
E commrece
E commreceE commrece
E commreceAli Raza
 
Computer networks7
Computer networks7Computer networks7
Computer networks7Ali Raza
 
Presentation DBMS (1)
Presentation DBMS (1)Presentation DBMS (1)
Presentation DBMS (1)Ali Raza
 
Personal computer
Personal computer Personal computer
Personal computer Ali Raza
 
Assignment of ict robotics
Assignment of ict roboticsAssignment of ict robotics
Assignment of ict roboticsAli Raza
 
Presentation of verb
Presentation of verb Presentation of verb
Presentation of verb Ali Raza
 

Mehr von Ali Raza (14)

Parallel Processors (SIMD)
Parallel Processors (SIMD) Parallel Processors (SIMD)
Parallel Processors (SIMD)
 
Parallel Processors (SIMD)
Parallel Processors (SIMD) Parallel Processors (SIMD)
Parallel Processors (SIMD)
 
Difference
DifferenceDifference
Difference
 
The mughal empire
The mughal empireThe mughal empire
The mughal empire
 
Psychology
PsychologyPsychology
Psychology
 
Assignment of ict robotics
Assignment of ict roboticsAssignment of ict robotics
Assignment of ict robotics
 
Operating system
Operating systemOperating system
Operating system
 
artificial intelligence
artificial intelligence artificial intelligence
artificial intelligence
 
E commrece
E commreceE commrece
E commrece
 
Computer networks7
Computer networks7Computer networks7
Computer networks7
 
Presentation DBMS (1)
Presentation DBMS (1)Presentation DBMS (1)
Presentation DBMS (1)
 
Personal computer
Personal computer Personal computer
Personal computer
 
Assignment of ict robotics
Assignment of ict roboticsAssignment of ict robotics
Assignment of ict robotics
 
Presentation of verb
Presentation of verb Presentation of verb
Presentation of verb
 

Kürzlich hochgeladen

FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 

Kürzlich hochgeladen (20)

Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 

Software programming and development

  • 3. Software Programming and Development Presented to: Waqar Azeem Presented by: M. Haseeb Akhtar BSCS-(14-32) Asadullah BSCS-(14-25) Farwa Shabbir BSCS-(14-09) Hiba Amjad BSCS-(14-22) Wasfa Aslam BSCS-(14-07) Maria Asif BSCS-(14-23) University of Gujrat Lahore Campus Introduction to Computers and Technology
  • 4. Table of Content  Introduction  Definition  Hardware, software and interaction between the them.  Code and Machine Code  Programming Languages  Language Translators  Planning a computer program and problem solving  Object-orientated programming  File and its types
  • 5. Introduction: Software development is a complicated process. It requires careful planning and execution to meet the goals. Sometimes a developer must react quickly and aggressively to meet ever-changing market demands. Maintaining software quality hinders fast-paced software development, as many testing cycles are necessary to ensure quality products.
  • 6. Definition: A computer program is a set of instructions or statement to be carried out by the computer. It is a set of step by step instructions that directs the computer to do the tasks you want it to do and produce the results you want. There are at least two good reason for learning programming:  Programming helps you understand computers.  Writing a few programs increases your confidence level.
  • 7. Hardware: Computer Hardware is the collection of physical parts of the computer system. Main examples of hardware are:  Motherboard  Processor  Hard drive  RAM etc.
  • 8. Software:  Software is a set of instruction that makes the computer to perform task. In other words software tells the computer what to do.  It also creates an interface between computer hardware and user. Type of Program Input What the Program Does Output Word processor Characters you type from the keyboard Formats the text; corrects spelling etc. Displays and prints neatly organized text
  • 9. Interaction between Software and hardware:  Hardware and software are inter-related.  User inputs the instruction of data into the computer with the help of software.  Computer hardware doesn’t know what action to be performed on that instruction without software.
  • 10. Code:  A set of symbols and mnemonics for representing something. For example, most computers use ASCII codes to represent character.  In programming, code is of two types:  Source code: It is the list of commands to be assembled or compiled into an executable computer program.  Object code: It refers to the code produced by the compiler or assembler.
  • 11. Machine Code: Machine code, also called machine language, is a computer programming language consisting of binary or hexadecimal instructions which can be directly executed by the computer. It is the language into which all programs must be converted before they can be run.
  • 12. Programming Languages:  The language used to write a program is called programming language.  it is the way of creating set of instructions.  Creates a source code.
  • 13. Types of Programming Languages Low-level High-level Types of Programming Languages:
  • 14. Low Level Languages:  Instruction given to the computer in the binary form.  It is further divided into two types. Low-Level Language 1st Generation 2nd Generation
  • 15. 1st Generation Language:  1st generation language is also known as Machine language.  By using machine language, a programmer creates instructions in the form of binary codes (i.e. 1’s and 0’s).
  • 16. 2nd Generation Language:  2nd generation language is also called assembly language.  It uses simple phrasing in place of the complex series of binary numbers, used in machine language.  To develop a software with it, a programmer uses text editor for source files.  A special translator program is used to convert source files into object code.  This special translator program is called assembler, that converts assembly language instructions into machine language.
  • 17.
  • 18. High-level Languages:  It is the language that is easily understood by the humans and written in the form of human friendly manner.  It consists of different functions to create a program.  It is divided into three categories.
  • 19. High-Level Language 3rd Generation 4th Generation 5th Generation
  • 20. 3rd Generation Languages:  There are four languages that are categorized in 3rd generation languages.  These four languages are:  C  C++  Java  ActiveX
  • 21. C Language:  C is a powerful language that is used to create programs with fast and efficient code.  It is extremely popular with professional developers.  C compiler is used to compile or translate code written on it into machine readable form.  Turbo C is a common example of C compiler.
  • 22. C++ Language:  C++ is an object oriented implementation of C.  It is an extremely efficient and powerful language.  It also uses C compiler for the same purpose as C language.  Turbo C is used for compiling both C and C++ language.
  • 23.
  • 24. Java:  It creates cross-platform programs.  Java enables web page designer to include small applications called applets in web pages.  It creates self-contained functions.
  • 25. ActiveX:  It is Microsoft’s answer to java.  It can create signed applications that has been verified as being safe to run on a computer.  It can also create self contained functions.
  • 26. 4th Generation Languages:  4GL uses text environment or visual environment.  In text environment, the programmer uses English text or word.  In visual environment, the programmer uses toolbar to drag items like labels, test boxes and buttons to make an application.  4GL includes:  .NET  Authoring Environment  Sun Studio One
  • 27. .NET:  It is Microsoft’s newest entry.  It combines several programming languages into one IDE.  For example, Visual basic, C++,C# and J#.  Programs can be written for windows, www and pocket pc.
  • 28. Authoring Environment:  Authoring environment consists of special programming tools to create:  Multimedia  Applications  Web pages (e.g. Macromedia Director) It includes its own language which is called scripting language.
  • 29.
  • 30. Sun Studio One:  It is used to for java for visual editing.  It is developed by sun, the creators of Java.
  • 31. 5th Generation Language:  In principle, a 5GL would use artificial intelligence to create software based on description of what the software should do.  This type of system is proving more difficult to invent than the code it was intended to create.  It is basically a conceptual language.
  • 32. Language Translators:  For converting the source code into object code, translators or converters are used.  These translators are of three types:  Assembler  Compiler  Interpreter Assembler is not commonly used, so we’ll only discuss the compiler and interpreter.
  • 33. Compiler:  Translates the whole program at a time.  Common reason to convert all the source code into object code is to creating an executable file.  Each programming language requires its own compiler to translate code written in that language.  For example, the programming language C++ requires a C++ compiler, while the language Pascal requires a Pascal compiler.
  • 34.  The source code is translated into object code successfully with the help of compiler if it is free of errors.  If there is any error in the source code, the compiler identifies the error at the end of the compilation.  The error must be removed for successful compilation.
  • 35. Interpreter:  translates the source code into machine code statement by statement is called interpreter.  Translate one line at a time and executes it.  if an error comes, translation process will be terminated.  Makes it easier to detect and remove errors in the source program.
  • 36.  It is a time consuming process of translating and executing statement one by one.  Each time the program is run, the source code is translated again, and for this purpose you must have a translator program (interpreter) permanently in your computer.
  • 37. Basic difference between Compiler and Interpreter: Compiler Takes the entire program as an input Interpreter takes single instruction as input
  • 38. Basic difference between Compiler and Interpreter: Program execution is very fast. Program execution is very slow.
  • 39. Basic differences between Compiler and Interpreter: It is difficult to trace a problem in compiler. It is easy to trace a problem in interpreter due to line by line interpreting.
  • 40. Basic differences between Compiler and Interpreter: Errors are displayed after the entire program is checked Errors are displayed for every instruction
  • 41. Planning a Computer Program and problem solving:  Planning means creating an image about what will you do in future.  In computer programming, it means creating an image about how you will create a specific program.  Planning and problem solving of a computer program can be divided into three types:  Algorithms  Flow Charts  Pseudo Codes
  • 42. Algorithms:  It is a set of well defined instructions in a sequence to solve a problem.  An Algorithm should have:  A clear starting point.  Precisely defined input/output parameters.  Clear processing steps.  A clear stopping point  It should not have computer code, instead, it should be written in simple and efficient format, which can be used in writing a code.  It is written in a format that is closer to high-level language.
  • 43.  For example: Algorithm of Addition of two numbers Step 1: Start Step 2: Declare variables number1,number2 and sum Step 3: Read values Step 4: Add number1 and number2 and store in sum Step 5: Display sum Step 6: Stop
  • 44. Flow Charts:  It is a visual representation of an Algorithm.  You can also say that is the diagrammatic representation of an algorithm.  Importance of Flow chart:  Using flow chart technique, the sequence of program can be easily determined.  It is used to convert algorithm in simple program flow form.  Different symbols are used to show the flow of program  E.g.: Start or Stop Conditions Flow
  • 45.  Flow chart of Addition of two numbers: Start Declare number1, number2 and sum Read values Sum=number1+nu mber2 Display Sum Stop
  • 46. Pseudo Codes:  It is a simple way of writing a program code in a syntax closer to high-level language.  It does not use program language syntax.  It is a simple phrase to plan our program before we actually develop a program.  A Pseudo code:  helps to understand the program easy way.  Is easy to understand.  Is generally short and precise.  can be easily detectable to the mistakes and errors.
  • 47.  Pseudo code for addition of two numbers: A number1 B number2 S sum Start Display: enter two numbers Read: Read numbers Add: S=A+B Display: sum, S Stop
  • 48. That was all about software programming and development…. Thank you for you support 