SlideShare una empresa de Scribd logo
1 de 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 

Más contenido relacionado

La actualidad más candente

Algorithm Design & Implementation
Algorithm Design & ImplementationAlgorithm Design & Implementation
Algorithm Design & ImplementationGaditek
 
Computer Software and Operating System
Computer Software and Operating SystemComputer Software and Operating System
Computer Software and Operating SystemRupan Sharma
 
Programming language
Programming languageProgramming language
Programming languageShuja Qais
 
Programming paradigm
Programming paradigmProgramming paradigm
Programming paradigmbusyking03
 
Windows 7 Unit A PPT
Windows 7 Unit A PPTWindows 7 Unit A PPT
Windows 7 Unit A PPTokmomwalking
 
High level and Low level Language
High level and Low level Language High level and Low level Language
High level and Low level Language adnan usmani
 
Graphical User Interface (Gui)
Graphical User Interface (Gui)Graphical User Interface (Gui)
Graphical User Interface (Gui)Bilal Amjad
 
Generations of programming language
Generations of programming languageGenerations of programming language
Generations of programming languageJAIDEVPAUL
 
Programming languages
Programming languagesProgramming languages
Programming languagesAsmasum
 
Computer Viruses
Computer VirusesComputer Viruses
Computer VirusesAnnies Minu
 
system software and application software, compiler, interpreter & assembler
system software  and application software, compiler, interpreter & assemblersystem software  and application software, compiler, interpreter & assembler
system software and application software, compiler, interpreter & assemblerchetan birla
 
Presentation it
Presentation itPresentation it
Presentation itnabelas
 
Operating system overview concepts ppt
Operating system overview concepts pptOperating system overview concepts ppt
Operating system overview concepts pptRajendraPrasad Alladi
 
Application software
Application softwareApplication software
Application softwaremoazamali28
 

La actualidad más candente (20)

Introduction to software
Introduction to softwareIntroduction to software
Introduction to software
 
Software System
Software SystemSoftware System
Software System
 
Algorithm Design & Implementation
Algorithm Design & ImplementationAlgorithm Design & Implementation
Algorithm Design & Implementation
 
Computer Software and Operating System
Computer Software and Operating SystemComputer Software and Operating System
Computer Software and Operating System
 
Programming language
Programming languageProgramming language
Programming language
 
Programming paradigm
Programming paradigmProgramming paradigm
Programming paradigm
 
Windows 7 Unit A PPT
Windows 7 Unit A PPTWindows 7 Unit A PPT
Windows 7 Unit A PPT
 
High level and Low level Language
High level and Low level Language High level and Low level Language
High level and Low level Language
 
Graphical User Interface (Gui)
Graphical User Interface (Gui)Graphical User Interface (Gui)
Graphical User Interface (Gui)
 
System software
System softwareSystem software
System software
 
Generations of programming language
Generations of programming languageGenerations of programming language
Generations of programming language
 
Programming languages
Programming languagesProgramming languages
Programming languages
 
Computer Viruses
Computer VirusesComputer Viruses
Computer Viruses
 
Programming
ProgrammingProgramming
Programming
 
system software and application software, compiler, interpreter & assembler
system software  and application software, compiler, interpreter & assemblersystem software  and application software, compiler, interpreter & assembler
system software and application software, compiler, interpreter & assembler
 
Os ppt
Os pptOs ppt
Os ppt
 
Presentation it
Presentation itPresentation it
Presentation it
 
Programming Fundamentals
Programming FundamentalsProgramming Fundamentals
Programming Fundamentals
 
Operating system overview concepts ppt
Operating system overview concepts pptOperating system overview concepts ppt
Operating system overview concepts ppt
 
Application software
Application softwareApplication software
Application software
 

Destacado

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
 

Destacado (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
 

Similar a 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
 

Similar a 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
 

Más de 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
 

Más de 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
 

Último

The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 

Último (20)

The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 

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 