分清“语言/规范”以及“平台/实现”,以及跨平台.NET开发
这篇讲的是如何理清.NET及跨平台开发中常被混淆的几个核心概念。作者从技术演进的角度切入,指出早年“语言即平台”(如C/C++)的观念,与如今以.NET、Java为代表的“通用平台”及多语言实现共存的现状已截然不同。 文章重点辨析了“语言/规范”与“平台/实现”这两对关键概念。语言或规范(如C#、F#)定义了语法规则,而平台与实现(如.NET Framework、.NET Core、Mono)则提供了具体的运行环境和库支持。作者强调,只有将这两者清晰区分,才能准确理解为何同一语言可在不同平台运行,或同一平台能承载多种语言。 这种概念上的厘清,对实际跨平台开发至关重要。它能帮助开发者摆脱历史观念的束缚,更精准地选择技术栈、诊断兼容性问题,并理解社区讨论中的各种技术取向。文章实际上为陷入概念迷雾的.NET开发者提供了一份清晰的认知地图。