DEV Community

Cover image for Programming Fundamentals
theDevnotes
theDevnotes

Posted on • Edited on • Originally published at thedevnotes.hashnode.dev

Programming Fundamentals

Hello World, welcome to Dev Terminology, where we talk about dev concepts.

Today’s topic — Programming Fundamentals; the basic concepts of any programming language.


When learning to code programming fundamentals always need to come first. The more you understand them, the easier it is to build upon it and learn advanced concepts.

The Fundamentals of Programming:

  • Data Types and Variables
  • Operators
  • Control Structures
  • Data Structures
  • Syntax
  • Tools

These Programming Fundamentals — Do Or Complete Different Solutions Together.

It's kind of a cheesy line, but I hope you get my drift.

"It's important to remember that a lot of programming languages are very similar, and knowing what's common between all programming languages will help you transition into any other programming language if you need to!" (Trevor Page).

You can call them building blocks, a road map, blueprints, tools even, but regardless of the name, they are a foundation. The fundamentals tell you where we came from, where we've been, and where we're going. They need to be similar across programming languages because it's that similarity that allows each of us, to some extent, to understand them regardless of what language we speak or interact with. It's what allows us to communicate.

Programming Fundamentals Overview

Data Types and Variables

Data Types are the identity of a variable — an attribute of data which tells the compiler or interpreter how the programmer intends to use the data.

Types of data types:

Boolean, Integer, Float, Character, String,
Nothing Data Types, [Array *], etc ...
Enter fullscreen mode Exit fullscreen mode

Note: know how to convert one data type into another (Data type conversion).

Variables are value placeholders — an element, feature, or factor that is liable to vary or change.

my_name = "Jane"
Enter fullscreen mode Exit fullscreen mode

In this case, my_name holds the value of Jane.


Operators

Operators are symbols that tell you what to do. You know like + - = ...

Common operator types include:

arithmetic, comparison, and logical operators.
Enter fullscreen mode Exit fullscreen mode

Control Structures

Control Structures are used to make decisions on what actions to take — the types of instructions the program should follow.

Types of Control Structures:

Decision control, Selection control, 
and Repetition / Loop control.
Enter fullscreen mode Exit fullscreen mode

These control structures may be better known as:

Functions, Collections, Objects, Classes, 
Loops, Conditional / If Else statements etc...
Enter fullscreen mode Exit fullscreen mode

Data Structures

Data Structures are ways to manage, organize and access data.

Some general data structures are:

Arrays, Linked Lists, Queues, Stacks, Hash Tables, 
Trees, Graphs, Heaps, Matrix, etc...
Enter fullscreen mode Exit fullscreen mode

Syntax

Syntax is the way you order your words. — The rules, principles, and processes that govern the structure of sentences in a given language.

print("Hello World!")
Enter fullscreen mode Exit fullscreen mode

In this case, this sentence structure is python syntax that when executed will print Hello World!


Programming Tools

Hardware with an operating system — A computer (preferably accompanied by a keyboard and mouse).

Some sort of internet connection — WIFI

A terminal — The command line

Some software — Your language's software developer kit (SDK)

  • This is where you click the big download button and let it do its magic
  • Example: Python SDK

A code editor, IDE, and/or whiteboard if you prefer

VSCode, Vim, Sublime Text, Whiteboards ... pen and paper?

Version control — Your remote repositories (where you store your code)

Git, Github

Git cheat sheet

Project management tools

Linter, Debugger

Github project boards, Trello

CI/CD — continuous integration / continuous delivery

For more information consider going to your local google or other browser if you're alternative.

Final note — When you start your developer journey

  1. Go slow
  2. Understand the fundamentals

This was Dev Terminology. Thanks for reading.

Credits and acknowledgment to the dev community.

Written by Jessica Dosseh

Find Jessica on: [GitHub, LinkedIn, Twitter, Patreon, and Portfolio]

Find theDevnotes on: [GitHub, Twitter, Blog, Medium, Dev.to]

P.S: [Dear reader — visit again sometime :)]

Top comments (0)