Beginning Programming All-in-One

(BEGIN-PROGRMNG.AE1)/ISBN:978-1-64459-445-2

This course includes
Lessons
Hands-On Labs

Beginning Programming All-in-One For Dummies is your gateway to the world of programming. Whether you're a complete beginner or have some prior knowledge, this course offers a comprehensive introduction to computer programming fundamentals and various programming languages. It provides interactive lessons, quizzes, and hands-on labs, ensuring an engaging and practical learning experience. This course equips you with the essential skills to understand the basics of coding and problem-solving, making it easy to dive into the world of computer programming.

Lessons

44+ Lessons | 72+ Exercises | 190+ Quizzes | 111+ Flashcards | 111+ Glossary of terms

Hands-On Labs

65+ LiveLab | 11+ Video tutorials | 24+ Minutes

Here's what you will learn

Download Course Outline

Lessons 1: Introduction

  • About This Course
  • False Assumptions
  • Icons Used in This Course
  • Where to Go from Here

Lessons 2: Getting Started Programming a Computer

  • How Computer Programming Works
  • The History of Computer Programming
  • Figuring Out Programming

Lessons 3: Different Methods for Writing Programs

  • Spaghetti Programming
  • Structured Programming
  • Event-Driven Programming
  • Object-Oriented Programming
  • Using Protocol-Oriented Programming
  • Design Patterns

Lessons 4: Types of Programming Languages

  • Your First Language
  • Curly-Bracket Languages
  • Artificial Intelligence Languages
  • Scripting Languages
  • Database Programming Languages
  • Comparing Programming Languages

Lessons 5: Programming Tools

  • Choosing a Compiler
  • Finding an Interpreter
  • Compiling to a Virtual Machine
  • Writing a Program with an Editor
  • Fixing a Program with a Debugger
  • Saving Time with Third-Party Components
  • Optimizing a Program with a Profiler
  • Managing Source Code
  • Creating a Help File
  • Installing a Program
  • Dissecting Programs with a Disassembler

Lessons 6: How Programs Work

  • Using Keywords as Building Blocks
  • Organizing a Program
  • Dividing a Program into Subprograms
  • Dividing a Program into Objects
  • Creating a User Interface

Lessons 7: Variables, Data Types, and Constants

  • Using Different Data Types
  • Storing Data in a Variable
  • Retrieving Data from a Variable
  • Using Constant Values
  • Defining the Scope of a Variable

Lessons 8: Manipulating Data

  • Storing Data with the Assignment Operator
  • Using Math to Manipulate Numbers
  • Manipulating Strings
  • Finding Strings with Regular Expressions
  • Using Comparison Operators
  • Using Boolean Operators
  • Converting Data Types

Lessons 9: Making Decisions by Branching

  • Picking One Choice with the IF-THEN Statement
  • Picking Two Choices with the IF-THEN-ELSE Statement
  • Picking Three or More Choices with the IF-THEN-ELSEIF Statement
  • Playing with Multiple Boolean Operators
  • Making Multiple Choices with the SELECT CASE Statement

Lessons 10: Repeating Commands by Looping

  • Looping a Fixed Number of Times with the FOR-NEXT Loop
  • Looping Zero or More Times with the WHILE Loop
  • Looping at Least Once with the DO Loop
  • Playing with Nested Loops
  • Prematurely Exiting from a Loop
  • Checking Your Loops

Lessons 11: Breaking a Large Program into Subprograms

  • Creating and Using Subprograms
  • Passing Parameters
  • Repeating a Subprogram with Recursion

Lessons 12: Breaking a Large Program into Objects

  • How Object-Oriented Programming Works
  • Encapsulation Isolates Data and Subprograms
  • Sharing Code with Inheritance
  • Polymorphism: Modifying Code without Changing Its Name
  • Design Patterns
  • Object-Oriented Languages
  • Real-Life Programming Examples

Lessons 13: Reading and Saving Files

  • Storing Data in Text Files
  • Storing Fixed-Size Data in Random-Access Files
  • Storing Varying-Size Data in Untyped Files
  • Using Database Files

Lessons 14: Documenting Your Program

  • Adding Comments to Source Code
  • Writing Software Documentation

