mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik welche Programmiersprache für PC ??


Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo liebe Leute,

bis jetzt hab ich nur in meiner µC- Welt "gelebt" (Assembler) . Doch
jetzt möchte ich diverse Zustände und Schalthandlung übern PC abwickeln
z.B. über die Serielle. Nur meine Prog. Kenntnisse für PC Software sind
bescheiden. (Turbo Pascal vor 15 Jahren).
Welche Software soll ich nehmen: sie muß mir auf jedenfall eine gute
"Hardwareanbindung" (wegen serieller) ermöglichen.
Evtl. kann man ja so eine Steuerungssoftware auf einer
Datenbankstruktur aufsetzten ??.

wer hat einen Tipp für mich und wichtig - sollte natürlich gratis sein,
da das ganze rein im Hobbybereich stattfindet.

Danke für Rückmeldungen
Michael

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Am schnellsten geht das mit einer Scriptsprache. Die Auswahl ist
Geschmackssache. Ich nehme Python für so etwas. Die serielle ist
kinderleicht anzusprechen. Geht aber auch in Perl und Ähnlichem.

Die Skriptsprachen gibt es auch für Windows.
Windows ist aber nicht gratis, deshalb hast Du sicherlich schon Linux.

Autor: Steffen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn vom Turbo-Pascâl noch etwas hängengeblieben ist, dann schau dir mal
Delphi an.

Steffen

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

auch wenn jetzt wieder die große Geschwindigkeitkeule kommt:

Schau dir mal Java an. Die serielle Schnittstelle kann man auch damit
ansprechen (COMAPI bzw. RXTX). Die JavaAPI bietet eigentlich für jede
nötige Funktion bereits etwas an (von Datenbank über TCP/IP bis hin zu
GUI). Um Speicherverwaltung braucht man sich (wie in einer
Skriptsprache) ebenfalls keine Gedanken machen. Weiterhin gibt es gute,
kostenlose IDE's. Ich bevorzuge Netbeans.

Für kleiner Tools verwende ich eigentlich nur noch Java.

Matthias

Autor: Lucian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Python

- kostenlos
- einfach Scripting
- graphische Oberfläche (Boa Constructor)
- über Console kann direkt mit dem MSP kommuniziert werden
- "komplette" Installationspakete vorhanden (enthought inc)
- einfache Erweiterungsmöglichkeit (z.B. gleichzeitiger Zugriff über
GPIB)

Andreas

