Diskussionsrunde | Selbst programmieren oder vorhandenes System benutzen?

MCMDEV

Developer
(Ich hab diesen Beitrag bevor ich hier Entwickler war verfasst)

Ich möchte mal rein aus Interesse den Teil der NeruxVace-Communtity fragen, der sich selbst mit Entwicklung beschäftigt. Manche Leute finden einen komplett selbst programmierten Server besser als einen, der auch vorhandene Plugins benutzt, andere wiederrum sind auch mit Servern die komplett aus Download-Plugins bestehen zufrieden. Ich würde gerne im allgemeineren darüber diskutieren, ob diese Einstellung denn so auch Sinn ergibt.
Das Thema soll also sein, ob man ein System oder eine Funktion selbst programmieren sollte, oder aus dem Internet nehmen sollte. Jeder kann gerne im Thread seine Meinung dazu beitragen und mit argumentieren!


Argumente:

Was spricht dafür, etwas selbst zu programmieren, ist das man ...
- ... mehr Kontrolle über den Code und das was damit passiert
- ... nur das hat was man auch selbst benötigt
- ... sicherer ist, da man für Updates und Support auf niemanden angewiesen ist.

Was spricht dafür, ein vorhandenes System zu benutzen, ist das ...
- ... wenn es sich um einzelne Komponente handelt, diese wahrscheinlich besser sind, da der Fokus nur auf einem kleinen Komponente liegt in welches mehr Zeit fließen kann.
-... durch andere Benutzer eine Community entsteht, die einem bei Problemen helfen kann.

Meine Meinung:
Sollte das vorhandene Projekt zugänglich und Open-Source sein, ist es wahrscheinlich keine schlechte Idee dieses zu benutzen, solange man selbst den Code versteht und dazu beitragen kann. Sollte sonst nämlich der Support eingestellt werden, gibt es auch keine Updates mehr. Bei einzelnen Funktionen und APIs wurde in diese wahrscheinlich auch mehr Zeit investiert. Sollte alles was vorhanden ist allerdings qualitativ minderwertig sein, ist es sicherlich besser, sein eigenes System zu entwickeln.
 
Zuletzt bearbeitet:

RaveBoxMarc

Spieler
Moin!

Ich denke das ist eine ziemlich schwere Frage.
Man sollte unterscheiden zwischen Leuten die sich Plugins runterladen / kaufen und dann behaupten sie hätten alles selber geschrieben und den die es offen und ehrlich zugeben, bzw. den Autoren dann die Credits geben.

Ich denke es macht jedoch mehr Sinn die Systeme selber zu entwickeln, da es dann neuen Devs einfacher fällt sich in den Code zu integrieren, wenn sie mit dem ursprünglichem Developer reden können.
Leider sind die meisten Plugins auf, z.B. SpigotMC, voll mit Spaghetti Code, was auch die Serverperformance nach unten ziehen kann.

LG
Marc
 

EinsRene

Spieler
Hey,


Das ist eine wirklich gute Frage.
Ich persönlich programmiere schon länger im Bereich Java , und kenne mich nicht wirklich stark mit den gepflegtheiten von Minecraft Plugins aus , ich vermute das die Basis grundlegend gleich ist und die Fehlersuche und das Debugging oft echt ekelhaft sein kann.
Jedoch entwickle ich selbst Apps und bediene mich dort auch öfter an älteren Sourcecodes da niemand eigentlich alles was schief laufen kann oder was man verbessern kann im Kopf haben kann.

Nehme wir einfach mal das Beispiel man hat eine SQL Verbindung zu einem Server aufgebaut , und möchte in diesem eine Tabelle erstellen.

Im PreparedStatement oder Statement je nach dem was man bevorzugt sind oft so winzige Fehler zu finden die im Endeffekt die komplette Funktionalität killen, bzw der SQL Syntax ist fehlerhaft man hat eine Klammer vergessen oder die Formatierung ist falsch in solchen Momenten orietieren wir uns glaube ich im Endeffekt alle an Beispielen.

Beides ist somit komplett akzeptabel solange man bei der Wahrheit bleibt!
 

Voryu

MVP
Halli Hallo,

(kurz: Ich programmiere auch selber)

