C# Intermediate Programming : Applications Driven Approach (Udemy.com)
A great way learn to how to solve real problems using Winforms in C#. More videos and exercises than any Intro course
Created by: Charlie Chiarelli
Produced in 2022
What you will learn
- Program fluently in C# using Microsoft Visual Studio
- Understand how to create a basic Windows Form Application ... No Console Apps
- Understand the basic concepts of Selection, Repetition, Methods and Exception Handling
- Understand the intermediate concepts of Arrays (one,two,three dimensional), Random numbers,Object Oriented Programming, String handling
- Understand the advanced concepts of Recursion, Sorting and Searching Techniques, Database Programming using SQL, Graphics and Animation Techniques
- Apply the programming skills learned to create meaningful computer applications from the world of Business, Science, Math, Cryptography, Graphics and Gaming
- Create Business applications which incorporate sorting, searching, data analysis and connecting to a database
- Create Science applications which incorporate probabilistic and deterministic simulations
- Create Social Studies applications (Geography) which incorporate table
Quality Score
Overall Score : 86 / 100
Live Chat with CourseDuck's Co-Founder for Help
Course Description
Our focus will be working with Visual Studio on Windows machines .
A language like C# is typically learned "in a vacuum," and stripped of potentially distracting visual elements or front-end graphical interfaces. This type of learning process - which is considered the standard approach - is great for communicating the fundamentals. It allows you to focus on the most important and basic programming concepts you will need to understand, and is often presented through the output of a static, text-based console window. However, learning a language in this console vacuum can also be bland and boring, and can often lead to students becoming disengaged entirely.
Students are more likely to remain engaged by learning how to build Windows applications from day one in tandem with learning the C# programming language. Therefore, my lectures are designed to keep you engaged with the process of learning C# fundamentals by presenting them through a series of lessons aimed at creating simple, Windows Form based applications.This course, by jumping right into apps with a Graphical User Interface, allows the learner to feel like they are learning concepts that produce a tangible result.
The first section of the course serves as a primer/refresher to get everybody up to speed.This course assumes absolutely nothing about what you already know, and skips no steps in getting you to know Windows Forms. It walks you carefully through every possible feature you can imagine, and has in its source code hundreds of existing projects you can learn from, or expand on to make your own project. It's worth sifting through a dozen mediocre Udemy courses to find a gem like this. It's pretty close to a one stop shop for taking you from knowing nothing about WinForms, to building your own applications.
This course has more hours of video instruction (30 + hours) , lectures (146+) and exercises and supplemental resources (326+) than virtually any other Introductory C# course offered on Udemy. All for one low price.
Students will be exposed to all the stages in software development and develop problem-solving skills as well as learn the syntax of the C# language.
The challenges/applications are drawn from a variety of situations in the home, school and workplace. They address a wide spectrum of interests including:
- Business
- sorting
- searching
- data analysis
- connecting to a sequential and relational database (SQL)
- Science
- probabilistic simulations (using random numbers)
- deterministic simulations (using concepts from physics and math... Plinko Game )
- Social Studies (Geography)
- Distance between two cities Table Lookups
- Country Telephone codes
- Math
- hidden pitfalls of computer arithmetic in real world applications
- famous mathematical algorithms and their applications (Euclidean Algorithm)
- solving mazes and puzzles using the concept of recursion
- Cryptography
- validating codes like SIN (social insurance numbers) , VIN, ISBN
- coding and decoding messages using classical encryption techniques
- a peek into more advanced techniques (Steganography)
- Graphics
- creating a program that plays a classical memory game on a 4x4 grid
- creating applications utilizing drag and drop events
- Gaming
- animation basics
- using a back buffer (double buffer) to improve flicker
- creating simple 2d games using keyboard and mouse movement and incorporating sound effects
My goal is not just to show you how to program, but to help you understand what you are doing, and why you are doing it . But,having said that, I will try to present the material in such a way that we don't get too hung up on rigid standards. Once you get a feel for the material you could certainly get more serious and take a university or college course or take a more advanced online course.
Not only do the videos show you how to become a programmer in great detail, but each time an important concept is taught, I offer you a challenge that is designed to help you really understand what you have just learned.
You will go away and complete the challenge, and then come back and see the challenge answered and explained in detail in the video, allowing you to check your results! I am online daily to respond to any problems you may encounter.
Here's how I will help you to succeed:
o Each lecture starts with a list of objectives/speaking notes
o Every example covered in the lecture is available for download in the resources section including the objectives/speaking notes
o Almost every lecture has a set of Practice problems with full solutions provided
o My style of writing and teaching follows the KISS principle : Keep It Super Simple. I try to stay away from fancy computer terminology and try to teach like am speaking to a brand new user with little to no previous knowledge on the subject matter.... and I am always available for help replying most times within a day.
... and finally, this is NOT a static course, updates are made several times a month, with new lectures and challenge problems added on a continual basis.Who this course is for:
- This course is meant for individuals who are somewhat familiar with basic C# syntax or any other programming language but who would only consider themselves slightly above beginners. This programming course is meant for ANYONE WHO WANTS TO LEARN TO CODE . We cover C# syntax but more importantly we introduce the problem solving skills necessary to convert practical problems to solutions in code. The first section of the course serves as a refresher to get everybody up to speed.
- Not sure you have enough background to take the course ? Then I would recommend taking my first course "C# Programming for Beginners:Practical Applications Approach" before attempting this course
Instructor Details
- 4.3 Rating
- 99 Reviews
Charlie Chiarelli
Hi, my name is Charlie Chiarelli. I'll be your teacher for this course. I will spend as much time as necessary to help you do the best you can. But, for you to succeed you must be willing to work .
I am a retired High school Computer Science and Mathematics Teacher from Canada. I taught for 35 years, I have a BMath degree from the University of Waterloo.
I was a frequent speaker at educational conferences (ECOO) and seminars . Most recently my talks focused on E-Learning and the future of education (Flipping the Classroom).
I was the school webmaster and served on a number of school board committee , recently advising my school board (Hamilton Wentworth Catholic District School Board) on its online learning direction. I was also the contest coordinator for the Annual Programming Contest for the past 15 years.
For the last 7 years before I retired I was in the unique position of teaching most of my computer science classes entirely online using the D2L LMS. Because of low enrollment and lack of qualified computer science teachers I became the "board" teacher. So my virtual class was made up of students from various schools in the region.
I am not a brilliant software engineer trying to teach programming. I am a high school computer science teacher that has taught teenagers for over 35 years. So I think my perspective and sensibilities are quite different than the typical Udemy instructor. I feel this gives me a great