Udemy

Software Design: Functional Programming in C#

立即報名
  • 2,182 名學生
  • 更新於 7/2020
  • 可獲發證書
4.0
(318 個評分)
CTgoodjobs 嚴選優質課程,為職場人士提升競爭力。透過本站連結購買Udemy課程,本站將獲得推廣佣金,有助未來提供更多實用進修課程資訊給讀者。

課程資料

報名日期
全年招生
課程級別
學習模式
修業期
4 小時 6 分鐘
教學語言
英語
授課導師
Engineer Spock
證書
  • 可獲發
  • *證書的發放與分配,依課程提供者的政策及安排而定。
評分
4.0
(318 個評分)
2次瀏覽

課程簡介

Software Design: Functional Programming in C#

Learn the principles of Functional Programming & how to apply them with the power of C# to improve software architecture

Learn how to write C# code in a functional style. The “Functional Programming in C#” is for you if you want to improve your code, design and architecture. It means you are going to learn how to write code of the high quality: readable, understandable and reliable.

Teaching Approach  

No fluff, no ranting, no beating the air. I respect your time. The course material is succinct, yet comprehensive. All important concepts are covered. Particularly important topics are covered in-depth.

Take this course and you will be satisfied.  

Learn Functional Programming in the context of clean coding and building types of high quality.  

  • Get Deep Understanding of what is Functional Programming  

  • Learn how to design Immutable types in C#  

  • Apply new C# 6 and C# 7 features to write better code in a functional style  

  • Learn how to Extend and Compose any Types  

  • Handle Errors and Exceptions in a functional programming style  

  • Tackle the Problem of Null-Values by the means of functional programming  

Foundations of Functional Programming  

Despite the fact that C# is primarily an object-oriented language, it is very powerful on features which enable functional programming style. In fact, C# is one of the richest on features language among object-oriented languages in the world nowadays. But with great power comes great responsibility. It's challenging to use all those features in a right way.  

You probably have already heard the following well-known statement: most code sucks. Well, this course is all about how to produce code which doesn't suck.  

Owning skills of producing well-designed and well-implemented types with regards to functional programming principles.  

Content and Overview  

This course is aimed at all the C# developers, from beginners to seniors. Topics which are covered in the course are relevant for all kinds of C# developers since all developers design and implement types. The topics complexity is very different. There are plenty of very simple topics, and at the same time, there are topics which require from you a solid C# background. There are plenty of code examples throughout this course, so you will learn both theoretical and practical material.  

  • We’re going to start with the theoretical foundations of the functional programming paradigm. You’ll learn what is Functional Programming and what are the benefits of applying that paradigm.

  • In the second section, we’re going to elaborate the core concepts of the functional programming. You’ll learn more about immutability, purity, side effects and expressions.

  • To write modern code in a functional style, you need to learn modern C# features appeared in C# 6 and C# 7.

  • We’re going to learn more about immutability in a separate section. This is a very important topic.

  • We’re going to learn how to extend types. You’ll see practical cases, you’ll learn about general extensions needed for functional programming.

  • After mastering the topic of types extending you will face the great problem of exceptions handling. Yep, it's a hard nut to crack. We will start from discussing a question of why we use exceptions as a mechanism of errors handling. And why C# team didn't invent any other mechanisms?

  • In the end, we will look at how to fight with null values. As you may know, Tony Hoar said that the invention of a null value was his billion-dollar mistake.

To sum up, the course covers the following topics:  

  • Theoretical Foundations of Functional Programming  

  • Core Concepts of Functional Programming  

  • Functional Features in C#  

  • Immutability in C#  

  • Extendibility in C#  

  • Dealing with Errors  

  • Dealing with Nulls  

------------------------------------------------------------  

Keywords related to the course:  

  • C# Clean Code  

  • C# Best Practices  

  • Functional Programming in C#  

  • C# Functional Programming  

  • Clean Code in C# tutorial

課程章節

  • 8 個章節
  • 64 堂課
  • 第 1 章 How to Ask Questions
  • 第 2 章 Introduction to Functional Programming
  • 第 3 章 Core Concepts
  • 第 4 章 Functional Features in C#
  • 第 5 章 Immutability in C#
  • 第 6 章 Extendibility in C#
  • 第 7 章 Dealing with Errors
  • 第 8 章 Dealing with Nulls

課程內容

  • Design and Implement Immutable Types
  • Implement Useful Extension Methods
  • Write Pure Functions (avoiding side effects)
  • Handle Errors in a Functional Style
  • Tackle with the Problem of Null-values in a Functional Style


評價

  • A
    Augusto Miranda
    5.0

    excelente

  • P
    Pascal Fortin
    4.0

    Full and detailed explanations, very good for beginners. On the other hand, the abundant repetition of the concept of immutability and its importance throughout the first sections is a bit boring. This emphasis should be limited to one or two lectures and the student should be trusted afterwards. Also, it would be interesting to see a section dedicated to the creation of a complete project, in which the author applies the concepts taught.

  • A
    Armando Rodríguez Ortega
    3.0

    proporciona información que puede ser útil para un mejor conocimiento de programación funcional, pero no proporciona forma de practicar este es solo un curso teórico sin módulos o vídeos que ayuden a practicar This course has useful information, but it haven't a way to practice, if you will try following the video you need to try to copy all the info and the most of the time you need other classes that you doesn't have a way to obtain it

  • W
    William
    1.0

    No one care my question.

立即關注瀏覽更多

本網站使用Cookies來改善您的瀏覽體驗,請確定您同意及接受我們的私隱政策使用條款才繼續瀏覽。

我已閱讀及同意