736 Begriffe aus IT, Netzwerk, Sicherheit und Programmierung: erst kurz erklärt, dann ausführlicher. Suche nach einem Wort oder wähle einen Buchstaben.
8 Treffer
Rusts "Ownership"-System prüft zur Kompilierzeit, wer wann auf welchen Speicher zugreifen darf, und verhindert dadurch ganze Fehlerklassen (Speicherlecks, Data Races), ohne die Laufzeitkosten eines Garbage Collectors. Dadurch bei ähnlicher Performance wie C/C++, aber deutlich sicherer — beliebt für Systemsoftware, Browser-Engines und performancekritische Tools.
Verwandt: C · Go · C++ · Garbage Collector · Java · Quellcode
Ganzer Artikel im Wiki →Eine als async markierte Funktion gibt ein Versprechen zurück (Promise, Future, Task). Mit await hält sie an dieser Stelle an und gibt die Kontrolle ab, bis das Ergebnis da ist – andere Aufgaben laufen in der Zwischenzeit. Das ist bequemer als verschachtelte Callbacks. Unterstützt wird es in JavaScript/TypeScript, Python, C#, Kotlin (Coroutinen), Rust, Swift, Dart und weiteren.
Verwandt: Callback · Event Loop (Ereignisschleife) · Thread (Faden) · Exceptions · Threads (Nebenläufigkeit)
Ganzer Artikel im Wiki →Closures entstehen, wenn eine innere Funktion auf Variablen der äußeren zugreift und zurückgegeben oder weitergereicht wird. Sie sind die Grundlage für Zähler, Fabriken, Callbacks, Teilanwendung (Currying) und das Modul-Muster in JavaScript. Unterstützt werden sie von JavaScript, Python, Java (Lambda-Ausdrücke), C#, Go, Kotlin, Swift, Rust, Haskell und vielen weiteren.
Verwandt: Callback · Currying · Higher-Order-Funktion (Funktion höherer Ordnung) · Decorator-Muster (Dekorierer) · Encapsulation (Kapselung) · Lambda (Lambda-Ausdruck)
Ganzer Artikel im Wiki →Dabei prüft er Syntax und (bei statisch typisierten Sprachen) Typen und meldet Fehler schon vor dem Start. Das Ergebnis läuft anschließend ohne weitere Übersetzung. Compiler-Sprachen sind unter anderem C, C++, Rust, Go, Pascal und Fortran; Java und C# kompilieren zu Bytecode (Bytecode), den eine virtuelle Maschine ausführt.
Verwandt: Bytecode · Interpreter · JIT-Compiler (Just-in-Time) · Quellcode · Baum (Datenstruktur) · Makro (Metaprogrammierung)
Ganzer Artikel im Wiki →Es gibt einfache Textersetzung (C-Präprozessor: #define) und mächtige Syntax-Makros, die mit dem Syntaxbaum arbeiten (Lisp, Racket, Rust, Nim, Elixir, Julia). Letztere sind hygienisch, wenn Namen im Makro nicht mit Namen des Aufrufers kollidieren.
Verwandt: Reflection (Reflexion) · Annotations (Annotationen) · Compiler · Lambda (Lambda-Ausdruck)
Ganzer Artikel im Wiki →Muster können Konstanten, Typen, Listen, Tupel, Datensätze und verschachtelte Strukturen beschreiben, oft mit zusätzlichen Bedingungen (*Guards*). Besonders ausgeprägt ist es in Haskell, OCaml, F#, Erlang, Elixir, Scala und Rust; Python (match, 3.10), Java (Muster in switch), C#, Kotlin und JavaScript ziehen nach. Nicht zu verwechseln mit dem Textmustervergleich durch reguläre Ausdrücke.
Verwandt: Enum (Aufzählungstyp) · RegEx (Reguläre Ausdrücke) · Switch-Statement
Ganzer Artikel im Wiki →Aus let x = 5 folgt int, aus x + 1.5 folgt float. Der Compiler prüft weiterhin alle Typen vor dem Start. Die Technik ist in Haskell, OCaml und F# am weitesten entwickelt (Hindley-Milner-Verfahren) und steckt in var/auto (Java, C#, C++), val (Kotlin, Scala), let (Rust, Swift), := (Go) und TypeScript.
Verwandt: var-Keyword · Duck Typing · Generics · Null (kein Wert) · Type Casting
Ganzer Artikel im Wiki →Zeiger sind in C, C++, Pascal, Go, Rust und Assembler zentral. Sie ermöglichen dynamische Datenstrukturen (verkettete Listen, Bäume), das Übergeben großer Daten ohne Kopie und direkten Hardwarezugriff. In Java, Python oder JavaScript gibt es sie nicht sichtbar, doch dort sind Objektvariablen im Kern Referenzen.
Verwandt: Null (kein Wert) · Speicherleck (Memory Leak) · Stack und Heap · Garbage Collector · Baum (Datenstruktur) · Non-primitive Types (Referenztypen)
Ganzer Artikel im Wiki →