Code organization and readability for the self-taught coder

Code organization and readability for the self-taught coder
Code organization and readability for the self-taught coder
English | MP4 | AVC 1280×720 | AAC 48KHz 2ch | 3.5 Hours | 467 MB

Learn code design so you don't get lost into your own code again. Learn how to write clean, readable code.

Learn how to organize the code of any software project so you will not get lost in your own code. Learn readable code good practices so you can produce clean, easy to understand code.

You learned a programming language syntax and want to build a great software project and are staring at your screen. Where and how do you start?

  • How to establish your projects' features?
  • How to turn them into code?
  • How to organize the flow of your program?
  • How to create your folders and files structure?
  • How to write clean code you can be proud about?

This course is not like usual beginners course. I will not rehearse what are variables, loops, classes, and functions. Instead, I will teach you a systematic method to make use of all these code structures to organize the code of any software project. This course might be your first step into the 'craft' aspect of programming.

Course overview
We will start at the beginning and explore a bit of programming history. Back in the late 70s, we will see the early attempts at solving the code organization problem and how it has evolved to today's paradigm. This is a unique opportunity for you to dig into programming history and learn fundamental and historical code design concerns: code coupling and cohesion.
I will then teach you the project analysis phase, where you will learn to establish the requirements of your project and develop them into use cases scenarios. At this point, you will be equipped with a very solid foundation to start coding.
Next, you will start the code design phase, where, guided by the analysis phase outcome, you will turn use cases into code. At each step of the process, you will be involved in a practice activity where you will be able to reproduce what I'm teaching with your own project.
Finally, I will teach you code readability good practices to help you produce easy to understand code. Quizzes will make sure the notions learned are well solidified into your brain.

Course benefits
At the end of the course, you will have a solid method to tackle any software project. You will be equipped with a systematic way to organize the flow of your code. You will be able to produce clean and readable code structures.
The concepts I teach in this course are so essentials, that you will be able to apply them immediately to ALL your software projects.

What Will I Learn?

  • apply a systematic approach to properly start any mobile, web or desktop software project
  • organize the flow of any program
  • organize projects' folders' structure, files names, and code
  • code high quality, readable and maintainable code
  • properly name variables and write good code comments
  • simplify their conditional structures
  • create good functions and classes
Table of Contents

Introduction
1 Introduction
2 Programming language syntax the tip of the iceberg
3 Code design and construction meta programming skills
4 How do you know when you are writing bad code
5 QUESTION ACTIVITY Why and How did you start coding Lets share our experience

A bit of coding history. Object orientation why
6 Intro Back to the 70s coding practices
7 Structured design where most code design concepts solidified
8 Coupling modules interdependence
9 Code Cohesion module internal relatedness strength
10 The next evolutionary step the object orientation paradigm
11 Conclusion what you have learned in this section

Project Analysis define the project requirements and outline
12 Intro start software projects on the right track
13 PROJECT ACTIVITY 1 Decide what you are going to build
14 Step 1 Project functional requirements
15 PROJECT ACTIVITY 2 Make a list of your projects requirements
16 Mockup your screens get a better idea of required coding features
17 PROJECT ACTIVITY 3 Mockup the screens of your project
18 Use cases and scenarios define the flow of your program
19 PROJECT ACTIVITY 4 Create the use cases of your project
20 Conclusion what you have learned

Code design write easy to find and well organized code
21 Intro dont get lost into your own code
22 In brief the tools I will be using
23 In brief Basic Python syntax
24 Naming explicitly your folders and files
25 PROJECT ACTIVITY 5 Create your folders and controllers files
26 The controller the backbone of your coding flow
27 PROJECT ACTIVITY 6 Create the controllers files
28 The controller building a real controller
29 PROJECT ACTIVITY 7 Populate the controllers with success path steps as comments
30 The controller other examples
31 Service providers Model objects services and utilities
32 PROJECT ACTIVITY 8 Identify your models and create the corresponding files
33 The view the user interface
34 Conclusion what you have learned
35 PROJECT ACTIVITY 9 Code the steps of your use cases

Code construction write readable code best practices and mistakes to avoid
36 Intro understand your own code
37 How to write good comments
38 How to properly name your variables
39 How to write easy to understand conditionals by....failing fast
40 When to use a while or for loop
41 Functions best practices... dont fear long functions
42 Classes best practices.... a class should have only one reason to change
43 Miscellaneous code construction advices.... dont use magic numbers
44 Conclusion what you have learned

Conclusion
45 Course Cheat sheet all the steps as a single document
46 Where to go next