是什么让C#成为最值得学习的编程语言

随着 Web、iOS、Android、智能设备的流行,新的编程语言纷纷涌现并表现不俗,如 Ruby,Python,Scala。Go,Node.js,Swift 等。反观已经发展了近20年的 C# 语言(或者这里应该更准确的说是 .Net Framework),由于天生的平台局限,导致非常多的 C# 程序猿为了生计和前途纷纷转行投入的新语言的怀抱。

 

就在此时,微软的 .Net Core 横空出世

  1. 跨平台:能够在 Windows、MacOS 和 Linux 上执行。
  2. 兼容性: .NET Core 通过 .NET 标准库与 .NET Framework、Xamarin 和 Mono 兼容。
  3. 开源:执行时、库、编译器、语言和工具都是 GitHub 的开放源码。

  4. 统一:通过标准库来保证代码复用。
  5. 强大的生态环境

依据以上 .Net Core 所具备的优势,无疑是给以 C#(包含VB.NET)作为首选编程语言的project师的一剂强心针。

下面将从6个方面阐述为什么 C# 成为最值得学习的编程语言,甚至能够说 C# 是给初学编程最值得推荐的语言。

 

学习门槛低

假设你以前做过 C、Java 或者是 JavaScript 的编程。那么你会感觉对 C# 的语法感到非常熟悉,C# 的语法非常的easy阅读和理解。

依据最新公布的 TIOBE 统计,有数以百万计的开发者能够轻松地从 Java 或 C语言编程切换到 C# 语言编程。

即使你全然没有不论什么的编程经验,大量的书籍和在线文档也不是新兴语言能够比拟的,另外还有非常多在线资源能够帮助你学习 C#。如:

 

具备现代语言的全部特点

.NET Core 有一些顶级功能:

  • 强类型。
  • 强大的基类库。
  • 异步编程 - 易于使用的异步/等待模式。
  • 垃圾收集,自己主动内存管理。
  • LINQ - 语言集成查询。
  • 泛型 - List<T>,  Dictionary<T, T>。

  • 包管理。
  • 跨多个平台和框架共享二进制文件的能力。

  • 使用的框架来创建 MVC Web 应用程序和 RESTful API。

 

多功能性:Web,移动。server,桌面应用

关于 C# 和 .NET 的最出众的一点就是它的多功能性。Xamarin 能够编写桌面应用程序,Web 应用程序,后台服务。甚至移动应用程序。除了 C#,我真正须要知道的仅仅是少量的 JavaScript 来将一些 UI 代码集中在一起。ASP.NET Core 模板甚至使用 Bootstrap 布局和 npm 来存入client库。

多功能性是一个非常大的优势,这样你所学的语言就能够用于各种各样的场景中。你的技能适用性就更强。假设你想组合所做的东西,就能够从开发 web 应用程序跳转到开发移动应用程序。对于仅仅能在server端工作的大多数其他编程语言,这是一个非常大的差别。

同一时候,也请不要忘记 Microsoft Azure 的支持。

Microsoft Azure 让启动和执行变得如此简单,仅仅需点击几下就可以将应用部署到云端。

Microsoft Azure 还支持 Docker 容器。能够轻松地将应用程序部署到 AWS 或其他托管提供商。

 

最好的开发工具(没有之中的一个)

Visual Studio 一直被视为适用于开发者的最佳 IDE,微软已经公布了最新的 VS 2017 用来支持 .Net Core,在一个环境中支持代码编写、调试、分析、git 集成、单元​​測试等功能。Visual Studio 如今提供了功能齐全的免费社区版本号。

 

当然,也能够使用自己喜欢的文本编辑器。作为编写 .NET Core 代码的基本文本文件。

你也能够在不论什么操作系统上将 Visual Studio 编码工具当做一个良好的基本代码编辑器。即使对于那些永远不会放弃 vim 或 emacs 的人来说,依然能够做 C# 开发。

你还能够为 Visual Studio 安装一个插件,来加入全部喜欢的快捷键。

整个 .NET 生态系统也充满了令人惊奇的开发者工具。比如,我无法想象没有 Jetbrains 中的 Resharper 的生活。

.NET 生态系统存在数十种极好的的工具,既包含开源的,也包含商业产品的。

 

标准化类库

.NET 带有了一套非常好的基类库。与 Node.js 不同。.NET 内置了简单的字符串函数,如 LeftPad()。各种各样的基础类降低了对外部包的需求。Microsoft 也乐于像 JSON.NET 这种社区项目一样,成为大多数项目中广泛使用的关键库。

Microsoft 为 .NET 提供了一套非常好的模式和实践。

比如,有内置的标准数据訪问(实体框架)和模型 - 视图 - 控制器(MVC)框架。大多数开发者都在使用这些标准框架,这使开发者能够轻松地在团队之间迁移,并高速了解项目的工作原理。正式由于这一点,你的知识和技能才变得更加具有适用性。

 

.NET Core 是开源的

.NET 发生的最大变化之中的一个,就是其开源了代码。

差点儿全部的代码如今都在GitHub上,供不论什么人查看。分享和贡献。

这是一个巨大的变化,大多数人从未想过会发生。

作为开发者,你须要不时的了解你的代码正在做什么。

比如,过去须要通过调用数据库连接的 Dispose( ) 来确认是否关闭了连接。如今你能够訪问源码,来高速验证这些类型的问题。

即使你没能对源码做出贡献。你也能够从巨大的社区中受益。问题和改进能够高速讨论,编码和公布,以便你定期使用。那些须要花费数年等待公布重大改进或小错误修复的时代已经过去了。

 

总结:微软 .Net Core 的推出,无疑给具备庞大基数的 .Net 平台开发者们,提供了绝佳的机会,能够预见,在未来的几年内,使用 C# 语言基于 .Net Core 平台开发势必成为流行。葡萄城控件​也紧跟.NET的发展趋势,致力于为广大.NET平台开发者提供高品质的控件产品。

 

原文链接:https://dzone.com/articles/why-net-core-made-c-your-next-programming-language

原文地址:https://www.cnblogs.com/llguanli/p/7344036.html