Autor: taur (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Auf einem PC ist wohl C++ das Beste. Damit kann man nahezu ALLES machen
(außer Bootsektoren). Außerdem kann man in OOP programmieren, was die
Lesbarkeit und Wiederverwendbarkeit vom Code erhöht. C++ ist auch
schneller als jede Scriptspache (wie Phyton) oder Interpretersprache
(wie Java). Von Delphi würde ich auch die Finger lassen, da es ist sehr
unportabeler, uneffizienter und unleserlicher Code ist.
Als Compiler empfehle ich G++. als IDE empfehle ich EMACS.#

Autor: Blubb (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Labview wäre dafür prima. Einarbeitung minimal, schnelle Ergebnisse,
tolle Oberfläche selbst gestalten, etc...

Autor: Jens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Von Delphi würde ich auch die Finger lassen, da es ist sehr
> unportabeler, uneffizienter und unleserlicher Code ist.

Warum uneffizient? Delphi-Programme sind schneller als C++-Programme.
Und für das Unleserliche ist ja wohl nur der Programmierer
verantwortlich. Delphi ist einfach spitze!

Jens

Autor: m@u (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich würde dir spontan auch C++ empfehlen, weil du das Erlernte auch auf
dem Mikrocontroller anwenden kannst. Dort hat C++ nämlich mehrere
Vorteile:

- Syntaktische Ähnlichkeit mit C; wenn du schon Pascal programmiert
hast, bist du dich gewohnt strukturiert zu Programmieren, das kannst du
mit C sehr gut anwenden, musst dabei nur eineinhalb Sprachen statt 2
lernen, wenn du dich mit C/C++ beschäftigst
- Du kannst Assembler einbinden
- Wenn du dich mit uC beschäftigst, kommst du um C/C++ längerfristig so
oder so nicht herum.

Die anderen Vorteile von C++ sind ja bekannt...

Autor: bruzzler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich würde c/c++ empfehlen. Ist zwar sicher nicht die leichteste Sprache,
hat aber ein paar entscheidende Vorteile:
- es gibt für JEDE Plattform einen c/c++ Compiler
- bestens dokumentiert, jede Menge Bücher, Internetseiten, Tutorials
...
- man kann damit alles machen bis hin zu Bitoperationen

Autor: Mark de Jong (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Michael,

Ich benutzte Realbasic, www.realbasic.com.

Geht ganz einfach, und es gibt auch ein gutes forum www.realbasic.de

Realbasic ist fur windows, linux und Mac os verfügbar.

Grüße Mark,

Autor: Peter Kasi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Und ich würde dir spontan auch Delphi empfehlen, da
- rudimentäre Pascalkenntnisse vorhanden sind
- sehr viele freie Komponenten für alles Mögliche erhältlich sind
- die personal Edition kostenlos erhältlich ist
- man relativ einfach Windowsanwendungen erstellen kann
- portabilität für die meisten privatanwender eh kein Thema ist
- ....

Gruß
Peter

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

C++ ist zwar für ernsthafte Anwendungsentwicklung kaum zu umgehen. Für
ein kleines Tool würde ich aber die Finger davon lassen. Das Ding ist
einfach zu komplex.

Das Delphi schneller als C++ ist halte ich für ein Gerücht. Beides sind
Compilersprachen und beide kann der Programmierer ausbremsen. Für C++
existieren aber die besseren Compiler.

Matthias

Autor: m@u (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich denke, dass das mit der Geschwindigkeit eine Anspielung auf das
Object-Handling war. Dazu gibt es tatsächlich Benchmarks, die beweisen,
dass Delphi in dieser Disziplin schneller ist (Ich glaube war mal in der
iX). Aber eben... Lüge ist ein Adjektiv mit 7 Steigerungsstufen ;) :

Notlüge
kleine Lüge
Lüge
grosse Lüge
Lüge, die deine Nase ins unermessliche wachsen lässt
Lüge, die die Balken biegen lässt
Benchmark

Auch ein Matthias (m@u aka Mätthu)

Autor: Peter Kasi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>C++ ist zwar für ernsthafte Anwendungsentwicklung kaum zu umgehen. >Für
ein kleines Tool würde ich aber die Finger davon lassen. Das >Ding ist
einfach zu komplex.

was hoffentlich nicht heißen soll, mit Delphi kann man keine ernsthafte
Projekte realisieren ;)

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

@Peter Kasi
keine Ahnung. Dazu kenne ich Delphi zu wenig. Nur macht man sich bei
Delphi WIMRE relativ abhängig von einem Hersteller.

Matthias

Autor: Peter Kasi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Matthias
aber macht man sich das nicht immer ein wenig. Java -> Sun, .NET ->
Microsoft (auch wenn manche das Gegenteil behaupten), Abhängigkeiten
hast du aber fast immer wenn du die breite Masse (Bill's Welt) ohne
Interpreter bedienen willst.
Aber du hast recht, der lange Zeit ungewisse Kurs von Borland ist einer
der Gründe für die "geringe" Verbreitung von Delphi.

PS: Delphi findet auch durchaus in großen Projekten Anwendung, z.B. CAS
Map&Guide

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

Die Politik von SUN ist mit Java eine andere als die von Borland mit
Delphi. Sowohl JRE als auch JDK sind kostenlos erhältlich. Es gibt
diverse, gute und kostenlose IDE's.

Für aktuelle Delphi-Versionen muß man AFAIK Geld hinlegen.

Was M$ mit .NET macht weiß ich nicht. Hat mich bisher auch nicht
wirklich interessiert.

Mir gefällt Java einfach. Wenn auch die dicken Java-Brocken (Eclipse
und Co) lange brauchen bis sie laufen. Wenn sie aber mal laufen ist die
Arbeitsgeschwindigkeit dank JIT Compiler aber garnicht so schlecht wie
immer wieder behauptet wird.

Das einzige was ich wirklich vermisse ist das überladen von Operatoren.
Das ist manchmal einfach zu praktisch und erspart eine Menge
Schreibarbeit. Allerdings kann man sich damit auch gewaltig ins Knie
schießen.

Matthias

Autor: Philipp Sªsse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe mal relativ viel PC über IO-Karte mit Hardware agieren lassen
und habe dabei FPC lieben gelernt. Ist interaktiv, speziell auf das
Ansprechen der Hardware zugeschnitten und auch locker schnell genug, um
kompliziertere Sachen damit zu machen.

Bei mir ging es darum, im Rahmen einer Fehlersuche Teile eines Chips zu
isolieren und den Rest im PC nachzubilden. Dabei mußte ich ständig etwas
ändern und hätte entweder dauernd neu compilieren müssen oder einen
Riesenaufwand mit einer flexiblen Konfigurierbarkeit (Menü,
Konfig-File) treiben müssen. Mit FPC war das geschenkt.

Autor: Peter Kasi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hast schon recht, es ist doch ein ganz anderes Abhängigkeitsverhältnis
in das man sich mit Delphi begibt. Die freie Personal-Edition kommt für
gewöhnlich 1/4 Jahr später, ist stark abgespeckt und auch nur für den
persönlichen Gebrauch. Es dürfen keine Applikationen für kommerzielle
Zwecke damit erstellt werden.
Ich selbst verwende zb Eclipse zusammen mit dem NC30
(selbstgeschriebener Errorparser) und schwöre darauf :)(aber auch erst
seit ich 750MB RAM hab)

PS: Operatorenüberladung ist in Delphi möglich ;)
PPS: noch was zum trollen, jede Sprache hat ihre Berechtigung, solange
es kein Basic ist :)

Autor: Steffen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Michael

Wie Du siehst, ist mal wieder der übliche Streit ausgebrochen, welche
Programmiersprache nun die Beste ist. Für dich musst Du das selbst
entscheiden. Für Java findest Du hier
http://www.fernando-heitor.de/pic/tutorials/java-t...
eine recht gute Einführung.

Steffen

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

also das was wir hier machen ist noch lange kein Streit. Die Diskussion
ist doch bis jetzt ganz sachlich.

Matthias

Autor: Steffen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Matthias

von deiner Seite auf jeden Fall aber wenn ich mir so ein paar andere
posts ansehe.

Steffen

Autor: Thorsten (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Möchte auch mal meine Meinung sagen. Ich empfehle Delphi, weil

* man sehr schnell rein kommt
* sehr schnell ein brauchbares Ergebnis rauskommt
* man sich auf das wesentliche konzentrieren kann
* es massenhaft freihe Komponenten gibt
* eine sehr gute IDE vorhanden ist
* der erzeugte Code sehr schnell ist
* eine Personal Edition kostenlos erhältlich ist
* etc.

Ich programmiere seit der Version 1.0 damit und es war bisher alles
realisierbar. Nur Treiber lassen sich mit Delphi nicht erstellen.
Allerdings bereue ich es jetzt ein wenig, daß ich mich nicht schon
früher in C bzw. C++ (MS Visual C++) eingearbeitet habe. Wenn man
Treiber für Windows entwickeln will, kommt man da nicht drumherum.
Übrigens lassen sich in Delphi auch Assembler-Routinen einbinden und
man kann genauso die Windows API Funktionen benutzen, wenn man die
Borland VCL nicht benutzen möchte. Von daher ist Delphi schon sehr
flexibel und ich habe festgestellt, daß es in Elektronik Industrie
durchaus weit verbreitet ist.

Thorsten

Autor: Matthias Friedrich (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Matthias
"C++ ist zwar für ernsthafte Anwendungsentwicklung kaum zu umgehen.
Für ein kleines Tool würde ich aber die Finger davon lassen. Das Ding
ist einfach zu komplex."

Das würde ich inzwischen so nicht mehr unterschreiben. SAP entwickelt
ihr neues System inzwischen in Java, und eine ernsthaftere Anwendung
kann ich mir kaum vorstellen.

Ich komme aus der C/++-Welt, deshalb fiel mir der Einstieg in Java
einfach. Ich denke der Umstieg von Java auf C ist deutlich schwieriger.

Am Anfang war ich auch gegen Java, aber wenn man vorurteilsfrei an die
Sache rangeht, was leider die wenigsten machen, muss man erkennen, dass
Java viele Vorteile bietet. Inzwischen benutzte ich C nur noch da wo es
unbedingt notwendig ist.
Gerade in Punkto Geschwindigkeit hat sich viel getan, sogar die GUIs
kann man inzwischen so hinbekommen, dass sie genauso reagieren wie
native Win-GUIs. Und mit Java 5 soll sich das nochmal verbessert
haben.


Gruß,
noch ein Matthias

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
.. ist eine sehr interressante Disskussion bis jetzt, vielen Dank für
Teilnahme. wegen C/C++ gibts da ältere Versionen gratis oder was kosten
die - hat da jemand eine Ahnung ich brauch weder das Neueste noch das
Beste.?

Michael

Autor: OldBug (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Michael:

MinGW/CygWin ist frei...

Autor: Rufus T. Firefly (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ältere Borland-C-Compiler sind auch frei verfügbar.
(Borland-Community, da im "Museum" nachsehen)

OpenWatcom.org ist die OpenSource-Variante des Watcom-C-Compilers.

Ohne IDE, dafür aber aktuell, ist das Compiler-Backend des aktuellen
Visual C++ auch frei zu bekommen.
http://msdn.microsoft.com/visualc/vctoolkit2003/

Diese Compilerversion ist in einem Standardkonformitätsvergleich und
Geschwindigkeitsvergleich in einer diesjährigen DDJ-Ausgabe übrigens
sehr gut weggekommen - MS lernt offensichtlich dazu.

Hier gibts noch ein paar Links auf frei verfügbare Compiler
http://www.thefreecountry.com/compilers/cpp.shtml

Jeder bessere Editor kann für so etwas als IDE verwendet werden.

Hier kann ich übrigens - ein Hieb in Richtung plattformunabhängige
Programmierung - DialogBlocks empfehlen. Das ist ein GUI-Builder für
die plattformunabhängige Klassenbibliothek wxWidgets, der mittlerweile
auch den kompletten Build-Zyklus unterstützt.
Allerdings kostet DialogBlocks Geld, wenn auch nicht viel.

http://www.anthemion.co.uk/dialogblocks/
und
http://www.wxwidgets.org

Autor: thomas_p. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Im Info-Unterricht benutzen wir:
http://www.bloodshed.net/devcpp.html
was du auch komplett kostenlos bekommst und alles beinhaltet was du
fuer den Anfang brauchst
( Was ich unter Linux benutze interessiert dich vermutlich nicht ;-)

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich bin erstaunt das ich nicht der einzige Python Fan bin :)
Ich finde Python genial einfach und einfach genial. Aber mal ne Frage:
ich würde gern also Oberfläche QT verwenden. Unter Linux ist das auch
kein Problem, aber für Windows hab ich noch keine Lösung gefunden.
Leider ist QT für Windows nicht frei. Gibt es da vielleicht irgend eine
freie Runtime oder sowas? Also ohne die ganzen Libraries und
Entwicklungstools.
Gibt es vielleicht eine andere grafische Oberfläche die unter Win und
Linux läuft? Ich kenn noch GTK, TK und ähnliche bekannte sachen, aber
die kommen an QT einfach nicht ran.

btw: ich hab mal gelesen das QT eigentlich für C geschrieben wurde, die
Einbindung in Python aber wesentlich einfach und komfortabler ist :)


Was die Wahl der Programmiersprache angeht: Ich bin der Meinung das ist
abhängig von der Anwendung, vom Geldbeutel und vom persönlichen
Geschmack.
Wenn die Anwendung nicht gerade jedes Prozent an Performance aus einem
Rechner rauskitzeln muß reichen im Normalfall Sprachen wie Python oder
Java. Vorteil ist das es sie kostenlos und für viele Systeme gibt.
Compiler wie Delphi und Visual Studio sind Buyware. Es gibt zwar von
beiden kolstenlos erhältliche Versionen, aber die sind normal relativ
veraltet und von der Funktion eingeschrängt. Dann gibt es noch die weit
verbreiteten Gnu Compiler, aber das ist das wirklich nur der nakte
Compiler, bestenfalls mit einem mehr oder weniger brauchbaren Editor.
Grafische Oberflächen damit zu erstellen ist kein echter Spaß.

C hat natürlich den großen Vorteil das man für praktisch jedes System
einen Compiler bekommen, aber die große Portierbarkeit die immer so
hoch gelobt wird hab ich da auch noch nicht gesehen es sei denn man
bewegt sich ganz am unteren Ende von C/C++. Außerdem muß man bei C
viele Sachen erstmal selber erstellen oder mühsam aus dem Internet
zusammensuchen und in seine Applikation integrieren die zb Delphi von
Haus aus kann.
Es ist sicher nicht verkehrt wenn man C/C++ kann, aber wenn es sich
vermeiden läßt würde ich Delphi/Pascal oder Python vorziehen

So, das war mein Teil zur 14350233 Ausgabe des Glaubenskrieges um die
Programmiersprachen ;)

Gruß
Markus

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

wie wird Python eigentlich "vertrieben"? Gibt es da ein
Zwischenformat für den Interpreter (Bytecode) oder muß ich den
Quellcode weitergeben?

Matthias

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Matthias
Das ist ähnlich wie bei Java. Man kann einen Bytecode vorcompilieren.

Und ich hab noch einen entscheidenden Vorteil von Python gegenüber den
meisten anderen Programmiersprachen vergessen: mit Python kann man
nicht nur Desktop Applikationen erstellen sondern man kann es wie PHP
auch zur dynamischen Erstellung von Webseiten verwenden. Eines der
mächtigsten Web Application Tools ist in Python programmiert (Zope).
Und nochwas (weil das irgendwo weiter oben mal gefallen ist): Python
ist zu 100% objektorientiert. Man kommt eigentlich gar nicht darum
herum weil alles Objekte sind, sogar jede Variable (mit Ausnahmen)

Markus

Autor: Rufus T. Firefly (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Betr. Python und freie GUI:
http://www.wxpython.org/

Autor: Weihnachtsmann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen

Also ich kann Delphi C++ und Visual Basic.

Klar ist C++ die Profiprogrammiersprache. Aber ich finde es für
Gelegenheitsprogrammierer wie die meisten Elektroniker sind viel zu
schwierig.

Visualbasic geht ist aber langsam und vom der Struktur nicht sehr
sinnvoll. Man einget sich viel schlechtes an.

Klar kann man auch eine Exotische Programmiersprache verwenden nur
findet man nicht immer so schnell Hilfe im Internet

Ich Empfehle auch Delphi da es eine ausgewachsene Programmierprache ist
die relativ einfach und auch sehr schnell ist.
Auch gibt es viele Foren. Ich finde Delphi ist die Programmiersprache
mit den besten Kompromissen.
Wenn man Delphi kann dann lernt man auch schnell C++ oder Java.



Gruss

Es kommt bald der Weihnachtsmann

Autor: Philipp Sªsse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, wenn es einen Weihnachtsmann gibt, ist auch C++ die
Profiprogrammiersprache.

Oje!

C++ ist ein schauriger Kompromiß, der nur deshalb so verbreitet ist,
weil "alle" C können und man diese Massen so am leichtesten zu einer
wenigstens halbwegs effektiven Programmierung bringen kann.

Natürlich wären die Leute mehrfach so effektiv, wenn sie stattdessen
Smalltalk lernen würden, aber das tun sie ja nicht. Wenn also der
Prophet nicht zum Berg geht, muß der Berg zum Propheten kommen.

Java ist wieder ein Schritt in die richtige Richtung (die meisten
Fehler unter C++ sind unter Java nicht möglich), aber halt auch wieder
ein Kompromiß an die Massen von C++-Programmierern, die nicht umlernen
wollen/können.

"Profi". Ja gut, ein gewaltiger Anteil an professioneller Software
wird damit geschrieben. Aber so wie Du es schreibst, klingt es, als sei
die Sprache irgendwie professionell. Und das ist sie bestimmt nicht.

Bitte nicht falsch verstehen: ich programmiere selbst mit c++, aber man
sollte nicht der Legende huldigen, als sei das eine gelungene Sprache.
Selbst andere Ansätze, C und Objektorientiertheit zu paaren, sind
meisterlich dagegen (Objectiv-C etwa).

Autor: Dominik (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich programmiere seit ich 13 bin mit Delphi, vorher ein Jahr QBasic.
Jetzt im Studium lerne ich C/C++.
Aus meiner Sicht ist Delphi prima für den Hobbyanweder, da es endlos
viele Komponenten und sehr viele Websites gibt.
Mit Delphi-Projekten habe ich schon mit eigenen µC-Schaltungen über
USB, RS232 und dem Parallelport kommuniziert. Das ist wegen der vielen
kostenlosen Komponenten sehr einfach.

Gruß, Dominik

Autor: m@u (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielleicht meint er mit Profi, dass sie profisorisch ist (achtung
Wortspiel...) , bis man endlich eine richtige Programmiersprache wie
z.B. OpCode(tm) oder intelHex(muha) lernt... duck *run*

Nein im Ernst, es ist zwar schön, wenn man sagen kann, dass man in der
einzig wahren Profiprogrammiersprache entwickelt, aber man sollte die
Realität nicht aus den Augen verlieren. Die Vorteile von C/C++ sind
sicher, die grosse Verbreitung und die gute Portierbarkeit von Code
(von den vielen andern Vorteilen will ich jetzt nicht sprechen). C und
C++ haben aber sicherheitstechnisch grosse Nachteile (der Programmierer
darf einfach viel zu viel...), die man z.B. mit Pascal nicht hat (schon
mal von einem wilden Pointer gebissen worden?).

Java ist sicher ein Schritt in die richtige Richtung. Er wird aber noch
etwas dauern, weil im Moment Prozessorzeit noch wertvoller ist als die
Nerven der Programmierer.

Autor: Tobi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
auch in pascal kann dich ein wilder pointer beissen
für hardwarenahe sachen muss man viel dürfen, genau das bietet c,
deshalb sind so viel os'e ja damit geschrieben

Autor: Matthias Friedrich (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"Java ist sicher ein Schritt in die richtige Richtung. Er wird aber
noch etwas dauern, weil im Moment Prozessorzeit noch wertvoller ist als
die Nerven der Programmierer."

Immer wieder die gleichen Vorurteile....
Das ist schon seit längerem nicht mehr so. Erstens ist Java viel
schneller geworden, und zudem ist die Prozessorzeit in den meisten
Anwendungen doch uninteressant.

Kleines Gedankenspiel: Wenn TollCollect irgendwann folgende Option
gehabt hätte: Verdeopple die Rechenleistung, benutzte Java und spare
dafür ein halbes Jahr.
Für was hätten sie sich wohl entschieden?

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

Jetzt ist er wieder ausgebrochen, der Glaubenskrieg :-) Mußt ja so
kommen.

Nur soviel:

@Philipp Sªsse
C hat mit C++ etwa soviel zu tun wie Windows Batchskripte mit
(Bash)-Shellskriten.
Wer C sicher beherscht hat von C++ fast keine Ahnung. C++ ist beinahe
eine eierlegende Wollmilchsau. Man kann damit sehr viel, sehr elegant
erledigen. Man kann sich aber auch mit jeder Zeile Code gewaltig in
Schwierigkeiten bringen. In den richtigen Händen ist C++ aber eine sehr
mächtige Programmiersprache.


Matthias

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Klar wird aus sowas ein Glaubenskrieg, aber es macht immer wieder Spaß
;)

Ich frag mich nur immer womit die C/C++ und Delphi Fans programmieren?
Mit der Delphi Personal Edition? Mit Visual Studio Autoren Version?
Oder gar mit Gnu C? Oder gibt es da noch was dazwischen das was kann
aber nix kostet und legal ist!!! ?

Die ersten beiden sind doch nur eingeschrängte "Demo" Versionen. Also
ich hab schon mit der Personal und mit der Enterprise Edition von Delphi
gearbeitet und muß sagen das es da doch deutliche Unterschiede gibt. Bei
Visual Studio wird es nicht viel anders sein.

Es ist mal völlig egal welche Sprache man verwendet solange man damit
die gewünschte Applikation erstellen kann. Und das trifft mittlerweile
auf fast jede moderne Sprache zu

Autor: c++'ler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
C++ ist eine echt geniale Sprache. Das Beste an der Sprache ist imho der
?-Operator. Er kann viele if-else-Konstrukte ersetzen:

if (foo > 2) bar = 100;
else bar = 200
// --->
bar = foo > 2 ? 100 : 200;

Auch die Sache mit den templates kann echt viieel Tipparbeit sparen.

In Sachen "portable GUI" kann ich nur gtkmm empfehlen. wxWidgets ist
zwar umfangreicher, hat aber wegen den vielen MAKROS imho einen
unschönen Stil.

Autor: Philipp Sªsse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Bash und die DOS-Box haben eine total andere Syntax, die
unterscheiden sich eben nicht nur in ihrer Mächtigkeit.

Aber C++ hat einfach die Sprache C um OO-Konzepte erweitert.
Syntaktisch bleibt es eine C-Sprache und das ist mit zweierlei
Problemen verbunden. Erstens wurde diese Syntax ursprünglich nicht für
OO geschaffen und das bedeutet natürlich einen Kompromiß.

Zweitens -- und das ist das größere Problem, auch wenn es eigentlich
kein Fehler der Sprache, sondern ihrer Benutzer ist -- kann man in C++
schnödes C schreiben. Positiv ausgedrückt ist die Sprache
abwärtskompatibel. Aber in der Praxis werden OO und klassische
Strukturen immer wieder gemixt, ganz einfach weil es geht. Ich habe
einen Haufen C++-Code "geerbt", der sich zugegebenermaßen auf einem
C-Compiler nicht übersetzen lassen würde, aber C++ ist das nicht. Und
das ist sicherlich keine Ausnahme, weil die Sprache ihre Programmierer
nicht zu konsequentem Stil zwingt.

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nochmal zum Thema GUI: ich hab mir schon verschiedene angeschaut, aber
es gibt eigentlich keine schönere als QT. Unter Linux gibt es sogar ein
visuelles Tool mit dem man wie bei Deplhi Oberflächen erstellen kann.
Ich vermisse wie gesagt nur eine freie "Runtime" für Windows. Gibts
sowas echt nicht

Autor: OldBug (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>C++ ist eine echt geniale Sprache. Das Beste an der Sprache ist imho
>der ?-Operator. Er kann viele if-else-Konstrukte ersetzen

Super "C++-Feature", wenn man jetzt noch wüsste, daß dieser Operator
"Tenärer Operator" oder "ternary operator" genannt wird, dann
könnte man sogar feststellen, daß es sich bei diesem nicht um eine
Erweiterung von C++ handelt, sondern daß dieser schon in C (und auch
vielen anderen Sprachen) zur Verfügung steht.

Das war jetzt ein schönes Beispiel für "C++ Code für C-Compiler" :-)

Autor: Peter Kasi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Markus,
also ich arbeite mit der (gekauften) Professional Edition, wie auch die
meisten die ich kenne. Architekt ist mir doch etwas zu teuer, zumal die
Professional Edition für das meiste ausreicht.

@Philipp Sªsse
kann dir nur recht geben, wenn du einen der vielen C++ Programmierer
fragst was den der größte Unterschied zweischen C und C++ ist wird er
wahrscheinlich antworten, daß man anstelle von printf jetzt cout
verwendet.

Die perfekte Sprache gibt es eh (noch) nicht, es sind alles krücken.
Die perfekte Sprache sollte IMHO keine Programmierkenntnisse verlangen,
sondern es ermölichen eine Lösung auf dem Niveau des Problems
einzugeben, ohne es in computerverständliche Happen aufbrechen zu
müssen.

Autor: Rufus T. Firefly (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Markus: Es gibt eine veraltete QT-Runtime-Version für Windows
(ftp://ftp.trolltech.com/qt/non-commercial/QtWin230-NonCommercial.exe).

Desweiteren gibt es ein Projekt, die GPL-Sourcen (QT/X11) auf Win32 zu
portieren (irgendwo auf Sourceforge), habe aber keine Ahnung, wie weit
das gediehen ist.

QT scheidet IMHO nach wie vor aus, so elegant das auch erscheinen mag.


Wie ich bereits erwähnte, ist DialogBlocks ein durchaus ebenbürtiger
GUI-Builder für wxWidgets - und den gibt es als binary für Windows,
Linux, Solaris und Mac OS.
Gut, DialogBlocks ist nicht kostenlos, aber mit 60 EUR liegt das noch
im verträglichen Rahmen.
Die aktuelle Version 1.81 übrigens erzeugt vollständige Projekte mit
makefiles für verschiedene Compiler; sie kann auch den Buildprozess
starten.
Dank eines integrierten Sourceeditors (mit Syntax Highlighting etc.)
kann das Teil im Grunde genommen als vollständige IDE verwendet werden
- auch wenn einige Details noch recht rudimentär sind (kein "goto
error" im Ausgabefenster, kein MDI-Betrieb im Editor, und vor allem:
kein integrierter Debugger).

Ein Vorteil, den wxWidgets gegenüber QT hat, ist der, daß die
plattformspezifischen Oberflächenelemente nativ verwendet und nicht
nachgebildet werden. Damit wird nicht für jede Plattform das Rad neu
erfunden (Windows kann seine Knöpfe selber malen, das muss man nicht
nachmachen), was auch in Sachen Fehlerverhalten sicherlich seine
Vorzüge hat.
Auch die Performance dürfte unter der Verwendung nativer Bedienelemente
eher nicht leiden.

Dafür ist zwar der Aufwand der Portierung von wxWidgets auf eine andere
Plattform vermutlich etwas höher als der Aufwand, der bei QT anfällt -
aber das kann einem im Grunde genommen Wurscht sein, da für die
wesentlichen Systeme diese Portierungen bereits vorliegen.

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Rufus: danke für die ausführliche Ausführung. Ich hatte mir wxWidgets
schonmal angeschaut, war aber nicht ganz so überzeugt davon. Ich werde
es mir aber nochmal vornehmen. Ein visuelles Tool ist zwar nicht
unbedingt nötig, verkürzt aber die Designzeit IMHO massiv. Außerdem
fand ich die Anbindung von QT an Python ziemlich gut gelungen. Ob man
jetzt wert auf ein einheitliches Aussehen auf unterschiedlichen
Plattformen legt oder ob einem das plattformeigene Aussehen wichtiger
ist bleibt denk ich jedem selbst überlassen.
Naja, wenn das mit der non profit version von qt klappt bin ich ja
eigentlich schon glücklich

Autor: Christian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sers,


so jetzt "Senfe" ich auch mal ...

Ich Programmiere seit 15 Jahren, Basic  QB  VB den Umstieg auf C++
habe ich vor 5 Jahren gemacht, inswischen auch ein wenig Assembler für
meine Hobbyprojekte ...

Jede Sprache hat seine Vor- und Nachteile.

Der o.g. Aspekt, das C++ / C weit verbreitet ist war für mich Grund
genug, dem Rest abzuschwören.

Ich kann über fast JEDE Sprache mindestens ein Grund finden, warum xyz
besser ist, doch für einen Umsteiger oder Anfänger befinde ich C / C++
besser -  denn was DELPHI und VB im Anfang versauen, ist hinterher nur
schwer wieder abzugewöhnen ...

Bloodshed ist eine gute Alternative, wenn man nix bezahlen will und
seine GUI via CreatWindow basteln will, Borland macht einen wieder
Abhängig und der code ist m.W. nicht von Borland nach xyz ohne weiters
portierbar...

Eine Schülerversion von MS DevStudio 2K3 gibts für wenig Geld und für
kleine Projekte ausreichend ...


Lg Christian

Autor: Christoph Peters (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
nimm delphi!
+ du hast pascal kenntnisse, dann ist der umstieg vielleicht einfacher
+ super online hilfe (finde ich)
+ komponenten für Serielle Schnittstelle kann ich dir e-mailen, sind
kostenlos und wirklich super einfach
+ das gleiche gilt für mysql-komponenten so wie tcp/ip komponenten, mit
denen der zugriff auf email-server, ftp, http, etc. ein kinderspiel
sind.

achja, ich verwende immernoch delphi 4 professional (deutsch-wegen der
online hilfe), das reicht von terminalprogramm bis zur
datenbankanwendung mit messwertanalyse

gruß christoph

Autor: Tobi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"+ du hast pascal kenntnisse, dann ist der umstieg vielleicht
einfacher"

ich hatte die gleiche situation und habs schneller hinbekommen c zu
lernen als delphi (trotz guter pascal kenntnisse)
imo ist delphi, wenn man aus der pascal ecke kommt extrem überladen (vc
auch..)

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hm, bei mir war's genau umgekehrt. Ich hab früher hauptsächlich mit
Borland C++ 3.1 gearbeitet, kam aber später zu Windows Zeiten nicht
mehr damit klar. In Delphi (4) kam ich extrem schnell rein. Ich glaub
das ist von Mensch zu Mensch völlig unterschiedlich

Autor: Peter Kasi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Christian, in wie weit versaut einen Delphi am Anfang? Würde einfach
gerne mal ein paar Argumente hören.

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Naja, das ist so ähnlich wie wenn man mal Merzedes fährt. Da will man
auch nicht mehr in einen Trabant steigen ;)

Autor: Peter Kasi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ok ;) in die Richtung hatte ich garnicht gedacht

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aber mal ehrlich. Mit einer halbwegs modernen Programmiersprache kann
man sich kaum noch was versauen. Das schlimmste was man machen kann ist
wenn man mit einer sequenziellen Sprache anfängt, also eine die keine
Prozeduren/Funktionen kennt wie das klassische Basic.
C++, Delphi, Python, Java, die sind alle objektorinetiert. Sicher gibt
es viele Unterschiede die beim Wechsel von einer Sprache zur anderen
Probleme bereiten können, aber grundsätzlich sind sich die Sprachen
sehr ähnlich und wer ein einigermaßen fähiger Programmierer ist darf
keine Probleme damit haben sich innerhalb von ein paar Tagen auf eine
andere Sprache einzustellen

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.