PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : C oder Perl ?



S-freak
30-07-2004, 20:17
Hi!

ich hab mich dazu entschlossen mal eine Sprache richtig gut zu lernen (hab schon einiges gemacht pascal vbs vb und so aber alles nur ein bisl) und dabei bin ich auf die beiden sprachen gestossen bzw die sind meine favoriten und ich kann mich nicht entscheiden welche ich nehmen soll

also alles was ich weis zu
C: lt einem kollegen (der hat studiert und damals selber mit C++ programmiert) ist C am anfang relativ schwierig mit der zeit wirds aber dann einfach, ich finde das nicht so schlimm mit hilfe von büchern kann man das schon lernen und ausserdem hab ich zeit, dann wird es in zukunft bios bausteine geben die man mit C programmiern kann und mit C kann man .exe files (unter windows) erzeugen dh keiner kann den code einfach anschaun
ausserdem kann man damit weitermachen und noch C++ oder C# lernen

perl: also perl soll relativ leicht zum lernen sein und man soll damit auch alles programmiern können aber soweit ich weis kann jeder den code einsehen und das find ich persönlich dumm

naja sagt einfach mal was ihr dazu meint die sprache wird dann sowohl unter windows als auch (hauptsächlich) unter linux eingesetzt und sollte vorallem automatisieren aber auch kleine programme sollten damit möglich sein

schreibt einfach mal was ihr dazu meint ;)

danke schonmal :)

peschmae
30-07-2004, 21:20
Mal abgesehen davon dass ich mit deiner Meinung zu Quellcode freigeben nicht einverstanden bin:
Die Optionen die du da auflistest finde ich äusserst merkwürdig. Perl und C sind sehr verschieden und vor allem auch für unterschiedliche Sachen gut geeignet.
Wäre jetzt die Frage Perl/Ruby/Python? evtl auch Java/C# oder eben C oder C++ könnt ichs nachvollziehen. Die Sprachen haben jeweils ein ähnliches Aufgabengebiet oder eine ähnliche "Art".
C und Perl hingegen sind doch recht starke Gegensätze.

MfG Peschmä

S-freak
30-07-2004, 22:11
Mal abgesehen davon dass ich mit deiner Meinung zu Quellcode freigeben nicht einverstanden bin:
Die Optionen die du da auflistest finde ich äusserst merkwürdig. Perl und C sind sehr verschieden und vor allem auch für unterschiedliche Sachen gut geeignet.
Wäre jetzt die Frage Perl/Ruby/Python? evtl auch Java/C# oder eben C oder C++ könnt ichs nachvollziehen. Die Sprachen haben jeweils ein ähnliches Aufgabengebiet oder eine ähnliche "Art".
C und Perl hingegen sind doch recht starke Gegensätze.

MfG Peschmä

inwiefern sind das starke gegensätze ? mit dem einen erstellt man halt mehr scripte mit dem anderen mehr programme

