[本文内容仅个人观点,可能存在误解和不合适,欢迎在评论区友好分享你的想法]
为什么学 C#
C# 给我的第一印象就很好。它的代码看起来布局很工整,让我觉得很安心,而且我个人很喜欢大驼峰命名法,C# 是我见过的大驼峰命名法使用最多的语言,尽管变量等推荐小驼峰,但我还是会尽量用大驼峰。
C# 对我来说比较容易上手。我最初学过 C++,结果学了之后稍微放个一学期就不知道写什么了,就比如目前我已忘记怎么用 C++ 写 Hello World 了。确实,毕竟距离上次学习 C++ 已过了 5~6 年,而且当时也没学多久,产生不了灵感,忘记了应该很正常。C++ 给我一种越学越不想学的感觉,但 C# 就不一样了,越学越感兴趣,就越想学。学 C# 会让我感到快乐,到目前为止还没有放弃 C# 的念头,就足够了。但这也并不代表我只会学习 C#,其他语言我也会慢慢地去了解和学习。到现在我学 C# 已经有很长一段时间了,总算让我找到了点编程的感觉,希望可以帮助到我学习其他语言吧。
在我看来美中不足的是 C# 会编译为 IL 运行在 CLR 中,显得有点多余但确实又是必要的,如果 C# 能够直接编译为机器语言,起码就可以解决许多性能、可移植性等方面的问题,应该或许就会有更多的人学习,但同时肯定也会带来一些缺点,有利也有弊。
和 C# 的邂逅
我在小学六年级的时候慢慢接触编程领域,刚开始以为 C++ 写不出 UI 界面,只能写黑框框的控制台应用程序 (我也太傻了叭),所以就可能使我对 C++ 的第一印象造成了极大的误会。又因为当时我正对 HTML 前端感兴趣,所以就以 HTML 的语法自制了一个可以编写出 UI 的语言,当然只是在作业本上乱写而已,并没有开发出实体,所有的编译操作在自己的大脑里面运行。
对了说到这里,不知道大家会不会在脑海里时常幻想一些不复存在、很高级、但完全没有逻辑的代码片段,我就是这样的哈哈。
后来上了初中,我从 Minecraft JE 初次了解到 Java,那么为什么不学 Java 呢?因为我觉得 Java 程序不仅在运行时需要额外安装 JRE/JDK,其实这也是小问题,只是我不太能接受其占用的内存,因为我个人一向追求程序所占用的内存在不影响用户体验的情况下,能占最少就最少。虽然 Java 的语法和 C# 有很大的相似 (应该是 C# 和 Java 相似),我还是选择了 C#。当然 C# 也需要 .NET 的支持,内存占用相比 C++ 肯定也夸张,但好在现在的 Windows 10/11 系统一般都自带 .NET Framework 运行时,而且 .NET 最新版的内存占用已经经过优化了,可以稍微忽略这一点,就免得普通用户配置运行环境太麻烦的问题。那为什么不选择 Python 呢?不考虑语法结构和实用性的话,同样也是因为运行环境的问题,其实 Python 程序的内存占用还可以接受的。
当然以上并不是我在吐槽这些语言做的不好,我只是现在没有更深入的了解过这些语言,或许等以后我对它们有一定了解之后就不会有以上想法了。而且我自己平时也都在使用由这些语言开发的各种软件、小程序等,它们的使用体验与 C# 也是大同小异,这些语言能在 TOBIE 上有一定的名气就已经非常不错了,当然还有许多本文未提到的编程语言,它们同样各自有各自的实用性,都值得我们每个人去学习、尊重。
![](https://img-blog.csdnimg.cn/direct/2cc7d7df9c854b37b26909e5b6bbfca3.png)
![](https://img-blog.csdnimg.cn/direct/931487e40b8c40ee82e2526cc8f4f729.png)
最后随着 "命运的齿轮开始转动",同样在初中时期,我不知从哪里得知 C# 可以写 UI,就赶紧叫家里买了 C# 的参考书,自此以后我就将学习重心就逐渐转移到了 C# 上了。这参考书到目前也在使用,尽管我目前的学习来源大多从微软官网,但看书有时候也比看官网更简洁明了。
后来开始接触到了 WinForms、WPF,特别是 WPF,其设计 UI 专用的语言 —— XAML 的语法结构和我当年用 HTML 自制的语言的语法结构十分都有九分相似 (不愧都是 ML),难道这就是缘分吗?不过实际上要想真正掌握 XAML 还是有些难度的,目前我主要着手于 WinForms,在 UI 方面我也会优先考虑和 Windows 系统的常见窗口的排版、设计达到最大程度上的吻合。
总结
- C# 语法结构统一且容易理解,易上手,其 WinForms 框架对于简单的 UI 开发占用有非常大的优势
- C# 是 Unity 主要使用的脚本语言,因此使用它帮助开发 2D、3D 游戏可能是唯一的就业途径
- 如果对 UI 界面和高级功能讲究,可以选择 WPF,国内知名教育数字化应用及服务提供商希沃公司开发的希沃白板就是以 WPF 为框架的
- 很多人使用 Windows 系统且 10/11 占多数,C# 程序 (仅 .NET Framework) 可以在不安装运行库的情况下直接运行
为什么会有这篇文章
很简单,因为听到了太多关于 C# 的负面说法,有来自学校的,家人的,也有来自网络的,但这些负面情绪也并不会阻挡我继续学习 C#,我只是想分享一下我的观点,让他们知道 C# 没有他们想象中的那么糟糕,它可能只是单纯学它的人比较少罢了,但不可否认的是,C# 肯定既有优点也有缺点,我也并不歧视那些不会 C# 的人,相反我会非常羡慕和崇拜他们,因为他们能 Hold 住其他那么困难的语言,我也希望有朝一日我会成为他们那样的人。尽管 C# 在未来可能不会成为我的主要就业方向,但我认为,它有必要成为我的一门爱好,谁规定学编程就是为了赚钱呢。在我看来,就像这样保持浓厚的兴趣和一个乐观向上的态度才是最最重要的。