Guide für Programmiereinsteiger

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

Registriere dich um viele Vorteile zu genießen! Weniger Werbung, bessere Kommunikation und vieles mehr!

  • In diesem "Guide" geht es um die Dinge, die viele beim Lernen von Bukkit Plugins programmieren vergessen zu berücksichtigen. Wir schauen uns an, wie man meiner Meinung nach schnell eigenständige Plugins programmieren kann und schnell von "Copy & Paste" weg kommt.
    Vorweg: Das hier ist kein Plugintutorial. Vielmehr erläutere ich, wie du eigenständig lernst zu programmieren.

    1. Teil: Java Kenntnisse
    Jedes Bukkit Plugin basiert auf der Programmiersprache Java. Wenn du über "Copy & Paste" hinaus willst, wirst du erstmal Java lernen müssen. Wenn du darauf keine Lust hast, solltest du dieses Vorhaben direkt aufgeben. Um Kommentare wie "Ich hab auch mit Bukkit angefangen" vorzubeugen, möchte ich klar stellen, dass ich damit nicht meine, dass man ein komplettes Java Programm schreiben muss, bevor man sich mit Bukkit beschäftigt. Du kannst nach einigen Grundlagen ohne Probleme mit Bukkit Plugins programmieren anfangen, solltest dann allerdings nicht enttäuscht sein, wenn nicht alles so klappt wie du es dir vorstellst.

    Ich empfehle das Buch "Java ist auch eine Insel". Du findest es hier.

    2. Teil: Java und Bukkit Docs
    Sowohl die Java als auch die Bukkit/Spigot API haben eine ausführliche Dokumentation über jede einzelne Methode. In den JavaDocs stehen außerdem noch Beschreibungen für alle Parameter und deren Returntypen.

    Java: docs.oracle.com/javase/8/docs/api/
    Bukkit: hub.spigotmc.org/javadocs/bukkit/
    Spigot: hub.spigotmc.org/javadocs/spigot/

    Mit ein bisschen English findest du dich schnell zurecht. Wenn du etwas suchst, schau einfach dort vorbei und nach einigen Minuten hast du schon das gefunden was du gesucht hast.

    3. Teil: Exceptions & StackTraces
    Auch dir wird es oft passieren. Du möchtest dein neues Plugin testen und bekommst eine fette Exception geworfen. Hierbei hilft dir nur Googeln. Es würde kaum was bringen dir ein Beispiel zu geben, da sie unterschiedlich aussehen können und es über 100 verschiedene Exceptions allein in Bukkit und Java gibt. Du wirst schnell mit den gängigen konfrontiert die du auch schnell lernen wirst zu verstehen. Zudem lerne StackTraces zu lesen. Es gibt nichts Peinlicheres als bei einer einfachen und unkomplizierten NullPointerException nach Hilfe zu fragen. Es gibt selbstverständlich auch Fälle wo es sich nicht so einfach darstellt.

    4. Teil: Was man noch tun kann
    Wenn du dich weiter verbessern möchtest, ist es empfehlenswert fremden Code zu lesen und zu verstehen. Hierdurch kannst du neues lernen, was bei dir vielleicht auch Anwendung findet.

    Sonstiges:
    • GitHub: GitHub ist ein Filehosting-Dienst für Software Entwicklungsprojekte. Über GitHub wurden schon große Open-Source-Projekte wie Bitcoin, PHP und Node.js verwaltet und gemanagt. Besonders gut könnt ihr GitHub nutzen um, wie in Punkt 4 angesprochen fremde Projekte zu lesen und daraus zu lernen. Ihr könnt über die suche Programme suchen und so eine Menge an Projekten finden.


    Falls noch irgendwer etwas zu ergänzen hat, füge ich es gerne hinzu.

    898 mal gelesen

Kommentare 3

  • EnderCookie -

    Super Artikel, hier noch zwei Sachen:
    Der JavaDoc Link verweist noch auf Java 7, du könntest den Link aktualisieren.
    (Ich denke, dass Java 8 mittlerweile Standard ist)
    Ausserdem fehlt bei Sonstiges das t.
    Viele Grüße, EnderCookie

  • Janhektor -

    Hey, erstmal eine gute Grundlage!

    Ich habe noch eine Ergänzung: Der Link zu GitHub.
    Man könnte vielleicht kurz erklären, was GitHub ist und wie man dort nach Projekten sucht.

    Warum sollte man das verlinken?
    Einfach, weil Einsteiger sich dort Projekte von anderen Entwicklern anschauen und von deren Quellcode lernen können. Auf GitHub findet man auch viele bekannte Projekte von namenhaften Herstellern, z.B. Google.

    • ReneTC -

      Hi,

      das ist ein wirklich guter Vorschlag. Werde ich auf jeden Fall noch mit einbringen.

      MFG René