发布于 

信创浪潮下的.NET困境与技术转型思考

开始之前我想先介绍下什么是.NET、什么是信创?

什么是 .NET?

我们现在说 .NET 通常指 .NET Core 之后的版本。.NET Core 是跨平台的开源框架,不仅可以运行在 Windows,还支持 Linux 和 macOS。在 .NET Core 3.1 之后发布的 .NET 5 又做了大统一,名称中也去掉 Core 了),目前最新的版本为 .NET9 。

.NET 有以下几个特点:

1、采用最开放的 MIT/Apache 2 协议开源,具备中立性。

2、归属中立的第三方组织 .NET 基金会管理,不属于任何商业公司,进一步增强了其独立性和开放性。

3、完全支持 ARM 32/64 架构,适配国内主流的 ARM 架构芯片,如鲲鹏、飞腾等。

什么是信创 ?

信创,即信息技术应用创新产业,其核心目标是实现信息技术领域的自主可控,以保障国家信息安全。国资委 2022 年 79 号文件主要指示如下:

核心内容:要求在 5 年内国企全部完成信创替换。

实施步骤:

1、2022 年 11 月底,完成信创改造方案规划并报送国资委;

2、2023 年 1 月起,每季度报送信息化系统信创改造的最新进度;

3、2027 年底,全部央国企必须完成信息化系统的信创改造工作。

替换要求

1、全面替换:OA、门户、邮箱、纪检、党群、档案、经营管理。

2、应替就替:战略决策、ERP、风控管理、CRM 管理系统。

3、能替就替:生产制造、研发系统。

为什么要发展信创?

1、保障国家信息安全:随着信息技术的快速发展,网络安全风险日益增加,发展信创有助于提升国家信息安全水平。

2、实现自主可控:历史上,中国在信息技术领域长期依赖国外技术,发展信创可以推动国内信息技术产业的发展,减少对外部技术的依赖。

4、应对国际竞争:在全球信息技术产业竞争加剧的背景下,发展信创产业有助于提升国家的国际竞争力。

4、促进数字化转型:信创产业的发展有利于国内企业更安全地完成数字化转型。

.NET 支持信创吗?

毫无疑问,从技术上来说,.NET 是支持信创的。

但是,这没有用,客户不听解释。

随着 27 年的临近,企业的信创进程在加快。最近见了不少客户,不管是否了解技术,都谈 .NET 色变,有的更是将 .NET 纳入了黑名单。有客户原话是:

我也知道 .NET 是支持信创的,但集团下了文,不让用,我们也没有办法。

幸好我们产品比较开放,很早就是多技术栈并行的。不过也很无奈,需要全面进行技术栈迁移了。

转型

说到无奈,是因为要做出改变,就要离开舒适区了。但仔细想想,舒适区待久了很难让人进步。这次的转型也许会成为再上一层楼的一个契机。转型分为两个层面:技术和业务。

技术

1、代码块节点使用到的 nodejs、python 还是继续保留。

2、剩余的 .NET 部分全部转换为 Java。

3、转换后的 Java 程序需要和原来的 Java 代码一起通盘考虑,架构上需要重新考虑和规划。

4、合理梳理业务链路、优化缓存的使用,进一步提升性能、稳定性和扩展性。

业务

我们的产品为低代码类型的产品,目的是能快速高效地为客户落地业务。现在随着 AI 技术的发展,我们产品也需要做出相应的变化。

AI 的发展远比我们想象的的要迅猛,现在 ChatGPT 的 o1 模型具备很强的推理能力。

Cursor 和 Windsurf 借助 Claude 3.5 Sonnet 模型可以根据自然语言进行项目目录创建和编码实现,现在两个工具都支持 agent 模式,可以执行客户端的命令,我们需要的只是点下 accept 就可以。最近比较火的小猫补光灯 app 就是作者在 Cursor 中完成的。

v0.dev 在前端页面的制作非常有优势的,直接浏览器可以预览,UI 设计师做出原型图,v0 就可以做出差不多效果的前端页面。

Gemini 现在最新的模型已经支持 2M Tokens 的长上下文窗口。一些内容比较多的代码文件需要进行分析可以交给 Gemini 。

功能都很强大,但比较分散。有点像是没有超链接的互联网,如果通过 Agent 将各种 AI 能力互联起来形成一个网络,必然能创新出更多的场景,真正通向 AGI 。2025 可能是 Agent 高速发展的一年。

那么我们的产品也需要做相应的改变,要有具备调用 Agent 和被 Agent 调用的能力。

对程序员的影响

技术栈的改变,团队必然需要学习更多新的技能,这肯定不是坏事。而且写代码的思维、面向对象的原则都是通用的。借助现在的 AI 能力,语言上的细微差别几乎可以忽略。

现阶段,程序员可以借助 AI 工具来辅助编码,但整体架构还是需要人来把控,AI 写的代码也需要人来审核。其实是对人的要求更高了,需要懂上层架构,也要懂底层原理。

随着 AI 的进一步发展,程序员需要担起指挥的工作,以前是产品经理指挥程序员干活,以后会变成程序员指挥 AI 干活。所以,只要持续学习,程序员不会失业,只是工作形式会发生变化。

最后

俗话说,不破不立。新东西的出现,必然会带来新的机遇,不管是 .NET 还是 Java,都是为业务服务的工具。

这个号当时取名为「不止dotNET」,也是不想被某一种技术给束缚了,所以后面会分享 Java 甚至其他各种技术的学习心得。