peschmae
30-07-2004, 22:37
Dass du dir überlegst ob eine Scriptsprache oder Compiliersprache (C, C++ und ähnliche) ist durchaus nachvollziehbar.
Die Antwort findest du am besten indem du dir überlegst was du denn damit willst. Scriptsprachen hat man schneller gelernt und man hat damit auch schneller ein Programm geschrieben um eine bestimmte begrenzte Aufgabe zu erfüllen.
Compilersprachen - ich denke hier vor allem an C/C++/Objective C - sind schwerer zu lernen, die Fehlersuche ist oft nicht einfach, etc
Vorteile? Performance, dann u.u. weniger grosse Hardwareanforderungen, jede Menge Libs und vor allem dass du damit ziemlich alles anstellen kannst. (Ja, ich weiss es gibt PerlOS und auch http://jnode.sourceforge.net/portal/)

Meine Empfehlung zum Anfangen lautet definitiv Scriptsprache (oder Java). Auch wenn du Zeit hast - C/C++ kann dich sehr leicht vergraulen.

Die Frage welche Scriptsprache ist hier auch wichtig - aber die lässt du einfach weg - wieso nicht Python oder Ruby?
Beides Sprachen von denen ich sehr viel gutes gehört habe - eigentlich nur gutes (was man von Perl nicht sagen kann, auch wenn die Sprache auch ihre Vorteile hat)

MfG Peschmä

S-freak
30-07-2004, 22:40
Dass du dir überlegst ob eine Scriptsprache oder Compiliersprache (C, C++ und ähnliche) ist durchaus nachvollziehbar.
Die Antwort findest du am besten indem du dir überlegst was du denn damit willst. Scriptsprachen hat man schneller gelernt und man hat damit auch schneller ein Programm geschrieben um eine bestimmte begrenzte Aufgabe zu erfüllen.
Compilersprachen - ich denke hier vor allem an C/C++/Objective C - sind schwerer zu lernen, die Fehlersuche ist oft nicht einfach, etc
Vorteile? Performance, dann u.u. weniger grosse Hardwareanforderungen, jede Menge Libs und vor allem dass du damit ziemlich alles anstellen kannst. (Ja, ich weiss es gibt PerlOS und auch http://jnode.sourceforge.net/portal/)

Meine Empfehlung zum Anfangen lautet definitiv Scriptsprache (oder Java). Auch wenn du Zeit hast - C/C++ kann dich sehr leicht vergraulen.

Die Frage welche Scriptsprache ist hier auch wichtig - aber die lässt du einfach weg - wieso nicht Python oder Ruby?
Beides Sprachen von denen ich sehr viel gutes gehört habe - eigentlich nur gutes (was man von Perl nicht sagen kann, auch wenn die Sprache auch ihre Vorteile hat)

MfG Peschmä

ja von python hab ich auch schon einiges gehört aber perl würde mich mehr interessieren und so schwer soll die auch nicht sein ... ich fang einfach mal mit perl an und dann seh ich ja obs mir gefällt

Sym
30-07-2004, 23:46
ja von python hab ich auch schon einiges gehört aber perl würde mich mehr interessieren und so schwer soll die auch nicht sein ... ich fang einfach mal mit perl an und dann seh ich ja obs mir gefällt
Was genau willst Du denn überhaupt machen?

S-freak
31-07-2004, 12:07
ja so genau stehts noch nicht fest es sollte zumindest automatisiern und auch netzwerk erweitern und sowas halt und sollte auch eingaben entgegen nehmen können ... es sollte einfach möglichst alles was ich irgendwann mal automatisiern will, werte auslesen (zb ipadressen) und so weiter können damit ich keine andere sprache lernen muss aber wenn PERL einfacher ist lern ich das

tuxipuxi
31-07-2004, 13:40
Perl ist leichter zu lernen als C, aber schwerer als Python. Python dürfte auch das alles haben was du brauchst und ist weniger kryptisch(IMO). An deiner Stelle würde ich mir Python anschauen.

Michael.

S-freak
31-07-2004, 16:58
naja so genau weis ich mittlerweile garnimmer was ich lernen soll ...

geht darum ich soll eigentlich alles machen können mit den programmen und der umstieg von der einen in die andere sprache sollte nicht alzu schwer sein

peschmae
31-07-2004, 18:35
geht darum ich soll eigentlich alles machen können mit den programmen und der umstieg von der einen in die andere sprache sollte nicht alzu schwer sein

Ich schliesse mich dem Tipp an - Python. Der Umstieg ist - wenn du mal die Grundkonzepte (inkl. OOP) kapiert _und_ angewandt hast tatsächlich meist nicht mehr so schwierig.
Ausnahme: Der Umstieg von irgendwas (d.h. Scriptsprache) nach C/C++ - der hats durchaus in sich (merke ich gerade selber ;)) weil:
- erschwerte Fehlersuche (Segfault statt Angabe der Fehlerzeile, manchmal funktionierts trotz Fehler doch, dann dafür gleich wieder nicht mehr...)
- Pointer
- C/C++ sind vergleichsweise komplex - hat immer irgendwo nen Haken dran

gerade deshalb würde ich aber sicher nicht mit C/C++ anfangen. Um die Sprachen richtig zu kapieren brauchst du erst mal ein Grundlagenbuch - etwa 1000 Seiten zum durcharbeiten. Wohlgemerkt 1000 Seiten hartes Zeugs und während der Zeit schreibst du kein einziges wirklich brauchbares Programm.
Ich hab nach 450 Seiten aufgehört und schlängle mich jetzt da durch.

Scriptsprachen machen viel mehr Spass - da hast du schnell brauchbare Resultate und auch grössere Projekte sind damit möglich (z.B. ist Sodipodi (Vektorgrafikprogramm) in Python geschrieben).

MfG Peschmä

S-freak
31-07-2004, 19:09
Ich schliesse mich dem Tipp an - Python. Der Umstieg ist - wenn du mal die Grundkonzepte (inkl. OOP) kapiert _und_ angewandt hast tatsächlich meist nicht mehr so schwierig.
Ausnahme: Der Umstieg von irgendwas (d.h. Scriptsprache) nach C/C++ - der hats durchaus in sich (merke ich gerade selber ;)) weil:
- erschwerte Fehlersuche (Segfault statt Angabe der Fehlerzeile, manchmal funktionierts trotz Fehler doch, dann dafür gleich wieder nicht mehr...)
- Pointer
- C/C++ sind vergleichsweise komplex - hat immer irgendwo nen Haken dran

