Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
2 views27 pages

Before The Programming

The document explains programming as the process of creating instructions for computers using programming languages, which can be categorized into low-level and high-level languages. Low-level languages provide direct hardware control and require detailed knowledge, while high-level languages simplify coding and are more user-friendly. It also covers various programming languages, their uses, and the Program Development Life Cycle (PDLC) involved in software development.

Uploaded by

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

Before The Programming

The document explains programming as the process of creating instructions for computers using programming languages, which can be categorized into low-level and high-level languages. Low-level languages provide direct hardware control and require detailed knowledge, while high-level languages simplify coding and are more user-friendly. It also covers various programming languages, their uses, and the Program Development Life Cycle (PDLC) involved in software development.

Uploaded by

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

Before the programming

What is the programming

the process of creating a set of instructions, called code,


that a computer can understand and execute to perform a
specific task or solve a problem by using programming
Language

processing computer

human
What is the programming Languages

a set of rules and instructions that allows humans to


communicate with computers, enabling them to perform
specific tasks

Type of programming language

programming Languages

high level low level


Low-Level Language

A low-level language is a machine-oriented


programming language that provides
minimal abstraction from hardware,
offering direct control over memory and
system resources for maximum
performance and efficiency

High-Level Language

A high-level language is a human-readable


programming language that simplifies
coding by hiding complex hardware details,
letting developers focus on logic and
functionality
• Low-Level Language

• < Provide direct access to the computer’s hardware>


• < Require detailed knowledge of how a computer works >
• < Less user-friendly, making programming more challenging. >
• < Harder to find and solve errors in code >
• < Not easily adapted for use on different hardware >
• < Used mostly for specific tasks needing high performance or
precise control >
• • < often faster and use fewer system resources >
• < Examples include Binary code and Assembly languages like
MIPS or ARM >
Binary code is

the fundamental language of computers, consisting of sequences


of 0s and 1s

Example

Binary: 01001000 01100101 01101100 01101100 01101111


Text: "Hello“
each byte represents a character in ASCII
ASCII code is

stands for American Standard Code for Information


Interchange

assigns a unique numerical value to each character, allowing


computers to represent and process text

ASCII primarily uses 7 bits to represent 128 different characters


including letters (both uppercase and lowercase)
machine language is

the specific set of binary instructions that a computer's CPU can


directly understand and execute

This is the lowest-level programming language, directly understood


by a computer's CPU. It's composed of binary code instructions
that specify operations like addition, subtraction, data movement, etc.
Assembly Language is

It uses mnemonics to represent the operations that a processor


has to do

How Assembly Language Works

The mnemonic code that was written by the programmer was


converted into machine language (binary language) for execution.
An assembler is used to convert assembly code into machine
language. That machine code is stored in an executable file for the
sake of execution

Example

MOV AL, 5 ADD AL, 3 AL=?


High-Level Language

• < Designed to make writing code simpler and faster >


• < Allow developers to build large programs more easily >
• < Easier to find and fix mistakes >
• < Can work on different computers with minimal adjustments >
• < Usually slower in performance compared to machine-oriented
languages >
• < Provide many ready-made features to speed up coding >
• < Good for beginners and widely used for everyday software >
• < often faster and use fewer system resources >
• < Examples include Java, Ruby, Swift, and PHP. c++ >
As we said before, high-level languages use translators to be
understood by the computer. Let's take a look at how many types
of translators we have
Compilers

The language processor that reads the complete


source program written in high-level language as a
whole in one go and translates it into an equivalent
program in machine language

In a compiler, the source code is translated to object


code successfully if it is free of errors

recompile the source code again the object program


can be executed number of times without translating it
again.
Compilers

Source code Machine code


By any programming Compiler (0 and one)
language
Assembler

• is used to translate the program written in Assembly


language into machine code

• Assembler is basically the 1st interface that is able to


communicate humans with the machine

• code written in assembly language is some sort of


mnemonics(instructions) like ADD, MUL, MUX, SUB,
DIV, MOV and so on

• the assembler is basically able to convert


these mnemonics in binary code
Compilers

Source code Machine code


By Assembly Assemblers (0 and one)
language
Interpreters

• translation of a single statement of the source


program into machine code is done by a language
processor and executes immediately before moving on
to the next line

• If there is an error in the statement, the interpreter


terminates its translating process at that statement
and displays an error message

An Interpreter directly executes instructions written in


a programming or scripting language without
previously converting them to an object code or
machine code
Interpreters

One line of Source


Machine code
Code By any programming interpreter (0 and one)

language

Next line
Why programming ?

< Turn your ideas into real programs >

< Contributing to the development of the future


Programming is an essential part of modern
technological development, and is used in
education, painting, transportation, and more. >

< Developing logical thinking and problem-


solving skills Programming helps you think in an organized way and break down large problems
into simple, manageable steps >
< Programming is not limited to one type, but rather encompasses multiple fields, such as
flutter : mobile applications
back end developer
front end developer
artificial intelligence
cyber security
• We have many high level language as :

• Java
• C++
• C#
•C
• Python
What is the different between programming languages ?

All programming languages same target but different in syntax

syntax refers to the set of rules that dictate how a program should be structured and
written within a specific programming language

Each programming language is used in a specific track


C / C++ Uses:

Operating systems (Windows, Linux kernels).

Embedded systems.

Games (Game engines like Unreal).

High-performance software.

Training: Language basics OOP Data structures and algorithms

Operating systems / Embedded / Game development.

Problem solving
Java Uses:

Web apps

Mobile apps

Desktop software

Servers and backend

IoT and Big Data

It has huge libraries.

Banking and Enterprise Systems.

(especially Android) Core Java OOP Collections + Multithreading JDBC + Databases Spring /
Hibernate Microservices.
Python Uses:

Artificial Intelligence (AI, Machine Learning, Deep Learning).

Data Analysis (Pandas, NumPy).

Web (Django, Flask, FastAPI).

Scripting and Automation (Automation, Scripting).

Track: Basics OOP Data Analysis Libraries AI/ML Framework of your choice
(Django for web or TensorFlow for AI).
C# Uses:

Desktop applications (Windows Forms, WPF).

Games (Unity Engine).

Web applications (ASP.NET).

Trajectory: Basics OOP Windows / Web / Unity, depending on your interests.


JavaScript (JS) Uses:

Front-end React, Angular, Vue.

Back-end Node.js + Express.

Mobile Applications (React Native).

Structure: HTML + CSS JavaScript Basics Advanced JS Front-end Framework


(React) Node.js Full-stack Development.
SQL Uses:

Databases (MySQL, PostgreSQL, Oracle, SQL Server).

Tracks: Basics Joins Subqueries Stored Procedures Optimization.


Program Development Life Cycle (PDLC): •

Problem Definition: Identifying the problem that the software needs to solve and
defining its requirements. •

Problem Analysis: Analyzing the problem in detail, identifying inputs, processes, and
outputs. •

Algorithm Design: Developing a step-by-step solution to the problem, often using


pseudocode or flowcharts •

Coding: Writing the actual program code using a chosen programming language. •

Testing and Debugging: Testing the program to identify and fix errors (bugs). •

Maintenance: Ongoing support and updates to the software after deployment.

You might also like