0% found this document useful (0 votes)
120 views22 pages

CS 121 - Object Oriented Programming (Lec 1)

The document provides details about Syed Shahrooz Shamim including his academic and professional qualifications, specialized courses completed, professional affiliations, teaching experience, and contact information. He has an MS and BS in computer science and over 7 years of university teaching experience. His contact information and links to his social media profiles are also included.

Uploaded by

ashhad khan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
120 views22 pages

CS 121 - Object Oriented Programming (Lec 1)

The document provides details about Syed Shahrooz Shamim including his academic and professional qualifications, specialized courses completed, professional affiliations, teaching experience, and contact information. He has an MS and BS in computer science and over 7 years of university teaching experience. His contact information and links to his social media profiles are also included.

Uploaded by

ashhad khan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 22

CS 121

Object Oriented
Programming
By: Syed Shahrooz Shamim
Academic Qualification:
• MS (CSIT) from NED University in 2017
• BS (CS) from Hamdard University in 2014

Specialized Courses:
• 120 Hrs. Specialized Course on Game Development from
PNEC-NUST KARSAZ Karachi.
• Specialized course in IoT from YOUSEI University (Coursera)

Professional Affiliation:
• Professional Member ACM
• Professional Member IEEE
• Professional Member CSTA
• Faculty Head UITCS-ACM
• Faculty Head UIT Media Society

Experience:
Syed Shahrooz Shamim • Seven years of University level Teaching
• Startup Experience since 2018
Syed Shahrooz Shamim
Contact

[email protected]

[email protected]

0334 321 2771

fb.com/shahroozshamim/

Syed Shahrooz Shamim


Faculty Time Table
What is a

?
Computer
Program?
What is a A computer program is a
collection of instructions that
Computer can be executed by a computer
to perform a specific task.
Program? A computer program is usually
written by a computer
programmer in a Programming
Language.

~Wikipedia
?
What is a
Programming
Language?
• A programming language is a
set of rules that provides a
way of telling a computer
what operations to perform.
What is a
• A programming language is a
Programming set of rules for
communicating an algorithm
Language?
• It provides a linguistic
framework for describing
computations
• A programming language is a
notational system for
describing computation in a
machine-readable and
What is a human-readable form.

Programming • A programming language is a


tool for developing
Language? executable models for a class
of problem domains.
• English is a natural language. It has words, symbols and grammatical
rules.
• A programming language also has words, symbols and rules of
grammar.
• The grammatical rules are called syntax.
• Each programming language has a different set of syntax rules.

Programming Languag
Why are there
So many
Language
Or
Programming
Language?
class Triangle { LOAD r1,b
... LOAD r2,h 0001001000101
float surface() MUL r1,r2 0011011101100
return b*h/2; DIV r1,#2 10101101001...
} RET

High-level program Low-level program Executable Machine code

Levels of Programming Language


Compiler VS Interpreter
Compiler VS Interpreter
Compiler scans the entire program and translates Interpreter translates just one statement of the
the whole of it into machine code at once. program at a time into machine code.

A compiler always generates an intermediary An interpreter takes very less time to analyze the
object code source code.
• An integrated development
environment is a software
application that provides
comprehensive facilities to
What is an computer programmers for
software development.

IDE? • An IDE normally consists of at


least a source code editor,
build automation tools and a
debugger.
Imperative Logic/Declarative Data Driven
Programming Programming Programming

Object-Oriented Functional/Applicative
Programming Programming

The Principal Paradigms


Object oriented programming is the
principle of design and development
of programs using modular approach;

Object oriented programming approach


provides advantages in creation and

OOP
development of software for real life
application

The basic element of object-oriented


programming is the data.

The programs are built by combining


data and functions that operate on the
data.

Some of the OOP’s languages are C++,


Java, C #, Smalltalk, Perl, and Python.
The procedural programming
focuses on processing of
instructions in order to perform
a desired computation.
• The top-down concepts to
Procedural decompose main functions
into lower level components
Programming for modular coding purpose.
• Therefore, it emphasizes more
on doing things like
algorithms.
• This technique is used in a
conventional programming
language such as C and Pascal.
• Object oriented programming (OOP) is a concept that combines both the data and
the functions that operate on that data into a single unit called the object.

• An object is a collection of set of data known as member data and the functions
that operate on these data known as member function.

• OOP follows bottom-up design technique.

OO
• Class is the major concept that plays important role in this approach. Class is a
template that represents a group of objects which share common properties and
relationships.
Differenc
Criteria in a good language design

Writability
Writability

Readability
Readability

Orthogonality
Orthogonality

Reliability
Reliability

Maintainability
Maintainability

You might also like