It's Easy to Enrol

Select a Learning Method


£355.00 Payment plans available.

Enable Javascript to automatically update prices.

Courses can be started at any time from anywhere in the world!

Visual Basic.Net

Course CodeBIT101
Fee CodeS4
Duration (approx)100 hours
QualificationStatement of Attainment

Become a .NET programmer and lead the way to the future

This course provides a comprehensive introduction to Visual Basic.NET.

It assumes the student has no previous knowledge of Visual Basic .NET or computer programming.

By the end of the course, the student should be able to easily understand all the major aspects of Visual Basic .NET and use it to produce their own windows based applications.



Is this course right for me?
If you are a programmer experienced in html but want to complement your knowledge with this course is right for you. Visual basic combined with html can produce very sophisticated websites.

ACS student comments: I am finding the course very valuable it is keeping me focused and the content is excellent. I have a tendency to go off on tangents but the structure of the course keeps me on track.

Bill Anderson, Australia - Visual Basic .NET course.

Is this course right for me?
f you are a beginner and don't know anything about programming or If you are a programmer experienced in html but want to complement your knowledge with this course is right for you. Visual basic combined with html can produce very sophisticated websites.

Lesson Structure

There are 12 lessons in this course:

  1. Introduction
    • History of BASIC
    • What is microsoft .NET
    • Programs
    • Keywords
    • Sequence
    • Selection
    • Repetition
    • Methods
    • Object libraries
    • Writing programs
    • Integrated Development Environment
    • Your first program : Hello World
    • A console program
    • Hello World explained
    • A windows based program
  2. Variables
    • What are variables
    • Arrays
    • Hungarian notation
    • Kinds of variables (Data types)
    • Assigning variable values
    • Operator precedence
    • Strings
    • Hard coding variables
    • Programming exercise
    • Using variables
    • Comments
  3. Understanding conditional statements
    • Program flow and branching
    • Sequence
    • Selection
    • if statements
    • if...else statements
    • Nested ifs vs elself
    • The select statement
    • Repetition (looping)
    • For loop
    • While loops
    • Do loops
    • Evaluating conditions with boolean expressions
    • Comparison operators
    • And, or and not
    • Formatting code (indenting)
    • Programming exercise: countdownTimer1_Tick() explained
    • Button1_Click() explained
  4. I/O handling
    • What is a file
    • Data files
    • Program files
    • Saving files
    • I/O
    • Accessing files
    • Sequential files
    • Random files
    • Binary files
    • Opening files
    • Namespaces
    • Streamreader and streamwriter classes
    • Streams
    • Programming exercises: Writing a file (output), Reading a file (input)
    • Exercises explained
    • Reading files by line
  5. Controls and Objects : An Introduction
    • Controls
    • Objects
    • Programming exercises
    • Simple poker machine
    • Stepwise development
  6. Structured Programming using Modules
    • Modular program techniques
    • Top down vs bottom up
    • Modules and methods
    • Methods
    • Method header
    • Parameters
    • Arguments
    • Cohesion and coupling
    • Variable scope
    • Local vs global variables
    • Passing values
    • Procedures vs functions
    • Programming exercise: Simple calculator
  7. Properties, Methods, Events and Classes
    • Objects and classes
    • OOP concepts
    • Fields, properties, methods and events
    • Encapsualation, inheritance andpolymorphism
    • Overloading, overriding and shadowing
    • Access levels
    • Constructors and destructors
    • Programming exercise: Cat class
  8. Inheritance
    • What is inheritance
    • When to use inheritance
    • Inheritance rules
    • Inheritance modifiers
    • Overriding properties and methods
    • MyBase
    • MyClass
    • Programming exercise: club members
  9. Polymorphism
    • What is polymorphism
    • Using polymorphism
    • Programming Exercise: Club members
  10. Using Controls
    • Types of controls
    • Button
    • Label
    • Text box
    • List box
    • Combo box
    • Check box
    • Radio button
    • HScroll bar
    • VScroll bar
    • Picture box
    • FolderBrowserDialog
    • Group box
    • Timer
    • Using controls
  11. Debugging
    • Programming errors
    • Types of bugs
    • Syntax errors
    • Logic errors
    • Runtime errors
    • Finding bugs
    • Breakpoints
    • Trapping Errors with Try ... Catch
  12. Developing a Complete VB.NET Application
    • System development lifecycle
    • System request
    • Analysis and design
    • Programming
    • Testing and acceptance
    • Installation, implementation
    • Maintenance
    • Using interface design (UID)
    • Appendix 1 Glossary of Visual Basic .NET Terminology
    • Appendix 2 Visual Basic .NET Resources

Each lesson culminates in an assignment which is submitted to the school, marked by the school's tutors and returned to you with any relevant suggestions, comments, and if necessary, extra reading.


When you input data into a computer the data is stored in the computer’s memory. To visualise this, you might think of the computer’s memory as millions of little boxes, each holding a single value. Normally, each box is numbers starting at zero. The actual number of boxes depends on the amount of memory. When data is put in to the computer, the computer puts the data into one of the boxes that make up memory. For the computer to know in which box the values should be stored, and how to refer to a box that makes sense with a programme, we require variables.

