Programmiersprachen können durch einen Interpreter oder einen Compiler in Maschinencode übersetzt werden.
Welche Vorteile bringt jede Übersetzungsmethode mit sich?
Compiler:
allgemein schnellere Ausführung
ursprünglicher Code in der Regel nicht mehr rekonstruierbar Schutz des Quelltextes
breiter Einsatz für Programmierung von Betriebssystemen, Anwendungsprogrammen: C, C++, C#, Pascal/Delphi, FORTRAN
Interpreter:
langsamere Ausführung wegen Aufwand für Übersetzung
Laufzeitfehler durch Syntaxfehler möglich Quelltext des Programmes bleibt sichtbar: kein Schutz, aber offen für beliebige Anpassungen durch Dritte
Aber: plattformunabhängige Programme (überall wo Interpreter läuft)
Einsatz im Web, als Skriptsprachen zur Ausführungssteuerung
Perl, PHP, JavaScript, VBScript, Python, Visual Basic
C# hat sich als .Net-Sprache etabliert. Welche Vorteile haben Sie für die Anwendung von C# kennengelernt?
gute Entwicklung für Internet- und Windows-Applikationen,
wird in vielen Informationssystemen, vor allem im Ingenieursbereich, als Schnittstelle angeboten (z.B. Inventor, SAP .Net-Connector)
Standard !! (anders als VB und VBA Microsoft)
plattformunabhängig ! (Handy, PDA, Spielkonsolen etc.)
ermöglicht die Erstellung von Client- und Server-Applikationen und den Zugriff auf Datenbanken
hat einen Wiedererkennungseffekt zum VB(A),
erlaubt die Erstellung von (Web-)Diensten unter SOA#Paradigmen ( Internet der Dienste)
viele Techniken sind im Rahmen des IDE (Integrated Development Environment) wiederverwendbar
Was sind die drei Hauptprinzipien der objektorientierten Programmierung?
Kapselung
Vererbung
Polymorphie
Was sind Programmierparadigmen?
Programmierparadigmen sind fundamentale Programmierstile.
Programmiersprachen können mehrere Paradigmen unterstützen.
Imperative Programmierung : (Abfolge von Befehlen, die der Computer in der angegebenen Reihenfolge ausführen soll). (Wie)
Deklarative Programmierung: (Beschreibung der Eigenschaften des gewünschten Ergebnisses). (Was)
Prozedurale Programmierung (Programme werden in Prozeduren (Funktionen) aufgeteilt Sichtbarkeit: global oder lokal.)
Objektorientierte Programmierung (Programme bestehen aus miteinander kommunizierenden Objekten. Objekte beinhalten Daten/Zustand und Code der diesen Zustand verändern kann.)
Was kennzeichnet objektorientierte Sprachen?
In objektorientierten Sprachen werden Variablen und Funktionen zum Zugriff und zur Manipulation kombiniert und in Objekten gekapselt.
Es wird verbunden was zusammengehört. Aber es wird verborgen, was nicht für jeden relevant ist.
Microservices ist ein Ansatz zur Modularisierung von Software. Microservices nutzen als Module einzelne Programme, die als eigene Prozesse laufen. Nennen Sie drei Aspekte der Microservices – Architektur.
Ein Programm soll nur eine Aufgabe erledigen
Programme sollen zusammenarbeiten können.
Nutzen eine universelle Schnittstelle
Erläutern Sie den Client-Server-Architekturstil.
Jede Komponente kann Dienstleistungen anderer Komponenten über definierte Schnittstellen in Anspruch nehmen.
Server : bieten Dienste an
Clients : nehmen Dienste in Anspruch
Komponenten können sowohl Clients als auch Server-Rollen übernehmen
Interaktion erfolgt auf Request-Response Interaktionen
Was wird unter einer Community-Cloud, was unter einer Hybrid-Cloud verstanden?
Hybride Cloud:
Kombination aus Private Cloud und Public Cloud
Nutzung von zusätzlichen Ressourcen aus der Public Cloud bei hoher Last
Freigabe von Ressourcen, wenn Sie nicht mehr benötigt werden
Community-Cloud:
nichtöffentlich, von mehreren Organisationen mit ähnlichen Anforderungen geteilt , z.B. branchenspezifisch
Betrieb wiederum durch die beteiligten Organisationen oder extern gut für Organisationen, die die Isolation einer Private Cloud brauchen, für die der Betrieb allein aber nicht rentabel ist.
Aus welchen beiden prinzipiellen Bestandteilen setzt sich .NET zusammen ? Erklären Sie die wichtigsten Merkmale dieser Bestandteile und welche Aufgaben diese haben. Welches Ziel wird damit verfolgt?
Laufzeitumgebung: führt Programme aus
Klassenbibliothek: Sammlung selbstständiger Programmierkomponenten
Laufzeitumgebung und Klassenbibliothek bieten eine gemeinsame Basis für die Softwareentwicklung mit dem Ziel einer sprach-und plattformneutralen Anwendungsentwicklung
Zuletzt geändertvor einem Jahr