WHY STUDY C#?
What is so good about C#?
In 2000, popular languages were either too complex or too slow to run. C# was developed as a solution, to be faster, but not so complex.
C# is now the most used language for leveraging the .NET Framework. As such, learning C# is a springboard to creating enterprise systems, desktop applications, websites, and mobile applications.
C# has the following advantages:
- Works across multiple platforms (desktop, mobile, web)
- Open source and cross-platform (using .NET 5)
- Approachable (to C++ and Java developers)
- Object oriented (with many functional features)
COURSE CONTENT
This course has twelve lessons.
1. Introduction to C# and the .NET Framework
- The C-Family Programming Languages
- What is Microsoft .NET?
- Program Fundamentals
- Writing Programs
2. Variables
- What are Variables?
- Operator Precedence
- Arrays
- Strings
- Programming Exercises
- Adding Comments to Your Code
3. Conditions and If Statements
- Sequence
- Selection
- Evaluating Conditions with Boolean Expressions
- C# Conditions and If Statements
- Iteration (Looping)
- Programming Exercises
4. Input/Output (I/O) Handling
- What Is a File?
- Saving Files
- I/O
- More About Data Files
- Opening Files
- Streamwriter and Streamreader Classes
- Programming Exercises
5. Controls and Objects – an Introduction
- Objects and Controls
- Programming Exercise
- Stepwise Development
6. Structured Programming Using Modules
- Modular Program Techniques
- Modules and Methods
- Cohesion and Coupling
- Variable Scope
- Procedures Vs. Functions
- Programming Exercise
7. Properties, Methods, Events and Classes
- Object-Oriented Programming
- Classes and Objects
- Object-Oriented Concepts
- Access Levels
- Constructors and Destructors
- Programming Exercise
8. Inheritance
- What is Inheritance?
- When to Use Inheritance
- Creating Derived Classes
- Programming Exercise
9. Polymorphism
- What is Polymorphism?
- Using Polymorphism
- Types of Polymorphism
- Programming Exercise
10. Using Form Controls
- Types of Controls
- Adding Controls
- Layout of Controls
- Using Controls
11. Debugging
- Programming Errors (Bugs)
- Type of Bugs
- Finding Bugs
12. Developing a Complete C# Application
- Systems Development Life Cycle
- User Interface Design
- Creating an Executable Program
- Uses of C# and Other Extensions
Learn to be a Better Programmer?
Being able to write computer code is only the first step in becoming an outstanding programmer. Excellence requires experience, accuracy, speed, passion and dedication to follow a process.
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. The purpose of these steps is to gain a clear understanding about what the program is supposed to do, and to ensure all stakeholders are in agreement on that point.
How this Course might Help You
This course sets you on the right path to develop your capacity to be an excellent programmer. A 100 hour course like this cannot (obviously) do the same as what a full certificate, diploma or degree might; but it can give you a foundation, and an awareness of what you need to do moving forward.
- For those who already know some computer programming, it can broaden the languages you can work with.
- For anyone who already has a very basic understanding of C#, it can strengthen your C# skills
- Others who have little or no experience with programming, can use this course as a starting point, to lay a foundation, testing their potential to learn and build up to becoming a competent programmer, whether through experience or further studies (or both), after completing this course