Forum: PC-Programmierung Welche Sprache / welches Tool?


von Claus Martin (Gast)


Lesenswert?

Hallo!
Bis jetzt habe ich sehr gute Kenntnisse in der Ansi-C programmierung in
verbindung mit uC.
Aber jetzt soll ein Windows-Programmier-Tool her...

Was könnt Ihr einem absoluten Windows-Prg.-Anfänger für eine Sprache /
Entwicklungstool empfehlen...

Rahmenbedingungen:

Es sollte eine einfache Oberfläche möglich sein,
einige einfache Berechnungen sollen durchgeführt werden...
Und ich will für die Entwicklungsumgebung möglichst nichts zahlen...

Das Programm sollte man weiter geben können - es sollte also auch
irgendwie eine kompilierte EXE sein ...

Also - dann mal her mit euren Vorschlägen - vielen Dank

von reimay (Gast)


Lesenswert?

Hallo,
mein Rat:
Vergiss Windows,
besorge Dir Linux, programmiere mit gcc ...
und Du wirst sehen Dein PC ist auch nicht viel anders als ein grosser
µC.

gruss, reimay

von Karl H. (kbuchegg)


Lesenswert?

Auch für Windows gibt's gcc.

zb. http://www.mingw.org

Haarig wirds erst, wenn man für eine graphische Oberfläche
programmiert. Das ist unter Linux (X11) auch nicht anders
als unter Windows.

von Karl H. (kbuchegg)


Lesenswert?

> Es sollte eine einfache Oberfläche möglich sein,
> einige einfache Berechnungen sollen durchgeführt werden...
> Und ich will für die Entwicklungsumgebung möglichst nichts zahlen...

Wenn Du den letzten Satz nicht so ernst nimmst, dann kannst Du
Dir mal Visual Basic (VB) anschauen. Grade für Programme, die
stark oberflächenlastig sind, ist das nicht schlecht.

Weiterer Hinweis: Vielen Büchern liegt eine CD mit einer
eingeschränkten Version einer Entwicklungsumgebung bei. Das
kann VC++ sein, oder auch VB. Die Einschränkung besteht meist
darin, dass der Compiler nicht optimiert. D.h. für kleine
Programme absolut kein Problem.

Und Literatur zum Thema 'Windows-Programmierung' wirst Du
sowieso brauchen.

von reimay (Gast)


Lesenswert?

Hallo,
zum Thema Grafikprogrammierung unter Linux :

http://www.millin.de/c_programmierung_linux_downloads.html

gruss, reimay

von mr.chip (Gast)


Lesenswert?

Hallo

Ich empfehle Java. Einzig das weitergeben gestaltet sich nicht immer
ganz leicht, da es immer noch Leute ohne vernünftiges JRE auf ihrem
Rechner gibt. Allerdings hat man die Möglichkeit, ein Applet direkt im
Browser anzuzeigen, der Benutzer braucht also nichts zu installieren.
Solche Web-basierten Oberflächen könnte man auch mit PHP oder
JavaScript realisieren.

Wenn es nur um einfachere Berechnungen geht, die du automatisieren
möchtest, dann kannst du auch z.B. M$ Excel verwenden.

Gruss

Michael

von yalu (Gast)


Lesenswert?

Ich selber habe gute Erfahrungen mit GCC und GTK+ als GUI-Bibliothek
gemacht. Angefangen habe ich mit dieser Kombination, als ich ein
Programm mit GUI schreiben wollte, dass auf Linux und Windows läuft.
Java hätt's sicher auch getan, aber bin ich in Java nicht so fit, ein
Teil der Algorithmen hatte ich schon in Ansätzen als C++-Programm
fertig und ich mutmaßte, dass die rechenintensiven Teile des Programms
in C++ doch etwas schneller laufen als in Java (obwohl die Unterschiede
zwischen C++ und Java - je nach Anwendung - nicht mehr so riesig sind).

Für Windows brauchst du:
- mingw (GCC mit Zubehör)
- msys (die wichtigsten Unix-Tools)
- gtk+ (GUI-Bibliothek)
- optional DevCPP (Bunte Entwicklungsumgebung für vorgenanntes)

Mit DevCPP habe ich kaum Erfahrung, da ich unter Linux entwickle und
nur ab und zu unter Windows kompiliere und teste (make). Der erste
Eindruck von DevCPP war aber positiv, obwohl das Programm wenig bekannt
ist, und ich deswegen weniger erwartet hätte.

von yalu (Gast)


Lesenswert?

Hab noch was vergessen: Ich benutze auch GTKmm, das ist ein in meinen
Augen sehr gelungener C++-Wrapper für GTK+.

von Christoph _. (chris)


Lesenswert?

> Die Einschränkung besteht meist darin, dass der Compiler nicht
> optimiert. D.h. für kleine Programme absolut kein Problem.

