WCM - Das österreichische Computer Magazin Forenübersicht
 

Zurück   WCM Forum > Rat & Tat > Programmierung

Programmierung Rat & Tat für Programmierer

Microsoft KARRIERECAMPUS

Antwort
 
Themen-Optionen Ansicht
Alt 16.01.2002, 02:19   #1
Doktor
Jr. Member
 
Registriert seit: 07.12.2001
Beiträge: 42


Standard Programmieranfänger

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.
Doktor ist offline   Mit Zitat antworten
Alt 16.01.2002, 02:28   #2
Nightstalker
Veteran
 
Registriert seit: 24.10.2001
Alter: 45
Beiträge: 382


Standard

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|
Nightstalker ist offline   Mit Zitat antworten
Alt 16.01.2002, 14:36   #3
Flink
Hero
 
Registriert seit: 29.08.2001
Alter: 57
Beiträge: 904


Flink eine Nachricht über ICQ schicken Flink eine Nachricht über Skype™ schicken
Standard Re: Programmieranfänger

Zitat:
Original geschrieben von Doktor
Ich brauch also nicht darauf Rücksicht nehmen, ob das Prog. zukünftig unter Linux oder WIN laufen wird.
Genau um das zu ermöglichen, wurde von SUN die Programmiersprache JAVA entwickelt. Ich kann für Programmieranfänger nur empfehlen, besser mit Java als C++ zu beginnen. Java ist wesentlich einfacher zu lernen und programmieren als C++ und noch dazu vom Betriebssystem weitgehend unabhängig, solange SUN eine Java Virtual Machine (JVM) dazuliefert. JVM ist notwendig, um Java-Programme auf einem Rechner ablaufen zu lassen.
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
Flink ist offline   Mit Zitat antworten
Alt 16.01.2002, 14:51   #4
kikakater
Inventar
 
Registriert seit: 24.01.2001
Beiträge: 5.631


Standard

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
kikakater ist offline   Mit Zitat antworten
Alt 16.01.2002, 16:42   #5
Doktor
Jr. Member
 
Registriert seit: 07.12.2001
Beiträge: 42


Standard

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.
Doktor ist offline   Mit Zitat antworten
Alt 17.01.2002, 13:26   #6
citizen428
Elite
 
Registriert seit: 03.04.2001
Beiträge: 1.358


citizen428 eine Nachricht über ICQ schicken
Standard Re: Re: Programmieranfänger

Zitat:
Original geschrieben von Flink

Ich kann für Programmieranfänger nur empfehlen, besser mit Java als C++ zu beginnen.
man holy-war

Prinzipiell würde ich einem Programmieranfänger ja generell nicht dazu raten mit einer OO Sprache zu beginnen, aber das ist wohl Geschmackssache.
____________________________________
citizen428.blog() | CARGAL | open.source.mac
citizen428 ist offline   Mit Zitat antworten
Alt 17.01.2002, 18:38   #7
Flink
Hero
 
Registriert seit: 29.08.2001
Alter: 57
Beiträge: 904


Flink eine Nachricht über ICQ schicken Flink eine Nachricht über Skype™ schicken
ist ja ein Widerspruch in sich

Zitat:
Original geschrieben von Doktor
Ich möchts sowieso eher "sachte" angehen.
Ich habe das Visual Studio 6.0.

Wenn du das "sachte" angehen willst, dürftest du wohl die falsche Entwicklungsumgebung gekauft haben. Das Visual Studio kommt schnell "zur Sache"!
____________________________________
Bibel
Flink ist offline   Mit Zitat antworten
Alt 19.01.2002, 11:53   #8
RaistlinMajere
Inventar
 
Registriert seit: 06.04.2001
Alter: 44
Beiträge: 2.343


Standard Re: Re: Re: Programmieranfänger

Zitat:
Original geschrieben von citizen428
prinzipiell würde ich einem Programmieranfänger ja generell nicht dazu raten mit einer OO Sprache zu beginnen, aber das ist wohl Geschmackssache.
ich stimme zu, ich hab aufbauend auf den minimalen c-grundkenntnissen (bei der OOP bin ich dann ausgestiegen, habs auch nicht weiterverfolgt, weils mich nicht interessiert hat) aus der schule (html, aber das ist nicht erwähnenswert, ist ja keine programmiersprache) javascript und php gelernt, danach war der einstieg in java und die OOP zwar bissl ungewohnt und es hat eine weile gedauert, bis ichs so halb gecheckt hab, aber jetzt gehts.

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 )und lernt aber gleich das programmtechnische denken abseits der OOP kennen. ist zwar dann ein gehöriger umdenkvorgang, wenn man mit der OOP beginnt, aber man muß sowieso immer auf das vorherige wissen zurückgreifen.
____________________________________
"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.
RaistlinMajere ist offline   Mit Zitat antworten
Alt 19.01.2002, 12:23   #9
Flink
Hero
 
Registriert seit: 29.08.2001
Alter: 57
Beiträge: 904


Flink eine Nachricht über ICQ schicken Flink eine Nachricht über Skype™ schicken
Standard OO-Programmierung

Zitat:
Original geschrieben von RaistlinMajere
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 )und lernt aber gleich das programmtechnische denken abseits der OOP kennen. ist zwar dann ein gehöriger umdenkvorgang, wenn man mit der OOP beginnt, aber man muß sowieso immer auf das vorherige wissen zurückgreifen.
Wer am schnellsten zu Ergebnissen kommen möchte, der möge doch ein visuelles Tool wie IBMs Visual Age z.B. für Java einsetzen. Auch hier gibt es Versionen, die nur in der Klassenanzahl beschränkt sind, zum Herunterladen .
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
Flink ist offline   Mit Zitat antworten
Alt 19.01.2002, 12:37   #10
RaistlinMajere
Inventar
 
Registriert seit: 06.04.2001
Alter: 44
Beiträge: 2.343


Standard visual age

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.
RaistlinMajere ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 15:48 Uhr.


Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Forum SEO by Zoints
© 2009 FSL Verlag