005.13 graphische Programmiersprache, Programmiersprache
Refine
Document Type
- Bachelor Thesis (1)
Year of publication
- 2021 (1) (remove)
Language
- German (1)
Keywords
- C <Programmiersprache> (1)
- Implementation (1)
- Java <Programmiersprache> (1)
- Rust <Programmiersprache> (1)
- Server (1)
Institute
Das Ziel dieser Arbeit ist es, die Möglichkeit der Nutzung von Rust als Ersatz für C und Java zu evaluieren. Diese beiden wurden als Vertreter von hardwarenahen bzw. einfacheren und höheren Sprachen gewählt. Sie sind außerdem bekannt dafür, unsicher bzw. langsam zu sein. In beiden Punkten soll Rust genauso gut oder besser sein als C und Java. Daher werden sie für die drei Sprachen verglichen. Da für die Wahl einer Programmiersprache auch entscheidend ist, wie aufwendig es ist, ein Programm zu erstellen, wird die Komplexität als dritter Aspekt für den Vergleich genutzt.
Anhand von Benchmarks wird zunächst die grobe Geschwindigkeit und Speichernutzung untersucht, während die Sicherheit der Sprachen in der Theorie und an einer realen Sicherheitslücke betrachtet wird.
Für einen ausführlichen Vergleich wird ein in allen drei Sprachen erstellter Webserver genutzt. Mittels diverser Metriken wird die Komplexität des Quellcodes analysiert und anschließend mit Laufzeitmessungen die Performanz.
Im Ergebnis ist Rust geeignet, C zu ersetzen, da es ähnlich schnell ist und ähnlich komplex, aber deutlich sicherer. Java hingegen ist zwar langsamer, aber dafür einfacher als Rust und sollte daher weiter eingesetzt werden für Programme, bei denen eine hohe Leistung nicht wichtig ist.