闲话 .NET(4):为什么要跨平台?

2024-05-24 03:12
文章标签 net 闲话 跨平台

本文主要是介绍闲话 .NET(4):为什么要跨平台?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

image

前言

.NET Core 有一个关键词就是跨平台,为什么要跨平台呢?Windows 操作系统不香吗?今天我们来聊聊这个

原因一:安全考虑

Windows OS 是闭源的,而 Linux 是开源的,因此有些公司的技术负责人就认为 Linux 比 Windows OS 更安全,比如我以前教《现代操作系统》课程的老师就非常推崇 Linux,对 Windows OS 则是嗤之以鼻,斥之为 "伪操作系统 "。姑且不论这种认知是否客观,但是这种固有认知是很难被改变的,所以作为程序猿的我们只能去适应这种认知,特别是在近几年,政企项目开始要求 “国产化”,也就是数据库、操作系统等都使用国产的产品,而国产操作系统大部分都是基于 Linux 的,因此在 Linux 下运行系统的需求非常迫切。

原因二:成本

Windows 是收费的,而很多 Linux 发行版都是开源、免费的,对于服务器数量很多的系统,其操作系统的成本是一个不得不考虑的因素。

原因三:生态

由于 Linux 是开源的,因此吸引了大批开发人员为 Linux 开发软件,比如 Apache、Nginx、MySQL、Kafka、Redis、Docker 等,数不胜数。虽然这些软件大部分也移植到了 Windows 下,但是这些毕竟是优先为 Linux 开发的软件,它们在 Windows 下的版本只能说是 “可以运行” 而已,其性能和功能与 Linux 版本的比起来都有一定的差距。并不是说基于 Windows 平台开发不出同样优秀的软件,而是说很少有人愿意优先基于 Windows 开发服务器端软件。这就导致了比较优秀的服务器端软件生态环境大多在 Linux 下。

原因四:稳定性

由于 Linux 特有的设计,Linux 在运行时,相对 Windows OS 会稳定很多,网上曾经有公开数据说 Linux 可以几个月不关机,同时非常稳定的持续计算,速度丝毫不减慢,非常的稳定,Windows OS 就很难做到这一点。

结语

Java 因为开源和能够跨平台而受到大厂们的生睐,在国内发展得非常快,如今 .NET 也积极拥抱开源,并且武装上了 “跨平台” 和 “基于云开发” 这对翅膀,.NET 在成长,在变化,在褪去外壳,迎接新生,一句话,.NET 未来可期

我是老杨,一个奋斗在一线的资深研发老鸟,让我们一起聊聊技术,聊聊人生。

都看到这了,求个点赞、关注、在看三连呗,感谢支持。

这篇关于闲话 .NET(4):为什么要跨平台?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/997208

相关文章

C++ Log4cpp跨平台日志库的使用小结

《C++Log4cpp跨平台日志库的使用小结》Log4cpp是c++类库,本文详细介绍了C++日志库log4cpp的使用方法,及设置日志输出格式和优先级,具有一定的参考价值,感兴趣的可以了解一下... 目录一、介绍1. log4cpp的日志方式2.设置日志输出的格式3. 设置日志的输出优先级二、Window

解决未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4‘问题

《解决未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4‘问题》:本文主要介绍解决未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4... 目录未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4‘打开pom.XM

javax.net.ssl.SSLHandshakeException:异常原因及解决方案

《javax.net.ssl.SSLHandshakeException:异常原因及解决方案》javax.net.ssl.SSLHandshakeException是一个SSL握手异常,通常在建立SS... 目录报错原因在程序中绕过服务器的安全验证注意点最后多说一句报错原因一般出现这种问题是因为目标服务器

基于Python+PyQt5打造一个跨平台Emoji表情管理神器

《基于Python+PyQt5打造一个跨平台Emoji表情管理神器》在当今数字化社交时代,Emoji已成为全球通用的视觉语言,本文主要为大家详细介绍了如何使用Python和PyQt5开发一个功能全面的... 目录概述功能特性1. 全量Emoji集合2. 智能搜索系统3. 高效交互设计4. 现代化UI展示效果

使用easy connect之后,maven无法使用,原来需要配置-Djava.net.preferIPv4Stack=true问题

《使用easyconnect之后,maven无法使用,原来需要配置-Djava.net.preferIPv4Stack=true问题》:本文主要介绍使用easyconnect之后,maven无法... 目录使用easGWowCy connect之后,maven无法使用,原来需要配置-DJava.net.pr

在.NET平台使用C#为PDF添加各种类型的表单域的方法

《在.NET平台使用C#为PDF添加各种类型的表单域的方法》在日常办公系统开发中,涉及PDF处理相关的开发时,生成可填写的PDF表单是一种常见需求,与静态PDF不同,带有**表单域的文档支持用户直接在... 目录引言使用 PdfTextBoxField 添加文本输入域使用 PdfComboBoxField

Python结合PyWebView库打造跨平台桌面应用

《Python结合PyWebView库打造跨平台桌面应用》随着Web技术的发展,将HTML/CSS/JavaScript与Python结合构建桌面应用成为可能,本文将系统讲解如何使用PyWebView... 目录一、技术原理与优势分析1.1 架构原理1.2 核心优势二、开发环境搭建2.1 安装依赖2.2 验

基于.NET编写工具类解决JSON乱码问题

《基于.NET编写工具类解决JSON乱码问题》在开发过程中,我们经常会遇到JSON数据处理的问题,尤其是在数据传输和解析过程中,很容易出现编码错误导致的乱码问题,下面我们就来编写一个.NET工具类来解... 目录问题背景核心原理工具类实现使用示例总结在开发过程中,我们经常会遇到jsON数据处理的问题,尤其是

Node.js net模块的使用示例

《Node.jsnet模块的使用示例》本文主要介绍了Node.jsnet模块的使用示例,net模块支持TCP通信,处理TCP连接和数据传输,具有一定的参考价值,感兴趣的可以了解一下... 目录简介引入 net 模块核心概念TCP (传输控制协议)Socket服务器TCP 服务器创建基本服务器服务器配置选项服

.NET利用C#字节流动态操作Excel文件

《.NET利用C#字节流动态操作Excel文件》在.NET开发中,通过字节流动态操作Excel文件提供了一种高效且灵活的方式处理数据,本文将演示如何在.NET平台使用C#通过字节流创建,读取,编辑及保... 目录用C#创建并保存Excel工作簿为字节流用C#通过字节流直接读取Excel文件数据用C#通过字节