[Code] "Richtige" Sprache für (Ex-)PHP'ler

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von badloader, 23. Juni 2009 .

Schlagworte:
  1. 23. Juni 2009
    "Richtige" Sprache für (Ex-)PHP'ler

    Hi,

    eigentlich finde ich diesen Thread auch beschissen, weil es nicht "die richtige" Programmiersprache gibt und es auch schon oft besprochen wurde. Trotzdem habe ich einfach ein paar Fragen, die mir die Wikis und Google nicht beantworten konnten.

    Also zu meinem Profil:
    Ich programmiere seit mehreren Jahren PHP. Seit etwa einem Jahr "professionell" und auch ohne weiteres mit Objektorientierung. Nun möchte ich von der Webentwicklung etwas Abstand nehmen und gerade auch von PHP. Gründe sind, dass PHP zu weit verbreitet ist (kann jeder) und ich mini Tools schreiben will (evtl. GUIs).

    Was ich will:
    - Commandline Tools oder GUIs für Linux und Windows schreiben
    - Sie müssen möglichst auf jedem OS/PC laufen, also die Leute sollen nichts zwangsläufig installieren müssen (sollen auch "Hacker Tools" werden)
    - Vielleicht leichter Umstieg von PHP
    - Möglichst eine Sprache die schnell ist / compiliert werden muss

    Meine Pros und Contras:
    Java:
    Pro: Läuft auf allen OS; Objektorientiert; Sowohl Web wie GUI; Contra: Braucht eine VM; Können extrem viele

    Python:
    Pro: Einfach, Läuft auf allen OS, Sowohl Web wie GUI; Contra: Scriptsprache

    C/C++:
    Pro: Beliebt, Schnell, Alles möglich; Contra: Schwer;

    Mehr bin ich noch nicht durch. Was denkt ihr? Ist der Geschwindigkeitsverlust der Scriptsprachen relevant? Ist Python interessant für's Programmieren von Tools im Hacking Bereich?

    Gruß bad

    PS: Mods, wenn ihr meint, der Thread ist sinnlos: Schade^^
     
  2. 23. Juni 2009
    AW: "Richtige" Sprache für (Ex-)PHP'ler

    Naja.

    Als PHP-Programmierer bist du ziehmlich verwöhnt, möchte ich jetzt mal so sagen .
    An deiner Stelle würde ich eher zu einer anderen Scriptsprache begeben, die für solche dinge ausgelegt ist, wie Python.

    Andererseits ist PHP nicht weit entfernt von C. Die grundlegende Syntax (abgesehen von den Typen) hast du ja schon mal drauf, also wäre auch C eine gute Idee wert.

    Versuch halt mal beide Sprachen und schau was dir am besten liegt. Anders kann man's nicht erfahren, als wenn man es praktisch macht.
     
  3. 23. Juni 2009
    AW: "Richtige" Sprache für (Ex-)PHP'ler

    Also wenn du PHP ausm FF kannst, sollte C++ nicht so schwierig zum einarbeiten sein...


    Für was willst du diese Apps schreiben? Für eigengebrauch? Also mit PHP ist alles was du oben geschrieben hast auch möglich...
    Sowohl Konsolenapps, als auch GUI... und läuft auf allen Betriebssystemen auf denen PHP auch läuft.
     
  4. 23. Juni 2009
    AW: "Richtige" Sprache für (Ex-)PHP'ler

    Deinen Anforderungen enstspricht wohl C++.

    C++ unterstüzt (im Gegensatz zu C) Objektorientierung, ist schnell und unterstützt sowohl GUI als auch Konsolenapplikationen. Zur Portabilität muss ich ja wohl nicht viel sagen.
    Aber ich muss remaL recht geben. Mit den Typen wirst du evtl ein wenig Stress bekommen, aber da gewöhnt man sich sehr schnell dran. Ich hab damals auch von PHP auf C++ gewechselt und ich hab da kein Problem gesehen. Ist zwar anspruchsvoll, aber wer schon programmieren kann, dem fällt ein Wechsel der Sprache nicht sonderlich schwer. C++ ist eben um einiges umfangreicher und auch ein wenig komplexer, aber vieles ist ähnlich zu PHP

    greez
     
  5. 23. Juni 2009
    AW: "Richtige" Sprache für (Ex-)PHP'ler

    Habe C(++) bereits angetestet und muss sagen, alleine die Datentypen zu unterscheiden war schon heftig für mich. Ich meine mit den Unterschieden die z.b. Java bringt, dass man Typen vorher bestimmen muss und dass es (ich sag mal) 10 Verschiedene gibt ist ja okay, aber bei C kam es mit so vor wie wenn ich die Auswahl aus 100 Stück habe. Das daran PHP Schuld ist, ist mir klar^^ PHP verlangt einfach überhaupt keinen Stil...

    Also Coksnuss bei PHP möchte ich eig. nicht bleiben. Es können schonmal mittelgroße Anwendungen entstehen. Und dann hat man denke ich keine Chance mehr mit PHP.

    Ich habe ein wenig Angst, dass C++ zu komplex ist und dass ich das lerne ohne, dass es wirklich Sinn ergibt. Will ja kein Programmierer werden. Will nur kleine Tools entwickeln..... Und C++ ist doch sehr massig, oder ist diese Angst unbegründet bzw übertrieben?
     
  6. 23. Juni 2009
    AW: "Richtige" Sprache für (Ex-)PHP'ler

    Man kann auch nur mit relativ grundlegendem C++ Wissen gute Programme schreiben und da das Internet gerade zu aus den Nähten platzt bzgl. C++ Tuts zu allen möglichen Themen, kann man sich dann immer passend zum aktuellen Projekt ein bisschen neues Wissen aneignen und damit weitermachen.

    Von daher würde ich sagen das geht schon in Ordnung wenn du dazu bereit bist immer mal wieder was neues dazu zu lernen.
     
  7. 23. Juni 2009
    AW: "Richtige" Sprache für (Ex-)PHP'ler

    Ahja gut....

    Hm ich bin am schwanken.... Irgendwie glaub ich habe ich keine Lust auf "durch C kämpfen". Ich such noch eine "leichtere" Alternative^^.... Wobei ich Java viel leichter finde, laut meiner ersten "Tests".

    Übrigens Chilikid: So lernt man doch jede Sprache

    Ich wart mal noch auf andere Antworten....Vielleicht sagt wer noch was anderes.

    Noch eine Frage in den Raum:
    Ist Java oder Python schneller? Grundsätzlich meine ich, also nicht im Detail sondern in der Praxis. Weil ich lese mal dies, mal das. Ich habe selbst keine Erfahrung ich merke nur dass ich noch nie Probs mit Linux Python Programm hatte und oft schon Probleme mit nem Jasva Programm. Aber das kann ja auch am Programm liegen...
     
  8. 23. Juni 2009
    AW: "Richtige" Sprache für (Ex-)PHP'ler

    ANSI C oder C++

    bei JAVA kommt es halt drauf an ob du in PHP das ganze OOP-konzept verstanden hast. ein wenig mit klassen hantieren reicht meiner meinung nach ned für JAVA. eher OOP-javascript

    bleib bloß weg von .NET. am anfang isses mit sicherheit verlockend, weil du damit auf einfachste art und weiße applikationen fürn pc erstellen kannst, wie in php webseiten.

    der nachteil is halt, das dabei ned wirklich was rum kommt (vielleicht mit VC++), deine programme eher stümperhaft wirken und dank .NET nur auf windows-pc's laufen.

    bei C hingegen hast du den imsensen vorteil das du wärend dem programmieren viel tiefer in die funktionsweise des pc eintauchst. du lernst mit dem speicher umzugehen, kannst hardware nah und (wenn du ANSI C programmierst) ebenfalls auf allen systemen programmieren.

    aber im grunde isses egal ob C, C++ oder JAVA. dank PHP wirst du mit all den sprachen zurecht kommen, auch wenn du bei C teilweise sehr umdenken musst ( gleiche syntax != gleiches handling ).

    ----

    ich hab nach PHP und JavaScript mit JAVA und C angefangen (nicht C++), macht auf alle fälle spaß und bei C wirds noch ne weile dauern bis was bei rum kommt =)
     
  9. 23. Juni 2009
    AW: "Richtige" Sprache für (Ex-)PHP'ler

    Danke Murdoc,

    also an die ganze Microsoft gehe ich gar nicht erst!!! Das stinkt mir

    Ja das OOP Prinzip habe ich, denke ich schon verstanden (was macht ein Interface, Extenden, Singleton, usw). Also das sollte kein Thema sein.

    Hm scheint ja doch Richtung Java oder C zu gehen. Ich hätte mehr Stimmen zu Python erwartet. Scheint ja doch auch nicht so langsam zu sein für ne "Nicht-Compilierte" Sprache.

    PS: Wie der Speicher funktioniert und Hardwarenah zu bleiben interessiert mich NULL Ich will nur kleine bis mittlereTools programmieren und spiele überhaupt nicht mit dem Gedanken als Programmierer zu arbeiten. Auch wenn ich es derzeit mit PHP tue, möchte ich das alles nur als "Soft-Skill" nutzen.

    PPS: Ein Vorteil von Java + Python ist für mich die hohe Einsetzbarkeit im Server und GUI Bereich. 2 Fliegen mit 1 Klappe (Ich weiß dass das im Grunde jede Sprache kann)
     
  10. 24. Juni 2009
    AW: "Richtige" Sprache für (Ex-)PHP'ler

    wen du cool sein willst, nimm Ruby on Rails, das geht ab
    Ansonsten würde ich zu Java greifen, C++ stinkt.
     
  11. 24. Juni 2009
    AW: "Richtige" Sprache für (Ex-)PHP'ler

    Auch wenn du es ernst meinst, werte ich diesen Beitrag sicher nicht!
     
  12. 24. Juni 2009
    AW: "Richtige" Sprache für (Ex-)PHP'ler

    ja was den? wen du schon dinge wie die Menschenmenge die die einzelne Programmiersprachen beherrschen in deiner Bewertung mit einbeziehst, ist Ruby on Rails doch genau dein ding

    Naja okay, nimm Java die Sprache ist im gegensatz zu C++ nicht so super idiotisch komplex und die Fehlertoleranz sinkt enorm. Ansonsten bleib bei PHP, ich finde die Sprache super bequem.
     
  13. 24. Juni 2009
    AW: "Richtige" Sprache für (Ex-)PHP'ler

    Jetzt klingts schon besser. Mit Begründung kann man was mit anfangen!

    Ich spekuliere immernoch auf eine Compiliersprache. Ich denke irgendwie immer, Tools die nicht kompiliert sind, sind viel langsamer als Compilierte. Ich weiß zwar auch, dass es immer besser wird, aber irgendwie bleiben sie doch immer viel langsamer habe ich das Gefühl.
     
  14. 24. Juni 2009
    AW: "Richtige" Sprache für (Ex-)PHP'ler

    ich werd auch niemals mit c-programmierung mein geld verdienen, will ich auch garnet.
    java und vorallem scriptsprachen nehmen dir die ganze *******rbeit ab, deswegen denke ich, dass man für c/c++ einfach die richtige einstellung haben muss

    "ich will nicht wissen wie und wieso mein auto funktioniert, ich will fahren"

    da hast du recht, aber dann kannst du auch gleich bei PHP bleiben ^^

    python is btw auch ned grad die schnellste sprache für webprogrammierung. ich denke das py und php mit opcode-caches so ziemlich gleichschnell sind. mit java hingegen bist du auf der überholspur.

    hatte da mal nen benchmark gemacht, find den aber ned mehr ...
    ging um ne berechnung in ner schleife auf der konsole. php war ~18sek langsamer als java. (php war kompiliert mit bcompiler)
     
  15. 24. Juni 2009
    AW: "Richtige" Sprache für (Ex-)PHP'ler

    Hm Murdoc, das klingt schon interessant....

    Ja ich glaube C++ ist nicht so das richtige für mich. Geht zu tief und so tief will ich gar nicht gehen. Vielleicht später mal, aber erst mal nicht.
    Ganz so drastisch (Beispiel mit dem Auto) ist es auch nicht, aber Grundsätzlich brauch ich es ja auch nicht wissen für kleine Tools.

    Ist java wirklich so viel schneller? Manchmal lese ich, das Java wirklich viel schneller wäre, manchmal jedoch lese ich das sogar Python schneller wäre. Manchmal das beide relativ gleich schnell sind. Diese Benchmarks im Netz sind fast alle fürn *****
     
  16. 24. Juni 2009
    AW: "Richtige" Sprache für (Ex-)PHP'ler

    Also wenn es darum geht das du auch Serverbasierend schreiben kannst: Das kannst du mit nahezu jeder Sprache. Auch in C / C++ kannst du Webseiten schreiben (CGI ).
     
  17. 24. Juni 2009
    AW: "Richtige" Sprache für (Ex-)PHP'ler

    Aber wenn man das jetzt noch mal so liest, scheint C/C++ wirklich nichts für ihn zu sein, da man einfach auf zu viele Kleinigkeiten achten muss und das stört wenn man "einfach nur" 'nen kleines Programm schreiben will.

    Mit Python habe ich selber sehr gute Erfahrungen gemacht, es ist super einfach.

    Allerdings hast du ja gesagt du möchtest auch was mit GUI machen und da wird's dann auch kompliziert. Wenn man von den .NET Sprachen absieht, die in der IDE ja einen hervorragenden GUI-Editor haben, ist eigentlich alles Müll^^ Also heißt selber schreiben und das ist kompliziert und aufwendig.

    Java habe ich selber nur mal kurz ausprobiert, aber ich kann immerhin sagen, dass es dort in der NetBeans IDE ebenfalls einen guten GUI-Editor gibt. Anonsten zur Sprache selber wurde ja auch schon was gesagt.

    Trotzdem bittte nicht .NET nehmen, aber da hattest du dich ja auch sschon geäußert
     
  18. 24. Juni 2009
    AW: "Richtige" Sprache für (Ex-)PHP'ler

    Also GUIs in Python sind jetzt nicht so das Problem Es gibt wunderbare Toolkits wie wxPython oder PyGTK (sind halt Wrapper um die entsprechenden C-Librarys). Damit wird das GUI erstellen (fast) zum Kinderspiel. Und wer wirklich seine GUI zusammenklicken will, für den gibts wxGlade bzw. GLADE.

    Also mein Tipp geht auch klar Richtung Python . Fürs Hacking ideal, weil man mal schnell ein Script entwickeln kann. Und Webframeworks gibts auch genügend (Django, Pylons und und und)

    Achja: Ruby on Rails ist keine Scriptsprache, sondern eine Bibliothek. Und mich würde mal interessieren, wie man mit RoR eine GUI-Anwendung programmieren kann

    edit: Zur Performance:
    Also Python ist mindestens gleich schnell, normalerweiße sogar schneller, als Java. Hängt natürlich auch vom verwendeten Interpreter ab.
     
  19. 24. Juni 2009
    AW: "Richtige" Sprache für (Ex-)PHP'ler

    Die GUI Anwendungen habe ich auch schon gesehen und muss sagen, das sieht nicht so schwer aus.
    Auch Python Code sieht nicht besonders umfangreich und schwer aus.

    Performance habe ich auch schon einiges gelesen. Es gibt ja sogar C++ Konverter usw die das Script in C umschreiben um dann so zu kompilieren. Muss man denke ich alles ausprobieren.

    Ich glaube ich werde mal Python antesten. Vielleicht aber auch Java. Mal sehen was kommt. Die anderen Sprachen sind aus dem Rennen^^.

    Ich lass aber mal offen, vielleicht fällt jemandem noch was konstruktives ein.
     
  20. 24. Juni 2009
    AW: "Richtige" Sprache für (Ex-)PHP'ler

    Hallo
    Also ich kann dir Python nur empfehlen jetzt kommt das ABER.
    ABER wenn du Hacker-Toolz erstellen willst wird es ziemlich schwierig weil
    1. Es nur sehr wenig Anleitungen darüber gibt wo es z.b. in C++ Dutzende gibt
    d.h. nicht es gibt keine man muss eventuell nur länger suchen^^
    2. Python (bin noch ziemlich in den Anfängen von Python also bitte jetzt nicht zusammenschlagen) kann nicht so tief ins System eingreifen wie z.B C++

    Nur eine kleine Randnotiz von mir ^^

    Greezz

    Z3R0 PO!nt
     
  21. 24. Juni 2009
    AW: "Richtige" Sprache für (Ex-)PHP'ler

    Naja, kommt immer drauf an was man unter "Hackertools" versteht Wenn du vorhast, Rootkits oder sowas zu programmieren, dann kannst du mit Python natürlich nix anfangen. Aber für alles andere (Exploits, kleine Tools zum automatisieren, Autohacker etc.) kann man damit natürlich sehr leicht erstellen.

    Und zu den Tutorials: Das stimmt meiner Meinung nach nicht Es gibt zu jeder Pythonlib eine mehr als ausreichende Dokumentation, man muss nur suchen.
     
  22. 24. Juni 2009
    AW: "Richtige" Sprache für (Ex-)PHP'ler

    das ist das entscheidende -> nimm python... nimm es... schnelleres und saubereres programmieren geht nicht. viele c-libs wurden nach python portiert, dementsprechend kannst du (eingeschränkt) auch die c doku nehmen, wenn es keine vernünftige doku für die python lib gibt (war in meiner praxis noch nicht der fall)

    wie pyro es aber angedeutet hat kommt es wirklich darauf an, was du mit "hackertools" meinst...
     
  23. 24. Juni 2009
    AW: "Richtige" Sprache für (Ex-)PHP'ler

    (etwas offtopic)
    a propos schlechte dokumentationen, kennt jemand eine für mechanize, bin noch nicht fündig geworden.
     
  24. 24. Juni 2009
    AW: "Richtige" Sprache für (Ex-)PHP'ler

    Also ich weiß, dass Python nicht ins System eingreifen kann.

    Rootkits o.Ä. meine ich nicht. Ich meinte wie es Pyro schon sagt Bruter, Cracker, Crypter, Logger. Also Tools die Exploits ausführen usw und keine Exploits an sich.

    Ich bin mir nun sicher, dass ich Python nehme! Java können zu viele und bietet mir nicht ganz das was ich will. NICHT GANZ^^
     
  25. 24. Juni 2009
    AW: "Richtige" Sprache für (Ex-)PHP'ler

    öm... mir haben die beispiele hier gereicht um seiten zu laden:
    mechanize
    bzw.
    mechanize — Documentation

    die struktur kann man dann am besten mit beautifulSoup durchsuchen!
     
  26. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.