Writing Clean Code

Posted By: ELK1nG

Writing Clean Code
Last updated 7/2021
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 1.36 GB | Duration: 4h 38m

Implementing maintainable, readable and easy to understand code in any programming language

What you'll learn

Writing maintainable, readable code

Writing clean code

Learn best techniques for writing understandable code

Learn to write smaller, reusable functions

Learn the concepts of single responsibility principle

Requirements

Familiarity with Swift Language

macOS Catalina or later

Xcode 12 or later

Passion for learning new principles

Description

In this course, you will learn how to write Clean Code. Clean code refers to the code that is easy to understand and maintain in the long term. This course is language independent, which means you can use any programming language to follow along.Let’s take a look at the contents of the course.NamingIn this section you are going to learn how to name your variables, functions, classes etc. This is one of the most important sections of the course and it sets the tone for the whole course.FunctionsIn this section, you will learn how to write reusable functions. You will also learn how to write smaller functions which do only a single job, following the single responsibility principles.CommentsIn this section, you will write how to write good comments and how to avoid bad comments. I am going to show you when you should write comments and when you can remove comments and let your code speak for itself.Objects and Data StructuresIn this section, you will learn multiple ways of writing the same code. First you will implement the code using Object Oriented Principles and then you will implement the same solution using Data Structures.Error HandlingIn this section, you will learn how to handle errors in your application. You will also learn when it is suitable to return nulls from a function and when it is not. Unit TestingIn this section, you will learn how to write tests for your application. Unit tests allow you to better architect your app and by using test driven development principles you will end up with better and cleaner code.ClassesIn this section, you will learn how to implement Classes in your application. You will learn how to name your classes and how to make sure your classes are small and bounded by context.This is a great course and after finishing this course, you will be able to write cleaner and more maintainable code.Let’s get started!

Overview

Section 1: Introduction

Lecture 1 Introduction

Lecture 2 Credit

Lecture 3 Exercise Files

Lecture 4 Course Agenda

Section 2: How to Name your Variables, Functions and Classes

Lecture 5 Writing Good Names

Lecture 6 Naming Variables - Example 1

Lecture 7 Naming Variables - Example 2

Lecture 8 Naming Variables - Example 3

Lecture 9 Naming Variables - Example 4

Lecture 10 Naming for Classes and Functions

Section 3: Comments

Lecture 11 How to Write Good Comments?

Lecture 12 What are Bad Comments

Section 4: Functions

Lecture 13 Writing Small Functions to Do Just One Thing

Lecture 14 Return Paths

Lecture 15 Function Arguments - Less is More

Section 5: Objects and Data Structures

Lecture 16 Hiding the Implementation Details Through Abstraction

Lecture 17 Data/Object Anti-Symmetry

Lecture 18 Writing Plain Dummy Objects for Network Transfer

Lecture 19 Understanding ORM Generated Classes for Database Interaction

Section 6: How to Throw and Handling Errors

Lecture 20 Throwing Exceptions

Lecture 21 Example 1 - Error Handling

Lecture 22 Example 2 - Error Handling

Section 7: Unit Tests Using Test Driven Development

Lecture 23 NOTE: Important Information about this Section

Lecture 24 What is TDD?

Lecture 25 Why should you use TDD?

Lecture 26 What you should test and what you should not?

Lecture 27 When should you use TDD?

Lecture 28 Common misconceptions about TDD

Lecture 29 Rules of writing good test

Section 8: Test Driven Development Life Cycle

Lecture 30 Understanding the scenario

Lecture 31 Writing your first unit test

Lecture 32 Adding test for depositing money to bank account

Lecture 33 Challenge: Write a unit test to withdraw amount from a bank account

Lecture 34 Solution: Write a unit test to withdraw amount from a bank account

Section 9: The SOLID Principles

Lecture 35 Class Organization

Lecture 36 Classes Should be Small

Lecture 37 Understanding Cohesion

Lecture 38 Open-Closed Principle - Example 1

Lecture 39 Open-Closed Principle - Example 2

Lecture 40 Dependency Injection

Section 10: Conclusion

Lecture 41 Next Steps

Lecture 42 Bonus Lecture

Developers who wants to learn how to write clean code,Developers who wants to take their skills to the next level,Developers who are passionate to learn new techniques to improve their code