2009-03-06 4 views
5

Ist C# eine Hochsprache? Ich sehe es eher als mittleres Niveau, aber ich bin mir immer noch nicht sicher. Würdest du es so hoch halten wie einige der gängigen Skriptsprachen?Ist C# eine Hochsprache?

Oder kann es mehr als eine Ebene aufnehmen?

Antwort

9

Von dem, was ich aus verschiedenen Quellen gelesen haben, wird C# eine 3GL Sprache. Eine höhere Sprache 4GL würde mehr wie natürliche Sprache aussehen und eine 5GL Sprache ist über Constraints basierte Programmierung (künstliche Intelligenz), wo Sie die Einschränkungen eines Problems definieren, aber überlassen es dem Computer, es zu lösen. Wenn Sie die C# Sprache selbst beurteilen (ohne Berücksichtigung der.Net Framework), ist es keine große Abweichung von anderen C-basierten Sprachen, so dass die 3GL-Definition in diesem Sinne passt. Hier

ist ein Link zu Wikipedia als Referenz:

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

+0

Das ist eine ziemlich gute Antwort. –

+0

Dies bezieht sich auf den Zeitraum, nicht wie tief die Sprache geht, was bedeutet, dass hohe Ebene bedeutet – TStamper

+0

Gute Antwort. Aber ich denke nicht, dass es einen kleinen Unterschied zu anderen C-basierten Sprachen gibt. C# hat einige sehr coole High-Level-Features. –

7

Ja C# gilt als Hochsprache.

17

Ja, es ist High-Level. Sehr. Sie sind der Einzige, der die Sprache der Mittelstufe als Begriff erkennt. :)

+0

lol, Sie haben wahrscheinlich Recht. –

+2

"Medium-Level" ist jedoch kein schlechter Begriff. Sie könnten C oder C++, Sprachen mit direkter Speicherzuweisung, aber das sind Hardware-unabhängig, "Medium-Level" und es wäre ziemlich angemessen, IMHO. –

+0

Mmkay, abgesehen von dem Teil, wo es ganz im Gegensatz zur Konvention steht, also würde sonst niemand wissen, wovon du sprichst. – chaos

5

Definieren Sie eine Hochsprache? Als C erstellt wurde, wurde es als Hochsprache betrachtet, da es auf mehreren Architekturen kompiliert werden konnte.

+1

C ist immer noch eine Hochsprache ... Nichts hat sich geändert. – Juliano

+0

@Juliano, aber es ist niedriger als C#, zum Beispiel. Wäre es nicht eine Sprache auf mittlerem Niveau? Oder gibt es nur zwei Stufen? – strager

0

Ähm, ja, es ist eine Hochsprache. Und Sie können das subjektive Tag entfernen. Es ist nichts Subjektives daran.

+1

Sie haben genug Rep zu wiederholen. – chaos

2

Ich würde persönlich sagen, dass es ein hohes Maß an Abstraktion hat. Im Gegensatz zu C oder C++, bei denen Sie für fast alles, was passiert, verantwortlich sind, werden im .NET Framework viele komplizierte Dinge behandelt.

1

C# ist eine sehr hohe Sprache und ist mehr entwickelt als die meisten Skriptsprachen. Soweit ich es jemals gelernt habe, gibt es keine Sprache auf mittlerem Niveau und diejenigen, die heutzutage als niedriges Niveau betrachtet werden, sind so ziemlich jede Form von Assembler- oder Binärcode.

2

C# ermöglicht die Verwendung von Zeigern, ist gerade rechtzeitig kompiliert, aber manchmal vor der Zeit. Im Vergleich zu vielen anderen Sprachen, die ich verwende, obwohl es eine sehr schnelle Softwareentwicklung erlaubt, ist es etwas niedriger und näher an der Hardware, was sehr vorteilhaft ist.

3

Unter Berücksichtigung von Bob der Pförtner Beitrag:

eine Hochsprache definieren? Wenn C erstellt wurde, wurde es eine hohe Sprache betrachtet, weil es auf mehreren Architekturen

kompiliert werden könnte

Ich würde sagen, es aus dem „High“ Fleck bewegt sich genauso wie Java ist.

Java wird an dieser Stelle als die Assemblersprache der JVM betrachtet. Neue Sprachen wie Scala und Ruby scheinen eine ziemlich große Vielfalt zu bieten, die Java und C# nicht so leicht erreichen werden.

Versteh mich nicht falsch, ich denke zufällig, dass Java/C# auf dem perfekten Niveau sind - ich sage nur, wie bei C, diese Sprachen haben eine ziemlich festgelegte Definition/Feature Set, während "Features" wird weiterhin in neueren Sprachen erfunden und implementiert.

Wenn Sie mir nicht glauben, werfen Sie einen Blick auf Scala .. ein völlig anderes Monster!

1

In 20 Jahren werden die Menschen wahrscheinlich nicht eine Hochsprache betrachten, aber im Moment ist es sicher. Es ist alles relativ zu Ihrer Vergleichsgrundlage. Im Vergleich zu Assembler ist es eine Sprache auf sehr hohem Niveau. Verglichen mit einem hypothetischen Computerprogramm, das den Code für Sie schreibt (wie Brian eine 5GL nannte), dann schätze ich es nicht.

6

"Eine Programmiersprache ist ein niedriges Niveau, wenn ihre Programme Aufmerksamkeit auf das Irrelevante richten." --Alan Perlis

+0

Wow, das ist ein tolles Zitat, an das ich mich erinnern werde. Vielen Dank. –

0

C# ist auch eine sehr "flexible" Sprache. Wenn Sie unter "Low-Level-Programmierung" die Zeigermanipulation verstehen, können Sie das auch in C# tun.
Für Leute, die "low level" arbeiten möchten, können Sie dies mit C# tun. Aber wenn Sie nicht in die "Low-Level" -Sachen kommen wollen, können Sie dasselbe tun, ohne sich um unsafe Schlüsselwort zu kümmern. Viele Neulinge wissen nicht einmal über die/unsafe Option zum Kompilieren von C# -Code.
Laut wikipedia: -

C# is intended to be suitable for writing applications for both hosted and embedded systems, ranging from the very large that use sophisticated operating systems, down to the very small having dedicated functions.

denke ich, die obige Aussage ziemlich fasst, ob C# ist ein „hohes“ Niveau oder „low“ Sprache.

Verwandte Themen