View previous topic :: View next topic |
Author |
Message |
Dr. Arbeitslos Apprentice
Joined: 13 Aug 2005 Posts: 152
|
Posted: Wed Oct 25, 2006 4:13 pm Post subject: |
|
|
oscarwild wrote: | Richtig ist, dass C++ (leider) auf C aufsetzt, und damit manche Hässlichkeiten von C erbt. Eine Undurchdringlichkeit begründet sich ggf. aber eher durch Defizite, die sich vor der Tastatur befinden | Wenn der Bediener deiner Tastatur etwas weniger defizitär wäre wüßtest du dafür vielleicht, dass die Freiheitsgrade oder eben auch die "Hässlichkeit" einer Sprache die Schwere der semantischen Fehler der erstellten Programme eher negativ beeinflussen. Ganz genau so, wie ein durschnittlicher Deutschsprachler mehr Fehler im Italienischen als im Englischen produzieren wird.
Als Entwickler möchte ich mich auf meine Algorithmen konzentrieren und nicht darauf, ob ich zb einer lib-Funktion bedenkenlos vertrauen kann, oder ob ich lieber einen Wrapper zum Parametercheck darüber setze. Zumal man eben die Freiheitsgrade von beispielsweise C++ im Großteil der existierenden PC-Programme gar nicht braucht |
|
Back to top |
|
|
Necoro Veteran
Joined: 18 Dec 2005 Posts: 1912 Location: Germany
|
Posted: Wed Oct 25, 2006 4:33 pm Post subject: |
|
|
franzf wrote: | Ich weiß nicht ob man in Python Operatoren überladen kann. In Java gehts definitiv nicht!
Und das liebe ich an C++. Oder Zeiger auf Funktionen. |
Also da Operatoren in der Regel nur Funktionen wie zB "__add__" aufrufen, kann man sie theoretisch überschreiben. Würde ich aber nur bedingt machen ...
Und Zeiger auf Funktionen gibt es schon daher, dass auch Funktionen/Methoden nur Klassen sind ... eine Sache, die ich in Java schon schmerzlich vermisst habe...
Übrigens: Dein Angebot zur evtl. Mithilfe ist dankend notiert - auch wenn ich in dem Fall auf Python als Sprache bestehen muss, will man sich nicht den Overhead erlauben, alles als C++-Klassen zu schreiben und mit Py-Wrappern zu versehen _________________ Inter Deum Et Diabolum Semper Musica Est. |
|
Back to top |
|
|
Klaus Meier Advocate
Joined: 18 Apr 2005 Posts: 2908 Location: Bozen
|
Posted: Wed Oct 25, 2006 5:53 pm Post subject: |
|
|
Necoro_dM wrote: | Übrigens: Dein Angebot zur evtl. Mithilfe ist dankend notiert - auch wenn ich in dem Fall auf Python als Sprache bestehen muss, will man sich nicht den Overhead erlauben, alles als C++-Klassen zu schreiben und mit Py-Wrappern zu versehen | Gibt doch auch pyQT oder wie das gerade heißt. So weit sind C und Python ja nicht auseinander. Wenn ich da erst mal was mit QT hinbekomme, dann werde ich mich da mal dranmachen. |
|
Back to top |
|
|
Necoro Veteran
Joined: 18 Dec 2005 Posts: 1912 Location: Germany
|
Posted: Wed Oct 25, 2006 6:01 pm Post subject: |
|
|
Fein fein *freu* ... und wie das mit pyQT aussieht (das es natürlich gibt ), weiß ich nicht - aber in der Regel sind die Aufrufe und Klassennamen identisch _________________ Inter Deum Et Diabolum Semper Musica Est. |
|
Back to top |
|
|
oscarwild l33t
Joined: 15 Jul 2003 Posts: 857 Location: Memmingen, Germany, Old Europe, Earth
|
Posted: Wed Oct 25, 2006 6:57 pm Post subject: |
|
|
Dr. Arbeitslos wrote: | Wenn der Bediener deiner Tastatur etwas weniger defizitär wäre wüßtest du dafür vielleicht, dass die Freiheitsgrade oder eben auch die "Hässlichkeit" einer Sprache die Schwere der semantischen Fehler der erstellten Programme eher negativ beeinflussen. |
Eigentlich sollte mein Kommentar keinen Angriff gegen Dich sein. Der Bediener meiner Tastatur hat übrigens bereits 25 Jahre Praxiserfahrung mit diversen Sprachen und Software-QS, ist zwar nicht promoviert, aber aus gutem Grund alles andere als Arbeitslos
Und natürlich ist es sehr bequem, wenn man sich als Entwickler auf die Unzulänglichkeiten bzw. Freiheitsgrade einer Sprache berufen kann, wenn man was verbockt hat. _________________ http://blog.selbsthilfenetzwerk-cannabis-medizin.de |
|
Back to top |
|
|
hoschi Advocate
Joined: 19 Jul 2003 Posts: 2517 Location: Ulm, Germany, Europe
|
Posted: Wed Oct 25, 2006 7:13 pm Post subject: |
|
|
Ich lerne C/C++ und merke gerade, wie man einiges davon auch in Java umsetzten kann, aehnliches gilt auch fuer C#. System und Libs werden wohl auch in einigen Jahren immer noch in C/C++ programmiert werden, weil es schnell ist, abstrakt und doch hardwarenah und bei C++ objektorientiert. Ausserdem setzen alle neuen Sprache irgendwo auf C auf.
Von da aus kann man immer gut weiter lernen, z.B. Python
Falsch kann man nichts machen, aber sich ewig um die C-Sprachen zu druecken hilft wohl kaum.
Fuer C (komplette 1000 Seiten Buch): http://www.pronix.de/pronix-4.html
Von Galiloe-Press gibt es auch noch "Einstieg in C++", ebenfalls sehr zum empfehlen, gibt aber nicht online (ich wuerde immer das Buch kaufen, aber wenn man mal unterwegs ist kann man einfach im Internet mal schnell was nachgucken). _________________ Just you and me strogg! |
|
Back to top |
|
|
Dr. Arbeitslos Apprentice
Joined: 13 Aug 2005 Posts: 152
|
Posted: Wed Oct 25, 2006 8:06 pm Post subject: |
|
|
oscarwild wrote: | Der Bediener meiner Tastatur hat übrigens bereits 25 Jahre Praxiserfahrung mit diversen Sprachen und Software-QS, ist zwar nicht promoviert, aber aus gutem Grund alles andere als Arbeitslos
Und natürlich ist es sehr bequem, wenn man sich als Entwickler auf die Unzulänglichkeiten bzw. Freiheitsgrade einer Sprache berufen kann, wenn man was verbockt hat. | war mein nickname neben der hervorhebung deiner einmaligen fähigkeiten wirklich dein einziger strohhalm ein, zwei argumente hätten die diskussion imo weiter gebracht |
|
Back to top |
|
|
oscarwild l33t
Joined: 15 Jul 2003 Posts: 857 Location: Memmingen, Germany, Old Europe, Earth
|
Posted: Wed Oct 25, 2006 8:16 pm Post subject: |
|
|
Dr. Arbeitslos wrote: | war mein nickname neben der hervorhebung deiner einmaligen fähigkeiten wirklich dein einziger strohhalm ein, zwei argumente hätten die diskussion imo weiter gebracht |
Das klären wir dann doch besser per PN _________________ http://blog.selbsthilfenetzwerk-cannabis-medizin.de |
|
Back to top |
|
|
ixo Guru
Joined: 09 Jul 2005 Posts: 375
|
Posted: Wed Oct 25, 2006 9:29 pm Post subject: |
|
|
@Klaus Meier
Ich bin früher auch mal mit Commodore Basic, Assember (6502) und Fortran (und noch ein paar anderen Sprachen) angefangen. Bin dann auf C (strukturierte Programmierung) umgestiegen. Später dann auf C++, das war auch so die Zeit von Sun 3. Ich habe dann auch an einer Uni Vorlesungen über C und C++ gehalten, C++ war damals noch sehr exotisch.
Wenn Du wirklich C++ bez. objektorientiert Programmierung lernen willst, dann musst Du Deine funktionale Denkweise sehr deutlich umstellen. Das dauert einige Zeit, man sieht dann jedoch Möglichkeiten, die man vorher absolut nicht hatte.
Insbesondere solltest Du Dir darüber im Klaren sein, dass in vielen Büchern eigentlich keine objektorientierte Programmierung erklärt wird, sondern nur die Syntax der Programmiersprache.
Mir hat es viel gebracht, am Anfang kleine Beispiele *ausschließlich* objektorientiert zu lösen (bzw. das zu versuchen) und auf neckische Dinge wie z.B. Templates und stdlib zu verzichten.
Aber das kann natürlich jeder anders sehen |
|
Back to top |
|
|
mrsteven Veteran
Joined: 04 Jul 2003 Posts: 1938
|
Posted: Wed Oct 25, 2006 10:13 pm Post subject: |
|
|
Hmm, ich war früher selbst ein ziemlicher C/C++-Fanboy, aber inzwischen hat sich meine Begeisterung für diese Sprachen doch etwas gelegt. Es gibt einfach - gerade im Bezug auf Speicherverwaltung, Arrays und Pointer - zu viele Stolperfallen. Wenn ich jetzt daran denke, dass die meisten Sicherheitslücken irgendwelche überlaufenden Puffer sind, dann sehe ich C++ und vor allem C in einem ganz anderen Licht. Da kann man noch so gut aufpassen, jeder macht mal Fehler. Klar kann man argumentieren dies sei nicht das Problem der Programmiersprache sondern eher das Problem des Programmierers, aber sollte eine Programmiersprache (durch Bereichsprüfung oder eine vernünftige Handhabung der Objekte) solche Leichtsinnsfehler nicht auch ein Stück weit verhindern?
C und C++ haben ihre Berechtigung, wenn es um Geschwindigkeit geht, aber für die normale Anwendungsentwicklung...na ja... _________________ Unix philosophy: "Do one thing and do it well."
systemd: "Do everything and do it wrong." |
|
Back to top |
|
|
Dr. Arbeitslos Apprentice
Joined: 13 Aug 2005 Posts: 152
|
Posted: Wed Oct 25, 2006 10:31 pm Post subject: |
|
|
jahrhunderttalente wie oscar machen schon keine fehler, kann man doch täglich im it-newsticker seiner wahl nachlesen
bzgl OO wäre es imo noch sinnvoller sich vorerst mit der OO-analyse und -entwurf zu beschäftigen. daraus ergibt sich dann die OO-programmierung intuitiv fast von selbst und man benötigt wirklich nur noch den syntax der sprache.
einfach "mal eben" klassen und methoden hacken, die einem gerade in den sinn kommen, geht ab einer gewissen projektgröße höchstwahrscheinlich schief |
|
Back to top |
|
|
slick Bodhisattva
Joined: 20 Apr 2003 Posts: 3495
|
Posted: Thu Oct 26, 2006 10:37 am Post subject: |
|
|
Dr. Arbeitslos wrote: | oscarwild wrote: | Richtig ist, dass C++ (leider) auf C aufsetzt, und damit manche Hässlichkeiten von C erbt. Eine Undurchdringlichkeit begründet sich ggf. aber eher durch Defizite, die sich vor der Tastatur befinden | Wenn der Bediener deiner Tastatur etwas weniger defizitär wäre wüßtest du dafür vielleicht, dass die Freiheitsgrade oder eben auch die "Hässlichkeit" einer Sprache die Schwere der semantischen Fehler der erstellten Programme eher negativ beeinflussen ... |
oscarwild wrote: | Dr. Arbeitslos wrote: | Wenn der Bediener deiner Tastatur etwas weniger defizitär wäre wüßtest du dafür vielleicht, dass die Freiheitsgrade oder eben auch die "Hässlichkeit" einer Sprache die Schwere der semantischen Fehler der erstellten Programme eher negativ beeinflussen. |
Eigentlich sollte mein Kommentar keinen Angriff gegen Dich sein. Der Bediener meiner Tastatur hat übrigens bereits 25 Jahre Praxiserfahrung mit diversen Sprachen und Software-QS, ist zwar nicht promoviert, aber aus gutem Grund alles andere als Arbeitslos
Und natürlich ist es sehr bequem, wenn man sich als Entwickler auf die Unzulänglichkeiten bzw. Freiheitsgrade einer Sprache berufen kann, wenn man was verbockt hat. |
Dr. Arbeitslos wrote: | oscarwild wrote: | Der Bediener meiner Tastatur hat übrigens bereits 25 Jahre Praxiserfahrung mit diversen Sprachen und Software-QS, ist zwar nicht promoviert, aber aus gutem Grund alles andere als Arbeitslos
Und natürlich ist es sehr bequem, wenn man sich als Entwickler auf die Unzulänglichkeiten bzw. Freiheitsgrade einer Sprache berufen kann, wenn man was verbockt hat. | war mein nickname neben der hervorhebung deiner einmaligen fähigkeiten wirklich dein einziger strohhalm ein, zwei argumente hätten die diskussion imo weiter gebracht |
Dr. Arbeitslos wrote: | jahrhunderttalente wie oscar machen schon keine fehler, kann man doch täglich im it-newsticker seiner wahl nachlesen |
Also Mädels... jetzt kriegt euch mal bitte wieder ein. Sicherlich war der ein oder andere Kommentar mit einem großen Smile dazu zu verstehen, also durchaus als nicht ganz so ernsthaft einzustufen, wenn auch mit jeweils gewissem Wahrheitsgehalt.
Da hier im Forum die Kommunitation auf rein verbaler Art stattfindet sind damit Fehlerinterpretation und Mißverständnisse nicht auszuschliessen. Dies ist aber kein Grund in einen persönlichen Flamewar auszubrechen und die Qualität des Thead zu schmählern.
Also entweder bitte solche (privaten) Meinungsverschiedenheiten auf den dafür geeigneten Wegen klären oder aber einfach mal etwas das persönliche Ego zurückschrauben und auf rein sachlicher/fachlicher Ebene diskutieren. Wird sind ja hier schliesslich nicht im Kinderkarten. Und persönliche Angriffe aufgrund des Nicknames gehören sicher nicht hierher.
So, sollte jetzt so viel heissen wie: Hört auf euch anzugiften, sonst sehen wir uns als Mods gezwungen dafür zu sorgen das dies für euch hier im Forum technisch nicht mehr möglich ist. |
|
Back to top |
|
|
Vortex375 Veteran
Joined: 03 Mar 2005 Posts: 1739 Location: Deutschland
|
Posted: Thu Oct 26, 2006 8:46 pm Post subject: |
|
|
Quote: | Und was ich mir jetzt so angesehen habe, habe ich mich etwas in QT verliebt. Sieht von der Struktur her wesentlich geradliniger und problemorientierter aus als GTK. Also jetzt nur so beim Anschauen des grafischen Hello World. Na und da führt ja kein Weg an C++ vorbei |
Ich finde Qt auch absolut spitze, nutze es aber in python. Ich hab vor einiger Zeit mit dem Programmieren angefangen und weil ich unbedingt Grafische Oberflächen programmieren wollte hab ich zunächst mal mit gtk angefangen, bin aber nun auf PyQt4 umgestiegen.
Die Python-Bindings für Qt funktionieren einwandfrei, nur leider ist die python-referenz noch sehr lückenhaft. Es gibt z.B. Funktionen zu denen jegliche Beschreibung oder Beschreibungen dort wo sie gar nicht hingehören. Ist aber alles in allem gar nicht so schlimm - zur not schaut mal halt in der C-Refrenz auf doc.trolltech.com nach. Die C-Beispiele lassen sich, wenn man den Dreh mal raus hat, meist ganz leicht in python "übersetzen".
Also ich kann nur nochmal sagen, ich bin trotz der teilweise schlechten (python) Dokumentation von Qt absolut begeistert. Ich denke nicht, dass ich nochmal zu gtk zurückkehren werde, zumal ich eigentlich sowieso kde-Fan bin.
Last edited by Vortex375 on Fri Oct 27, 2006 9:37 pm; edited 1 time in total |
|
Back to top |
|
|
musv Advocate
Joined: 01 Dec 2002 Posts: 3365 Location: de
|
Posted: Fri Oct 27, 2006 1:02 pm Post subject: |
|
|
Slick: Deine Rechtschreibung ist Sch...
Vortex375: Dein Umlaute sind kaputt.
Zum eigentlichen Thema:
Mit Python hab ich bisher nur mal kurz rumexperimentiert, allerdings nicht in der GUI-Programmierung. War aber vom ersten Eindruck eine schöne Sache.
An GTK2.0 mit C hab ich mich vor ein paar Wochen versucht. Ich bin kläglich gescheitert. Das liegt zum einen daran, daß meine Kenntnisse in C nicht wirklich gut (=erbärmlich) sind. Zum anderen war mir auch die Doku an eingigen Stellen etwas zu unverständlich. Insgesamt bin ich aber wieder ganz schnell weggekommen von dieser Kombination. Bin vielleicht auf einfach zu blöd dafür.
QT mit KDevelop ist mein derzeitiger Versuch. C++ find ich schon mal ein ganzes Stück anschaulicher als C. Dazu macht QT auch wirklich einen guten Eindruck, und das, obwohl ich mich bisher noch gegen KDE auf meinem Rechner gesträubt hab. Allerdings hab ich hier das Problem, daß sich KDevelop nach allen Regeln der Kunst wehrt, für meine abgetippten HelloWorld-Programme auch nur ein einziges Makefile zu erstellen. Ich will QT3 programmieren. KDevelop will die QT4 einbinden, obwohl ich das nach ewig langem Suchen in der Pfadangabe anders angegeben hab. Wenn ich KDevelop irgendwann und irgendwie mal dazu prügeln kann, mir tatsächlich ein QT3-Programm zu bauen, werd ich mir auf alle Fälle da noch einen tieferen Einblick verschaffen.
Aber am schönsten läßt sich meiner Meinung nach SWT in Java unter Eclipse programmieren. Ok, das wurde weiter oben schon mal als "BWL-Programmierer" abgestempelt. Bisher komm ich damit allerdings am besten klar. Azureus wurde z.B. mit SWT programmiert. |
|
Back to top |
|
|
Klaus Meier Advocate
Joined: 18 Apr 2005 Posts: 2908 Location: Bozen
|
Posted: Fri Oct 27, 2006 1:23 pm Post subject: |
|
|
musv wrote: | QT mit KDevelop ist mein derzeitiger Versuch. C++ find ich schon mal ein ganzes Stück anschaulicher als C. Dazu macht QT auch wirklich einen guten Eindruck, und das, obwohl ich mich bisher noch gegen KDE auf meinem Rechner gesträubt hab. Allerdings hab ich hier das Problem, daß sich KDevelop nach allen Regeln der Kunst wehrt, für meine abgetippten HelloWorld-Programme auch nur ein einziges Makefile zu erstellen. Ich will QT3 programmieren. KDevelop will die QT4 einbinden, obwohl ich das nach ewig langem Suchen in der Pfadangabe anders angegeben hab. Wenn ich KDevelop irgendwann und irgendwie mal dazu prügeln kann, mir tatsächlich ein QT3-Programm zu bauen, werd ich mir auf alle Fälle da noch einen tieferen Einblick verschaffen. |
Irgendwie scheinen das mit QT/GTK die meisten so zu sehen. Genau, und deswegen hab ich mir auch gerade KDE auf meinen Rechner getan. Nur jetzt kommt der Hammer: Am Dienstag hat mir KDevelop noch Makefiles erzeugt, am Donnerstag ging es nicht mehr. Und ich dachte, es liegt daran, weil ich Gnome runtergeschmissen habe. Also mit KDevelop ohne KDE unter Gnome ging es. Setze gerade ein neues System auf, weil ich dachte, da ist jetzt die Konfiguration etwas vermurkst. |
|
Back to top |
|
|
Necoro Veteran
Joined: 18 Dec 2005 Posts: 1912 Location: Germany
|
Posted: Fri Oct 27, 2006 1:50 pm Post subject: |
|
|
musv wrote: | Aber am schönsten läßt sich meiner Meinung nach SWT in Java unter Eclipse programmieren. |
*zustimm* ... SWT ist was ganz feines _________________ Inter Deum Et Diabolum Semper Musica Est. |
|
Back to top |
|
|
franzf Advocate
Joined: 29 Mar 2005 Posts: 4565
|
Posted: Fri Oct 27, 2006 4:03 pm Post subject: |
|
|
Klaus Meier wrote: | Irgendwie scheinen das mit QT/GTK die meisten so zu sehen. Genau, und deswegen hab ich mir auch gerade KDE auf meinen Rechner getan. Nur jetzt kommt der Hammer: Am Dienstag hat mir KDevelop noch Makefiles erzeugt, am Donnerstag ging es nicht mehr. Und ich dachte, es liegt daran, weil ich Gnome runtergeschmissen habe. Also mit KDevelop ohne KDE unter Gnome ging es. Setze gerade ein neues System auf, weil ich dachte, da ist jetzt die Konfiguration etwas vermurkst. |
ALSO
1) Brauchst du kein kdevelop um QT zu Programmieren
2) Brauchst du kein kde um QT zu programmieren
Und obwohl ich kdevelop verwende (auch erst seit kurzem, vorher ganz simpel mit kate...) werden meine Makefiles nicht von selbigem generiert, sondern von cmake. -> http://www.cmake.org
Schau dir einfach mal paar Projekte an (-> strigi, initng) welche das verwenden. Cmake ist simpel aber mächtig.
Für den Anfang find ich im Übrigen so eine fette, umfangreiche IDE nicht optimal. Zu viele Spielereien und damit unübersichtlich.
Schöne Grüße
Franz |
|
Back to top |
|
|
Klaus Meier Advocate
Joined: 18 Apr 2005 Posts: 2908 Location: Bozen
|
Posted: Fri Oct 27, 2006 7:06 pm Post subject: |
|
|
[quote="franzf"] Klaus Meier wrote: | ALSO
1) Brauchst du kein kdevelop um QT zu Programmieren
2) Brauchst du kein kde um QT zu programmieren
Und obwohl ich kdevelop verwende (auch erst seit kurzem, vorher ganz simpel mit kate...) werden meine Makefiles nicht von selbigem generiert, sondern von cmake. -> http://www.cmake.org
Schau dir einfach mal paar Projekte an (-> strigi, initng) welche das verwenden. Cmake ist simpel aber mächtig.
Für den Anfang find ich im Übrigen so eine fette, umfangreiche IDE nicht optimal. Zu viele Spielereien und damit unübersichtlich.
Schöne Grüße
Franz |
Das ist mir schon alles klar. Aber Kdevelop hat sehr schöne Vorlagen. Wenn du alles gelesen hast, hab ich mir da ja erst mal ein paar Beispiele angesehen. Und die fand ich halt ansprechender als die Beispiele von GTK. Und es geht mir nur auf den Senkel, daß das mit den Makefiles an Dienstag noch ging und Donnerstag nicht mehr. Und ich will jetzt wissen, warum. |
|
Back to top |
|
|
Vortex375 Veteran
Joined: 03 Mar 2005 Posts: 1739 Location: Deutschland
|
Posted: Fri Oct 27, 2006 9:41 pm Post subject: |
|
|
Quote: | Vortex375: Dein Umlaute sind kaputt. |
Habs verbessert. Wer mir sagen kann, warum mein firefox manchmal einfach so das encoding wechselt kriegt nen Keks.
Sorry wegen offtopic. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|