Programmieren lernen - Wechle Programmieresprache eignet sich für Anfänger am besten?

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Programmieren lernen - Wechle Programmieresprache eignet sich für Anfänger am besten?

    Anzeige
    Hallo liebes Lets Play Forum!

    Da mich sehr viele Menschen im Forum, als auch Internetbekanntschaften dazu motiviert haben zu Programmieren, habe ich mich dazu entschlossen Programmieren zu lernen. Ich stelle mir Programmieren auf keinen Fall einfach vor, in Gegenteil. Ich bewunder die Meschen die das können. Leider habe ich keine Vorkenntnisse mir irgendwelchen Programmier sprachen oder sonstiges. Ich möchte beim Programmieren mehr in richtung "AVI" gehen. Ich weiß leider nicht wie diese Programmiersprache heißt, oder ob sie vielleicht auch "AVI" heißt. Aber ich meine mal gehört zu haben, das wenn man eine Programmiersprache beherschen tut, kann man so gut wie jede. Ob das wohl stimmt.

    Das ich geneu diese Programmiersprache lernen möchte hat einen Hintergrund: Ich möchte mich soweit hocharbeiten, bis ich diese Programmiersprache (vorausgesetzt das es die richtige Programmieresprache dafür ist) beherschen tu, mir dann ein Team zusammensuche, die diese auch beherschen, und dann ein Videoschnittprogramm Programmieren tue, was alle wichtigen Punkte beachten tut. Ich weiß, vielleicht nehme ich mir da etwas viel vor, doch man kann Ziele haben. Und vielleicht funktioniert es ja doch in ein paar Jahren, was ich natürlich hoffen will.

    Hier jetzt die Frage(n):
    1. Welche Programmieresprache muss ich lernen, um in diese richtung zu gehen, was ich mal erreichen will?
    2. Ist es möglich, sich das Programmieren selbst bei zu bringen, ohne vorher Studieren zu müssen?
    3. Welche voraussetztungen braucht man überhaupt, um Programmieren zu können?
    Ich hoffe, ihr unterstützt mich bei der Sache ein bisschen, und schreibt nicht irgendwie sowas wie: "Kannst du vergessen, viel zu schwer!" oder sonstiges. Natürlich wird es am Anfang schwer, aber ich glaube heut zu Tag ist nichts mehr unmöglich. Wenn ich mich da reinfitzen tu, wird das glaube ich kein Problem. Die erste Zeit ja, aber dann, wenn ich es einigermaßen kann, nein. Vermute ich mal. Auf jeden Fall hoffe ich, dass ihr mir da ein paar Tipps geben könnt.

    MfG Malzzi
    "Lasst es heute Abend so richtig krachen, frohes neues Jahr euch allen!"

    Besuche mich doch mal auf meinem YouTube Kanal.
    Kritik und Verbesserungsvorschläge sind gerne gesehen.
    ----------------------------------------------------



  • MalzziLP schrieb:

    Welche voraussetztungen braucht man überhaupt, um Programmieren zu können?


    Gute Mathematik und abstraktes Denken. Die meisten scheitern wenns an eine objektorientierte Programmiersprache geht. Sprich statt Pascal, dinge wie Java, C usw.

    In der Schule hatten wir mit Pascal angefangen und die konnt ich auch noch, dann kam java und das objektorientierte hinzu, ab da wurds seeeehr hart, bis ich aufgegeben hatte.

    AVI ? Das isn Videocontainer und hat rein gar nichts mit "Programmiersprache" zu tun.

    Videoschnittprogramm? Naja das wird EXTREM SCHWER. Erstrecht als alleinige Person. Und da solltest du zumindest erstmal Grundkenntnisse in Videotechnik mitbringen.
    Aktuelle Projekte/Videos




    Seit etlichen Monaten komplett veraltete Signatur, wie ihr sicherlich schon bemerkt habt. Habe mittlerweile mehr als 4 Projekte, weshalb die Signatur leider momentan gesprengt ist xD
    Notdürftig die Liste was aktuell läuft: Unreal | Complex DooM (LPT) | DooM 2016 | Need For Speed III: Hot Pursuit | Dirt Rally | Dirt 4 | WRC 7
  • Was wäre den so die Programmieresprache, die heut zu Tage sehr oft verwendet werden? Mir würde da eigentlich Java einfallen. C, naja, ich weiß nicht. Eingentlich kann ich nichts dazu sagen. Was würde sich den lohnen zu lernen? Java, oder C/C++? Ich weiß nicht, ich will unbedingt Programmieren lernen bzw. es probieren zu lehrnen.
    "Lasst es heute Abend so richtig krachen, frohes neues Jahr euch allen!"

    Besuche mich doch mal auf meinem YouTube Kanal.
    Kritik und Verbesserungsvorschläge sind gerne gesehen.
    ----------------------------------------------------



  • Anzeige
    Ist immer ein persönliches Empfinden wie man syntaktisch damit zurecht kommt. Mir persönlich liegt C# mehr als Java, aber das muss jeder selbst wissen.
    Ganz ehrlich? Für Java gibt es das Buch "Java für Dummies". Es sind zwar auch da ein paar nicht ganz korrekte Dinge drin, aber ich meine dort ist der Sinn der Objektorientierten Programmierung recht gut verdeutlicht wenn man zuvor garnichts mit dieser Materie zu tun hatte.

    C# hat gegenüber C++ den Vorteil das es viele Sachen in C# gibt, die in C++ deutlich komplexer umgesetzt werden müssen (Aussage meines Chefs mit 20 Jahren Erfahrung). Das macht C++ aber nicht schlechter.

    JEDE Programmiersprache, naja mit wenigen Ausnahmen, hat ihren Anwendungsbereich und auch ihre Daseinsberechtigung
  • Was C++ und C# angeht:
    - C++ >> Hardwarenahe oder Performante Dinge (Treiber, Betriebssystem, 3D-Engines usw)
    - C# >> Alles andere (normale Anwendungen, Tools usw)

    Vorteil: C# nimmt einem sehr viel Arbeit ab, das kostet jedoch Performance, in C++ macht man alles "per Hand", das ist schneller und effizienter.

    Nachteil: In C++ muss man "jeden" Sch... selber machen, in C# "vergisst" man zB. einfach Speicher freizugeben weil das macht der Garbage-Collector automatisch (kostet natürlich Performance), vergisst man in C++ wieder Speicher freizugeben hat man direkt ein Memory-Leak geschaffen was den RAM frisst bis er alle ist...

    Weiterer Nachteil: C++ hat keine Prüfung ob man in eine Variable auch wirklich das reinpackt was rein gehört, prüft man das nicht selber, hat man zB. einen Buffer-Overflow und evtl. könnte jemand Schadcode ausführen, in C# wird das geprüft und das Programm stürzt mit einer Fehlermeldung ab (oder wenn man es per Try-Catch fängt kann man selber drauf reagieren).
    ——YouTube————————————————————————————————————————————
    — Endlos-Projekte: Minecraft (SinglePlayer), Craft The World, Banished, Besiege, Sims4
    — ..Abgeschlossen: Leisure Suit Larry 6+7, Dishonored, Surface 2+3, Mirrors Edge, uvm
    — . Kurz- Projekte: The Tower, Fighting Is Magic, Euro Truck Simulator 2, uvm
    — ......Retro-Ecke: Day Of The Tentacle, Flight Of The Amazon Queen, NFS: HP2, uvm
    ————————————————————————————————————————————TbMzockt.de—
  • MalzziLP schrieb:

    Ich möchte beim Programmieren mehr in richtung "AVI" gehen. Ich weiß leider nicht wie diese Programmiersprache heißt, oder ob sie vielleicht auch "AVI" heißt.
    AVI kenne ich jetzt nur als Audio Video Interleave - ein Containerformat für Audio- und Video. Hat mit einer Programmiersprache erstmal nichts am Hut bzw. du kannst mit wahrscheinlich jeder gängigen Sprache "irgendwas" mit AVI-Dateien machen.

    MalzziLP schrieb:

    Aber ich meine mal gehört zu haben, das wenn man eine Programmiersprache beherschen tut, kann man so gut wie jede. Ob das wohl stimmt.
    Den Satz ließt man in der Tat oft und ganz unwahr ist er nicht. Viele Paradigmen und Konzepte findest du in mehreren Sprachen, die dir dann schon vertraut vorkommen. Und das abstrakt-logische Grundverständnis, was du beim Programmieren eigentlich immer benötigst, bringst du dann auch schon mit. Dir wird dann jedenfalls das Einarbeiten leichter fallen.

    MalzziLP schrieb:

    Welche Programmieresprache muss ich lernen, um in diese richtung zu gehen, was ich mal erreichen will?
    Ich denke, die Antwort "irgendeine" ist wohl nicht falsch. Würde an deiner Stelle eine nehmen, die als leicht erlernbar gilt - Java, C#, Python wären alle 3 gute "Allrounder" und lassen sich für vieles nutzen. Vom Bauchgefühl her würde ich C# nehmen :P

    MalzziLP schrieb:

    Ist es möglich, sich das Programmieren selbst bei zu bringen, ohne vorher Studieren zu müssen?
    Ja.

    MalzziLP schrieb:

    Welche voraussetztungen braucht man überhaupt, um Programmieren zu können?
    Spaß am logischen & abstrakten Denken, Neugierde, Eigeninitiative, ne gewisse Frustrationstoleranz und Geduld. Und dass man die Seite Stackoverflow kennt :D
    Videoempfehlungen:
    ShimmyMC
    NuRap
    ShimmyMC
    Napoleon Bonaparte

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von RealLiVe ()

  • Im Prinzip unterscheiden sich die weit verbreiteten Sprachen nicht groß voneinander.

    Ich behaupte, dass es für jemanden, der C++, C#, Pascal oder Java beherrscht, kein großer Schritt ist, in einer der anderen Sprachen zu programmieren. Die Grundkonzepte sind da überall gleich, der Unterschied besteht lediglich in Feinheiten. Und in den API-Dokumentationen sucht man sich eh immer nen Wolf! :D

    Insofern würde ich das davon abhängig machen, was dein vorrangiges Zielgebiet ist; willst du eher Software, die auf möglichst vielen verschiedenen Systemen laufen soll -> Java. Windows-Programmierung -> C#.

    Beim Programmieren ist auch weniger die Fähigkeit des Programmierens und des Beherrschens der Sprache selbst wichtig, als das strukturelle Denken.

    TbMzockt schrieb:

    Nachteil: In C++ muss man "jeden" Sch... selber machen


    Was aber für den Lerneffekt nicht schlecht ist. :) Hilft schon ungemein, wenn du dich mit deinem Programm so intensiv auseinandersetzen musst, was es da im Detail macht. Wenn du bspw. deinen eigenen Memory-Manager programmierst, um rauszufinden, wo dieses verf... Speicherleck steckt, das dafür sorgt, dass dein Programm nach einer Stunde das RAM leergesaugt hat.
    "Es wird Tote geben." Ein Rechtschreibfehler, der dazu führte, dass damals niemand zu meinem 8. Geburtstag gekommen ist.

    YouTube: huuemei
  • Also bei C++ und Java würde ich jetzt nicht mehr nur von Feinheiten reden.

    Einen C++-Programmierer wird Java in den Selbstmord treiben, weil er es gewohnt ist, triviale Dinge wie das Kopieren eines Rechtecks mit einer Zeile Code zu erledigen, Objekte mit const vor ungewollten Schreizugriffen schützt und er beim besten Willen nicht verstehen kann, welche Daseinsberechtigung Wrapper-Klassen haben.

    Ein Java-Programmierer wird anfangs nicht wissen, was ein Pointer ist, warum RAII so toll ist, was ein Destruktor überhaupt ist, wie man das Diamond-Problem löst, was das überhaupt ist, wie Templates funktionieren (abgesehen von dem bisschen, was man auch mit Java-Generics hinbekommt), warum es keine AbstractSingletonProxyFactoryBean gibt und warum das 90er Jahre-Dogma "machen wir einfach alles objektorientiert" vielleicht nicht immer das Mittel der Wahl ist.

    Ich hatte damals™ mit PHP und Delphi/FreePascal angefangen, C++ - also richtiges C++ und nicht nur Pascal mit anderer Syntax - war da schon eine große Hürde.

    Ich weiß auch nicht, warum jedem Anfänger grundsätzlich geraten wird, zuerst Java zu lernen. Java verdirbt den Stil. Java ist voller Designfehler ("Warum funktioniert new T() in meiner Generic-Methode nicht?"), Java ist auch nicht einfach zu lernen, weil diverse Konzepte das Gegenteil von Intuitiv sind ("Warum brauche ich new für ein Rechteck?", "Wie kopiere ich nun mein Rechteck?", "Warum kann ich kein Array<int> machen?", "Warum ist Integer(5) == Integer(5), aber Integer(321619684) != Integer(321619684)?", "Warum lassen sich diese sch!$%&§ß Wrapper-Klassen überhaupt vergleichen, wenn man sie ohnehin nicht direkt nutzen soll?").
    Java ist der Teufel in Person. Binde dich nicht an den Teufel.


    That said, um schnell irgendwas auf die Beine zu stellen, nehme ich gerne Python (wirklich einfach zu lernen, hat aber eigene Probleme), und unter Windows kann man über C# nachdenken, v.a. wenn man möglichst einfachen Zugriff auf einen Haufen Betriebssystem-Funktionen braucht.
    C++ kann man immer noch nachholen, das wäre mir persönlich am Anfang doch zu viel auf einmal.

    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von VikingGe ()

  • Ich habe im Rahmen des Studiums erst C und dann Java gelernt, vorher hatte ich eigentlich keinen Kontakt zu irgendwelchen Progammiersprachen. C war und ist für mich immer noch ziemlich schwer, wurde im Rahmen des Studiums aber auch nicht weiter benötigt. Ich selbst konnte mich mit Java eigentlich ganz gut anfreunden, in Zusammenhang mit einigen Spielen (Space Engineers zb) kam ich dann langsam mit Javascript und C# klar. Als letztes Projekt hab ich, mithilfe eines Frameworks, einen Software- und Hardware-Renderer in C++ geschrieben, wobei dort die meisten C++ Speichergeschichten über das Framework übernommen worden sind.
    Also ich kann eigentlich eine objektorientierte Sprache, zb. Java, nur empfehlen.
    Let's Play, Gameplay, Review - Indie, Action, VR - Und alles ohne exzessivem Gebrülle und Geschreie!
    Der Channel für die entspannten Leute :)
    Youtube-Channel: Brainfuck Gaming - AtlantisThief
  • MalzziLP schrieb:

    Aber ich meine mal gehört zu haben, das wenn man eine Programmiersprache beherschen tut, kann man so gut wie jede.

    Das ist insofern korrekt, als dass es in der Regel einfacher wird, weitere Programmiersprachen zu lernen, wenn man eine kann. Das liegt daran, dass die meisten Sprachen irgendwo etwas gemein haben und einem dann das dann schon bekannt ist.

    MalzziLP schrieb:

    Ich möchte mich soweit hocharbeiten, bis ich diese Programmiersprache (vorausgesetzt das es die richtige Programmieresprache dafür ist) beherschen tu, mir dann ein Team zusammensuche, die diese auch beherschen, und dann ein Videoschnittprogramm Programmieren tue, was alle wichtigen Punkte beachten tut

    Das ist ein sehr hoch gestecktes Ziel. Eine brauchbare NLE ist ein größeres Projekt, was neben guten Programmierern unbedingt auch eine sehr gute Planung benötigt, weil es sonst Gefahr läuft, aufgrund der schieren Größe im Sande zu verlaufen.

    MalzziLP schrieb:

    Welche Programmieresprache muss ich lernen, um in diese richtung zu gehen, was ich mal erreichen will?

    Wie es bereits geschrieben wurde: "Avi" ist ein Containerformat, also im Endeffekt eine Art und Weise, wie man mehrere Videospuren und Soundspuren in einer Datei speichern kann. Mit dem Programmieren hat das praktisch nichts zu tun. Eine Avi zu programmieren ist daher nicht möglich, was aber geht, ist, eine Avi via Programm zu schreiben und ein Video auf die Art und Weise zu speichern. ;)

    MalzziLP schrieb:

    Ist es möglich, sich das Programmieren selbst bei zu bringen, ohne vorher Studieren zu müssen?

    Ja.
    Ich habe damals in einem Zusatzkurs in meiner Schule das (uralte) VB5 gelernt.
    Unser Lehrer hat uns aber im Endeffekt nur zwei Dinge gezeigt:
    1. Die absoluten Grundlagen und einen kleinen Einblick, wie Programmieren überhaupt funktioniert.
    2. Wo wir im Internet die Infos, die wir brauchen, um die gestellten Aufgaben zu lösen, finden können, also im Endeffekt wie man sich weiterbilden kann und dazulernen kann.
    Das war auch schon das, was er uns gezeigt hat. Alles andere haben wir uns durch Suchen und Probieren selbst herausgefunden.

    Ganz im Gegenteil: Im Studium durfte ich bisher auch einen Programmierkurs belegen (zwangsweise), und der war zu 90 % einfach Mist. Ob er den Neulingen geholfen hat, weiß ich nicht, aber für mich als erfahrener Programmierer sah das nach ganz großem Mist aus.
    Unser Lehrer hat uns damals bei VB5 als erstes gezeigt, wie man debuggt (also seinen Code schrittweise durchlaufen lassen kann, um Fehler zu finden), das konnten die am Ende des (zwei Semester umfassenden) Kurses noch nicht. Die haben dann auf gut Glück Fehlersuche gemacht. Sowas hab ich in meinem ganzen Leben noch nicht erlebt. :|

    MalzziLP schrieb:

    Welche voraussetztungen braucht man überhaupt, um Programmieren zu können?

    Man muss denken können.

    TbMzockt schrieb:

    C# nimmt einem sehr viel Arbeit ab, das kostet jedoch Performance

    Ich hab vor einiger Zeit mal gehört, dass es wohl demnächst einen Compiler geben soll, der C# so kompiliert, dass das fertige Programm ohne .NET-Framework ausgeführt werden kann. Würde das nicht einen deutlichen Leistungsschub bedeuten?

    VikingGe schrieb:

    Java ist der Teufel in Person.

    HEIRATE MICH, DU LUDER, DU! :love:

    ---

    Ich habe mittlerweile einige Programmiersprachen mehr oder weniger gut anreißen können:
    C#, C, C++ (managed und unmanaged), Objective C (für Apple-Produkte), Java, PHP, VB5, VB.NET und noch ein paar mehr.
    Ich war damals relativ froh, dass ich mit VB5 angefangen habe, mittlerweile würde ich aber vermutlich VB.NET oder C# im Visual Studio versuchen.

    Mit Java würde ich nicht anfangen, das liegt aber zum Großteil vermutlich einfach daran, dass die das in der Schule auf eine Art und Weise unterrichtet haben, die sämtliche interessierten Kinder zu absoluten Programmierhassern erzieht. Der Informatik-Lehrplan ist in bayrischen Gymnasien absolut fürn Arsch.

    ---

    Wenn du deine Programmiersprache wirklich schon mit dem Ziel, eine NLE (= Videoschnittprogramm) zu bauen, auswählen willst, wäre es noch ganz nützlich, ein paar Infos zu haben, wie du dir diese NLE vorstellst. Das könnte dann dazu führen, dass sich die ein oder andere Sprache etwas mehr anbietet.
    You like music? I like pissing.
    ~Corey Taylor

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Strohi ()

  • VikingGe schrieb:

    Also bei C++ und Java würde ich jetzt nicht mehr nur von Feinheiten reden.

    Einen C++-Programmierer wird Java in den Selbstmord treiben, weil er es gewohnt ist, triviale Dinge wie das Kopieren eines Rechtecks mit einer Zeile Code zu erledigen, Objekte mit const vor ungewollten Schreizugriffen schützt und er beim besten Willen nicht verstehen kann, welche Daseinsberechtigung Wrapper-Klassen haben.

    Ein Java-Programmierer wird anfangs nicht wissen, was ein Pointer ist, warum RAII so toll ist, was ein Destruktor überhaupt ist, wie man das Diamond-Problem löst, was das überhaupt ist, wie Templates funktionieren (abgesehen von dem bisschen, was man auch mit Java-Generics hinbekommt), warum es keine AbstractSingletonProxyFactoryBean gibt und warum das 90er Jahre-Dogma "machen wir einfach alles objektorientiert" vielleicht nicht immer das Mittel der Wahl ist.

    Ich hatte damals™ mit PHP und Delphi/FreePascal angefangen, C++ - also richtiges C++ und nicht nur Pascal mit anderer Syntax - war da schon eine große Hürde.

    Ich weiß auch nicht, warum jedem Anfänger grundsätzlich geraten wird, zuerst Java zu lernen. Java verdirbt den Stil. Java ist voller Designfehler ("Warum funktioniert new T() in meiner Generic-Methode nicht?"), Java ist auch nicht einfach zu lernen, weil diverse Konzepte das Gegenteil von Intuitiv sind ("Warum brauche ich new für ein Rechteck?", "Wie kopiere ich nun mein Rechteck?", "Warum kann ich kein Array<int> machen?", "Warum ist Integer(5) == Integer(5), aber Integer(321619684) != Integer(321619684)?", "Warum lassen sich diese sch!$%&§ß Wrapper-Klassen überhaupt vergleichen, wenn man sie ohnehin nicht direkt nutzen soll?").
    Java ist der Teufel in Person. Binde dich nicht an den Teufel.


    That said, um schnell irgendwas auf die Beine zu stellen, nehme ich gerne Python (wirklich einfach zu lernen, hat aber eigene Probleme), und unter Windows kann man über C# nachdenken, v.a. wenn man möglichst einfachen Zugriff auf einen Haufen Betriebssystem-Funktionen braucht.
    C++ kann man immer noch nachholen, das wäre mir persönlich am Anfang doch zu viel auf einmal.
    hach ja delphi... Den Spaß dürfen wir auch machen weil unsere info Lehrerin es nicht einsieht, was neues zu lernen :D ihre notizblätter sind mindestens 15 Jahre alt :D
  • Erstmal zu deinen Fragen:

    MalzziLP schrieb:

    Welche Programmieresprache muss ich lernen, um in diese richtung zu gehen, was ich mal erreichen will?

    Assembler. Geht immer.

    Spaß beiseite: Lern einen C-Dialekt. C/C++ sind sehr Hardwarenah und daher nie verkehrt, wenn man irgendwas Verrücktes machen möchte, Java/C# sind sehr Multiplattformorientiert und können all den anderen Spaß sehr gut, der auch verrückt ist. Das tolle ist: Alle lesen sich gleich[citation needed] (oder zumindest ähnlich) und es ist relativ leicht[citation needed] eine der jeweils anderen Sprachen zu verstehen, wenn man bereits eine andere kennt.

    MalzziLP schrieb:

    Ist es möglich, sich das Programmieren selbst bei zu bringen, ohne vorher Studieren zu müssen?

    Ja, das geht. Allerdings leidet meistens der Stil darunter, wenn man es sich selbst beibringt. Trotzdem: Es geht. Es geht sogar sehr gut. Es gibt für viele Sprachen genug An- und Einleitungen in diversen Sprachen (natürlich vorwiegend Englisch aber auch oft auf deutsch) und es gibt natürlich auch Communities, die schon eine Menge von Fragen abgeklappert haben.

    MalzziLP schrieb:

    Welche voraussetztungen braucht man überhaupt, um Programmieren zu können?

    Logisches Denken, Spaß an der Arbeit mit Computern und Durchhaltevermögen bei der Fehlersuche. Aber auch:

    De-M-oN schrieb:

    Gute Mathematik und abstraktes Denken.

    Gute Mathematik... kommt für mich aufs Thema an. Je nachdem was ich machen möchte. Aber abstraktes Denken definitiv.

    De-M-oN schrieb:

    AVI ? Das isn Videocontainer und hat rein gar nichts mit "Programmiersprache" zu tun.

    Das war auch mein erster Gedanke. Was genau meinst du mit AVI?

    VikingGe schrieb:

    Einen C++-Programmierer wird Java in den Selbstmord treiben, weil er es gewohnt ist, triviale Dinge wie das Kopieren eines Rechtecks mit einer Zeile Code zu erledigen, Objekte mit const vor ungewollten Schreizugriffen schützt und er beim besten Willen nicht verstehen kann, welche Daseinsberechtigung Wrapper-Klassen haben.

    Ich hasse Java. Sorry, ist etwas OffTopic. Aber ich bin C++/C# Programmierer und das musste mal raus.

    VikingGe schrieb:

    Ein Java-Programmierer wird anfangs nicht wissen, was ein Pointer ist

    Nullpointerexception? Pointer gibt es durchaus, sie werden allerdings nicht direkt verwendet. Ein Pointer in Java wird von der VM gesetzt und nicht vom Programmierer. Aber die Fehler können genauso böse sein.

    VikingGe schrieb:

    warum das 90er Jahre-Dogma "machen wir einfach alles objektorientiert" vielleicht nicht immer das Mittel der Wahl ist.

    Ach, ich mag das Dogma, allerdings nur, wenn man es durchzieht. Wenn man OOP mit goto und The Blob kombiniert, dann kann man auch gleich rein imperial arbeiten.

    VikingGe schrieb:

    Ich weiß auch nicht, warum jedem Anfänger grundsätzlich geraten wird, zuerst Java zu lernen. Java verdirbt den Stil.

    Ich hatte Java im Abitur. Es wird aus irgendeinem Grund als "lernenswert angesehen" (wahrscheinlich deswegen: Bild). Es ist ja nicht so, als würde es nicht auch gerade in Businessanwendungen oder in der Webentwicklung verwendet werden, aber das macht die Sprache trotzdem nicht besser. Zu sagen "Java ist am Besten, weil es auf vielen Plattformen läuft" ist wie als würde man sagen "Analverkehr ist am Besten, weil es mit jedem funktioniert".

    VikingGe schrieb:

    Java ist der Teufel in Person. Binde dich nicht an den Teufel.

    Das ist in meiner Signatur gelandet. :)

    TimBourbon schrieb:

    hach ja delphi... Den Spaß dürfen wir auch machen weil unsere info Lehrerin es nicht einsieht, was neues zu lernen ihre notizblätter sind mindestens 15 Jahre alt

    Du meinst Object Pascal? Ich musste stattdessen Java lernen, das wird wenigstens noch weiterentwickelt. Delphi existiert nur noch, weil es gelehrt wird, nicht, weil es wichtig für die Softwareentwicklung ist.


    EDIT:
    Weil hier ja mehrmals C# und C++ verglichen wurde, wenn es um das Thema Performance geht, hab ich hier mal einen ausführlichen Benchmark rausgesucht. Der ist zwar schon ein wenig älter, aber das heißt eigentlich nur, dass C# und C++ schneller geworden sind. Inzwischen würde ich fast so weit gehen, dass C# und C++ die gleiche Geschwindigkeit erreichen. Leider wurden aber manche Bereiche, (wie Windows Forms) nicht weiterentwickelt. Ich hoffe, dass Xamarin da mit Mono ein wenig hinterher ist.

    codeproject.com/Articles/21285…d-benchmark-Csharp-vs-NET
    Grüße, GLaDOS

    "Do you know who I am? I'm the man whose gonna burn your house down - with the lemons! I'm gonna get my engineers to invent a combustible lemon that'll burn your house down!" - Cave Johnson, CEO of Aperture Science

    YouTube: Max Play

    Rechtschreibung und Grammatik sind eine Tugend, aber jeder macht mal Fehler...

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von GLaDOS ()

  • GelberDrache92 schrieb:

    Entweder gleich richtig mit C++ anfangen oder mit C#


    Unterscheiden sich kaum von ihrer Syntax und Befehlen. Wenn man das eine kann, so kann man oft das andere schon. Eventuell das nur ein paar neue Dinge mit dabei sind auf die man dann achten muss.

    AVISynth z.B. baut von seiner Syntax her stark auf der Programmiersprache C oder Basic auf. Sprich es sind viele Sachen zu finden auf dies das deutet.

    MalzziLP schrieb:

    Ist es möglich, sich das Programmieren selbst bei zu bringen, ohne vorher Studieren zu müssen?


    Ist es in der Tat. Es gibt zig Webseiten und Programmieroberflächen die einen da helfen.
    Jedoch sollte man bedenken... Hilfe ist zwars schön, jedoch sollte man seine eigenen Gedanken und Ideen entsprechend effektiv umsetzen können.
    Sprich... wenn es vorgefertigte Funktionen gibt im Netz die deine Aufgaben entsprechend erfüllen, so kann man diese nutzen. Weil man muss ja nicht alles zwei mal erfinden. Jedoch für das eigentliche Hauptproblem deines Programmes musst du selbst wissen wie du vorgehen möchtest.

    MalzziLP schrieb:

    Welche voraussetztungen braucht man überhaupt, um Programmieren zu können?


    Mathematik je nach Anwendungszweck sollte entsprechend vorhanden sein. Du wirst dich nicht mit Vektorenrechnung beschäftigen müssen, um eine GUI entwickeln zu wollen die irgendwas erstellen soll.

    Vektorenrechnung, Strahlensätze und alle sonstigen Rechnungen mit räumlichen und flächenhaltigen Formen brauchst du nur bei 2D oder 3D Grafikerstellung.

    Außerdem musst du deine Programme entsprechend selbst und dann am besten von dritten noch mal testen lassen um Fehler oder Komplikationen entsprechend beheben zu können.

    Zudem wäre noch angebracht seine Quellcodes gut geordnet und kommentiert zu haben, damit andere später damit eventuell auch wieder ansetzen können. Sehr wichtig bei Teamarbeiten z.B.
    (Hust... ich weiß das mein SSM Quellcode das reinste Chaos ist. @OverDev und @Strohi sind da denk ich schon fast verzweifelt xD)

    MalzziLP schrieb:

    Leider habe ich keine Vorkenntnisse mir irgendwelchen Programmier sprachen oder sonstiges.


    MalzziLP schrieb:

    Das ich geneu diese Programmiersprache lernen möchte hat einen Hintergrund: Ich möchte mich soweit hocharbeiten, bis ich diese Programmiersprache (vorausgesetzt das es die richtige Programmieresprache dafür ist) beherschen tu, mir dann ein Team zusammensuche, die diese auch beherschen, und dann ein Videoschnittprogramm Programmieren tue, was alle wichtigen Punkte beachten tut. Ich weiß, vielleicht nehme ich mir da etwas viel vor, doch man kann Ziele haben. Und vielleicht funktioniert es ja doch in ein paar Jahren, was ich natürlich hoffen will.


    Das eine beißt sich leider mit dem anderem. Du hast bis jetzt rein 0 Ahnung. Weder Videotechnischen noch Programmiertechnischen Hintergrund sind vorhanden. Eine sehr brache Basis für so ein Ziel.

    Ich schlage dir eventuell erst mal vor dich mit einer Programmiersprache vertraut zu machen.
    Suche dir am besten eine aus die dir zusagt. Wenn du mit C++ anfängst z.B. biste auf den richtigen Weg. Am besten ist es immer mit einer Sprache anzufangen wo man viel beachten muss, um daraus den Lerneffekt zu bekommen.

    Programmiersprachen wie Basic in Form von QBasic oder Visual Basic usw. sind Sachen die für Anfänger und Einsteiger sehr leicht sind. Damit kommt man schon mit ein paar kleinen Quellcodes zu einem brauchbaren kleinen Tool. Diese Sprachen sind deshalb für Anfänger, da sie nicht sonderlich explizite Einhaltung von Datentypen achten den Variablen nutzen.

    Bei C oder C++ wirst du alles deklarieren müssen und musst somit eine explizite Ordnung einhalten.

    Mit was man halt anfängt hängt von jedem selbst ab wie und ob es ihm liegt. Wirst auch feststellen das C oder C++ Quellcode sich von Basic Quellcode sich sehr ähneln können. Weshalb man vieles auch entsprechend in andere Sprachen umschreiben kann, wenn man das möchte und kann.

    GelberDrache92 schrieb:

    Entweder gleich richtig mit C++ anfangen oder mit C#


    C++ ist ohnehin überall, weil es einfach Maschienennahe und effizient auch ist. C# hat genauso viel Ansehen was das angeht.
    Vor allem die Sprache Pyton habe ich schon oft von Firmen gesehen die das verlangt haben.

    Das Programm Blender z.B. baut auf eine Pyton Sprache auf.

    Für das Quick & Dirty Programming für den Einsteiger wäre vermutlich eine Basicsprache angebracht.
    Wie gesagt... kommt drauf an was man machen möchte.
    Ich z.B. schreibe gern wenn ich wirklich Langeweile habe und kein konkreten Plan zur Umsetzung habe erst mal ein Programm in Basic.

    Wenn ich aber ein Plan mache und genau weiß wie ich wo was hinsetzen muss und auch weiß wie es hinterher arbeiten soll, dann verwende ich genauso C++ wie die meisten auch.

    Das der SSM bei mir nicht in C++ geschrieben ist, liegt z.B. daran das das Konzept Planlos entstanden ist. Mit der Grundbasis die De-M-oN für sein Descent haben wollte um Video-Schnipsel zusammenfügen zu lassen. Und dann kam es ja mit: "Kannst du nicht noch dies und jenes einfügen" und "Das kann man noch ändern und korrigieren" und und und.
    Daher sieht auch mein SSM Quellcode entsprechend... Quick & Dirty aus. Weshalb es eben in Basic landete xD


    @MalzziLP
    Nochmal um auf deinen Startpost einzugehen... Du hast dir ein zu hohes Ziel gesetzt bei etwas wo noch keine Basis hast irgendwo.

    Ich will jetzt nicht sagen das du das Ziel nicht erreichen kannst, jedoch kann ich mir gut vorstellen das du dieses Ziel schnell verwerfen wirst.
    Gerade eine NLE zu programmieren ist echt schwer und das können nicht mal unsere Teilnehmer hier in deinem Thread die dir schon geschrieben haben. Und jeder von ihnen hat Ahnung von Programmieren irgendwo. Der eine mehr, der andere weniger.

    Ich würde dir den Rat geben sich mit einer Programmiersprache deiner Wahl einmal zu beschäftigen. Entweder wirklich gleich mit C++ anfangen und nicht C# oder halt die Quick & Dirty Variante mit Basic. Oder Pyton.
    Weil wenn du z.B. C++/CPP kannst, dann wird dir auch Java liegen, weil Java im Endeffekt auch kaum was anderes ist. Hat eben nur wieder andere Kleinigkeiten auf die man achten muss wieder. Syntax und Befehle jedoch gleichen sich wieder fast.
    Und wie gesagt... wenn man erst mal das eine durchschaut hat und weiß wie z.B. Basic oder Pyton das macht, dann kommt irgendwo auch der Aha-Effekt wo man dann eben die Ähnlichkeiten erkennt und eine Verbindung zum jeweiligen anderen erkennt. Im Endeffekt ist es wirklich so das wenn du eine Sprache kannst, alle kannst. ^^

    Ein schöner Tipp von mir wie man Anfangen könnte als Einsteiger:
    - Programmieren eines Textadventures oder kleinen Gedankenspiels
    - Programmieren von logischen Berechnungen wie z.B. eines Dezimal -> Binär -> Hexadezimal Wandlers. Optional die Darstellung der Zahlen via einer 7-Segment Anzeige.
    - Programmieren von Mathematischen Lösungen um z.B. das Volumen oder Umfang von geometrischen Körpern auszurechnen.
    - Programmieren von Objekt-Animationen wie z.B. "wie lasse ich einen Button von Punkt 1 nach Punkt 2 Wandern?"
    - Programmieren von Wahrscheinlichkeitsrechnungen wie z.B. Würfel, Karten etc.
    - Programmieren von Sortieralgorithmen wie Bubblesort oder Quicksort etc. um Datenfelder oder Listeneinträge die durcheinander sind zu ordnen nach Größe z.B.

    Das sind alles Übungen die einen das Programmieren näher bringen und eventuell auch Spaß machen können. Auch der Versuch verschiedene Sachen in Kombination zu bringen. Im Internet als auch in Büchern kannst du vieles finden was dir für den Einstieg hilft. Bei Jave ist z.B. das Buch "Java ist eine Insel" eventuell sehr gut. Weil eine NLE zu programmieren ist für deinen Stand einfach ein zu hohes Ziel momentan. Da wirst du selbst mit einem Team kläglich scheitern.

    Weil zu einer NLE gehört auch dazu sich mit Videotechnik zu beschäftigen. Und das Feld ist wirklich sehr stark gefächert. Da musste dir auch erst einmal als Einsteiger einiges anlesen.
    Gerade was Decoder und Encoder angeht.

    Auch wirst du dann das offensichtliche sehen das Rendern und Encodieren zwei unterschiedliche Sachen sind.

    Hier mal ein Ausschnitt zum FFMpeg Source Code in der Sprache C
    github.com/FFmpeg/FFmpeg/blob/master/ffmpeg.c

    Oder hier der Bink Video Decoder von FFmpegs (Auch in C):
    github.com/FFmpeg/FFmpeg/blob/master/libavcodec/bink.c

    Damit muss man sich dann mal halt beschäftigen und auch entsprechend ändern, damit sowas halt auch im eigenen Programm läuft. ^^

    Und ich werde dir es schon fast Prophezeien können das du keine NLE entwickeln wirst ;D
    Kleine GUIs oder CLI Anwendungen jedoch kann jeder. Das was wir hier alle auch halt machen. ^^
  • Tob dich erstmal mit C# oder Java aus. Diese beiden Sprachen werden auch in der Wirtschaft häufig verwendet (siehe aktuelle Stellenangebote, das sagt alles). Sie werden außerdem an Berufsschulen gelehrt. An der Uni lernt man dann ein bisschen krassere Sachen, die wirst du aber nicht brauchen. Um einfach Coden zu können, empfehle ich dir eine dieser Sprachen. Kannst du die eine, ist es für gewöhnlich sehr einfach mit der anderen klar zu kommen.

    Es wäre nervig mit C++ anzufangen und dich erstmal mit Zeigern und der Speicherverwaltung rum zu plagen. Lass das lieber. Und lass auch lieber diese Unsicherheit in deiner Frage. Ja, in Foren kommen immer solche Idioten, die einem alles ausreden wollen und anstatt die Frage zu beantworten sagen "Was hast du vor? Du schaffst das sowieso nicht". Das sind Leute, die es selbst nicht schaffen und es anderen nicht gönnen, also hör auf dich verunsichert auszudrücken.

    Man muss außerdem nicht studiert haben, um programmieren zu können. Man muss genauso wenig gut in Mathematik sein. Gut in Mathematik oder in logischem Denken zu sein, vereinfacht es einem extrem. Aber darin nicht gut zu sein, macht es einem nicht unmöglich. Wenn du es wirklich willst, wirst du es auch schaffen und einen Weg finden. Ich habe erst eine Ausbildung gemacht und dann Informatik studiert. Ich kann dir garantieren, dass es nicht von der schulischen Laufbahn abhängt, ob man gut in einer Sache ist. Es gibt einen haufen Absolventen, die scheiße programmieren und einen haufen, die gut programmieren. Daraus schließe ich, dass es nicht von einem Studium abhängt. Viel Erfolg!
    Hapablap - Nintendo Let's Plays vom Feinsten (mit Super Nintendo, Nintendo Wii, Nintendo Wii U und Nintendo 3DS)