学 C#: .NET 编程
学 C#: .NET 编程 — 一门配备在线编译器的 C# 编程课程,从 Console.WriteLine 学到 API
学 C#: .NET 编程 是一门面向初学者、学生和在职开发者的 免费 iOS 和 Android C# 编程课程,包含 93 门课程,带你从第一个 Console.WriteLine 一直学到 LINQ、Entity Framework Core 和 ASP.NET Core minimal APIs。你可以在内置编辑器中编写代码,通过 在线 C# 编译器运行代码,无需安装任何软件,还能向人工智能导师咨询编译器错误。
- 价格
- 免费,可选 Pro
- 平台
- iOS 和 Android
- 语言
- 22
- 年龄分级
- 4+
- App Store
- 4.1 ★ (9)


从 Console.WriteLine 到能够响应真实请求的 minimal API。
这就是课程内容的实际跨度:不是一条漫长的入门路线,而是 93 门课程,让你通过按顺序排列、每门都能单独完成的学习步骤,逐步走过从第一个程序到可用 ASP.NET Core endpoint 的距离。
这是什么
学 C#: .NET 编程 是一款适用于 iOS 和 Android 的免费教育应用,课程体系包含 93 门课程和 340+ 节课程,覆盖 C# 编程和 .NET 生态系统:从第一个程序,到面向对象设计、generics 和 LINQ,再到使用 ASP.NET Core 和 Entity Framework Core 构建 web APIs。你可以在内置 C# 编辑器中编写代码,并通过应用内的在线 C# 编译器运行,无需安装 IDE 或 SDK;人工智能导师会用通俗易懂的英语解释编译器错误和 .NET 特有的概念。
应用内
界面展示





