【编程思想】我与 C#

本文最后更新于:11 天前

[本文内容仅个人观点,可能存在误解和不合适,欢迎在评论区友好分享你的想法]

为什么学 C#

C# 给我的第一印象就很好。它的代码看起来布局很工整,让我觉得很舒适,而且我个人很喜欢大驼峰命名法,C# 是我见过的大驼峰命名法使用最多的语言,尽管变量等推荐小驼峰,但我还是会尽量用大驼峰。

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 系统一般都自带 .NET Framework 运行时,就可以避免普通用户配置运行环境太麻烦的问题。那为什么不选择 Python 呢?不考虑语法结构和实用性的话,同样也是因为运行环境的问题和其他原因,其实 Python 程序的内存占用还可以接受的。

当然以上并不是我在吐槽这些语言做的不好,我只是现在没有更深入的了解过这些语言,或许等以后我对它们有一定了解之后就不会有以上想法了。而且我自己平时也都在使用由这些语言开发的各种软件、小程序、脚本等,它们的使用体验也都非常优秀。当然还有许多本文未提到的编程语言,它们同样各自有各自的实用性,都值得我们每个人去学习、尊重。

数据来源于 TOBIE

数据来源于 TOBIE

最后随着 “命运的齿轮开始转动”,同样在初中时期,我不知从哪里得知 C# 可以写 UI,就赶紧买了 C# 的参考书,自此以后我就将学习重心就逐渐转移到了 C# 上了。这参考书到目前也在使用,尽管我目前的学习来源大多从微软官网,但有时候看书也比看官网更简洁明了。

初中时买的参考书

来开始接触到了 WinForms、WPF,特别是 WPF,其 XAML 的语法结构和我当年用 HTML 自制的语言的语法结构出人意料地相似。不过实际上要想真正掌握 XAML 还是有些难度的,目前我主要着手于 WinForms,偶尔学习一下 WPF,在 UI 方面我也会优先考虑和 Windows 系统的常见窗口的排版、设计达到最大程度上的吻合。

为什么会有这篇文章

很简单,因为听到了太多关于 C# 的负面言论,有来自学校的,家人的,也有来自网络的。原因基本上都是 “学 C# 找不到工作,工资低”。但这些负面情绪也并不会阻挡我继续学习 C#,我只是想分享一下我的观点,让他们知道 C# 没有他们想象中的那么糟糕,可能只是单纯学它的人比较少罢了。

但不可否认的是,C# 肯定既有优点也有缺点,我也并不歧视那些从未学习过 C# 的人,相反我会非常羡慕和崇拜他们,我也希望有朝一日我会成为他们那样的人。

尽管 C# 在未来可能不会成为我的主要就业方向,但我始终认为,它有必要成为我的一门业余爱好,谁规定学编程就是为了赚钱呢?将编程与赚钱相提并论未免有些太死板了。

一门编程语言本应是为开发者更高效地创造价值而诞生的,如今却被那些急功近利的人扭曲成衡量薪资高低的标准。这并非编程的初衷。编程的核心在于如何去解决实际问题,为社会带来积极的改变。当敲代码的手只是为了数钞票,那么敲出来的代码质量可想而知,这样必定失去热情与灵魂,使其成为冰冷的造钱工具,成为某些人攀比和炫耀的资本。

愿每一位开发者都能回归初心,尊重所有编程语言,用代码书写真正的价值。

相关链接


【编程思想】我与 C#
https://wanghaonie.github.io/posts/93ffd56fb26f/
作者
WangHaonie
发布于
2024-06-14 20:34:59
更新于
2025-05-03 20:54:03
许可协议