Hallo Leute,
ich habe von meinem Prof. eine Hausaufgabe bekommen. Ich soll ein paar Dinge über Softwareentwicklungstools herausfinden.
Eine Definition hab ich im Netz gefunden (wikipedia), die verstehe ich aber leider nicht (bin nicht so der Computerspezialist).
Wofür man das braucht weiß ich auch nicht. Hab leider gar keinen Ansatzpunkt für eine Suche.
Und wer solche Software anbietet hab ich auch schon Ansatzweise herausgefunden. Es gibt, soweit ich das verstanden habe 3 "große" Plattformen: Java, .NET und C++. Hersteller von entwicklungstools sind laut meiner Recherche SoftGuide und Linux.
Wäre nett, wenn ihr mir helfen könntet. Brauche nur eine kleine grundsätzliche Einführung. Den Rest suche ich mir selbstverständlich selber zusammen.
Danke im Voraus.
Programmieren - alles kontrollieren 4.937 Themen, 20.662 Beiträge
Hi!
Ich finde auch, dass es mehr als Hilfreich wäre, wenn wir genau wüsten worum es geht. Spontan stellt sich mir z.B. die Frage, ob es hier um Grundlagen der Technik geht oder eher um Dinge wie Marktanteile und Bedeutung (für Unternehmen).
Ich kann jetzt einfach etwas hinblubbern (damit hab' ich keine Probleme) um ein paar lsoe Dinge zu den Grundlagen zu schreiben, aber ich weis nicht ob das Sinn macht, ohne den Background zu kennen.
Wir müssten uns aber offensicht schon über ein paar Grundlegende technische Dinge unterhalten (die Softwareentwicklung hat natürlich auch eine technische abstrakte Seite). Es scheint mir hier nicht falsch zus ein, einfach mal ein paar Sätze zu grundlegenden Begriffen loszuwerden.
Tools:
Die Übersetzung ist Hilfmittel oder Werkzeug. Insofern scheint mir "Softwareentwicklungstools" eher ungeschickt zu sein, da es offenbar um die Softwareentwicklung allgemein geht und nicht um konkrete Werkzeuge. Man würde dann von 2Softwareentwicklungsumgebungen" sprechen.
Softwareentwicklungsumgebung:
Damit erstellt man Computerprogramm. Man sollte wissen, das Programme immer für eine spezielle Laufzeitumgebung erzeugt werden. In dieser werden sie dann ausgeführt. Das kann eine speziell auf einen Computertyp udn ein Betriebssystem abgestimmt sein (z.B. Intelx86-PC und dem Betriebsystem Sun Solaris), oder es handelt sich um eine hardwareunabhängige Laufzeitumgebung. Die Sprache Jave nutzt dieses Konzept.
Laufzeitumgebung:
Run-Time-Environment (RTE), die von java haben wir schon genannt. Diese ist wirklich hardwareunabhängig. Es gibt sie für verscheidenste Computertypen und Betriebsysteme. Microsoft hat ein vergleichbares Konzept entwickelt: .NET
Das wundert nicht, da MS mit dem Erfinder von java nicht einig werden konnte und dann natürlich was "eigenes" vorstellen musste, das nun mit viel Geld und Energie in den Markt gedrückt wird. Die Laufzeitumgebung .NET ist bisher offiziell nur für Intel-basierte PCs unter Windows-Betriebssystemen verfügbar (eine Einschränkung im Vergleich zu Java).
Nochmal zu Entwicklungsumgebungen:
Die erzeugen Programme für eine Laufzeitumgebung. Ein Bespiel von MS ist VisualStudio .NET 2005.
Wie schreibt man nun Programm?
Man programmiert. ;-) das bedeutet wir müssen eine Computersprache nutzen. Eine Computersprache ist dabei zuerst eine abstrakte Definition. Beim Programmieren wird nun ein Quelltext eingegeben, den wir dann in ein Programm umwandeln müssen. Das erfolgt durch einen Compiler.
Compiler verstehen eine oder mehrere Computersprachen. Ich trenne das hier, weil klar werden soll, das nur "C++" eine Sprachdefnition ist. Die konkrete Anwenderbarkeit wird erst durch den Compiler bewirkt. Dieser versteht aber i.d.R. "nur" einen besonderen Dialekt der Sprache.
Das sollte man wissen um zu verstehen, dass es verschiedene C++ Compiler gibt, die nicht ebliebig austauschbar sind. Diese Compiler sind ein Kernstück der Entwicklungsumgebung. Neben dem Kompiler werden i.d.R. noch ein Editor (zur Einagbe der Quelltexte), ein Debugger (zur Fehlersuche) und noch diverse Bibliotheken und andere Tools (z.B. zur Erzeugung von Windows-Oberflächen für Programme) dazugehören.
Im Alltag sind Entwicklungsumgebungen Produkte, die verkauft werden. Microsoft hat seine Produkte, Konkurent von MS (z.B. Borland oder IBM) andere. Hier ein paar Beispiele:
- Borland Turbo Pascal 7.0
Das war ein pascalcompiler unter DOS. Die Firma Borland hat den ersten rfolgreichen Compiler auf den Markt gebracht,, der eine echte Enwicklungsumgebung darstellte. Vorher waren das in der Tat alles Einzelprogramme.
- VisualBasic .NET
Eine Programmiersprache, die in VisualStudio.NET genutzt werden aknn. MS verkauft allerdings auch eine einzelne VisualBasic.NET-Version mit kompletter Entwicklungsumgebung.
- VisualC++.NET
ditto, nur wird hier die Sprache C++ als Basis verwendet
- Borland C++ Builder
Eine auf C++ basierende Entwicklungsumgebung für Windows von der Firma Borland.
- Borland Delphi
Eine Entwicklungsumgebung unter Windows der Firma Borland, welche die Computersprache Pascal nutzt. Borland C++ Builder ist eigentlich davon abgeleitet.
- Borland Delphi.NET
Eine Entwicklungsumgebung der Firma Borland, die Programme für die Laufzeitumgebung .NET von MS erzeugt. Hier bietet wirklich ein Konkurent von MS ein Produkt speziell für .NET an.
So, von meiner Seite reicht das erstmal. ;-)
Bis dann
Andreas