Soweit ich weiß ist diese Art der Einschränkung seit VC7 Geschichte.
Soll heißen: Falls eine derartige Einschränkung vorliegt (oder gar eine
"Autorenversion") sind das starke Indizien für die aus heutiger Sicht
grottenschlechte Version 6 des Microsoft Visual Studios, die man sich
nur antun sollte, wenn man von höherer Gewalt wegen dazu gezwungen wird
(sprich: alter Codebestand gepflegt werden muss, für neue Projekte
sollte das nie und nimmer benutzt werden).

Zum Thema:
Wenn du unbedingt erstmal bei Windows bleiben willst, kommst du kaum um
Visual Studio herum.
Glücklicherweise bietet Microsoft die aktuellste Version (.NET 2005)
dieser Software in der "Express Edition" kostenlos an:
http://msdn.microsoft.com/vstudio/express/
Der Compiler optimiert sogar, die genauen Einschränkungen (AFAIK vor
allem lizenztechnischer Art) sind auf der o.g. Webseite erläutert.
Insbesondere fehlen z.B. die MFC, aber die will man eh nicht benutzen.

Um eine These im Keim zu ersticken: Ja, man kann auch mit VS .NET 2005
völlig problemlos ganz ohne .NET programmieren, wenn man will. Wenn du
aber schnell eine Oberfläche zusammenklicken willst, wäre .NET im
Zusammenspiel mit C# eine Überlegung wert. Nachteil: Du bindest dich
damit zur Zeit komplett an Windows.

von Bartli (Gast)


Lesenswert?

> Wenn du aber schnell eine Oberfläche zusammenklicken willst,
> wäre .NET im Zusammenspiel mit C# eine Überlegung wert.
> Nachteil: Du bindest dich damit zur Zeit komplett an Windows.

Und was wäre wenn man GTK# benutzen würde ? Geht auch mit Visual
Studio. Dann hast du dich wenigstens schon mal nicht an WindowsForms
gebunden, was ja das Hauptproblem sein dürfte.

Übrigens: wenns denn C# oder VB sein darf und gratis sein soll, wäre
SharpDevelop noch eine Alternative:
http://www.icsharpcode.net/OpenSource/SD/Download/

von Claus Martin (Gast)


Lesenswert?

@Christoph

an Windows binden wäre kein Nachteil - sollen schließlich Win-Prg.
werden. Aber ich schnall noch nicht ganz wie das mit den Gratis
Versionen funktionieren soll...
Denn schließlich gelten die nur ein Jahr...
Komm ich danach noch an meinen Quellcode...? Kann ich die dann
irgendwie weiterbearbeiten?
Was passiert nach dem Jahr...
Fragen über Fragen...

von KoF (Gast)


Lesenswert?

also wenn du anfänger der PC-Programmierung bist, und gleich mit
Oberflächen anfangen willst und schnell zum ziel kommen willst, dann
empfehle ich dir Visual Basic (windows) oder Gambas (linux).
Wenn du aber dir wirklich was umfangreiches antun willst, dann solltest
di dir QT (C++) mit Visual C++ oder GCC ansehen. es ist portabel (läuft
auf win/lin/mac/...) und ist soweit ich weiß jetzt auch für alle
platforemen  zumindest als non comerziel frei.

von Bartli (Gast)


Lesenswert?

Na dann nimm doch einfach SharpDevelop und gut ist. SharpDevelop selber
ist Open Source, dazu brauchst du die .NET Runtime und optional das
.NET SDK (Versionen 1.1 und 2.0 werden unterstützt). Runtime/SDK kannst
du gratis bei Microsoft runterladen und sind nicht eingeschränkt.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Das eine Jahr, das im Zusammenhang mit Visual Studio 2005 angegeben
wird, bezieht sich auf die Zeitdauer, die man dieses Tool bei Microsoft
herunterladen können wird.
Das ist weder die Nutzungsdauer des Tools selbst, noch die
Nutzungsdauer Deiner damit erstellten Anwendungen; MS behält es sich
vor, die Downloadmöglichkeit nach einem Jahr abzuklemmen.

Sollte kein Problem sein, man kann und darf sich eine Sicherungskopie
auf eine CD packen; muss man zur Installation dank des ISO-Downloads ja
sowieso machen.

von DS aus W (Gast)


Lesenswert?

Eine kurze Anmerkung, da hier im Forum immer 'mal über die
Umgangsformen gemeckert wird, in diesem Zusammenhang.

Es ist ziemlich egal mit welcher Umgebung Du arbeitest, ausser das
Du vielleicht einen Glaubenskrieg auslöst :)

Hier sind für viele Probleme, vieler Dialekte und Umgebungen,
jede Menge nette Leute, die gerne weiterhelfen-
so meine Erfahrung als .NET- Anfänger (bitte nicht hauen !)

Dietmar

von mr.chip (Gast)


Lesenswert?

Hallo

> Es ist ziemlich egal mit welcher Umgebung Du arbeitest, ausser das Du
vielleicht einen Glaubenskrieg auslöst :)


Glaubenskrieg nicht - vom technischen Standpunkt gesehen gibt es heute
sehr solide Lösungen (Java, Visual Basic, .NET). Da ist es vielleicht
wirklich eine Glaubensfrage, was verwendet wird. Verwenden kann man
alles, also kein Krieg notwendig.

