0% found this document useful (0 votes)
101 views

Programming Fundamentals IT-119

The document provides information about an Introduction to Programming course at Tishk International University, including: 1) The course is offered in the spring semester of 2019-2020 by the IT department's Science Faculty. 2) Textbook information and hardware requirements are listed. 3) An overview of programming languages is given, including low-level languages like machine code and assembly, and high-level languages like C++ that will be used in the course. 4) Reasons for learning C++ are cited, such as its efficiency and widespread usage. Integrated development environments and online resources for learning C++ are also mentioned.

Uploaded by

Meran Xorany
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)
101 views

Programming Fundamentals IT-119

The document provides information about an Introduction to Programming course at Tishk International University, including: 1) The course is offered in the spring semester of 2019-2020 by the IT department's Science Faculty. 2) Textbook information and hardware requirements are listed. 3) An overview of programming languages is given, including low-level languages like machine code and assembly, and high-level languages like C++ that will be used in the course. 4) Reasons for learning C++ are cited, such as its efficiency and widespread usage. Integrated development environments and online resources for learning C++ are also mentioned.

Uploaded by

Meran Xorany
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/ 23

Tishk International University

Science Faculty
IT Department

Programming Fundamentals IT-119

Introduction to Programming

1st Grade- Spring Semester 2019-2020

Instructor: Mohammed Kamal


Email: mohammed.kamal@tiu.edu.iq
Textbooks

Main Textbook
• D. S. Malik, C++ Programming: From Problem Analysis to Program
Design, 6th Edition
• Tony Gaddis, Starting Out with C++: From Control Structures
through Objects, 8th Edition

Other Textbooks
• Bjarne Stroustrup, Programming - Principles and Practice Using C++,
2nd Edition
• H.M.Deitel & P.J.Deitel, C++ How to Program, 9th Edition
Hardware
Hardware
SOFTWARE
Types of Programming Language
Low-Level Language
Machine languages
• The only language understood by the computers directly.
• Machine languages are not human readable languages because
they consist entirely a stream of 0's and 1's.
• Each type of processor has its own machine language and
assembly language, so an assembly language program written for
one type of processor won't run on another.
• Machine language performs much faster.
Low-Level Language
Assembly languages
• Assembly languages are much easier to program because
• Programmers can use English-like abbreviations rather than
numbers.
• Programs so-called assemblers are used to convert assembly
language to machine languages.
High-Level Languages
• Make the programmers able to type instructions almost like
everyday English and mathematical notations.
• Using high-level languages speeds the time of the program writing
process.
• Programs so-called compilers convert
high-level language programs into
machine language.

C, C++, Python, C#, Java, Go, Swift, Matlab, Ruby, R,…


are among the most widely used high-level
programming languages
https://en.wikipedia.org/wiki/List_of_programming_languages
High-Level Languages
Examples for Languages
Advantages of
Purposes of having Different programming languages
■ general-purpose programming language: is a programming languages designed to be
used for writing software in the widest variety of application domains (a general
purpose language). A general-purpose programming language has this status because it
does not include language constructs designed to be used within a specific application
domain. Examples include C, C++, Java …
■  Domain-specific programming language:  is one designed to be used within a specific
application domain. Examples include HTML and SQL.
What Language are we going to use?
■ You are going to learn C++.

■ C++ is a powerful general-purpose programming language. It can be used to develop


operating systems, browsers, games, and so on.
History of C and C++
• BCPL was developed in 1967 by Martin Richards as a
language for writing operating systems software and
compilers for operating systems.
• Ken Thompson modelled many features in his language
B after their counterparts in BCPL.
• The C language was evolved from B by Dennis Ritchie at
Bell Laboratories.
• C++, an extension of C, was
developed by Bjarne Stroustrup
in the early 1980s at Bell
Laboratories.
Advantages of learning C++ language
■ It’s a good language to understand programming concept and algorithms. After that
learning other languages will be easy.
■ C++ is a powerful, efficient and fast language. It finds a wide range of applications –
from GUI applications to 3D graphics for games to real-time mathematical simulations.
■ This programming language has a very huge community and it is always a good idea to
have a large community. If there is a larger community, you will be able to get more
support.
IDE (Integrated Development Environment)

IDE’s provide comprehensive tools for


• writing and editing codes
• adding and editing resources
• building (compiling and linking)
• debugging codes
• deploying applications
IDE (Integrated Development Environment)
IDE’s for C++
• Microsoft Visual Studio (Community Ed.)
• Windows OS
• https://visualstudio.microsoft.com/downloads/

• Microsoft Visual Studio Code


• Mac OS, Linux OS
• https://code.visualstudio.com
IDE (Integrated Development Environment)

IDE’s for C++


• Eclipse
• NetBeans
• DevC++
• Code Blocks
• C++ Builder
• CodeLite
•…
Online video tutorials from
Codearchery Channel
https://www.youtube.com/playlist?list=PLrKBFf87Cy9BVBAZ1Y-6Olzz0KTU4Qw6
L
Learning Lad Channel
https://www.youtube.com/playlist?list=PLfVsf4Bjg79Cu5MYkyJ-u4SyQmMhFeC1C
The Cherno Project Channel
https://www.youtube.com/playlist?list=PLlrATfBNZ98dudnM48yfGUldqGD0S4FFb
The New Boston Channel
https://www.youtube.com/playlist?list=PLAE85DE8440AA6B83
NVitanovic Channel
https://www.youtube.com/playlist?list=PLrjEQvEart7dezh2ObeI1S7L2YDZdIT9T
Kurdish Channels
https://www.youtube.com/playlist?list=PLSWb9yRaofuYRmthavQwmediE9DZeKLe
6
https://www.youtube.com/playlist?list=PLX5wF_FVIDyQESU6n3SmgkhAt_k8S7ZF
Arabic
3 Channels
https://www.youtube.com/playlist?list=PLCInYL3l2AajFAiw4s1U4QbGszcQ-rAb3
https://www.youtube.com/playlist?list=PL5hNQAHQe-Hn2EW43uozy4kM8Oi6U0FE
W
Online resources
Some other resources for Programming course
• www.udacity.com
• www.udemy.com
• www.lynda.com
• www.khanacademy.org
• www.netacad.com
• www.coursera.org
• www.w3schools.com
• www.edx.org
• www.ocw.mit.edu
• www.futurelearn.com
• www.extension.harvard.edu
• www.oyc.yale.edu
• www.tutorialspoint.com
Online resources

You might also like