Variables are simple memory boxes with names. You, the programmer, supply these names.

Variable are extremely valuable entities as they can represent almost any value, including numbers; this means that you can use them in mathematical operations.

Because text display is so important in computing, Visual Basic.NET has a number of functions and commands that manipulate text. This enables you to join two or more strings into one, find the length of a string, or convert numbers to strings or strings to numbers.

Arrays enable you to store many values under a single variable name. An arrays subscript identifies each element of the array. To easily access each element of the array within a loop you use a numerical variable for the arrays subscript. By declaring an array with a Dim statement Visual basic.NET knows how large an array should be.



Developed by Charles Simonyi from Microsoft, Hungarian Notation is a naming convention used to help programmers define and (more importantly) identify variable data types by a short abbreviation at the beginning of the variable name.

There are many advantages with using Hungarian Notation. These include:

  • The ability to quickly and easily debug programs
  • The ability for teams of programmers to work on the same code without getting confused by the names of variables
  • Mnemonic value, allowing the programmer to easily remember the name of a variable
  • Efficient creation of variable names. By using Hungarian Notation, the time taken to ponder over an effective name for a variable is dramatically reduced.

Hungarian Notation uses a set of ‘naming rules’ to ensure that all of the above advantages (and many more) are realised:

  • Convenient punctuation is used to define a variable type and name. For example strName represents a string variable that will contain data on a person’s name.
  • Simple data types are named by short tags that are chosen by the programmer. This ensures the variable names to not become too long, making them more prone to typographical errors which could result in bugs. A short tag also reduces the time it takes to type out the variable, making the programmer more efficient. For example intPhone would be better to use than integerPhone. As the variable names are determined by the programmer, each programmer may differ on their preferred views of how to use Hungarian Notation. For example, one programmer may declare a variable as curAccountbalance and another may declare it as currAccountBalance (note the extra ‘r’ in curr). Both of these examples fit within the conventions of Hungarian Notation.

As you can see, Hungarian Notation is an extremely useful convention.

It is not required to program in VB (or any other language) but it is highly recommended to get into the habit of using the convention to make your programs easy to debug and modify (by yourself and other programmers). By understanding the different data types, you will realise how useful Hungarian Notation is.

By the way, the reason Hungarian Notation is named as such is due to the facts that Microsoft programmers who first saw it commented that the variables looked like they were in a language that was non-english and also that the creator Charles Simonyi was Hungarian.



There are different types of variables for different types of data. Below is a list of the most commonly used variable data types and what they are used for.

Integer variables

The bog-standard integer can store whole numbers in the range -32,768 to 32,767.

Long integer variables

A kind of super-duper integer, which can store whole numbers in the range -2,147,483,648 to 2,147,483,647.

Single-precision floating point variables

Used to store fractions and similar, in the range of -3.402823E38 to 3.402823E38.

Double-precision floating-point variables

Another super-duper kind of variable, used to store very, very large fractions with high accuracy. (Any number between -1.79769313486232E308 to 1.79769313486232E308).

Just as you can assign a value to a variable, you can assign one variable's value to another. For example, look at the following piece of code:

intYourscore = 19000

intHighscore = intYourscore

The first statement sets intYourscore's (an integer) value to 19000.

In the next statement, to be executed after the first, intHighscore's value is set to equal intYourscore's value. Therefore, both variable would contain exactly the same value.

You can do more than that though. Say, you want to set one variable's value to be 100 more than another's. The following code does just that:

dblWorkerSalary = 1000

dblBossSalary = dblWorkerSalary + 100

From the above example dblBossSalary will equal 1100.

Now each time those two statements are executed, dblBossSalary (a double precision floating point variable) will be set to be 100 more than dblWorkerSalary i.e 1100

If dblWorkerSalary = 300 in the first statement then dblBossSalary will equal 400 in the second statement.

Other mathematical operators could be used to produce the same or similar results, such as:

dblWorkerSalary = dblBossSalary - 100

The same as above only written differently

dblBossSalary = dblWorkerSalary - 100

Sets dblBossSalary to be 100 less than dblWorkerSalary. (An unlikely event)

dblBossSalary = dblWorkerSalary * 2

Sets dblBossSalary to be 2 times more than dblWorkerSalary. (A more likely event)

dblBossSalary = dblWorkerSalary / 3

Sets dblBossSalary to be a third of dblWorkerSalary. (An extremely unlikely event)

Now say you wish to increase a variable's value by 100. The following will increase dblBossSalary by 100.

dblBossSalary = dblBossSalary + 100

When the statement is executed, the value of dblBossSalary + 100 is calculated first, and only after that the answer is stored in dblBossSalary. The net effect is that dblBossSalary is increased by 100.

Any mathematical operator can be used on itself. For example, the following will double the variable's value:

dblBossSalary = dblBossSalary * 2


In real life programming, standard integers are used for the most part - Other data types such as floating-point variables are rarely used.