Lessons 15: Principles of User Interface Design

  • The Evolution of User Interfaces
  • Elements of a User Interface
  • Designing a User Interface

Lessons 16: Debugging and Testing

  • Common Types of Programming Errors
  • Debugging with Comments and Print Statements
  • Breakpoints, Stepping, and Watching
  • Testing Code

Lessons 17: Structures and Arrays

  • Using Structures
  • Using an Array
  • Working with Resizable Arrays
  • Working with Multidimensional Arrays
  • Using Structures with Arrays
  • Drawbacks of Arrays

Lessons 18: Sets and Linked Lists

  • Using Sets
  • Using Linked Lists
  • Drawbacks of Sets and Linked Lists

Lessons 19: Collections and Dictionaries

  • Using a Collection
  • Using Dictionaries
  • Understanding Hash Tables

Lessons 20: Stacks, Queues, and Deques

  • Using Stacks
  • Using Queues
  • Using Deques

Lessons 21: Graphs and Trees

  • Understanding Graphs
  • Creating Trees
  • Taking Action on Trees

Lessons 22: Sorting Algorithms

  • Using Bubble Sort
  • Using Selection Sort
  • Using Insertion Sort
  • Using Shell Sort
  • Using Heap Sort
  • Using Merge Sort
  • Using Quick Sort
  • Comparing Sorting Algorithms

Lessons 23: Searching Algorithms

  • Sequential Search
  • Using Indexes
  • Adversarial Search

Lessons 24: String Searching

  • Sequential Text Search
  • Searching with Regular Expressions
  • Searching Phonetically

Lessons 25: Data Compression Algorithms

  • Lossless Data Compression Algorithms
  • Lossy Data Compression

Lessons 26: Encryption Algorithms

  • How Encryption Works
  • The Basics of Encryption
  • Symmetric/Asymmetric Encryption Algorithms
  • Cracking Encryption

Lessons 27: HyperText Markup Language

  • The Structure of an HTML Document
  • Adding Graphics
  • Defining the Background
  • Creating Hyperlinks
  • Making Tables

Lessons 28: CSS

  • The Structure of a Stylesheet
  • Creating Style Classes
  • Separating Styles in Files
  • Cascading Stylesheets

Lessons 29: JavaScript

  • The Structure of a JavaScript Program
  • Creating Comments
  • Declaring Variables
  • Using Operators
  • Branching Statements
  • Looping Statements
  • Creating Functions
  • Using Arrays
  • Designing User Interfaces

Lessons 30: PHP

  • Examining the Structure of a PHP Program
  • Creating Comments
  • Declaring Variables
  • Using Operators
  • Branching Statements
  • Looping Statements
  • Creating Functions
  • Using Arrays
  • Creating Objects

Lessons 31: Ruby

  • The Structure of a Ruby Program
  • Creating Comments
  • Declaring Variables
  • Using Operators
  • Branching Statements
  • Looping Statements
  • Creating Functions
  • Using Data Structures
  • Creating Objects

Lessons 32: C and C++

  • Looking at the Structure of a C/C++ Program
  • Creating Comments
  • Declaring Variables
  • Using Operators
  • Branching Statements
  • Looping Statements
  • Creating Functions
  • Data Structures
  • Using Objects

Lessons 33: Java and C#

  • Looking at the Structure of a Java/C# Program
  • Creating Comments
  • Declaring Variables
  • Using Operators
  • Branching Statements
  • Looping Statements
  • Creating Functions
  • Data Structures
  • Using Objects

Lessons 34: Perl and Python

  • Reviewing the Structure of a Perl or Python Program
  • Creating Comments
  • Defining Variables
  • Using Operators
  • Branching Statements
  • Looping Statements
  • Creating Functions
  • Making Data Structures
  • Using Objects

Lessons 35: Kotlin

  • Looking at the Structure of a Kotlin Program
  • Creating Comments
  • Declaring Variables
  • Declaring Constants
  • Using Operators
  • Branching Statements
  • Looping Statements
  • Creating Functions
  • Creating Data Structures
  • Creating Objects

Lessons 36: Swift and SwiftUI

  • Considering the Structure of a Swift Program
  • Creating Comments
  • Declaring Variables
  • Declaring Constants
  • Using Operators
  • Branching Statements
  • Looping Statements
  • Creating Functions
  • Data Structures
  • Creating Objects

