C#是高级语言吗?

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/620778/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-04 10:36:22  来源:igfitidea点击:

Is C# a high level language?

c#programming-languages

提问by Joan Venge

Is C# a high level language? I see it as more like medium level, but I am still unsure about this. Would you consider it as high level as some of the popular scripting languages?

C#是高级语言吗?我认为它更像是中等水平,但我仍然不确定这一点。你会认为它和一些流行的脚本语言一样高级吗?

Or does it accommodate more than one level?

还是容纳不止一层?

采纳答案by Brian

From what I have read from various sources, C#is considered a 3GLlanguage. A higher level language 4GL would look more like natural language and a 5GL language is about constraints based programming (artificial intelligence) where you define the constraints of a problem but leave it up to the computer to solve it.

从我从各种来源阅读的内容来看,C#被认为是一种3GL语言。更高级的语言 4GL 看起来更像自然语言,而 5GL 语言是关于基于约束的编程(人工智能),您可以在其中定义问题的约束,但让计算机来解决它。

If you judge the C#language by itself (not considering the .Net framework), it is not a huge departure from other C based languages so in that sense the 3GL definition fits.

如果你自己判断C#语言(不考虑 .Net 框架),它与其他基于 C 的语言并没有太大的不同,所以从这个意义上说 3GL 定义适合。

Here is a link to wikipedia for reference:

这是维基百科的链接以供参考:

http://en.wikipedia.org/wiki/Third-generation_programming_language

http://en.wikipedia.org/wiki/Third-generation_programming_language

回答by Hawk Kroeger

Yes C# is considered a high level language.

是的,C# 被认为是一种高级语言。

回答by chaos

Yes, it is high-level. Very. You are the only one who recognizes 'medium-level language' as a term. :)

是的,它是高级别的。非常。您是唯一将“中级语言”视为一个术语的人。:)

回答by Bob The Janitor

Define a high level language? When C was created it was considered a high level language because it could be compiled on multiple architectures

定义高级语言?当 C 被创建时,它被认为是一种高级语言,因为它可以在多种架构上编译

回答by Kevin

Um, yes, it is a high-level language. And you can remove the subjective tag. There's nothing subjective about it.

嗯,是的,它是一种高级语言。您可以删除主观标签。没有什么主观的。

回答by GateKiller

I would personally say that it has a high level of abstraction. A lot of complicated matters are handled by the .NET framework unlike C or C++ where you are responsible for almost everything that happens.

我个人会说它具有高度的抽象性。许多复杂的事情由 .NET 框架处理,这与 C 或 C++ 不同,你负责几乎所有发生的事情。

回答by achinda99

C# is the very much so a high level language and is more developed than most scripting languages. As far as I've ever learned, there is no such thing as a medium level language and the ones considered low level these days is pretty much any form of assembly or binary code.

C# 是一种非常高级的语言,比大多数脚本语言更发达。据我所知,没有中等级别的语言,如今被认为是低级的语言几乎是任何形式的汇编或二进制代码。

回答by Tim Matthews

C# allows use of pointers, is compiled just in time but sometimes ahead of time. Compared to a lot of other languages I use even though it allows very rapid software development it is slightly lower and closer to the hardware which comes to great advantage.

C# 允许使用指针,及时编译,但有时会提前编译。与我使用的许多其他语言相比,尽管它允许非常快速的软件开发,但它略低且更接近硬件,这具有很大的优势。

回答by Bill K

In consideration of Bob The Janitor's post:

考虑到 Bob The Janitor 的帖子:

Define a high level language? When C was created it was considered a high level language because it could be compiled on multiple architectures

定义高级语言?当 C 被创建时,它被认为是一种高级语言,因为它可以在多种架构上编译

I'd say it's moving from the "High" spot just like Java is.

我会说它正在从“高”点移动,就像 Java 一样。

Java's considered the assembly language of the JVM at this point. New languages like Scala and Ruby seem to offer quite a variety that Java and C# are not going to easily match.

在这一点上,Java 被认为是 JVM 的汇编语言。像 Scala 和 Ruby 这样的新语言似乎提供了 Java 和 C# 不容易匹配的相当多的多样性。

Don't get me wrong, I happen to think that Java/C# are at the perfect level--I'm just saying, as with C, these languages have a fairly set definition/feature set whereas "Features" will continue to be invented and implemented in newer languages.

不要误会我的意思,我碰巧认为 Java/C# 处于完美的水平——我只是想说,与 C 一样,这些语言具有相当固定的定义/功能集,而“功能”将继续存在以较新的语言发明和实现。

If you don't believe me, have a look at Scala.. a completely different monster!

如果你不相信我,看看 Scala.. 一个完全不同的怪物!

回答by Beep beep

In 20 years people will probably not consider it a high level language, but at the moment it certainly is. It's all relative to your basis of comparison. Compared to Assembler, it is a very high level language. Compared to a hypothetical computer program that writes the code for you (as Brian called a 5GL), then I guess it isn't.

20 年后人们可能不会认为它是一种高级语言,但目前它确实是。这一切都与您的比较基础有关。与汇编程序相比,它是一种非常高级的语言。与为您编写代码的假设计算机程序(如 Brian 所说的 5GL)相比,我猜它不是。