Welche Programm.-Sprache lernen?
Ich würde gerne für Linux entwickeln, kann aber noch nicht programmieren. Ich fange gerade mit Java an, habe aber den Eindruck, dass kann man das unter Linux nicht so recht gebrauchen kann. Welche Sprache muss ich können, um Bugfixes und Programme generell schreiben zu können? Kann etwa jeder Durchschnitts-Linux User C ? Wie lernt man es am besten? (Bücher gibt es relativ wenige)? Danke für Antwort. ______________________________________________________ Get Your Private, Free Email at <A HREF="http://www.hotmail.com"><A HREF="http://www.hotmail.com</A">http://www.hotmail.com</A</A>> -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo@suse.com schicken, mit dem Text: unsubscribe suse-linux
Ingvar Bogdahn wrote:
Ich würde gerne für Linux entwickeln, kann aber noch nicht programmieren. Ich fange gerade mit Java an, habe aber den Eindruck, dass kann man das unter Linux nicht so recht gebrauchen kann. Welche Sprache muss ich können, um Bugfixes und Programme generell schreiben zu können? Kann etwa jeder Durchschnitts-Linux User C ? Wie lernt man es am besten? (Bücher gibt es relativ wenige)?
Hallo, C bzw. C++ ist da wohl die beste Loesung, nicht nur f. Linux. Ist wohl z.Z. die universellste Prgrammiersprache. Thema Lernen: Auch wenn es vielleicht weh tut, ich meine am besten lernt man es unter einem Compiler mit IDE und integriertem Debugger, dann findet man die Fehler leichter ! Als DOS / Windows-Prgrammierer schwoere ich auf Borland C++. Ich weiß leider nicht, ob es unter Linux eine aehnliche IDE gibt. Wenn ja, setzt micht bitte in Kenntnis !!! Thema Buecher: Kein Lehr- aber Nachschlagebuch, um das man als C-Progi. nicht herumkommt, ist immer Kernighan & Ritchie - leider zum Lernen sehr schwer verdaulich. Fuer C++ B. Stroustrup - das Standardwerk - aber selbes Problem ! Aber - das muss man durch !!! MfG Sven -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo@suse.com schicken, mit dem Text: unsubscribe suse-linux
On 04-Sep-98 Sven Geier wrote:
Ingvar Bogdahn wrote:
Ich würde gerne für Linux entwickeln, kann aber noch nicht programmieren. Ich fange gerade mit Java an, habe aber den Eindruck, dass kann man das unter Linux nicht so recht gebrauchen kann. Welche Sprache muss ich können, um Bugfixes und Programme generell schreiben zu können?
Um Bugfixes schreiben zu können sollte man die Sprache beherschen in der das eigentliche Programm geschrieben wurde.
Kann etwa jeder Durchschnitts-Linux User C ? Wie lernt man es am besten? (Bücher gibt es relativ wenige)?
Schau dir mal www.jfl.de an da findest du ne menge Bücher.
Hallo,
C bzw. C++ ist da wohl die beste Loesung, nicht nur f. Linux. Ist wohl z.Z. die universellste Prgrammiersprache.
Für viele Aufgaben ist Perl auch nicht zu verachten
Als DOS / Windows-Prgrammierer schwoere ich auf Borland C++. Ich weiß leider nicht, ob es unter Linux eine aehnliche IDE gibt. Wenn ja, setzt micht bitte in Kenntnis !!!
gibts heist xwpe und ist auf der SuSE mit drauf.
Thema Buecher: Kein Lehr- aber Nachschlagebuch, um das man als C-Progi. nicht herumkommt, ist immer Kernighan & Ritchie - leider zum Lernen sehr schwer verdaulich.
Naja, wenn man z.B. schon Pascal kann kann man aus K&R hervoragend lernen. Noch ein gutes Buch: Expert C Programming von Peter van der Linden (sollte man nach K&R lesen, am besten in Englisch)
Fuer C++ B. Stroustrup - das Standardwerk - aber selbes Problem ! Den finde ich im Orginal viel besser als in der deutschen Übersetzung.
MfG Jens --- -------------------------------------------------------- Jens Link j.link@linux.e.ruhr.de FAX: 089-66617-31040 and soon: http://.... -------------------------------------------------------- -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo@suse.com schicken, mit dem Text: unsubscribe suse-linux
Am Fri, 04 Sep 1998 schrieb Sven Geier:
C bzw. C++ ist da wohl die beste Loesung, nicht nur f. Linux. Ist wohl z.Z. die universellste Prgrammiersprache.
Denis M. Ritchie hat, Ende der 60er Jahre, nicht nur Unix entwickelt, sondern auch, zusammen mit Brian Kernighan, C entwickelt und das Buch "Programmieren in C" geschrieben. Der Kernighan & Ritchie halt. Da Linux eine Art Unix ist, gehören Linux und C zusammen. Der Kernel ist auch in C geschrieben. [...]
Als DOS / Windows-Prgrammierer schwoere ich auf Borland C++. Ich weiß leider nicht, ob es unter Linux eine aehnliche IDE gibt. Wenn ja, setzt micht bitte in Kenntnis !!!
xwpe ist der Borland Entwicklerumgebung nachemfunden. Ich finds noch etwas schwach auf der Brust. Hat sich anscheinend auch nichts mehr getan. Ein guter Debugger ist gdb. Ist aber Kommandozeile. Siehe: info gdb In Ergänzung zu einem Debugger ist strace zu empfehlen. strace verfolgt ein Prozess und gibt alle Systemaufrufe aus. Siehe: man strace mfg Bernd -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo@suse.com schicken, mit dem Text: unsubscribe suse-linux
Hi! Trying to kill the keyboard, B.Brodesser@t-online.de produced:
Ein guter Debugger ist gdb. Ist aber Kommandozeile. Siehe: info gdb
und (x)ddd ist die GUI zu gdb (und dbx und xdb). Ist aber ein Motif-Programm (also entweder library kaufen oder statisch gelinkt). -Wolfgang -- PGP 2 welcome: Mail me, subject "send PGP-key". If you've nothing at all to hide, you must be boring. Unsolicited Bulk E-Mails: *You* pay for ads you never wanted. Is our economy _so_ weak we have to tolerate SPAMMERS? I guess not. -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo@suse.com schicken, mit dem Text: unsubscribe suse-linux
Bernd =?UNKNOWN?Q?Brode=DFer?= wrote:
[...]
xwpe ist der Borland Entwicklerumgebung nachemfunden. Ich finds noch etwas schwach auf der Brust. Hat sich anscheinend auch nichts mehr getan.
es gibt da doch inzwischen etliche sachen angefangen bei emacs ueber den editor namens eddi (in tcl programmiert), die man auch fuer sowas benutzen kann ... bis hin zu professionellen tools. (die dann auch richtig geld kosten.)
Ein guter Debugger ist gdb. Ist aber Kommandozeile. Siehe: info gdb
dann nimm mal den ddd mit dazu -- ist das beste grafische frontend, das ich kenne. (was natuerlich nichts heissen soll :) gruss, Andreas -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo@suse.com schicken, mit dem Text: unsubscribe suse-linux
On Fri, Sep 04, 1998 at 11:18:14AM -0700, Ingvar Bogdahn wrote:
Ich würde gerne für Linux entwickeln, kann aber noch nicht programmieren. Ich fange gerade mit Java an, habe aber den Eindruck, dass kann man das unter Linux nicht so recht gebrauchen kann.
Man kann auch mit Java unter Linux. Ob das aber fuer den Einstieg so gnaz optimal ist, wage ich mal zu bezweifeln.
Welche Sprache muss ich können, um Bugfixes und Programme generell schreiben zu können?
Vielleicht mal so als kleinen Tip... Wenn du noch nicht genau weisst, WAS du gerne basteln moechtest, solltest du dir zunaechst mal Gedanken ueber die Anwendungen machen, die entstehen sollen und danach die entsprechend geeignete Sprache auswaehlen.
Kann etwa jeder Durchschnitts-Linux User C ? Wie lernt man es am besten? (Bücher gibt es relativ wenige)?
Man muss sich nicht gleich in C stuerzen. Sehr hilfreich ist es, zunaechst mal einige Grundlagen der Shellprogrammierung zu lernen, weil man daran kaum vorbeikommt und solche Dinge fast ueberall in einem Projekt benoetigt werden. Zeitgleich sollte man sich etwas mit Perlskripten beschaeftigen und awk hilft auch schon mal weiter. Irgendwann gibt es dann aber einen Punkt, an dem man um C nicht mehr ganz herumkommt. Buecher dazu gibt es jede Menge. Es haben sich jedoch einige "Standardwerke" durchgesetzt, die man sich schon goennen sollte. Werbung gibt es genug, du wirst schon wissen, was ich meine ;-)) Mario -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo@suse.com schicken, mit dem Text: unsubscribe suse-linux
Ich würde gerne für Linux entwickeln, kann aber noch nicht
es gibt hier mehrere Compiler: C, C++, eiffel, pascal, objective c, modula, fortran, Java, etc., .... Java: da habe ich leider keine Erfahrung
Welche Sprache muss ich können, um Bugfixes und Programme generell schreiben zu können? Möglicherweise ist da C/C++ die richtige Wahl, falls Du in Sources ändern möchtest, da C/C++ sehr weit verbreitet ist Auch bieten sowohl Datenbanken, als auch Tools für GUI meistens eine C/C++ Schnittstelle: z.B. postgres, tcl/tk, qt, kde, Kann etwa jeder Durchschnitts-Linux User C ? das weiss ich nicht Wie lernt man es am besten? (Bücher gibt es relativ wenige)? es gibt halt eher zu viele Bücher ich würde raten viel Zeit mitzunehmen und in eine Bücherei mit gutem Sortiment zu gehen und die Bücher anzulesen, hierbei auf Verständlichkeit und Brauchbarkeit zu achten ;-) Zu C/C++ gibt es sehr viele Bücher; je nach Geschmack läßt sich da aussuchen für mich waren interessant: Kernighan/Ritchie: Programmieren in C Bruce Eckel : Einführung in C++; In C++ Denken Bjarne Stroustrup: Die C++ Programmiersprache Das Referenz-Manual Qt - Manual : von www.troll.no gezogen Postgres-Manual : /usr/dos/packages/postgres (hier diverse) für postgres brauchst Du auch SQL-Kenntnisse -ist aber sehr leicht lernbar- siehe auch tutorials tcl/tk : Tcl und Tk John K. Ousterhout habe mich aber, da für mich leichter benutzbar für Qt und kde (libkdeui, libkdecore) entschieden(soll aber nichts heissen) ist halt eine geschmacksfrage allgemein : Wegweiser zur Programmierung & Entwicklung Kalle Dallheimer Viel Spaß, ich würde bei der Programmiersprache besonders auf eine gute Lernbarkeit achten; kommt sie Deiner Denkweise entgegen; ist sie für Dich verständlich un leicht zu begreifen? Bugfixes selbst programmieren sollte da, meiner Meinung nach kein Auswahlkriterium sein.
Bis dann Peter -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo@suse.com schicken, mit dem Text: unsubscribe suse-linux
On Fri, 4 Sep 1998, Ingvar Bogdahn wrote:
dass kann man das unter Linux nicht so recht gebrauchen kann. Welche Sprache muss ich können, um Bugfixes und Programme generell schreiben zu können?
C ist wohl das, was Du willst.
Kann etwa jeder Durchschnitts-Linux User C ?
Wieso das ? Nein.
Wie lernt man es am besten? (Bücher gibt es relativ wenige)?
Das Buch "Programmieren in C" sollte wohl Dein erstes C-Buch sein. Kauf' Dir das oben genannte Buch, und das Raetsel & Loesungs Buch dazu. Dann hast Du schon was fuer den Einstieg. Nachher dann "Advanced Programming in an UNIX Environment". Gruesse, Dominik -- Dominik Rothert E-Mail: domi@netcologne.de PGP Fingerprint: 6D F9 F0 2A 88 BD E6 64 F4 9C 3A 6D CB 71 C4 7D -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo@suse.com schicken, mit dem Text: unsubscribe suse-linux
On 04-Sep-98 Ingvar Bogdahn wrote:
Ich würde gerne für Linux entwickeln, kann aber noch nicht programmieren. Ich fange gerade mit Java an, habe aber den Eindruck, dass kann man das unter Linux nicht so recht gebrauchen kann. Welche Sprache muss ich können, um Bugfixes und Programme generell schreiben zu können?
Java kann man unter Linux genauso gut oder schlecht gebrauchen wie unter jedem anderen System. Das Ziel von Java sind plattformunabhängige Applikationen. Für Systemprogrammierung ist Java deshalb völlig ungeeignet, egal auf welcher Plattform. Außerdem hat Java immer noch Geschwindigkeitsnachteile, was es für Performance-kritische Anwendungen nur begrenzt geeignet macht. Der Vorteil von Java ist - bei richtiger Entwicklung - daß man die erzeugten Programme auf jedem System nutzen kann. Als Einsteiger-Programmiersprache ist Java nicht gar so schlecht, weil es relativ unkompliziert zu lernen und sehr klar strukturiert ist. Alternativ würde ich mir mal das gute alte Pascal anschauen. Nicht, um Mega-Programme zu schreiben, sondern um erstmal die Grundlagen von Softwareentwicklung zu begreifen. Programmierung macht davon nur etwa 20% aus. Für Systemnahe Aufgaben, oder wenn es wirklich auf höchste Performance ankommt ist C/C++ das richtige Werkzeug. Aber C/C++ sind auch vergleichsweise komplex und können bei Anfängern viel Verwirrung stiften. Empfehlung: Leih dir in einer Bibliothek ein gutes Buch über Informatik-Grundlagen aus und fang erstmal an, dich ins Thema einzulesen. Danach fängst Du vielleicht mal mit Pascal an - ein gutes Buch dazu gibts z.B. von Niklaus Wirth -, um rudimentäre Grundlagen zu bekommen. Wenn Du dir so eine solide Basis geschaffen hast, kannst Du dich an die komplexeren Sprachen und Problemstellungen herantasten. Legst Du Wert darauf, sofort OO zu programmieren, kannst Du durchaus auch mit Java anfangen. =========================================================== Erhard Schwenk - alias Bitrunner =)B==o) =========================================================== No Spam replies please. -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo@suse.com schicken, mit dem Text: unsubscribe suse-linux
Am Mon, 07 Sep 1998 schrieb Erhard Schwenk:
On 04-Sep-98 Ingvar Bogdahn wrote:
Alternativ würde ich mir mal das gute alte Pascal anschauen. Nicht, um Mega-Programme zu schreiben, sondern um erstmal die Grundlagen von Softwareentwicklung zu begreifen. Programmierung macht davon nur etwa 20% aus.
Für Systemnahe Aufgaben, oder wenn es wirklich auf höchste Performance ankommt ist C/C++ das richtige Werkzeug. Aber C/C++ sind auch vergleichsweise komplex und können bei Anfängern viel Verwirrung stiften.
Hallo Erhard, ist sicherlich alles Richtig, was Du schreibst, aber es ist verwirrend C zu lernen, wenn man vorher Pascal gelernt hat. Weil die beiden Sprachen recht ähnlich sind, aber doch verschieden. Gruss Bernd -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo@suse.com schicken, mit dem Text: unsubscribe suse-linux
Weil so viele etwas dazu geschrieben haben, moechte ich nun auch meinen Senf dazu geben :=) "Ingvar Bogdahn" <ingvarbogdahn@hotmail.com> writes:
Ich würde gerne für Linux entwickeln, kann aber noch nicht programmieren. Ich fange gerade mit Java an, habe aber den Eindruck, dass kann man das unter Linux nicht so recht gebrauchen kann. Welche Sprache muss ich können, um Bugfixes und Programme generell schreiben zu können?
Es kommt immer ganz darauf an, was Du eigentlich machen willst. Wenn Du Programme schreiben moechtest, die auf fast allen verfuegbaren Platformen laufen, dann kommst Du im Augenblick an Java nicht vorbei. Ausserdem ist es eine Sprache, die das objektorientierte Paradigma einigermassen gut umsetzt (Flames darueber bitte nicht an die Liste, das Thema kann in verschiedenen Newsgroups behandelt werden). Auf der Negativseite stehen (noch?) schlechtere Performance und Probleme mit den unterschiedlichen Versionen der Sprache. Die Sprache ist auch noch sehr neu und und entwickelt sich rasant weiter. Stelle Dich also ein, auf ein "Moving Target" zu arbeiten. URL der Wahl fuer Java und Linux ist uebrigens www.blackdown.org, und ich habe nicht den Eindruck, dass die beiden nicht zueinander passen :-) An Literatur fuer Java kann ich die Online-Doku bei www.javasoft.com und die Buecher vom OŽReilly-Verlag zu dem Thema empfehlen. Ach ja, falls das fuer Dich relevant ist : Leute mit Java-Kenntnissen haben im Augenblick einen sehr hohen Marktwert. Leute mit sauberen OO-Kenntnissen aber hoffentlich einen noch hoeheren. Wenn du Bugfixes und aehnliches schreiben moechtest, musst Du ganz einfach die Sprache koennen, in der die Programme geschrieben sind, die Du fixen moechtest, also meistens C oder C++. Und zwar gut... Zum Streit zwischen C++ und Java moechte ich jetzt eigentlich nichts sagen, nur soviel: Java versucht, die Elemente von C++ nicht zu uebernehmen, die von einigen als gefaehrlich erkannt werden (multiple inheritance) bzw. die fehlenden Aspekte zu versorgen, die zu Problemen führten (automatische garbage collection gegen- ueber manueller Speicherverwaltung). Daher hast Du unter Java nicht soviele Moeglichkeiten, Dich selber in den Fuss zu schiessen. Unter C++ hast Du dafuer mehr Freiheiten und bessere Performance. Was Du verwenden solltest haengt wie gesagt stark von den Sachen ab, die Du machen willst. Kleines Zitat von meinem Prof : Wer in C programmiert (und wohl auch in C++, Anm. von mir), der rennt mit einem offenen Messer durch den Rechner... Und falls Du eigentlich nur einige Skripten schreiben willst, um Sachen zu automatisieren oder ein allgemeines Gefuehl fuers Entwickeln von Programmen bekommen moechtest, gibt es da noch verschiedene Interpretersprachen. Mir fallen im Augenblick auf Anhieb Python (soll gut sein, um sich in OO einzu- arbeiten) und Perl ein. Bei mir werkelt z.B. im Hintergrund ein kleines Perl-Skript, das alle 10 min ein anderes Bild aus einer Liste als Hinter- grundbild fuer meinen Desktop laedt. Startpunkt fuer die beiden sind www.python.org bzw. www.perl.org.
Kann etwa jeder Durchschnitts-Linux User C ?
Nein, das kann man wohl mit Sicherheit ausschliessen.
Wie lernt man es am besten? (Bücher gibt es relativ wenige)?
Das ist die schwierigste Frage, die Du stellst. Am besten fuer eine Sprache entscheiden, in der entsprechenden Newsgroup nach guten Buechern fragen, ein oder zwei davon kaufen und anfangen. Wenn Du nach Nachdenken und Lesen nicht mehr weiterkommst - und bitte nur dann - noch einmal in der Newsgroup fragen. Und irgend wann einmal weiter einarbeiten in die Softwareentwicklung. Da gibtŽs dann viele interessante Themen, von OO und Pattern bis hin zu Projektmanagement und Vorgehensmodellen. Ach ja : wenn Dir jemand erzaehlt, er haette die einzig richtige Loesung fuer alle Probleme gefunden, die mit Softwareentwicklung zusammenhaengen und alles andere sei totaler Mist, solltest Du extrem vorsichtig werden. Ich meine jedenfalls, die Person hat Unrecht :-) Ooops, das ist jetzt arg lang geworden und hat mit SuSE eigentlich nichts zu tun. Tschuligung. Aber ich hoffen, es hilft irgend jemand. Falls ich Unsinn geschrieben habe schiebt es einfach auf den Rotwein, den ich gerade getrunken habe :-) und tschuess Jerry -- shit - what - rollers - no - yes - shit -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo@suse.com schicken, mit dem Text: unsubscribe suse-linux
participants (11)
-
andreas.schoelver@fh-bochum.de
-
B.Brodesser@t-online.de
-
domi@netcologne.de
-
eschwenk@fto.de
-
Gerald.Preissler@gmx.de
-
ingvarbogdahn@hotmail.com
-
j.link@linux.e.ruhr.de
-
mmaureraks@st-wendel.de
-
pberlau@muenster.de
-
svengeier@csi.com
-
weissel@jupiter.ph-cip.uni-koeln.de