Limited Time Only -- 40% Off Sale

C# Programming (Beginner)

Lesson 1

Introduction ...What You Need

In this module we are introduced to the instructor of the course and we discuss what software is required and how to use it.

• Video Runtime: 11m 58s

Lesson 2

Creating Your First C# App

In this module we will create our first Windows Form Application using various user interface controls including labels, textboxes, buttons and pictureboxes.

• Video Runtime: 17m 28s

Lesson 3

User Interface Controls ...The Radio Button

In this module we will become acquainted with naming conventions for the interface controls and how to use radiobuttons in a simple application

• Video Runtime: 16m 11s

Lesson 4

User Interface Controls ...The Scroll Bar and More

In this module we look at how to use Scroll Bars and the Numeric Up Down control. Then we discuss how to use the menu control. We conclude by working with multiple forms

• Video Runtime: 17m 46s

Lesson 5

Entering and Outputting Data ...The Concept of Storage

In this module we will: Become acquainted with the concept of computer storage Use variables and data types (int,double/string) Work with assignment statements Create a simple program which uses assignment statements Discuss the scope of variables

• Video Runtime: 18m 4s

Lesson 6

Math Operators

In this module we will: Work Arithmetic operators Learn about the Math class (so we can calculate square roots and powers. Learn to use the modulus operator % and integer arithmetic (eg 5/2 doesn't equal 2.5) Learn to cast...and know the difference between (double) 5/2 and (double) (5/2) Learn to convert numbers to strings and strings to numbers Create a simple Bank Savings program

• Video Runtime: 17m 27s

Lesson 7

Mathematical Applications

In this module we will: Learn to reference the Microsoft Visual Basic inputbox Create a program which determines the average of a set of numbers Apply the concepts learnt to solve a number of practical mathematical problems (see Resources)

• Video Runtime: 16m 11s

Lesson 8

Creating A Business Application

In this module we will: Create a practical applications Venus Motor Sales Learn to display numbers in currency format

• Video Runtime: 18m 28s

Lesson 9

Entering and Outputting Data ...Your Turn

In this module we will: Practice what you have learned by trying the MathAppProblem (located in resources)

• Video Runtime: 17m 32s

Lesson 10

Selection Part 1 ...The IF statement and Boolean Operators

In this module we will: Look at IF statement and write programs which utilize this structure. Guessing numbers game Ticket Sales based on age Quiz Marking program Look at relational operators == != > < Look at Boolean operators && ||

• Video Runtime: 16m 48s

Lesson 11

Selection Part 2 ...Practical Application

In this Module we will: Look at a practical application of selective processing by creating a program to calculate a Gas Utility bill which uses tiered pricing.

• Video Runtime: 15m 26s

Lesson 12

User Defined Dialogs

In this Module we will: Look at one of the ways a programmer can create a program that is user-friendly. To achieve this aim will will accept input via a dialog box. Work through examples that obtain input using Built In and User Defined (custom) Dialogs.

• Video Runtime: 19m 14s

Lesson 13

Repetition Part 1...The While Loop

In this module we will: Look at the concept of repetition (another name for loops) and its use in practical applications. Look at the use of the While Loop Look at user controlled repetition Look at counter controlled repetition

• Video Runtime: 19m 12s

Lesson 14

Repetition Part 2 ...User and Counter Controlled

In this module we will: work through counter controlled repetition problems work through user controlled repetition problems work through for loop problems

• Video Runtime: 18m 21s

Lesson 15

Repetition Part 3 ...Counters and Accumulators

In this module we will: Look at the difference between counters and accumulators Create several programs which determine averages using user controlled repetition with an inputbox using a user controlled repetition with a custom dialog Combine our knowledge of Selective and Repetitive programming to create a large scale solution to a averaging problem.

• Video Runtime: 16m 34s

Lesson 16

Repetition Part 4 ...The Combo and List Box Controls

In this module we will: Look at the Combo box control Look at the List box control

• Video Runtime: 15m 22s

Lesson 17

The Software Life Cycle...The 5 Steps

Problem solving has been described as the process of finding certain information that is not known, from a set of information that is known. In other words, problem solving is not an end result but rather a process. The end result is only worthwhile if the process is followed. Problem solving is also an activity based on logic and, as such, requires some kind of structure to be present to aid us in our quest. In this Lecture we will look at some fundamentals in the problem solving process, and we will look at a problem solving model to help us as computer programmers - the software life cycle. Thoroughly understand the problem Break the problem down into its component parts Arrange the solution in a clear and systematic way Translate the solution into a computer language

• Video Runtime: 4m 44s

Lesson 18

Flowcharts

It would be unfair to ask anyone to solve problems without effective tools to help along the way. The nature of programming requires programmers to first solve the problem at hand, then create an ordered set of instructions that will teach the computer how to solve the problem. There are a variety of problem solving models that assist the programmer in the problem solving stage. In this module we will look at flowcharting a diagram, using symbols and arrows, which describes the solution to a computer problem in a step by step manner.

• Video Runtime: 9m 59s

Lesson 19

Error Handling and Debugging

Why do software companies keep sending you updates, patches and fixes? Computer programs that fail are common. By fail, we mean that a tiny error can cause a program to misbehave or crash. Most users are familiar with crashing, from our own experience with computers. We have all heard amazing stories about software glitches that cause banks to lose millions or spacecraft to crash. It may be impossible to guarantee that programs are error-free, but careful programming can help. A program may encounter problems as it executes. It may have trouble reading data, there might be illegal characters in the data, or an array index might go out of bounds. C# has built in error and exception handling that enables programs to deal with such problems. Programs can recover from errors and keep on running. In this Module we will Look at Syntax errors Look at Run-Time errors Look at Logic errors

• Video Runtime: 11m 6s

Lesson 20

Methods Part 1 ...Why Use ?

In this Module we will: Learn why and how to use subroutines or methods. Learn that a method is actually just a small program that can be called from with a program

• Video Runtime: 12m 19s

Lesson 21

Methods Part 2 ...Solving Practical Problems

In this Module we will: Practice using Methods to solve a number of practical problems

• Video Runtime: 19m 17s

Lesson 22

Introduction to Files

To this point, all the data that we have used when executing our programs has been entered from the keyboard. Similarly, all the output that has been produced from our programs has been to the screen. We must realize that not all input and output occurs this way, in fact, the majority of input for a computer program comes from data files that are stored on a disk or hard drive. When we create a document in a word processor, we see it on the screen; however, if we want to store that information, so that we can use or edit it at a later date, we must output the data to some secure storage medium. In the next few lessons, we will see how data storage and retrieval works. Data produced from a program as the result of successful processing, can be output to a file for storage, rather than simply to the screen. Once stored, the data can be accessed for further processing, used as input for programs, searched for specific information, sorted, updated ...you get the idea! Everyone using a computer deals with files. When you turn on your computer, the computer loads files. When you start a piece of software, the computer loads files. When you type solutions to the questions in this unit and save them (hopefully), the computer is saving or writing to a file. We use files to store information that is not being used by the computer at the present time. Can you think of any useful program that doesn't use files? Files are a very important concept to understand, because any really useful piece of software uses files. Even your video games store your high scores. In this Module we will Learn to read from a data file Look at some simple applications that uses a data file

• Video Runtime: 18m 30s

Lesson 23

Summative Programming Problem...Forensic Analysis

In this Module we will: Look at how to create a program using what we have learned during this entire section. This will include submitting all the required documentation and code which encompasses the 5 step model of problem solving. Give you a chance to try the 5 step model by solving the Forensic problem.

• Video Runtime: 12m 35s

Lesson 24

Introduction to Object Oriented Programming...Classes and Objects

In this Module we will: Introduce you to some of the basic concepts of object oriented programming Learn to differentiate between a class and an object Learn to create a class Learn about fields,properties,methods and constructors Learn how instances are created Create a simple application that use classes

• Video Runtime: 18m 28s

Lesson 25

Intermediate OOP Concepts ...Inheritance and Encapsulation

In this Module we will: Review the basic concepts of classes,objects,fields,properties,methods and constructors Look at the concept of encapsulation Look at the concept of Static Methods Look at method overloading Look at the concept of inheritance

• Video Runtime: 18m 0s

Lesson 26

Introduction to String Functions

In this Module we will: Be introduced to String class methods Determine the length of a string of text Extract a subset of characters from a string of text Create a program that performs a letter count

• Video Runtime: 19m 41s

Lesson 27

String Accumulators and Concatentation

In this Module we will: Introduce the concept of String accumulators and concatenation and show how they can be used to re-form strings and numbers. Discuss the importance of string manipulations in the real world

• Video Runtime: 18m 36s

Lesson 28

Code Validations Part 1 ...The Check Digit

In this Module we will: Introduce you to a practical application of Strings called code validations (in this case business product codes a pre-cursor to Cryptography

• Video Runtime: 17m 20s

Lesson 29

Code Validations Part 2 ...Credit Card Validation

In this Module we will: Challenge you to create a program which will validate a credit card number

• Video Runtime: 8m 21s

Lesson 30

Introduction to One Dimensional Arrays Part 1 ...Why Use

In this Module we will: Introduce the concept one-dimensional arrays, which are multi-part variables buckets containing other buckets. Discuss why they should be used Learn how to declare, store , calculate and display the contents of an array structure.

• Video Runtime: 17m 37s

Lesson 31

Introduction to One Dimensional Arrays Part 2 ...Practice

In this Module we will: Practice the One Dimensional Arrays concepts we learned in the previous lecture

• Video Runtime: 17m 10s

Lesson 32

One Dimensional Array Application ...Class Statistics

In this Module we will: Create a one-dimensional array application involving student marks that will determine the average mark and highest/lowest marks

• Video Runtime: 15m 33s

Lesson 33

The Bubble Sort

In this Module we will: Discuss the concept of sorting and why arrays are necessary to create an efficient program. Introduce a number of sorting techniques including the bubble sort.

• Video Runtime: 18m 55s

Lesson 34

One Dimensional Array Counters

In this Module we will: Introduced to the concept of array counters and why they are used. Code a simple application which uses array counters

• Video Runtime: 18m 27s

Lesson 35

Introduction to Two Dimensional Arrays ...Why Use?

In this Module we will: Introduce the concept of two dimensional arrays. Two dimensional arrays are useful for storing tables of information. They contain rows and columns of data which are the same data type. Discuss where and why they are used. Learn how to declare a two dimensional array, store values inside it, display the contents on screen and perform row and column calculations.

• Video Runtime: 16m 20s

Lesson 36

Two Dimensional Array Applications Part 1 ...Quiz Score Analysis

In this Module we will Use two dimensional arrays in a practical application We will create a program which performs an analysis of Quiz scores for a number of students and a number of quizzes.

• Video Runtime: 19m 2s

Lesson 37

Two Dimensional Array Applications Part 2 ...Supermarket Sales

In this Module we will: Give you a chance to test out your skills with a practical problem to try ...The Supermarket Problem

• Video Runtime: 19m 52s

Lesson 38

Introduction to Random Numbers Part 1 ...Probabilistic Simulations

As our programming experience becomes more complex and detailed, are you taking the time to help others? Do you visit the discussion area regularly to see if you can support those experiencing difficulty? By working and learning together, we can share the challenges as well as the successes. In this Module we will Introduced to the concept of random numbers Discuss where random numbers are used Write some simple application programs to demonstrate the concept.

• Video Runtime: 10m 26s

Lesson 39

Introduction to Random Numbers Part 2 ...Modelling Events

In this Module we will Use our knowledge of Random Numbers to simulate (model) a number of random event problems

• Video Runtime: 16m 27s

Lesson 40

Introduction to Random Numbers Part 3 ...Review and Extension

In this Module we will Review and extend our knowledge of Random numbers Look at a coin toss problem Look at a dice simulation

• Video Runtime: 19m 27s

Lesson 41

Application of Random Numbers Part 1 ...Plinko Game

In this Module we will Create a simple Math Game simulation Create the game Card Wars Create an simple probabilistic simulation of a pinball game (similar to the plinko game on the Price is Right).

• Video Runtime: 18m 1s

Lesson 42

Application of Random Numbers Part 2 ...Shooting Gallery Game

In this Module we will Practice what we have learned using random numbers and simulate a Shooting Gallery Game.

• Video Runtime: 7m 53s

Lesson 43

Random Selection Without Duplication ...Casino Roulette

In this Module we will Introduce to the concept of random selection without duplication. This involves games where repetition of winners is not allowed. Create an application (prizes) which utilizes the concept

• Video Runtime: 18m 22s

Lesson 44

Discrete Random Distributions ...The Dartboard Problem

In this Module we will Introduce to the concept of building discrete random distributions Create an application which utilizes the concept

• Video Runtime: 17m 6s

Lesson 45

Introduction To Graphics Part 1...The Graphics Class

In this Module we will Learn about the graphics coordinates of the screen Learn how to access (instantiate) and use the C# graphics class to draw lines,rectangles,ellipses and load images from a file Create a simple dice roll graphical simulation

• Video Runtime: 18m 42s

Lesson 46

Introduction To Graphics Part 2...Drawing on a Panel

In this Module we will: Learn how to draw on a Panel control Learn how to create any color using Color.FromArgb

• Video Runtime: 19m 46s

Lesson 47

Creating Bar Charts Part 1 ...The Concept of Scaling

In this Module we will use our knowledge of graphics and arrays to create a bar chart. Learn about the concept of scaling

• Video Runtime: 19m 39s

Lesson 48

Creating Bar Charts Part 2 ...Dice Roller Histogram Problem

In this Module we will put to use our knowledge of scaling and bar chart creation to display a histogram of an event involving rolling dice.

• Video Runtime: 15m 35s

Lesson 49

Mouse Events ...Creating an Etch A Sketch Program

In this Module we will Learn about the Mouse Events MouseDown, MouseUp and MouseMove Write several programs that incorporate mouse movement including a drawing program.

• Video Runtime: 19m 18s

Lesson 50

Animation Part 1 ...Timers and Image Arrays

In this Module we will Learn what timers are and how to use them Learn how to use an array of images using images placed in pictureboxes on the form using images stored in an external files

• Video Runtime: 16m 49s

Lesson 51

Animations Part 2 ...Creating Your Own Animations

In this Module we will: Learn how to extract frames of images from animated gifs that can be used in your animations Learn to create (draw) your own images that will become the individual frames of your animation

• Video Runtime: 17m 39s

Lesson 52

Animations Part 3 ...Sample Application ...Slot Machine Game

In this Module we will Look at two applications of in place computer animation Look at the Dice Roll Game Look at the Slot Machine Game

• Video Runtime: 13m 31s

Lesson 53

Animations Part 4 ...Moving Objects Across the Screen

In this Module we will Make our objects move across the screen using the .Top and .Left properties Discover how to check for the screen edges (top,bottom,left and right) Discover how to make an object bounce off the wall or reappear around the other side

• Video Runtime: 18m 2s

Lesson 54

Animations Part 5 ...The Car Race Challenge

In this Module we will Give you the challenge to create a simple two car race ...with some hints (help) of course !

• Video Runtime: 13m 55s

Lesson 55

Animations Part 6A ...Using the DrawImage Command

In this Module we will Learn about another way to move objects across the screen using the DrawImage command

• Video Runtime: 19m 16s

Lesson 56

Animations Part 6B ...Adding Transparency to Images

In this Module we will Learn how to create transparent gifs/png

• Video Runtime: 14m 22s

Lesson 57

Animations Part 7 ...Collision Detection and Keyboard Events

In this Module we will: Learn about the 4 requirements for collision Learn how to detect keyboard events using the KeyDown Event Create a simple application to implement both of these concepts

• Video Runtime: 19m 35s

Lesson 58

Animations Part 8 ...No Picture Boxes Just Image Files

In this Module we will Learn how to animate without using pictureboxes Learn that everything is an image object including the background Learn that instead of wiping the screen with the backcolor we now redraw the background graphic over the current state of the animation

• Video Runtime: 10m 38s

Lesson 59

Animation Part 9 ...Sound Effects

In this Module we will Learn how to incorporate sound into a C# program Learn how to use two techniques to create sound , the System.Media technique and using the Windows Media Player

• Video Runtime: 15m 1s

Lesson 60

Animation Part 10 ...Falling Objects Game

In this Module we will Learn how to create a simple Falling Objects game Learn how to incorporate image arrays for the falling objects to reduce coding Leave you with the challenge to create your own falling objects game

• Video Runtime: 19m 54s

Lesson 61

Advanced Animations Part 1 ...Double Buffering

In the Module we will Learn to use some advanced animation techniques including using double buffering to reduce screen flicker during game creation Create some simple animations incorporating double buffering

• Video Runtime: 16m 54s

Lesson 62

Advanced Animations Part 2 ...The Mouse, Panels and Double Buffering

In this Module we will Learn to use the mouse with double buffering Learn about double buffering on a panel

• Video Runtime: 13m 56s

Lesson 63

Advanced Animations Part 3 ...Creating a Game - The Basic Game Loop

In this Module we will Learn about the basic game loop While (game is runing) check for input (keyboard/mouse) update all objects in the game (position) draw all the objects in the game refresh the screen (force a repaint) Work through several sample games making incremental improvements as we go along

• Video Runtime: 19m 34s

Lesson 64

Advanced Animations Part 4 ...The Space Shooter Game

In this Module we will Create a Space Shooter Game Leave you with the challenge to create your own game

• Video Runtime: 14m 12s