2008 June 29: Basic Programming Topics

From TC Open Circuit Wiki

(Redirected from ESSS2008 20080622)
Jump to: navigation, search

Contents


Presenter

Alan

Description

This session aims to give the class a basic overview of programming and the concepts of programming. Though there are hundreds of programming languages out there, and they all have their strengths and weakness and specific syntax, there are many abstract concepts which will help you better program in any language.

Session Details

Programming Language Levels

A computer can actually only understand binary data (ones and zeros), most languages are on different levels depending on how abstracted it becomes from binary. Usually they fall into the following categories:

Programming Types

There are many different Programming Paradigms (ways of programming). Most languages do one better than others and can fit into the following types of programming languages:

Basic Syntax

Syntax is basically the structure of a language and how ideas/statements/sentences are formed in a given language. Specifically we will be talking about programming languages and the common syntax.

Variables and Types

Almost all languages use Variables to store data. We also briefly go over Variable Type and how the role it plays in programming as well as Constants. This will also include a overview of common data types.

Scope and Namespace

It is important to understand the scope of variables and statements. We must also be aware of the idea of namespace.

Common Structures of Programming (Control Flow)

Related Topics

Learning a Programming Language

We will go over some resource and simple tips for learning a new language and will go over the concept of Hello World.

Preparation

Please read or do the following before this session.

Resources

Further Resources

Tasks

  • Please note the links in the Session Details above You do not have to read all of the articles outlined on this page, but please familiarize yourself with them.
  • Read Get Started with Programming

Post Assignments

  • none
Personal tools
Using this Wiki