我们一直在谈论主流编程语言,以至于我们大多数人都看到Python,Java,SQL等。 还有许多其他动态框架和语言,例如我们今天所选择的主题。 C Sharp或C#,它们在全球软件开发社区中起着不可或缺的作用。 让我们深入研究C#的基础知识以及.Net框架,以更好地理解其排他性,功能及其优势。
尽管计算机编程语言主要是独立产品,但它们还是依赖于平台或框架来运行。 C#或C Sharp是不仅C或C ++的混合语言,而且受设计启发
和Java ,Modula 3,Eiffel等的功能,并在.Net框架上运行。
本文重点介绍基本原理
编程语言以及该语言所依赖的平台的要点。 所以,让我们开始吧!
什么是C#?
C#是一种通用的面向对象的编程语言,由Microsoft开发,旨在与Sun Microsystems的反射语言Java竞争。 它采用基于万维网联盟W3C支持的可扩展标记语言XML规范的Web服务。
XML使程序员,开发人员,设计人员等能够自定义自由来创建标签,传输,定义,验证以及数据解释应用程序和组织。
有许多C#功能,例如垃圾收集,类型声明,类型安全,版本控制和可伸缩性支持等,可以验证其设计以提高生产率,并使MS策略块方法的扩展扩展更容易地进行Web应用程序开发,这种扩展称为组件对象模型COM +。
这种结构化语言还被欧洲计算机制造商协会 (ECMA)和国际标准组织(ISO)等国际标准机构认可,该标准导致各种公司开发C#变体。
有许多高科技组织,例如Apex Software,devSoft,FarPoint Technologies,Bunka Orient,Component Source,LEAD Technologies等,这些组织
C#支持框架作为基础。
C#如何工作?
C#通过结合C ++的计算能力和编程易用性来工作 和Visual Basic,以促进服务和信息在Web上的平稳交换。 MS旨在通过XML和简单对象访问协议(SOAP)的集成来简化编程,以允许开发人员创建高度可扩展的可移植应用程序。
XML和SOAP规范为程序员提供了对象和/或方法编程的可访问性,而无需在程序的每个步骤上添加其他代码。 这使得C#编程Swift而又便宜,因为在现有代码上构建而不是重复重复整个过程将使昂贵的MO推出新产品和服务。
C#的一般功能
由于总体灵感以及面向对象和面向组件的倾向,C#的基本构造类似于
各种高级语言。
但是,广泛的C#功能的一般且杰出的分类使该语言与其他编程语言在各种功能方面脱颖而出,这些功能可转换为高度竞争的程序和软件应用程序。
一些常规的C#编程功能包括:
- 简单
- 现代编程语言
- 面向对象
- 输入安全
- 互通性
- 可扩展和可更新
- 面向组件
- 结构化编程语言
- 庞大的图书馆
- 速度
这些只是多范式的一些常规功能
像C#这样的编程语言包含了许多编程学科。 每个组件都具有自己的一组功能,以便能够使C#实现支持软件工程原理。
这种兼容性促进了可在任何分布式环境中部署的软件组件的开发。 所有精细工程的过程都需要特殊的功能,以帮助程序员进行开发。
常用的C#功能的杰出类别包括:
- 布尔条件
- 自动垃圾收集
- 元编程
- 代表和活动管理
- 可能性
- 索引器
- 条件编译
- LINQ和Lambda表达式
C#的排他性
自2002年开始使用.Net framework 0.1进行C#编程以来,该语言一直在与.NET更新配合进行修订,现已成为创建Windows程序和Web应用程序的最受欢迎的编程语言之一。 尽管C#在某种程度上是C和C ++的派生,并且自然具有相似的运算符,面向对象的大小写敏感度,相同的语法等,但是仍有一些主要区别将这种多范式语言与所有应用语言区分开。
以下是C#和C ++之间的一些明显区别:
- 例如,C或C ++的指针在C#编程中用作具有方法和属性的对象。
- C#无法将数据类型(例如布尔值或布尔值)识别为
整数,就像其他语言一样。 - C#中的许多关键字(例如typedef,default,extern,delegate,static等)的表示形式,函数和调用在C#中与在任何启发式编程语言中完全不同。
- C#不支持C或C ++编程中switch语句的大小写转换。
- C ++对全局变量和方法的支持未扩展
C#编程。
由于C#是为特定的Microsoft .Net框架设计的,因此开发人员不仅可以访问C#本身的功能,还可以访问.Net应用程序编程接口(API)的所有功能。
尽管这提供了巨大的好处,但.Net框架的可靠性也使C#应用程序只能在支持.Net运行时的平台(例如Windows,Windows服务器和电话等)上运行,除非C#程序的代码首先通过某些方式进行编译。转换
类似Microsoft .Net本机的工具。
什么是.Net框架?
.Net框架-发音且通常写为点网– Microsoft
开发的软件框架主要在Microsoft应用程序上运行。 .Net是MS总体开发策略的主要组成部分,也是MS在开发环境中的Java辅助。
它巨大的标准类库称为框架类库(FCL),可实现
各种编程语言之间的广泛语言互操作性,其中所有语言均与其他语言编写的代码兼容,但仍被称为托管代码。
因为.Net框架在称为应用程序虚拟机的专用软件环境中执行,该虚拟机称为公共语言运行时(CLR)–公共语言基础结构(CLI)的MS实现–与FCL一起支撑整个平台。
CLR促进安全性,异常处理,线程执行和内存管理服务,而FCL促进开发
通过提供数据库连接性,数据可访问性和用户界面来实现网络通信,Web应用程序和数字算法的集成。
MS还为Windows应用程序创建了一个称为Visual Studio的集成开发环境,该开发环境通过将.Net框架支持的代码与各种库对齐来开发。
.NET Framework的主要设计功能
.Net框架设计的主要目标是通过将模块化方法集成到软件结构中来提高生产率并最小化编程错误的余地。
此MS软件开发框架通过受控的编程环境提供Windows专有操作系统(OS)软件的平稳开发,安装和执行,该受控编程环境由以下功能精心安排:
互操作性:
它促进了.Net中开发的程序对
在.Net框架之外开发的程序的功能。
公共语言运行时:
CLR或有时也被视为通用的运行时引擎,它简化了.Net框架支持的程序的线程执行,内存使用,安全管理和异常处理之间的通用行为。
语言独立性:
这种独立性源自通用语言基础结构的通用规范,从而使得可以在同时使用各种语言开发的程序之间实现数据类型的可交换性。
基类库:
从根本上说,它是一个由几个加密功能组成的代码库,从通用到出色的可用性,可防止代码重复或出于相同目的而重写。 它可以提高程序员的生产率,并减少错误。
易于部署:
.Net框架具有许多内置工具,可确保轻松部署程序-安装到执行-不会破坏以前安装的应用程序创建的环境。
安全:
.Net安全性以其基于透明控件安全性模型的引人注目的解决方案而闻名。 .Net开发的软件应用程序通过特定的模型放置在所有情况下,用于代码行为监控,目的是减轻包括客户端,Web和服务器端在内的应用程序的风险。
.NET Framework的工作方式
.Net框架是一个集中的开发人员平台,由多个工具,库, 编程语言和用于开发各种应用程序的功能组成。 它通过以中间语言(IL)编译一种语言的源代码来工作,该语言通常放在磁盘存储中的可执行程序集文件中。
自.Net以来,MS开发了编程基础结构来开发,部署和运行基于.Net技术的多种服务和应用程序,例如桌面和Web应用程序,程序集文件包含有关安全性和所使用代码类型的信息说明。 汇编文件由CLR上载并验证后,IL编译的代码将解释为以本机代码编写的指令。
.Net框架利用了三个主要的过程片段,包括:
.Net框架的实现
.NET Framework导致了一个由多个.NET平台组成的庞大家族,例如Net,.Net框架和.Net核心-除了整个MS .Net技术的主要实现之外,该技术专门设计用于容纳目标代码,而不考虑存储和执行-分别专注于:
- 移动计算
- 嵌入式设备
- 替代操作系统
- Web浏览器插件
.Net框架由各种实现组成,这些实现允许在此MS环境中开发的代码在许多不同的平台上执行,例如Linux,macOS,Windows,iOS,Android等。以下是一些最常用的.Net实现,包括:
.Net框架是整个.Net系列的主要实现,用于支持网站功能,Web和桌面应用程序开发,各种IT服务的交付以及Windows操作系统上的更多功能。
.NET Core是一个开源的跨平台实现,不仅在Windows上,而且在Linux和macOS上,还支持网站功能,IT服务以及控制台应用程序的开发。
Xamarin / Mono是.Net框架的移动实施开发人员平台,支持应用程序开发,运行和
几乎所有主要移动操作系统上的功能,包括iOS,Android,tvOS,watchOS,macOS等。
.NET Standard本身不是实现,而是更多的API
为实现以下目的,所有.Net实现中都包含的规范
促进相同代码和库的可用性,以使其顺利运行
许多不同的实现。
还有一个称为.Net compact的.Net框架的简化版本。
该框架可用于各种Windows CE平台以及Windows移动设备,例如智能手机。 .Net框架的这种微变体被开发为基本上包含资源极其受限地嵌入的设备。 一些压缩的.Net
实现包括:
- Silverlight –本质上是网络浏览器插件
- Mono-与各种网络操作系统和智能手机操作系统(例如android, iOS等)兼容,并且可以自定义到游戏引擎中。
- .NET Core-专注于云计算,跨平台适用性和通用Windows平台(UWP)可访问性。
C#和.Net编程的优势
- C#是面向对象的语言,允许模块化应用程序开发和代码可重用性。
- CLR集成使C#程序可以与其他语言的代码组件平滑地融合。
- .Net框架支持使C#编程在所有.Net技术中都可以解释。
- 由于采用了正式的全集方法,因此C#编码的清晰度大大提高,并且无需担心头文件。
- C#是Microsoft堆栈和丰富的库的众多选择,它为几乎所有功能和实现提供了工具,使程序员可以自由地尝试新的编写和代码编译。
- .Net框架为C#编程提供了内部MS支持,这与其他语言完全不同,在其他语言中,程序员仅依赖社区提供支持。
- 向后兼容性源于Microsoft不断抛弃旧的Window平台,而这需要升级.Net框架。 不断改进配置的外部需求可以使用户重新努力工作。
翻译自: https://hackernoon.com/learning-fundamentals-of-c-and-net-framework-c76i3ygv