![]() |
![]() |
|
![]() |
![]() |
|
Programmierung Rat & Tat für Programmierer |
![]() |
|
Themen-Optionen | Ansicht |
![]() |
#1 |
Jr. Member
![]() Registriert seit: 07.12.2001
Beiträge: 42
|
![]() Hallo Leute!
Da ich mich schon seit längerem interessiere, eigene Programme zu entwickeln, möchte ich nun eine Prog. Sprache lernen. Ich weiß... C++ ist wahrscheinlich der Hammer für einen Neueinsteiger! Ich hätte davor noch eine Frage, da mich einige Homepages auf denen ich war, mich einigermaßen zum Thema C++ verwirrt haben. Also bitte korrigiert mich wenn ich mit der folgenden Aussage falsch liege... Der Compiler bei C++ ist ausschlaggebend, unter welchem OS mein Prog. läuft, oder? Die Sprache ist immer die selbe. Ich brauch also nicht darauf Rücksicht nehmen, ob das Prog. zukünftig unter Linux oder WIN laufen wird. (Für mich zwar nicht ganz logisch, aber so habe ich es teilweise gelesen). Nun, gibt es auch verschiedene Anbieter von C++. Also Borland, MS, etc.? Könntet Ihr mich ein wenig aufklären, bevor ich damit anfange?? Danke! Gruß Dr. |
![]() |
![]() |
![]() |
#2 |
Veteran
![]() Registriert seit: 24.10.2001
Alter: 45
Beiträge: 382
|
![]() Nun was den Compiler betrifft stimmt das zum teil
allerdings (ich kanns nicht segen) glaub ich nicht daß es möglich ist ein Win32 programm in Linux zu konvertieren, überleg mal sonst könntest du alles decompilen und für linux recompilen und es gäbe keine Compatibilitätsprobleme mehr *freu*!? Was die "verschiedenen" C++ Versionen betrifft ist es so daß der Hauptsächliche Unterschied dabei im Compiler liegt (Funktionen etc.) Die gängigste und wahrscheinlich mittlerweile am besten unterstützte version ist wahrscheinlich MS C++ die anfänge hat allerdings Borland gemacht, sagen wir so durch borland wurde C++ zur Weltsprache ![]() Nun soweit meine Erkenntnisse... MfG Nighty
____________________________________
Remember, there\'s more to fight for than to die for! |Nightstalker| |
![]() |
![]() |
![]() |
#3 | |
Hero
![]() |
![]() Zitat:
Bei C++ hast du sogar unter Windows das Problem, daß du Klassen-Bibliotheken benötigst, die aber bei jedem Compiler-Anbieter wieder anders sind. Du mußt sogar für Windows die Programme umschreiben, wenn du einen anderen C++-Compiler verwenden willst. ![]() Ausgenommen natürlich, wenn der Compiler Windows-SDK oder MFC ganz unterstützt oder du Geld in eine externe Klassenbibliothek investierst. Aber für LINUX wäre ein Umschreiben unumgänglich ausgenommen, der Fremdanbieter der Klassenbibliothek liefert sie auch für LINUX aus und es gibt keine Kompatibilitätsprobleme. Java ist billiger, nämlich gratis !
____________________________________
Bibel |
|
![]() |
![]() |
![]() |
#4 |
Inventar
![]() Registriert seit: 24.01.2001
Beiträge: 5.631
|
![]() Egal welche Sprache Dein Begehr in diesem Thread sein möge (könnte ja sein, daß Du plötzlich sagst, COBOL ist jetzt das Thema Deiner Überlegungen):
Also, .., unabhängig von der verwendeten Computersprache gilt folgendes: Entscheidend für die Überführung von Programmcode von einem Betriebssystem zu einem anderen sind die Schnittstellenfunktionen, gewissermaßen Deine eigenen "Intrinsics", vielleicht halt teuer zugekauft (C-ISAM, Oracle DB, SAP ...), je nach der (geistigen) Kapazität Deiner eigenen Softwarefirma. Der Bildschirm (das Datei / DB-System, die Peripherie) muß unter den verschiedenen Betriebssystemen unterschiedlich angesprochen werden, deswegen sollte eine 'black box' - Schnittstellenfunktion den eigenen Code portabel - also allgemeingültig - lauffähig machen. Den kleinsten gemeinsamen Nenner erschafft man sich durch die prinzipielle Verwendung von Schnittstellenfunktionen, wie sie in Bibliotheken (APIs) vorhanden sind. Viele APIs sind betriebssystemspezifisch, nur die wenigsten beinhalten wirklich portable Schnittstellenfunktionen, im Sinn von: TextAusgabe(Fensterhandle,String,Zeichenanzahl) DateiÖffnen(ZugriffspfadplusDateiname,Zugriffsrech te) usw. Pro Betriebssystem und auch pro Zielmaschinentyp (Beispiel Linux unter IBM AS400 bzw. Linux unter x86-Architektur) muß es einen Konkretniederschlag dieser idealen Schnittstellen-API geben, wo die allgemeine Funktion TextAusgabe( ... ) intern MS Windows oder Linux spezifisch umgesetzt implementiert ist. Diese Schnittstellenfunktionen zu schreiben dauert jahrelang, deswegen werden kommerzielle Libs auch teuer verkauft von den jeweiligen Entwicklerfirmen. Alles klar ? Also: C++ portabel ? Nein ! Java ? Schon eher, aber auch - ein klares Nein-Jein ! Deswegen, schön brav Schnittstellenfunktionbau erlernen, und auch andere Dinge wie Datenwortbehandlung auf Assemblerebene nicht außer acht lassen. Stichwort: Little Endian gegenüber Big Endian. Ebenso wie Standard-Datenwortbreite. Sonst sind Programme nicht übertragbar von einem System auf das andere. Der Compiler selbst muß sowieso ANSI konform sein, sonst sollte man ihn/bzw. seine Erweiterungsmöglichkeiten tunlichst nicht benutzen im Hinblick auf die erwünschte Portabilität. der Code muß Schnittstellenfunktionen aufrufen und der Code muß auch - ausschließlich und nur - ANSI konforme Befehle und Vorgehensweisen verwenden Das portable Programmieren besteht aus: * Schnittstellenfunktionen schaffen * Anwendungen, die darauf aufbauen, schreiben * Reuse-Dividende lukrieren ("das Rad nicht neu erfinden", die Funktion TextAusgabe wurde auf allen Zielcomputersystemen implementiert und ist insofern wiederverwendbar und deshalb eine enorme Erleichterung aufgrund der Zeitersparnis, das ganze nicht im Applikationscode sondern in der API-Schnittstellenfunktion individuell an das Betriebssystem/die Hardware/den Compiler verwirklicht zu haben) und derart als Firma zu gedeihen mfg Kikakater |
![]() |
![]() |
![]() |
#5 |
Jr. Member
![]() Registriert seit: 07.12.2001
Beiträge: 42
|
![]() Danke für Eure Auskünfte!!!
Ich werd mich mal mit JAVA auseinandersetzen aber auch ein wenig mit C++. Ich möchts sowieso eher "sachte" angehen. Aber eine Frage hätt ich noch... Ich habe das Visual Studio 6.0. Für die Kontexthilfe brauche ich aber die MSDN Libary CD. Wo bekommt man die eigentlich her? Bzw. kostet das etwas? Vielleicht eine blöde Frage, aber ich habe gehört, dass es nicht unbedingt die MSDN Lib. CD sein muss, sondern es gibt auch noch andere Möglichkeiten, (im Internet solls da was zum downloaden geben). Gruß Dr. |
![]() |
![]() |
![]() |
#6 | |
Elite
![]() |
![]() Zitat:
Prinzipiell würde ich einem Programmieranfänger ja generell nicht dazu raten mit einer OO Sprache zu beginnen, aber das ist wohl Geschmackssache. |
|
![]() |
![]() |
![]() |
#7 | |
Hero
![]() |
ist ja ein Widerspruch in sich
Zitat:
![]() Wenn du das "sachte" angehen willst, dürftest du wohl die falsche Entwicklungsumgebung gekauft haben. Das Visual Studio kommt schnell "zur Sache"!
____________________________________
Bibel |
|
![]() |
![]() |
![]() |
#8 | |
Inventar
![]() Registriert seit: 06.04.2001
Alter: 44
Beiträge: 2.343
|
![]() Zitat:
für jemanden, der sich nicht schon am anfang mit OOP rumschlagen will, rate ich, mal mit webprogrammierung (html & javascript, php am besten) zu beginnen, dort hat man schnell ein paar ergebnisse (schön bunt und in farbe ![]()
____________________________________
"Life is like a box of rockets," said the Marine. "You never know what you´re gonna ret." Then he pulled the trigger of his BFG9000. |
|
![]() |
![]() |
![]() |
#9 | |
Hero
![]() |
![]() Zitat:
OO ist meiner Ansicht nach einfacher, da sich die Problembeschreibung einfacher in den Programm-Code abbilden läßt als in der herkömmlichen Programmierung.
____________________________________
Bibel |
|
![]() |
![]() |
![]() |
#10 |
Inventar
![]() Registriert seit: 06.04.2001
Alter: 44
Beiträge: 2.343
|
![]() habs mir mal angesesehen und bin dann reumütig zu forte zurückgegangen, weil mir visual age einfach von der bedienung her zu komplex vorkam. kann zwar sicher einiges, aber ich bin mit forte zufrieden.
____________________________________
"Life is like a box of rockets," said the Marine. "You never know what you´re gonna ret." Then he pulled the trigger of his BFG9000. |
![]() |
![]() |
![]() |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
|
|