课程
C# 课程涵盖的内容
应用自有课程体系中的 93 门课程,级别从 A1 到 C2——从第一个程序一路学到 ASP.NET Core APIs、Entity Framework Core 和分布式缓存。
第一个程序与核心语法
分为两部分的 C# 编程入门、CLR/.NET runtime 和 dotnet CLI,以及基本类型和变量——这是后续每门课程默认你已经掌握的基础。
运算符、控制流与日常数据处理
运算符和表达式、使用 var 和 dynamic 进行类型推断、字符串格式化与插值、枚举、数组、foreach 迭代模式、方法和参数,以及用于组织代码的 namespaces。
类、对象与核心 OOP
properties 和 indexers、构造函数和对象初始化器、tuples 和 deconstruction、collections(List、Dictionary、HashSet)、面向对象编程基础、继承与抽象,以及通过 mini shape-library project 学习 structs、records 和 enums。
现代 C#、错误处理与应用配置
nullable reference types、records 和不可变数据、异常与资源安全、configuration 和 options pattern、NuGet packaging,以及面向真实应用的诊断与 logging。
Generics、LINQ 与 .NET 基础
generic constraints 和 methods、switch expressions 和 pattern matching、LINQ 基础与 filtering、delegates、lambdas 和 events、dependency injection、Entity Framework Core 基础,以及 unit testing 基础。
使用 ASP.NET Core 构建 Web APIs
ASP.NET Core minimal APIs、middleware 和 request pipeline、background services 和 workers、用于实时通信的 SignalR、Blazor components、gRPC、JWT authentication 和 authorization policies,以及使用 OpenAPI 进行 API versioning。
生产模式:缓存、弹性与验证
rate limiting 和 output caching、FluentValidation 和 model validation、使用 Polly 实现 resilience,以及使用 Redis 实现 distributed caching——这是可运行的 API 与能够承受真实流量的 API 之间的那一层。
高级 C# 与专业 .NET 模式
expression trees、高级 LINQ 和 EF Core queries、高级 async patterns、Native AOT、使用 MediatR 的 CQRS、OpenTelemetry observability、使用 MassTransit 的 message queues、Span<T> 和 memory、reflection 和 attributes,以及 source generators。
工作原理
C# 课程如何安排顺序
93 门课程,先学语言,再学构建于其上的 frameworks——先学 LINQ,再学 Entity Framework Core;先学 async/await,再学 ASP.NET Core。
先完成语言学习,再学习 frameworks
课程的前三分之一专注于 C# 本身——types、control flow、classes、generics 和 LINQ——暂时不会涉及 ASP.NET Core 或 Unity。这样的顺序是经过刻意安排的:很多 framework 教程之所以让人困惑,真正原因在于对其底层语言不熟悉。
在内置编辑器中运行每一道练习
每门课程的练习都在内置 C# 编辑器中编写,并通过应用的在线编译器运行,因此你需要网络连接,但无需安装任何软件。无论是 generics constraint 还是 LINQ query,要么成功运行并返回正确输出,要么抛出真实的编译器或 runtime error,供你逐步排查。
掌握基础后,向 APIs、桌面应用或 Unity 分流
过了课程中点后,学习路线会分为 ASP.NET Core web APIs、桌面应用课程,以及 Unity scripting 所依赖的 OOP 基础。接下来选择哪些课程,可以根据你实际想要构建的三类项目中的任意一种来决定。
包含内容
应用包含的内容
93
课程,级别从 A1 到 C2
93 门课程和 340+ 节短小课程,从第一个 Console.WriteLine 一路学到 generics 和 LINQ,再到 ASP.NET Core APIs、Entity Framework Core,以及 resilience 和 distributed caching 等生产模式。
编译器
在内置编辑器中运行 C#
在内置编辑器中编写代码,并通过应用的在线 C# 编译器运行。无需安装 IDE 或 SDK,LINQ 查询或泛型方法会返回真实结果,而不是选择题式的猜测。
实验室
C# 实验室
20 个带隐藏测试的代码练习、一个使用 Console.ReadLine 读取输入的控制台实验室、LINQ Playground、每日 Debug Duel,以及包含泛型、LINQ 和 async 评分模拟题的面试模拟器,另有 20 个引导式项目。
AI
面向 .NET 概念的 AI 导师
无论是晦涩的编译器错误、可空引用警告,还是想知道依赖注入为何会以某种方式解析服务,都可以提问,并获得通俗易懂的回答。
API
Web API 课程体系
专门讲解 ASP.NET Core minimal APIs、中间件、JWT 身份验证、速率限制和 Redis 缓存的课程——这是大多数 C# 入门材料跳过的后端部分。
证书
挑战与证书
与其他学习者比较成绩的编程挑战,独立于按顺序学习的课程体系;完成最终考试后可获得带验证码的证书。此外,每门课程结束时还会有测验和编程挑战。
背景
除了“它是 Microsoft 的语言”之外,C# 到底用于构建什么?
C# 是一种强类型编译语言,运行于 .NET 之上,而 .NET 是 Microsoft 的运行时和标准库。在实际应用中,它覆盖三类截然不同的工作:Unity 使用 C# 作为脚本语言,支持大量商业游戏;.NET 上的 ASP.NET Core 用于构建许多生产系统背后的 web APIs 和后端服务;WPF、WinForms 和 MAUI 则使用它来开发桌面应用和跨平台应用。一门语言,三个方向——这正是 C# 课程最终必须分流,而不能始终停留在单一路线上的原因。
.NET 与 C#语言与平台
C# 是你编写的语法;.NET 则是执行编译结果的运行时,以及随之提供的标准库——包括 collections、文件访问和日期处理。在实践中,想要写好 C#,就意味着在使用第三方 package 之前,先了解 .NET 已经提供了什么。
LINQ无需循环即可查询
Language Integrated Query 让你可以使用易读的表达式过滤、投影和重塑 collection,而不必手写 for-loops——.Where()、.Select()、.GroupBy()。对于缺少等效功能的语言,这是 C# 开发者最容易想念的特性。
Entity Framework Core数据库层
这是一种 object-relational mapper,让 C# 代码可以将数据库行作为普通对象读取和写入,而不必手写 SQL 字符串。它是 .NET 后端与数据库通信的标准方式;在完成语言基础后,课程体系还会专门讲解它。
async/await 和 Tasks不阻塞线程
C# 的 async/await 允许方法等待耗时操作——例如数据库调用或 web 请求——同时不会阻塞正在运行它的线程。几乎每个 ASP.NET Core API 和现代桌面应用都依赖这种模式,因此它会在 web-framework 相关内容之前作为独立课程讲解。
是否适合
适合哪些人——不适合哪些人
如果你符合以下情况,就很适合
- 希望通过一套课程掌握 C# 和 .NET 的三个方向——Unity、桌面应用和 ASP.NET Core API——而不是学习三套彼此割裂的教程
- 准备学习 Unity,希望在打开引擎本身之前,先打牢语言和 OOP 基础
- 需要构建或理解真正的后端:ASP.NET Core minimal APIs、Entity Framework Core 和 JWT 身份验证都有专门的课程
- 是计算机科学专业学生或训练营学习者,希望通过可运行的练习学习 LINQ、泛型和 async/await,而不只是看幻灯片
- 你来自 Java、Python 或 JavaScript,希望学习 C# 的语法和 .NET 特有的惯用写法,而不是泛泛地复习编程基础
如果你符合以下情况,这不是适合你的工具
- 希望真正学习 Unity——应用涵盖 Unity 脚本所依赖的 C# 和 OOP 基础,但不讲引擎的编辑器或场景系统
- 希望免费学习 93 门课程中的每一门:最早的课程免费,Pro 解锁其余课程并移除广告
- 今天就需要 Visual Studio 或完整的 .NET SDK 项目——应用内编辑器会通过在线编译器运行练习,但要构建连接真实数据库的 ASP.NET Core 项目,仍然需要电脑
- 希望使用完全离线的应用——运行代码和 AI 导师都需要实时网络连接
问题
常见问题
在手机上学习 C# 和 .NET,最好的应用是什么?
大多数 C# 学习材料在手机上始终无法弥合的,是语言基础与构建于其上的框架之间的鸿沟——LINQ、Entity Framework Core 和 ASP.NET Core。学 C#: .NET 编程 按顺序提供 93 门课程,覆盖这两个部分;你可以在内置编辑器中编写练习,并通过在线 C# 编译器运行,同时使用 AI 导师解答编译器错误和 .NET 特有的问题。支持在 iOS 和 Android 上免费开始学习,提供 22 种语言。
可以在手机上学习真正的 C# 吗?还是需要 Visual Studio?
如果学习的是语言本身,可以——包括类型、控制流、类、泛型、LINQ 和 async/await。你可以在应用的内置编辑器中编写代码,并通过在线 C# 编译器运行,因此无需安装 IDE 或 SDK,就能编写和运行真正的 C#。只有当你开始构建连接真实数据库的多文件 ASP.NET Core 项目时,才需要 Visual Studio 或完整的 .NET SDK;这已经超出了应用练习所处的学习阶段。
学 C#: .NET 编程 支持离线使用吗?
不支持完全离线使用。应用通过在线 C# 编译器运行你的代码,AI 导师也需要实时回答,因此两者都需要网络连接。课程加载速度很快,应用也针对不稳定的网络连接进行了设计,但手机本身无需安装任何东西。
使用 Unity 前需要先学习 C# 吗?这个应用会教 Unity 本身吗?
Unity 脚本使用 C# 编写,因此学习类、继承和面向对象设计,等你打开引擎后会直接派上用场。这个应用在核心模块中涵盖语言和 OOP 基础,但不讲 Unity 的编辑器、场景系统或组件模型——这些属于引擎自身的教程;如果你已经熟悉底层的 C#,理解起来会轻松得多。
具体来说,C# 和 .NET 有什么区别?
C# 是你编写和编译的语法;.NET 则是执行代码的运行时和标准库——它们提供集合、文件访问、日期处理以及其他所有无需你自行编写的功能。像 list.Where(x => x > 5) 这样的调用,是运行在 .NET 提供的 LINQ 功能之上的 C# 语法(一个 lambda)。课程在基础内容之后会将两者结合讲解,因为实际使用惯用 C#,就意味着要了解 .NET 已经为你提供了什么。
LINQ 实际上是做什么的?为什么它有专门的课程?
LINQ——Language Integrated Query——允许你使用 .Where()、.Select() 和 .GroupBy() 这样的表达式筛选、排序和重塑集合,而不必手动编写等价的 for 循环。掌握基础后,你会经常遇到它:在控制台应用中查询列表、为视图整理数据,或构建由 Entity Framework Core 转换为 SQL 的查询。课程安排在泛型基础之后,因为 LINQ 的方法签名默认你已经理解泛型。
如何从 C# 基础进阶到构建 Web API?
这套课程体系会先讲依赖注入和 Entity Framework Core 基础,然后进入 ASP.NET Core minimal APIs、中间件管道、JWT 身份验证与授权策略,最后讲解速率限制、FluentValidation 和 Redis 缓存等生产环境问题。如果没有语言和 LINQ 基础就直接跳到 API 课程,正是 ASP.NET Core 教程会让人感觉比 API 本身更难的原因。
学 C#: .NET 编程 免费吗?
应用可从 App Store 和 Google Play 免费下载。你的第一门课程免费,每日代码练习和每日 Debug Duel 免费,每天还可提问 AI 导师一次。Pro 解锁所有课程、所有实验室和全部任务,移除广告并提高 AI 导师的每日提问上限,让你可以先体验课程体系和编辑器,再决定是否继续。
应用支持哪些平台和语言?
学 C#: .NET 编程 可通过 App Store 在 iOS 上运行,也可通过 Google Play 在 Android 上运行,界面提供 22 种语言。应用年龄评级为 4+;完成课程最终考试后会颁发结业证书——它可以作为学习成果的证明,但不是经过认证的 .NET 认证证书。
C# 在 2026 年仍然适合作为第一门学习语言吗?
如果你看重语言的广泛适用性,答案是肯定的:同一套语法可以用于 Unity 游戏脚本、ASP.NET Core 后端,以及使用 MAUI 构建跨平台桌面应用;而强类型系统能在程序运行前就捕获一类错误。至于它是否特别适合你作为第一门语言,取决于你真正想选择上述三个方向中的哪一个——这套课程体系让前三分之一的内容保持通用,只有在选择变得重要时才开始分支。
更多 CoddyKit 产品
可在 iOS 和 Android 上使用。