Companies Home Search Profile

Core Coding Principles

Focused View

DevFluence .

8:52:45

132 View
  • 1 - CoreCodingPrinciples-Notes-v1.02.pdf
  • 1 - Introduction.html
  • 2 - Welcome to Core Coding Principles.mp4
    02:33
  • 3 - Axioms What are they why talk about them.mp4
    05:15
  • 4 - Axiom 1 Managing Complexity is at the Heart of Software Development.mp4
    06:20
  • 4 - Brooks-NoSilverBullet.pdf
  • 5 - Axiom 2 Code is Required for any Sufficiently Complex Problem.mp4
    02:47
  • 6 - Axiom 3 Coding is High Read Low Write System.mp4
    03:53
  • 7 - Lemma 1 Code Quality Matters.mp4
    01:23
  • 8 - Axiom 4 We can use Lenses to Evaluate Code.mp4
    08:02
  • 9 - House of Lenses How Lenses Relate to One Another.mp4
    10:32
  • 10 - Brooks-NoSilverBullet-1.pdf
  • 10 - Notes Further Reading and Exercises.html
  • 10 - jb rainsberger no silver bullet and the fundamental theorem of agile software development.zip
  • 11 - Introduction What are Values.mp4
    06:01
  • 12 - Communication.mp4
    09:23
  • 13 - Simplicity.mp4
    05:33
  • 14 - Flexibility.mp4
    05:01
  • 15 - End Note.mp4
    01:39
  • 16 - Notes Further Reading and Exercises.html
  • 17 - Introduction.mp4
    00:56
  • 18 - Coupling Overview.mp4
    03:11
  • 19 - Types of Coupling Semantic and Data Coupling.mp4
    01:29
  • 20 - Semantic Coupling 1 Content Coupling.mp4
    02:53
  • 21 - Semantic Coupling 2 Common Coupling.mp4
    01:28
  • 22 - Semantic Coupling 3 Subclass Coupling.mp4
    02:27
  • 23 - Semantic Coupling 4 Temporal Coupling.mp4
    01:38
  • 24 - Semantic Coupling 5 Control Coupling.mp4
    02:00
  • 25 - Semantic Coupling 6 External Coupling.mp4
    04:53
  • 26 - Data Coupling 1 Data Stamp Coupling.mp4
    02:43
  • 27 - Data Coupling 2 Simple Object Coupling.mp4
    01:42
  • 28 - Data Coupling 3 Simple Data Coupling.mp4
    02:03
  • 29 - Cohesion.mp4
    08:30
  • 30 - Encapsulation.mp4
    01:59
  • 31 - End Note.mp4
    02:42
  • 32 - Notes and Further Reading.html
  • 32 - article on cohesion from pragpub archives.zip
  • 32 - article on coupling from pragpub archives.zip
  • 32 - coupling and cohesion discussion on ward cunninghams wiki.zip
  • 33 - What is Refactoring.mp4
    05:15
  • 34 - The Practice of Refactoring.mp4
    05:54
  • 35 - Refactoring Demo 1 Rename.mp4
    05:52
  • 36 - Refactoring Demo 2 Move.mp4
    05:07
  • 37 - Refactoring Demo 3 Delete.mp4
    01:38
  • 38 - Refactoring Demo 4 Extract and Inline.mp4
    09:47
  • 39 - Refactoring Demo 5 Summary and Thoughts.mp4
    03:08
  • 40 - Notes Further Reading and Exercises.html
  • 40 - RefactoringExercise1.zip
  • 40 - martin fowlers refactoring web site a refactoring reference.zip
  • 41 - Worked Example Tennis Refactoring Kata Intro.mp4
    08:19
  • 42 - Worked Example Tennis Refactoring Kata Extended.mp4
    28:16
  • 43 - Cyclomatic Complexity and Nesting.mp4
    09:25
  • 44 - Demo Part 1 Refactoring a Sample Project to Reduce Cyclomatic Complexity.mp4
    46:23
  • 45 - Demo Part 2 Move Parameter to the Constructor Introduce Better Types.mp4
    01:12:18
  • 46 - Demo Part 3 Further Reduce Parameters by Introducing a Class.mp4
    21:25
  • 47 - Demo Part 4 Final Test Refactorings Introducing a SUT Builder.mp4
    27:09
  • 48 - 1989-04-CyclomaticComplexityArticlep64.pdf
  • 48 - Further Reading and Extercises.html
  • 48 - reducing nesting google blog post.zip
  • 49 - Introduction.mp4
    02:51
  • 50 - Local Consequences.mp4
    02:11
  • 51 - Minimize Repetition.mp4
    00:39
  • 52 - Symmetry.mp4
    02:57
  • 53 - Declarative Expression.mp4
    04:20
  • 54 - Rates of Change.mp4
    01:54
  • 55 - Summary.mp4
    01:24
  • 56 - 1-Exercise-PrinciplesToValues.zip
  • 56 - Exercise-MedicineImport.zip
  • 56 - Further Reading and Exercises.html
  • 57 - What is DRY and what is it not.mp4
    03:49
  • 58 - Common Duplication Forms.mp4
    03:35
  • 59 - Pitfalls of DRY.mp4
    02:52
  • 60 - Notes and Further Reading.html
  • 60 - dry.pdf
  • 60 - orthogonality and the dry principle a conversation with andy hunt and dave thomas.zip
  • 61 - Introduction Kent Becks Formulation.mp4
    02:54
  • 62 - Martin Fowlers Formulation.mp4
    01:57
  • 63 - JB Rainsbergers Formulation.mp4
    02:02
  • 64 - Applying the Four Rules of Simple Design.mp4
    02:03
  • 65 - Notes Further Reading and an Exercise.html
  • 65 - RomanNumerals.zip
  • 65 - jb rainsbergers the four elements of simple design article.zip
  • 65 - martin fowlers formulation of becks design rules.zip
  • 66 - Introduction.mp4
    01:24
  • 67 - Single Responsibility Principle.mp4
    07:20
  • 68 - Exercise Single Responsibility Priciple.html
  • 68 - SRP-TotalPerProductCalculator.zip
  • 69 - OpenClosed Principle.mp4
    10:10
  • 70 - Exercise OpenClosed Principle.html
  • 70 - github repository the gilded rose refactoring kata by emily bache.zip
  • 71 - Liskov Substitution Principle.mp4
    06:32
  • 72 - LSP Example Invariants.mp4
    08:42
  • 73 - LSP Example Pre and Post Conditions.mp4
    09:41
  • 74 - LSP Furthur Thoughts.mp4
    06:12
  • 75 - Exercise Liskov Substitution Principle.html
  • 76 - Interface Segregation Principle.mp4
    05:51
  • 77 - Dependency Inversion Principle.mp4
    10:52
  • 78 - Summary and Final Thoughts.mp4
    09:17
  • 79 - Notes Further Reading and an Exercise.html
  • 79 - pablos solid software development ebook.zip
  • 79 - solid software development one step at a time by derek bailey code magazine 2010 januaryfebruary.zip
  • 79 - venkat subramaniam core design principles for software developers.zip
  • 80 - A Word on Clean Code.html
  • 81 - What is Clean Code.mp4
    02:13
  • 82 - The Scout Camp Rule.mp4
    02:06
  • 83 - Guidelines for Cleaning Code.mp4
    02:40
  • 84 - Coding Standards.mp4
    08:32
  • 85 - Naming Introduction.mp4
    01:25
  • 86 - Naming A Four Stage Process of Naming.mp4
    03:36
  • 87 - Naming Guidelines General.mp4
    06:58
  • 88 - Naming Guidelines Classes.mp4
    01:49
  • 89 - Naming Guidelines MethodsFunctions.mp4
    01:53
  • 90 - Naming Finding Names.mp4
    02:17
  • 91 - 001-Chilli-Talk-Naming-is-hard.mp3
  • 91 - Naming is Hard ChilliTalk Podcast Episode.html
  • 92 - Functions Introduction.mp4
    02:13
  • 93 - Functions Principles.mp4
    02:26
  • 94 - Functions Keep them Small.mp4
    01:44
  • 95 - Functions Naming and One Level of Abstraction.mp4
    03:47
  • 96 - Functions Parameters.mp4
    03:29
  • 97 - Functions More General Principles and Recap.mp4
    04:39
  • 98 - Comments Intro.mp4
    01:30
  • 99 - Comments Why are they Dangerous.mp4
    02:15
  • 100 - Comments When to use When not to Use.mp4
    06:52
  • 101 - Notes Further Reading and Exercise.html
  • 101 - cleancode-exercise.zip
  • 101 - five ways to improve your code youtube video by dave farley.zip
  • 101 - naming as a process a series of articles by arlobelshee.zip
  • 101 - sample c coding style guide from the net source code repo.zip
  • Description


    This course is for developers who want to improve their ability to write good, clean, maintainable code

    What You'll Learn?


    • Understand why code quality is important and how it enables effective software development
    • Describe key coding principles such as cohesion & coupling, DRY, and the SOLID principles
    • Improve your reasoning ability about code quality by using a variety of lenses
    • Write cleaner, more readable, more communicative, more flexible code than before
    • Discuss code quality ideas amongst a team and be able to, as a team, work towards agreement on a team’s coding standards

    Who is this for?


  • C# Developers who are wanting to improve their ability to write good, clean, maintainable code
  • More details


    Description

    The course is for developers who are looking to improve their ability to write good, clean, maintainable code. In it, we cover key coding principles that help to develop a language for discussion within the team. These include coupling and cohesion, the SOLID principles, DRY.

    Note: the course examples and exercises are in C#, but the theory covered is applicable in all OO languages.

    Goals -

    • To get developers thinking about code quality

    • To provide developers with the tools they need to discuss and evaluate code quality

    • To get developers to build alignment about what “good” code is

    • To provide developers with some guidelines about how to go about writing better code


    Course Structure -

    The following topics are covered:

    • Preparation – what is the team’s existing understanding of good code?

    • Lenses for Thinking about Code Quality - Thinking about programming like Kent Beck:

    • Core Values of Software Development

    • Key Principles

    • The Four Rules of Simple Design

    • Cohesion and Coupling

    • DRY

    • SOLID Principles:

    • Single Responsibility Principle

    • Open-Closed Principle

    • Liskov Substitution Principle

    • Interface Segregation Principle

    • Dependency Inversion Principle

    • The Practice of Writing Clean Code:

    • Coding Standards

    • Meaningful naming

    • Functions

    • Comments

    Learning Outcomes

    At the end of this course developers will be able to:

    • Understand why code quality is important and how it enables effective software development

    • Describe key coding principles such as cohesion & coupling, DRY, and the SOLID principles

    • Reason about code quality using a variety of lenses

    • Discuss code quality ideas among a team and be able to, as a team, work towards alignment and agreement on the team’s coding standards

    • Write cleaner, more readable, more communicative, more flexible code than before

    Who this course is for:

    • C# Developers who are wanting to improve their ability to write good, clean, maintainable code

    User Reviews
    Rating
    0
    0
    0
    0
    0
    average 0
    Total votes0
    Focused display
    DevFluence .
    DevFluence .
    Instructor's Courses
    Our courses have been developed by DevFluence, a professional software development school that is a division of Chillisoft. Chillisoft is an established software development house that is known for our high quality, software professionalism and our excellent delivery track record. Chillisoft set up DevFluence to share the pragmatic lessons that have we learned in writing and delivering software, whilst working with international software teams and businesses for more than 13 years. DevFluence’s vision is to make Software Professionalism a reality in the world of work. This is achieved by ensuring that our team and our offerings actively embody our vision statement – “the courage to create value for myself, my customers and my community.”Our vision statement recognises that software competency is directly dependent on fulfilling an individual’s internal drivers of motivation. It also recognises the individual agency and voice of a software developer who has to deliver value within an existing culture. DevFluence recognises the courage of business and software developers who deliberately commit to instilling practices that enables continual learning for career growth.All Our Instructors:● Have a minimum of 10 years of solid software development experience ● Are current software practitioners● Are trained to teach, listen and communicate● Are engaged in the software community
    Students take courses primarily to improve job-related skills.Some courses generate credit toward technical certification. Udemy has made a special effort to attract corporate trainers seeking to create coursework for employees of their company.
    • language english
    • Training sessions 85
    • duration 8:52:45
    • Release Date 2023/01/01