Softwaretechnik gegen Informatik
In der modernen Gesellschaft sind Computer zu einem integralen und unvermeidlichen Teil geworden. Wir konzentrieren uns jedoch weniger auf das Innenleben dieser bekannten Dinge. Informatik ist die theoretische Grundlage der Computersysteme, wohingegen Software-Engineering eine Anwendung dieser Prinzipien auf Probleme ist, um eine Softwarelösung zu entwickeln.
Computerwissenschaften
Informatik ist die grundlegende Wissenschaft der Computerhardware und -software. Es bietet Einblick in den Mechanismus von Software- und Hardwarekomponenten sowie theoretische Grundlagen der Berechnung für die Implementierung und Anwendung in Computersystemen.
Informatik besteht aus vielen wichtigen Subdisziplinen. Zur theoretischen Informatik gehören Computertheorie, Informations- und Kodierungstheorie, Algorithmen und Datenstruktur sowie Programmiersprachentheorie. Angewandte Informatik-Subdisziplinen sind künstliche Intelligenz, Computerarchitektur und -technik, Computergrafik und -visualisierung, Kryptographie und Computersicherheit, Computernetzwerke, parallele und verteilte parallele und verteilte Systeme, Datenbanken und Informationsabfrage sowie Software-Engineering.
Viele dieser Subdisziplinen basieren auf mathematischen Theorien. Einige Anwendungsaspekte beziehen sich auf Mechatronik und andere angewandte Wissenschaften.
Diese Subdisziplinen erstrecken sich auch auf kleinere Untersuchungsgebiete. Zum Beispiel enthält die Computational Theory Untersuchungsbereiche wie Automaten-Theorie, Computability-Theorie, Komplexitätstheorie, Kryptographie und Quantum-Computing-Theorie.
Softwareentwicklung
Das Software-Engineering kann als eine der Hauptdisziplinen der angewandten Informatik angesehen werden. Der Fokus liegt auf dem Aufbau effektiver Softwaresysteme mit einem rigorosen Engineering-Ansatz. Es kann als systematischer, disziplinierter, quantifizierbarer Ansatz für das Design, die Entwicklung, den Betrieb und die Wartung von Software und das Studium dieser Ansätze beschrieben werden. Es gibt keine anerkannte Definition von Software-Engineering, sondern eine Interpretation seines Zwecks.
Fritz Bauer definierte Software-Engineering als "Die Etablierung und Anwendung fundierter Engineering-Prinzipien, um wirtschaftlich entwickelte Software zu erhalten, die zuverlässig ist und auf realen Maschinen effizient arbeitet".
Software ist nicht physisch. es sind logische Entitäten, die innerhalb eines Computersystems arbeiten. Daher muss es auf eine optimale Leistung in Bezug auf Hardware und Betrieb ausgelegt werden. Um diese Ziele zu erreichen, verwenden Softwareentwickler Entwicklungsmodelle. Diese Modelle umfassen die wichtigsten Schritte der Softwareentwicklung, z. B. Entwurf, Codierung, Fehlerbehebung und Wartung, zu einem zusammenhängenden Rahmen, der einen systematischen Fortschritt der Software während ihres gesamten Lebenszyklus ermöglicht.
Was ist der Unterschied zwischen Software Engineering und Informatik??
• Informatik konzentriert sich auf die theoretischen Aspekte des Computers, sowohl in Software als auch in Hardware.
• Software Engineering konzentriert sich auf die systematische Entwicklung von Software. Die Codierung oder Programmierung ist eine Schlüsselkomponente des Software-Engineerings.
• Software-Engineering kann als Anwendung der Computertheorie verstanden werden (z. B. kann die Effizienz eines Algorithmus anhand der Komplexität gemessen werden, die in der Theorie der Informatik beschrieben wird; seine Anwendung liegt jedoch im Bereich des Software-Engineerings, wo der geeignetste Algorithmus ist.) ausgewählt anhand der Komplexität).