Wenn Sie eine Programmiersprache entwerfen würden, wie würden Sie das tun? Welche Funktionen würden Sie hinzufügen? Was würden Sie weglassen? Statisch oder dynamisch getippt? Stark oder schwach getippt? Zusammengestellt oder interpretiert? Begründen Sie Ihre Antworten.
Ich habe kürzlich Design by Contract (DbC) entdeckt und finde es eine äußerst interessante Art, Code zu schreiben. Unter anderem scheint es folgendes zu bieten: Bessere Dokumentation. Da der Vertrag die Dokumentation ist, ist es unmöglich, dass einer nicht mehr aktuell ist. Da im Vertrag genau angegeben ist, was eine …
Die meisten Programmiersprachen (sowohl dynamisch als auch statisch typisierte Sprachen) haben spezielle Schlüsselwörter und / oder Syntax, die sich stark von der Deklaration von Variablen zum Deklarieren von Funktionen unterscheiden. Ich sehe Funktionen so, als würde man eine andere benannte Entität deklarieren: Zum Beispiel in Python: x = 2 y …
Go ist eine der wenigen Sprachen, die 'nah am Metall' laufen sollen, dh sie wird kompiliert, statisch typisiert und führt Code nativ ohne VM aus. Dies sollte es einen Geschwindigkeitsvorteil gegenüber Java, C # und dergleichen geben. Es scheint jedoch, dass es hinter Java steckt (siehe das Programmiersprachen-Shootout ) Ich …
Ich mag Scope-based Memory Management (SBMM) oder RAII , wie es in der C ++ - Community häufiger (verwirrenderweise?) Genannt wird . Soweit ich weiß, gibt es bis auf C ++ (und C) keine andere Mainstream-Sprache, die SBMM / RAII zu ihrem Hauptspeicherverwaltungsmechanismus macht. Stattdessen bevorzugen sie die Garbage Collection …
Der Zweck dieser Frage besteht nicht darin, eine Wäscheliste mit Programmiersprachenfunktionen zusammenzustellen, auf die Sie nicht verzichten können oder auf die Sie sich in der Hauptsprache Ihrer Wahl gefreut haben. Der Zweck dieser Frage ist es, die Ecken des Sprachdesigns zu beleuchten, über die die meisten Sprachdesigner möglicherweise nicht nachdenken. …
Beliebte Programmiersprachen (C #, Java, C ++) sind alle Sprachen der 3. Generation (mit einem höheren Abstraktionsgrad von den physischen Teilen der Maschine). Assemblersprachen werden als 2. und Maschinensprachen als Sprachen der 1. Generation klassifiziert. Anfänglich dachte ich, SQL sollte als Sprache der 4. Generation betrachtet werden, da es abstrakter …
Sogar Sprachen, in denen Sie explizite Zeiger-Manipulationen wie C durchführen, werden immer als Wert übergeben (Sie können sie als Referenz übergeben, aber das ist nicht das Standardverhalten). Was ist der Vorteil davon, warum werden so viele Sprachen von Werten und warum werden andere als Referenz weitergegeben ? (Ich verstehe, dass …
Ich habe vor kurzem angefangen, mich mit Android-Entwicklung zu beschäftigen. Dies hat mich zurück in die Welt der Java-Softwareentwicklung geführt. Das letzte Mal, als ich mit Java gearbeitet habe, habe ich OOP zugegebenermaßen nicht annähernd so gut verstanden wie jetzt (glaube ich). Nachdem ich in meiner Karriere hauptsächlich C # …
Wann ist es beim Entwerfen einer eigenen Programmiersprache sinnvoll, einen Konverter zu schreiben, der den Quellcode in C- oder C ++ - Code konvertiert, damit ich einen vorhandenen Compiler wie gcc verwenden kann, um den Maschinencode zu erhalten? Gibt es Projekte, die diesen Ansatz verwenden?
Ich habe eine Weile darüber nachgedacht, warum Java und C # (und ich bin sicher, andere Sprachen) standardmäßig auf Gleichheit verweisen ==. Bei der Programmierung, die ich mache (was sicherlich nur eine kleine Auswahl von Programmierproblemen ist), möchte ich fast immer logische Gleichheit beim Vergleichen von Objekten anstelle von Referenzgleichheit. …
Viele der beliebtesten Programmierung languges (wie C ++, Java, Python etc.) haben das Konzept der Deck / Beschattung von Variablen oder Funktionen. Wenn ich auf das Verstecken oder Abschatten gestoßen bin, waren sie die Ursache für schwer zu findende Fehler, und ich habe noch nie einen Fall gesehen, in dem …
Bei einer Diskussion über statische und Instanzmethoden denke ich immer, dass Sqrt()dies eine Instanzmethode mit Zahlentypen anstelle einer statischen Methode sein sollte. Warum das? Es funktioniert offensichtlich auf einem Wert. // looks wrong to me var y = Math.Sqrt(x); // looks better to me var y = x.Sqrt(); Werttypen können …
Ich möchte wissen, warum das .compareTo()in der ComparableSchnittstelle ist, während eine Methode wie .equalsin der ObjectKlasse ist. Mir erscheint es willkürlich, warum eine Methode wie diese .compareTo()nicht schon in der ObjectKlasse ist. Zur Verwendung .compareTo()implementieren Sie die ComparableSchnittstelle und implementieren die .compareTo()Methode für Ihre Zwecke. Für die .equals()Methode überschreiben Sie …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.