Was man aber immer auch bedenken sollte, ist der politische und
wirtschaftliche Background. Da gibt es halt die einen, die von
Microsoft Abstand zu nehmen versuchen und die anderen, die es immer
noch nicht einsehen. Wobei ich damit nicht sagen will, dass
OpenSource-Lösungen oder gar Java die ultimative Lösung für die Rettung
der Welt sind.


> so meine Erfahrung als .NET- Anfänger (bitte nicht hauen !)

Doch, ne kleine Kopfnuss gibts ;-)

Gruss

Michael

von Weinga-Unity (Gast)


Lesenswert?

Hallo!

Vielleicht ist folgendes was für dich:
http://www.lazarus.freepascal.org/

Object-Pascal, GTK für GUI, für mehrere Betriebssysteme. Mich
persönlich stört es, dass es GTK verwendet (hab negative Erfahrungen
beim Installieren von GTK basierten Programmen, hat oft nicht
funktioniert), aber für kleine Helferlein-Programme würd ich's auch
verwenden, da ich selbst in Delphi proge.

Langsam kommen auch mehrere Pakete dazu, die das Programmieren auch
sehr erleichtern (erst vor kurzen ist anscheinend eine TSerial
Komponente erhältlich).

mfg Weinga-Unity

von Christoph _. (chris)


Lesenswert?

Pascal wurde in erster Linie als Lehrsprache entworfen, um das
(prozedurale) Programmieren zu lehren. Object-Pascal baut natürlich auf
Pascal auf und hat damit ähnliche Schwächen.

Heute gibt es zum Glück bessere, elegantere und leichter zu lernende
Sprachen. Wenn man GUIs bauen will, hat man etwa mit Python viele
(insbesondere plattformunabhängige) Möglichkeiten:
http://de.wikibooks.org/wiki/Python-Programmierung:_GUI_Programmierung

Natürlich kann ich niemanden von Python überzeugen, der mit Pascal
aufgewachsen ist und diese für die einzig wahre Sprache hält. Ich
wollte mit diesem Posting nur anmerken, dass es heutzutage durchaus
aktuellere Programmiersprachen gibt, die besser gepflegt werden und
nicht mit überflüssigen Syntax-Elementen ablenken.

Außerdem sollte man es ruhig mal wagen, sich mit einer neuen,
unbekannten Sprache auseinanderzusetzen und alte Präferenzen in Frage
zu stellen. Tut man dies nicht ab und zu, wird der eigene Horizont
unweigerlich ziemlich eng bleiben, da man nur eine, höchstens zwei
Sprachen kennt.
Ich muss zugeben, dass ich Python und "Skript-Sprachen" allgemein
auch zuerst ziemlich abgeneigt gegenüber stand und C++ für die einzig
wahre Sprache hielt. Als ich es dann riskiert habe, einfach mal ein
paar Wochen in Python zu programmieren, wurde ich eines besseren
belehrt. Natürlich, am Anfang fiel es mir schwerer in Python das zu
schreiben, was ich aus C++ gewohnt war. Aber schnell hab ich gemerkt,
dass sich viele Aufgaben in Python viel eleganter und mit einem
Bruchteil des Codes im Vergleich zu C++ lösen lassen.

Python hat die Vorteile, dass es eine äußerst elegante Syntax hat,
objekt-orientiertem Programmieren nicht im Weg steht und (ganz wichtig)
plattformunabhängig ist. Die Installation ist sogar unter Windows ein
Kinderspiel.

Meiner Meinung nach hat Python einen festen Platz in der
Werkzeugauswahl "Programmiersprache" verdient.

von Weinga-Unity (Gast)


Lesenswert?

Hallo!

Ja, das stimmt schon, dass man mehr Sprachen können soll (selbst bin
ich von Basic (VB) über Delphi (Pascal) dann noch nach C/C++ und Java
abgeglitten).

Aber für die meisten Anwendung hat sich Delphi einfach als einfachste
Umgebung/Sprache gezeigt, schnell Anwendungen von Datenbanken über GUI
bis zu Hardware bezogene Aufgaben (USB, RS232, ...) zu entwickeln und
alles in einer Standalone-EXE mit 0.4-2MB.

Das hab ich so an sich in keiner Prog-Sprache bzw. Umgebung gefunden.
Außerdem finde ich Pascal zum Schreiben und zum Durchsehen sehr
angenehm, da man ein begin....end schöner im Text sieht als ein {...}
und es auch noch schöner von den Fingern rollt.

mfg Weinga-Unity

von Christoph _. (chris)


Lesenswert?

@Weinga-Unity
> Außerdem finde ich Pascal zum Schreiben und zum Durchsehen
> sehr angenehm, da man ein begin....end schöner im Text sieht
> als ein {...}
Ein ernstgemeinter Tipp: Riskier mal einen Blick auf Python. :)

> [...] und es auch noch schöner von den Fingern rollt.
btw, das ist nur beim deutschen Tastaturlayout der Fall.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.