Strings are special variables that store text, words, phrases, sentences and the like. For example, if you type a letter in a word processor, the letter itself is held in a string variable in the computer's memory.

To store text in a string, you have to enclose it in quotes, and assign it to a string variable. For example, the following statement will store the phrase I'll be back in the strCliche string variable.

strCliche = "I'll be back"

The string variable strCliche now contains the phrase I'll be back, without the surrounding quotation marks. The quotation marks are only there to indicate where the text begins and ends.

As peculiar as it may sound, string variables can be added. Look at the following three statements:

strWord1 = "car"

strWord2 = "pet"

strWord3 = strWord1 + strWord2

The result is that strWord3 would contain "carpet". (without the quotes, of course)

Because string variables contain text, and not numerical values, the two strings are added together, one after the other, to form one string. (In string math, "car" + "pet" = "carpet")

More than one string can be added at a time. For example, if the code were changed to:

strWord1 = "car"

strWord2 = "pet"

strWord3 = "My " + strWord2 + " got " + strWord1 + "sick."

c$ would now contain "My pet got carsick", because all those strings were added together, one after the other. String variables (such as strWord1) and normal strings (such as "got") may be added together.

Note the use of spaces - There is a space after My in the "My " and one space before and one after got in the " got " string, these are put there to separate the text My from pet and got from pet and car respectively. There is no space in the sick string so that it forms up with the car to become carsick.

Take a note:

* Strings can ONLY be added, and not subtracted. strWord3 = strWord1 – strWord2 is meaningless and will only result in Visual Basic giving an error message.

To set a string variable to nothing (to remove all the text it contains), set it equal to ""

Eg: If you want to clear strName's contents,

strName = ""

strName will now contain nothing.

This works according to the following principle:

The quotes are there to indicate where the new text a$ should contain starts and ends.

strName = "John"

strName will now contain the word John.

In the first example the string variable strName will still exist. It will be empty, containing nothing, but it will still exist.


Learning to Program is More than just Technical Skills 

Writing quality software programs is more than just writing code. Programming is just one part of a process, which includes steps in analysis, design, testing, maintenance etc. 

The Systems Development Life Cycle (SDLC) is a methodology that is widely used in developing software; from large scale, multi-million dollar developments through to small boutique implementations. It is often tailored to suit the size of the project, and helps to ensure that time and costs are minimised, while accuracy and quality is maintained. 

In a well organised software development project, the actual writing of the program code should ideally take less time and effort than any other phase of the project. If the system has been properly analysed and designed, writing the code is almost automatic, and the testing and implementation takes less time. The saying “measure twice, cut once” reflects this thinking.  However, it is possible to spend too much time on analysis and design. In this course, we will guide you toward understanding what is an appropriate approach to undertaking a programming task; from all perspectives. 



When you look around at the positions vacant for jobs, there is one career in IT that holds the most value and knowledge, Computer Programming.

A Computer programmer gains the essential skills that are the foundations of all the IT disciplines. Computer programmers are the ones who write the rules and make what the IT industry is. All software, networks, databases etc have one thing in common, they all have architecture that is build by programmers.

Learning a programming language is like learning to speak a foreign language, it is difficult at first to understand, but with practice and learning it is something that can be rewarding and useful. 

Your skills that you gain from completing this course are used world wide by many different industries in many different fields, there are industries that have not even emerged yet that will require people who have programming skills.

Do yourself a favour and Jump on the ride of the future and gain the necessary skills that could change your life.

Meet some of our academics

Dr. Sherif SakrResearch Scientist and University Lecturer in Computer Science and Engineering. Sherif has a PhD in Computer Science, MSc, BSc.
Josiane JoubranCSC consultant with IBM, Software QA Engineer, Course Writer and Tutor. Josiane is an I.T professional with extensive experience with computer hardware and engineering in Lebanon and Australia. Josiane has a B.Eng., Grad.Dip.I.T., Master Info.Tech., MCP, MCSE.

Check out our eBooks

Business OperationsExplore how to improve the management and profitability of an existing business. Businesses do not run themselves - goals need to be set and decisions need to be made in order to achieve business goals. This book talks you through all of the different aspects involved in running a business from finance and forecasting to staffing changes and legal issues. Six chapters cover the daily challenges of running a business, people, the law, finance, product management, and risk management. 73 pages
Getting Work in a Modern WorldA realistic guide to getting a job or starting out in business. This is a must read; for students, parents, the unemployed, careers advisors or anyone interested in changing or forging a sustainable career.
Modern MarketingThis book explores new approaches to marketing, how to adapt to a continually changing world both through online marketing, and more. Some aspects of marketing never change; but many of the well established approaches used in the past simply do not work any more. This book lays a foundation for thinking about marketing in a different way
ManagementManagement is the process of planning, organising, leading, and controlling an organisation’s human and other resources to achieve business goals. More importantly though, effective management needs to be a process of human interaction and compassion. Most bad managers don’t know they are bad. They may well admit that they are a bit erratic, or they are sometimes late to appointments, but it is rare that they will recognise that they are ineffective as managers. Never here. This book has something to offer even the best of managers.