programmier einsteiger .....

  • Hi also nicht wirklch einsteiger *g*


    Aber was für eine Programiersprache würdet ihr empfehlen unter Linux? Wenn einer von windows VB kommt und noch etwas ahnung von c hat .. (sehr sehr eingerostet ;) )


    Währe cool wenn ihr mir ein Tip geben könntet ....


    Will auch wenn es möglich ist, möchte ich später auch mit der sprache objektorientiert programmieren ... geht das eigenlich ?



    habe schon was gehört von den qt libs mit denen könnte man auch platform unabhängig programmieren, ob es stimmt weis ich nicht.



    Wie gesagt würde mich über jede antowrt freuen :)

  • Fang damit an, deine C-Kenntnisse zu reaktivieren. Lerne dann C++, dann gibt's JAVA geschenkt (nachdem ich C++ einigermaßen konnte, war JAVA in 1-2 Wochen möglich). Qt ist bequem, auch wenn's nicht die reine Lehre ist (wegen precompiling ;) ) JAVA hat auch eine bequeme API, sperrt einen aber aus den ganzen Hardwaregeschichten aus (die ja beim VDR gerade das essentielle sind). Perl, Python und Ruby sind nett für Textscripting (EPG-Filter und so).

    Godzilla [Low Budget Record-Only]: AMD K6/2(400), Gigabyte GA-5AX, 192MB, ATI RagePro (Mach64GT) mit TV-Out, Technisat Skystar2 rev 2.6b, IBM DTLA 40GB, Ensoniq ESS-Solo1 (es1935), Pioneer DVR 108

  • Hallo,


    ich würde dir nicht empfehlen, zuerst deine C-Kenntnisse aufzufrischen. Dann ist die Gefahr viel größer, dass du dir Dinge angewöhnst, die in C++ schlechter Stil sind, da es bessere Mechanismen für diese Probleme gibt. Vom Vieweg-Verlag gibt es sogar ein Buch "Ohne C zu C++". Ich halte das für den richtigen Weg, kann dir aber nicht sagen, ob das Buch etwas taugt, da ich es erst gesehen habe als ich schon recht gut C++ konnte.


    Für Java spricht vor allem die große Klassenbibliothek, die mit der Sprache mitkommt (GUI, Netzwerk, Threads, XML, Grafik). In C++ braucht man dafür immer externe Bibliotheken, bei denen man dann die Qual der Wahl hat.


    Heißduscher

  • Hi,


    was soll denn nun genau programmiert werden ?


    Unter Linux/Unix ist ein C/C++ natuerlich sehr weit verbreitet und das mit dem "schlechten Stil" (damit hab ich leider auch immer wieder zu tun ;( ) stimmt durchaus.
    Java ist zwar mein Favorit, wobei es eben keineswegs so ist (weder bei der GUI, noch bei harwarenahen Dingen (--> da fehlen unter Linux ein Menge von Implementierungen z.B. im Soundbereich oder gar fuer serielle/parallele Schnittstellen --> unter Solaris und Windows sieht das etwas anders aus), dass man hier etwas absolut Plattformunabhaengiges haette.
    Auch mit Perl kann man z.B. durchaus objektorientiert programmieren, doch es haengt IMHO eben davon ab, wohin man sich im Enddeffekt bewegen mag ...
    Gruss
    Burkhardt

  • Zitat

    Original von Heißduscher
    ...
    ich würde dir nicht empfehlen, zuerst deine C-Kenntnisse aufzufrischen. Dann ist die Gefahr viel größer, dass du dir Dinge angewöhnst, die in C++ schlechter Stil sind, da es bessere Mechanismen für diese Probleme gibt.
    ...


    Mit "auffrischen" meinte ich ja auch nur, dass man einmal kurz noch alle Kontrollstrukturen anschaut, nicht, dass man alle Formatstrings für printf auswendiglernt. Man kann durchaus beide Sprachen gleich gut beherrschen, man sollte nur nicht den Fehler machen, C++ einfach als "C mit Klassen" anzusehen, dann kommt es zum erwähnten schlechten Stil.

    Godzilla [Low Budget Record-Only]: AMD K6/2(400), Gigabyte GA-5AX, 192MB, ATI RagePro (Mach64GT) mit TV-Out, Technisat Skystar2 rev 2.6b, IBM DTLA 40GB, Ensoniq ESS-Solo1 (es1935), Pioneer DVR 108

  • Ich empfehle Dir Python: www.python.org


    Damit kommt man sehr schnell auf einen grünen Zweig, hat Erfolgserlebnisse und das ganze auch noch objektorientiert und plattformunabhängig. Der Interpreter erleichtert zudem das Erlernen der Sprache und Objektorientierung.


    C/C++ sind IMHO heute nicht mehr zeitgemäß, da für die meisten Dinge zu kompliziert.


    Lars

  • Hi,


    ich denke das richtet sich nach der Problemstellung. Mit Einschränkungen kann man vielleicht sagen:


    Hardwarenah, zeitkritisch -> ne 3GL (z.B. wenn man Linux erweitern will, Treiberprogrammierung o.ä.) wie C oder noch schlimmer eine 2GL wie Assembler


    Zeitunkritisch, wohlstrukturiert ->OO-Sprachen Java und Konsorten (Phyton etc., nett für Client/Server/GUI Sachen)


    Man muß sicher auch unterscheiden zwischen interpretierter und übersetzer Sprache.


    Kurzum: Die Sprache sollte der Problemstellung angepasst werden. Zum Lernen tuts fast jede Sprache. Meine Meinung dazu ist, daß man mit etwas Einarbeitungszeit jede Programmiersprache lernen kann, wenn man vorher eine wirklich beherrscht hat.


    StayCool

    HW: Hermes 651-P, Celeron 2GHz, 512MB, 120GB HD, WG511 WLAN, NEC-1300A, TechnoTrend DVB-C
    SW: ctvdr4, VDR 1.3.44, div. Plug-ins

  • Zitat

    Original von StayCool
    Kurzum: Die Sprache sollte der Problemstellung angepasst werden. Zum Lernen tuts fast jede Sprache. Meine Meinung dazu ist, daß man mit etwas Einarbeitungszeit jede Programmiersprache lernen kann, wenn man vorher eine wirklich beherrscht hat.


    ACK. Und "wirklich" beherrschen ist bei C++ eine echte Lebensaufgabe. Und meiner Meinung nach ist C++ für User-Space-Apps mit GUI etc. für einen Programmierneuling nicht geeignet. Einen VDR kann man munter in Python schreiben, warum sollte das nicht gehen? Wahrscheinlich sogar mit einem viertel des Codes...


    Kernel und Treiber sind natürlich was anderes. Ich war nicht davon ausgegangen, dass der Topicstarter sowas als erste Übung baut...


    Lars

  • Zitat

    ACK. Und "wirklich" beherrschen ist bei C++ eine echte Lebensaufgabe. Und meiner Meinung nach ist C++ für User-Space-Apps mit GUI etc. für einen Programmierneuling nicht geeignet.


    Kommt drauf an was man unter "wirklich" beherrschen versteht. Da BEEJay sich nicht als "nicht wirklich Einsteiger" bezeichnet, halte ich die Wahl der Programmiersprache an sich für nebensächlich. Es kommt einfach auf die Aufgabenstellung an.


    Und natürlich auf persönliche Präferenzen ;)


    Ich hoffe aber doch es kommt hier niemand auf die Idee die Frage nach der "besten" Sprache zu stellen. Auf so einen Glaubenskrieg hab ich keinen Bock ...


    StayCool

    HW: Hermes 651-P, Celeron 2GHz, 512MB, 120GB HD, WG511 WLAN, NEC-1300A, TechnoTrend DVB-C
    SW: ctvdr4, VDR 1.3.44, div. Plug-ins

  • Zitat

    Original von LarsAC
    ...
    ACK. Und "wirklich" beherrschen ist bei C++ eine echte Lebensaufgabe. Und meiner Meinung nach ist C++ für User-Space-Apps mit GUI etc. für einen Programmierneuling nicht geeignet. Einen VDR kann man munter in Python schreiben, warum sollte das nicht gehen? Wahrscheinlich sogar mit einem viertel des Codes...


    Dann ist es aber nicht VDR sondern freevo ;) (der ist nämlich in Python verfasst).

    Zitat


    Kernel und Treiber sind natürlich was anderes. Ich war nicht davon ausgegangen, dass der Topicstarter sowas als erste Übung baut...


    Na ja, die Frage war aber: Was ist unter Linux empfehlenswert. Und die Antwort ist auch schon gegeben worden: Alles. Wobei man C/C++ nicht weglassen darf, hat nun mal unter Linux die größte Codebase, und wenn man hier ernsthaft einsteigen will, kommt man daran nicht vorbei. Ich finde aber, wenn man wirklich Programmieren kann, sollte es kein Problem sein, sich mal schnell in 2-3 zusätzliche Sprachen einzuarbeiten (die genannten sind eh alles imperative Sprachen, also alles dasselbe in verschiedenen Farben :) ).

    Godzilla [Low Budget Record-Only]: AMD K6/2(400), Gigabyte GA-5AX, 192MB, ATI RagePro (Mach64GT) mit TV-Out, Technisat Skystar2 rev 2.6b, IBM DTLA 40GB, Ensoniq ESS-Solo1 (es1935), Pioneer DVR 108

  • DAnke für die Zahlreichen antowrten,


    also bisher habe ich nur in VB programmiert. Habe seit kurzem mal angefangen in C zu Programmieren mit oder c++ jenachdem ;).


    Muss aber sagen das es nicht so schwer zu erlernen ist wen man sich dhainter klemmt.



    Python ist mir auch in den sinn gekommen aber für nen vdr wüsste ich nciht wie ich das da anfangen soll. Bzw Nen Plugin schreiben soll.

  • Zitat

    Original von BEEjay
    ...
    also bisher habe ich nur in VB programmiert. Habe seit kurzem mal angefangen in C zu Programmieren mit oder c++ jenachdem ;).


    Muss aber sagen das es nicht so schwer zu erlernen ist wen man sich dhainter klemmt.


    Ha ha, das dachte ich auch, bis ich eines Tages "Template Meta-Programmierung" entdeckte... man kann sehr schnell in C++ lauffähige Programme erzeugen, aber es gibt immer noch Neues zu lernen.

    Zitat


    Python ist mir auch in den sinn gekommen aber für nen vdr wüsste ich nciht wie ich das da anfangen soll. Bzw Nen Plugin schreiben soll.


    Phython hat (wie jede andere Sprache unter Linux auch) die Möglichkeit, mit C-Librarys zu interagieren. Auf diese Weise sollten auch VDR-Plugins in Python möglich sein.

    Godzilla [Low Budget Record-Only]: AMD K6/2(400), Gigabyte GA-5AX, 192MB, ATI RagePro (Mach64GT) mit TV-Out, Technisat Skystar2 rev 2.6b, IBM DTLA 40GB, Ensoniq ESS-Solo1 (es1935), Pioneer DVR 108

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!