gerade deshalb würde ich aber sicher nicht mit C/C++ anfangen. Um die Sprachen richtig zu kapieren brauchst du erst mal ein Grundlagenbuch - etwa 1000 Seiten zum durcharbeiten. Wohlgemerkt 1000 Seiten hartes Zeugs und während der Zeit schreibst du kein einziges wirklich brauchbares Programm.
Ich hab nach 450 Seiten aufgehört und schlängle mich jetzt da durch.

Scriptsprachen machen viel mehr Spass - da hast du schnell brauchbare Resultate und auch grössere Projekte sind damit möglich (z.B. ist Sodipodi (Vektorgrafikprogramm) in Python geschrieben).

MfG Peschmä

gut ich glaub ich bleib dann doch bei perl oder python welche von den beiden weis ich noch nicht aber python soll ja recht einfach sein ich werd mir zu den beiden mal ein paar tutorials suchn und mich dann für eine entscheiden

btw: mit büchern lesen hab ich kein problem ich hatte vorher auchabsolut null plan von linux hab jetzt ein buch mit 1200 seitn und hab innerhalb der woche ca 300 davon gelesen (jaja hatte wenig zeit) und ich denk nicht dran aufzuhörn und des is auch trockenes zeug im grunde fast nur theoretisches ...und zu perl/python werd ich mir auch bücher kaufn für perl gibts ja welche von O'reilly die solln angeblich recht gut sein

und dann hab ich noch irgendwann mal aufgeschnappt das perl und php ähnlich sein solln ? stimmt das ?

Dragoran
01-08-2004, 18:04
Ja Perl und php sind ähnlich aber php ist eher für webanwendungen (z.b dieses Forum) während perl für andere sachen besser geiegnet sind.
(ich weiß das perl auch webfähig ist)
bzw. Ich würde dir auch Python epmfehlen damit kann man auch leicht programme + gui schreiben.

- erschwerte Fehlersuche (Segfault statt Angabe der Fehlerzeile, manchmal funktionierts trotz Fehler doch, dann dafür gleich wieder nicht mehr...)
dafür gibts gdb ;)

peschmae
01-08-2004, 18:36
klar aber nett zu bedienen isser nicht - und Frei Haus kriegst du die Meldungen auch nicht. Ausserdem musst du den explizit anstellen - beim Enduser bringt der nix und du kriegst zuwenig infos... :D

MfG Peschmä

Alex_K
01-08-2004, 21:26
klar aber nett zu bedienen isser nicht

für sowas gibts ja eine ide :)

peschmae
01-08-2004, 21:29
IDEs sind Bloat - zumindest für nicht grosse Programme.

MfG Peschmä

anda_skoa
01-08-2004, 21:32
ja so genau stehts noch nicht fest es sollte zumindest automatisiern

Für das Automatisieren von Abläufen sind Scriptsprachen meist besser geeignet als kompilierte Sprachen, weil man üblicherweise viel flexbiler ist.

C hat seine Stärken eher in der Hardwarenähe, es ist praktisch eine Art Highlevel Assembler Sprache.

Wenn man viel parsen und Text manipulieren will, ist Sprachen mit einfachem Stringhandling leichter.

Btw, ich hab mal gehört, das Ruby so eine Art Perl für OOP ist, also sehr ähnliche Mächtigkeit im Umgang mit Strings hat, aber OOP Features wie Python kann.

Ciao,
_

comrad
02-08-2004, 09:59
Scriptsprachen machen viel mehr Spass - da hast du schnell brauchbare Resultate und auch grössere Projekte sind damit möglich (z.B. ist Sodipodi (Vektorgrafikprogramm) in Python geschrieben).


Japps, man braucht ja keine hohen Ausführgeschwindigkeiten in Desktopprogrammen, wo die langsamste Komponente immernoch der Mensch ist.
Die ganzen Redhat-Verwaltungstools sind auch alle in GTK/Python geschrieben.

comrad