Lessons 37: Flutter and Dart

  • Working with Flutter
  • Understanding the Dart Language

Lessons 38: Database Management

  • Understanding the Basics of Databases
  • Manipulating Data
  • Database Programming

Lessons 39: Bioinformatics

  • The Basics of Bioinformatics
  • Database Searches
  • Bioinformatics Programming

Lessons 40: Computer Security

  • Stopping Malware
  • Stopping Hackers
  • Secure Computing

Lessons 41: Artificial Intelligence

  • Problem Solving
  • Machine Learning
  • Applications of Artificial Intelligence

Lessons 42: Mobile and Wearable Computing

  • Understanding the Different Generations of Computing
  • Giving Data to the User
  • Getting Data from the User
  • Tracking Motion and Location
  • Tracking Real-Time Health Data
  • Looking to the Future of Augmented Reality and Wearable Computers

Lessons 43: Game Engines

  • Understanding Game Engines
  • Picking a Game Engine
  • Programming a Game Engine
  • Exploring the Future Uses of Game Engines

Lessons 44: The Future of Computer Programming

  • Picking a Programming Language
  • Picking an Operating System
  • Doing Cross-Platform Programming
  • Defining Your Future in Programming

Hands-on LAB Activities

Getting Started Programming a Computer

  • Displaying a Sample Message

Different Methods for Writing Programs

  • Creating a Textbox and a Progress Bar
  • Creating an Object

Variables, Data Types, and Constants

  • Storing Data
  • Manipulating the Variable
  • Concatenating Strings in Visual Basic

Manipulating Data

  • Computing Leaves of an Employee
  • Understanding Arithmetic Operations
  • Manipulating Strings
  • Using Comparison Operators

Making Decisions by Branching

  • Using the if Statement
  • Using the IF ELSE Statement
  • Using the IF-THEN-ELSEIF Statement
  • Using the If-Elif-Else Statement

Repeating Commands by Looping

  • Using the for Loop
  • Using the while Loop
  • Using the do-while Loop
  • Using a Nested Loop

Breaking a Large Program into Subprograms

  • Using Python Functions
  • Passing Parameters to a Java Program
  • Finding the Factorial of a Number Using Recursion

Breaking a Large Program into Objects

  • Overloading a Method

Reading and Saving Files

  • Reading Data from a File

Debugging and Testing

  • Debugging a Sample Python Code

Structures and Arrays

  • Declaring an Array
  • Declaring a Multidimensional Array

Sets and Linked Lists

  • Using Sets
  • Creating a Linked List

Collections and Dictionaries

  • Using Operators in Visual Basic
  • Adding Data to a Dictionary

Stacks, Queues, and Deques

  • Using Stacks
  • Creating a Priority Queue

Sorting Algorithms

  • Implementing Bubble Sort
  • Implementing Selection Sort
  • Implementing Insertion Sort
  • Implementing Heap Sort
  • Implementing Merge Sort
  • Implementing Quick Sort

Searching Algorithms

  • Performing Binary Search
  • Performing Sequential Search

String Searching

  • Using Regular Expressions to Replace Text

Encryption Algorithms

  • Using Symmetric Algorithm
  • Using an Asymmetric Algorithm

HyperText Markup Language

  • Using HTML
  • Using the Font Color in HTML

CSS

  • Using HTML and CSS
  • Modifying Elements Using CSS Margins, Borders, and Padding
  • Positioning Images Relative to Text Using CSS

JavaScript

  • Using the Arithmetic Operators
  • Using the for Loop

PHP

  • Using PHP

Ruby

  • Creating Objects in Ruby
  • Determining a Number as Even or Odd

C and C++

  • Using Variables
  • Using Operators

Java and C#

  • Using the int Type
  • Creating Functions in Java

Perl and Python

  • Determining if a Number is Prime or Not

Kotlin

  • Using the Kotlin Language

Flutter and Dart

  • Creating a Function in Dart

Database Management

  • Using the SELECT Statement
  • Using the DELETE Statement
  • Using the UPDATE Statement

Computer Security

  • Scanning and Classifying Different Types of Viruses
  • Analyzing Malware