auch ich denke das es eine sehr schwierige Frage ist.
Ich denke jeder wollte schon mal einen eigenen Server....?
Gerade wenn man dann alle Systeme downloadet, sei es nur für einen Server oder ein Netzwerk, kann es oft zu Überschneidungen kommen. Vor allem bei Multiverse Servern, daher ist es dort schon schwierig ohne das programmieren eigener Plugins ein vernünftiges System zu schaffen (welches Fehlerfrei läuft).

Gerade wenn man bedenkt das es jetzt immer häufiger Open Source Projekte und YT-Tutorials gibt aus welchen man nicht nur abschreiben kann, sondern auch viel lernen kann ist für mich die Antwort recht eindeutig. Selber programmieren.

Es ist viel schöner zu sehen, was man aus eigener Kraft, Erfahrung und Mühe vollbringen kann.
Allerdings muss man auch auf verschiedene Aspekte eingehen die vielleicht bei der Planung eines solchen Projekts von Entscheidung sein können.
1. Ist man alleine?
Es dauert so lange ein qualitatives und gutes Server System zu machen, welches neben Hauptkomponenten wie Lobbysystem + 2 - 3 Spielmodi auch Hintergrundsysteme benötigt, daher ist es so wichtig sich die Arbeit vielleicht zu teilen.

2. Falls man doch alleine ist?
Für diesen Fall, wäre es meiner Ansicht nach nicht schlimm z.B. etwas wie keine Ahnung ein Teamchat Plugin oder ein Troll Plugin zu downloaden, da sowas auch immer ein wenig Zeit braucht und man diese unter Umständen nicht hat.
Dennoch glaube ich, dass man größere Systeme wie die Lobby selber machen sollte (Voraussetzung man kann programmieren, aber das setze ich in diesem Beitrag eh voraus.).


Dann ist natürlich auch noch ein weiterer Aspekt wichtig! Was bietet man an?
Ich meine einfach Standarts anzubieten wie Bedwars oder BuildFFA, bringt heute niemand mehr auf den Server, aber innovative Modi schon!
Und genau hier liegt das Problem, denn neue innovative Projekte nach euren Vorstellungen wird es sicher nicht zum Download oder als Tutorial geben.
Also gibt es dann genau genommen nur 2 Optionen:
1: Selber programmieren und sich die Optionen für Erweiterungen freihalten

oder

2: Auf Fiverr oder anderen Internetshops Plugins kaufen, nach Beschreibung.


Ich denke das diese Diskussion noch viel interessanter werden kann und ich hoffe es beiteiligen sich noch einige.

MfG
Voryu
 

TheBackdoor

Spieler
Hey hey,


Ich programmiere jetzt schon unglaublich lange im Bereich Java, ob es JSP Servlets JavaFX, Swing JAX-RS,JPA oder JAX-WS war , ich habe immer mein bestes versucht um alles selber zu programmieren, weil du durch das selbst programmieren besser lernst , nennt man Learning by Doing. Dann gibts aber auch Sachen die sind einfach zu kompliziert für den Anfang oder Sachen die auch sehr erfahrene Programmierer noch nicht beherrschen.

Nehmen wir das Beispiel , vor ungefähr 2 Monaten habe ich mein Spigot Framework released , danach wurde mir vorgeworfen das ich alles geklaut habe bzw das einige Teile von meinem Framework nicht von mir waren. Das habe ich nie abgestritten und dann wurde ich sozusagen beleidigt weil ich Code von jemand anders genommen habe und vor die einzelnen Variablen ein volitale gepackt habe und ich es angeblich "als mein ausgeben würde" was im Endeffekt garnicht gestimmt hat.

Wenn du nur einen Teil von jemand anderem nimmst kommt das heutzutage nicht mehr so gut an , und du wirst direkt als "Skidder" bezeichnet , obwohl man die Anwesendheit eines "Skidders" eigentlich in einem Fachgespräch direkt bemerkt.

Den Überblick über grosse Projekte behälst du meistens nur wenn du alles selber programmierst.

Deshalb bin ich der Meinung das man natürlich sich über Themen informieren kann , aber man sollte den Grossteil selbst machen.

Mit freundlichen Grüßen

Rene
 
Top