You are on page 1of 58

Mastering the Fundamentals of Programming

“The Importance of Mastering the Basic”

By Edwin S. Garcia – December 4, 2021


OBJECTIVES

What is Programming? LO1


How do you write a computer
LO2 program?
Rules of programming
languages?
LO3
Data types, Variables and
LO4 Operators?

Logic Control Structures LO5

LO6 Easier real-world programming


PREREQUISITES

KNOWLEDGE
No Prior Knowledge Required

PL or OS
No Programming Language or Operating Systems

DOWNLOAD
Nothing to Download and nothing to Install
What is Programming?

Learn C# Learn JavaScript


Console.WriteLine("Hello World!"); 06 // the hello world program
console.log('Hello World');

Learn Android Learn C++


<TextView int main() { std::cout << "Hello
android:text="Hello World!" /> World!"; return 0; }

Learn PHP Learn Python


# This program prints Hello,
<?php
world! print('Hello, world!')
echo "Hello World!";
?>
03
LEARN PROGRAMMING

HOW… HOW…

01 How to THINK ABOUT IT


02 How to TALK ABOUT IT

HOW… HOW…

04 How to APPLY IT
03 How to DO IT
PROGRAMMING TERMINOLOGIES & JARGONS

Algorithms Machine Code Pseudocode Assembly

Syntax Static Typing Recursion Bytecode


Data Types Binary Compiling Debugging
Variables Functions Objects Interpreter

Hexadecimal Conditional Logic and lots more…


for some PROGRAMMING is…
You attended this Webinar because of the following reasons:

SOFTWARE DEVELOPER
You want to become a You want to build programs for desktop PC or laptop, for the

01 Programmer web for the phone whether its Mac or Windows or Linux or
whatever else may come in the future.

PROGRAMMERS WORLD
You may have no intention of becoming a programmer right You don't want to become a
now. But you do work with them or live with one and you've
been thinking it might be useful to know more about their programmer 02
world and what's important to them.

You aren't sure you want to PROGRAMMING PASSION


What if you are not completely sure about this perhaps you are

03 become a programmer. worried this might not be for you, or maybe its too late, maybe
if not because of family and friends
What is a Computer Program?

A computer program is a way


Definition

01 to tell a computer what to do

Computer
Program
Definition
A computer program is a list
02 of instructions.
Computer Instructions need to be more specific
INSTRUCTION:
Add one number to another number
INSTRUCTION:
Display “Hello, World!” on the screen
INSTRUCTION:
Beep for 5 seconds and pause 2 seconds

These INSTRUCTIONS are …


SPECIFIC, SELF CONTAINED, and VERY SMALL INSTRUCTIONS
Hello, World! in different Programming Languages

01 JAVA 02 PYTHON 03 C#

class HelloWorld { # This program prints Hello, world! namespace HelloWorld {


public static void main(String[] args) { class Hello {
static void Main(string[] args) {
System.out.println("Hello, World!");
print('Hello, world!') System.Console.WriteLine("Hello World!");
} }}}
}

04 C++ 05 JAVASCRIPT 06 SWIFT

#include <iostream> // Hello World program // Swift "Hello, World!" Program


int main() { console.log('Hello World');
std::cout << "Hello World!"; alert("Hello, World!"); print("Hello, World!")
return 0; document.write('Hello, World!');
}
Hello, World! VS Hello World of Warcraft
Recipe in a Cookbook
IDEA Number 1:
In programming, we build incredibly complex results from
combining lots of simple instructions.
IDEA No 2:
In programming, Its the Order of the Instructions that is incredibly
important.
What is a Computer Program?
A computer program is a list of
instructions
…that we write using a programming
language the computer understands.
Some of the Programming Languages…
C C++
Some of the Programming Languages…

SWIFT RUBY
Some of the Programming Languages…

COBOL Python
Some of the Programming Languages…

PHP Visual Basic


Applications YOU need to Install before Beginning Programming…

ZERO = NONE = NOTHING


Text Editors

Notepad (Windows) | TextEdit (Mac)


THINGS A PROGRAMMING LANGUAGE DOES NOT CARE ABOUT

BOLD text
Italic text
custom fonts
different font sizes
Programming Languages written in Plain Text = ?
Specialized Editors Designed for Programmers [IDE]
Why CODES looks LIKE CODE?
This is why CODES looks LIKE CODE
What is a Computer Program?

A computer program is a list of


instructions
…that we write using a programming
language the computer understands*

*not entirely true

Because the Computer DOES NOT UNDERSTAND our SOURCE CODE…


The piece of hardware the executes our source code…
MACHINE CODE
The instructions your computer actually understands.

EYES CLOSE! This looks like gibberish its intended for Machine
THAT IS WHY?

The entire point of


PROGRAMMING LANGUAGES
is that WE DON’T
have to write
MACHINE CODE
Converting Source Code to Machine Code
Converting Source Code to Machine Code
CONVERSION PROCESS

Compiler compiles source code converts to machine code output executable file
CONVERSION PROCESS

Interpreter (copy of source code sent) bundles in OS or Browsers


COMPARISON
CONVERSION PROCESS
SUMMARY
MACHINE CODE
Computer CPU = Hardware
BINARY CODE
One Switch, Two Values
BINARY CODE

Two Switches, Four Values


BINARY CODE
Each Addition Doubles the Options
BINARY CODE
With Four Switches, 16 Arrangements
BINARY CODE
Eight Switches: 256 Arrangements

(and 252 more…)


BINARY DIGITS
Eight BITS: 256 Arrangements
BINARY DIGITS
Need Bigger Values? Use More BITS
CPU BITS ARCHITECTURE
Binary to Hexadecimal
MACHINE CODE
THE RULES OF PROGRAMMING LANGUAGES
SYNTAX: The rules of the Programming Languages
WORKING WITH DATA

• Input, Output and Everything in Between


• Creating and Naming Variables
• Using Variables and Operators
• Choosing and Using Data Types
• Creating Constants
• Understanding Language Differences
MANAGING PROGRAM FLOW

• Making Choices and Conditions


• Creating Complex Conditions
• Creating Loops
MAKING THINGS MODULAR
• Creating Functions
• Returning Values and Using Parameters
• Using Recursion
• Creating and Using Composite Data Types
• Arrays and Collections
• Introductions to OOP
PROGRAMMING IN THE REAL WORLD
• Introductions: Frameworks and Libraries
• What is SDK?
• What is API?
• Choosing a Programming Language
Software Development Areas
Game Development [ Unity (C#) | Unreal Engine (C++) ]
Web Development [ Ruby on Rails, ASP.NET (C#), Angular JS (JavaScript), PHP]
Mobile Development [ iOS (Swift) Android (Java) ]
Enterprise Applications [ Java, C#, VB.NET ]
Data Visualization [ Python, R ]
Specialized Area [ Robotics, Computer Vision, Audio, AR, VR, AI, ML, etc. ]
FINAL TIPS

How do you Master Basics in Programming?


• Select a Programming Language as per your requirements.
• Get Your Fundamentals (Basic) Clear.
• Move from Basics to the Advanced Level.
• Practice, Practice, and Practice.
• Build Minor and Major Projects.
• Share your Code and Knowledge with Others.
QUOTES TO PONDER

“Failure is part of learning; we should never give up the


struggle in life.”

Don’t Live on “Someday Island”

“Find Your Life Purpose and Manage Your Time”


END OF PRESENTATION

You might also like