Appels aux experts

Voir le sujet précédent Voir le sujet suivant Aller en bas

Appels aux experts

Message  Warzouz le Jeu 24 Nov 2011 - 10:30

(Ceci est un appel du pied à Ghomerr...)

De plus en plus, je me tate pour bosser sur des plugins pour MC. Si je me débrouille en développement sous Windows, notamment en VB.Net (bonne connaissance des langages objet modernes), je n'ai pas "peur" de Java, même si je n'y ai jamais touché.

Ceci dit, je serait totalement infichu de mettre en place un environnement de développement pour Java et en particulier pour un plugin craftbukkit ou mod pour MC.

QQ'un pourrait-il m'éclairer et m'aider à mettre en place un environnement de dev dédié ? (j'ai juste besoin qu'on pousse un peu la voiture au démarrage...)

Merci

_________________
Réfléchir, c'est déjà désobéir
avatar
Warzouz

Messages : 5852
Age : 45

Profil
Rôle: Déménageur nihiliste

Revenir en haut Aller en bas

Re: Appels aux experts

Message  Ghomerr le Jeu 24 Nov 2011 - 20:38

Personnellement, pour mes plugins, j'ai pris le strict minimum. J'avais la flemme d'installer des gestionnaires de projets ou autre (Maven, Ant, et compagnie) qui au final, quand on bosse seul, ne servent pas tant que ça.

Bref. Ce que j'aimerais savoir, c'est si tu veux savoir comment tout installer ou juste le poste de développement.

Est-ce que tu as installé les outils de base pour programmer en Java, déjà ? Est-ce que les notions de JRE/JDK te parlent ? Le minimum vital c'est pouvoir compiler en console.

Si tu as besoin, les 2 premiers chapitres du cours Java sur le site de zéro me semblent pas mal : http://www.siteduzero.com/tutoriel-3-10601-apprenez-a-programmer-en-java.html

J'utilise également Eclipse, en version standard, ça suffit pour les plugins.

L'installation est assez simple, il n'y a pas grand chose à configurer, si ce n'est, l'emplacement du Workspace, là où seront stockées les sources.

Tu peux installer des plugins Eclipse, mais pour le coup, j'en vois pas de nécessaires.

Tu peux compiler et exécuter du code Java directement dans Eclipse (via Run...) mais les plugins minecraft doivent être exécutés sur un serveur pour fonctionner. Ca t'empêchera pas de faire des classes de tests unitaires pour tester des bouts de code indépendant, à partir du moment où ça ne touche pas des éléments "minecraftiens".

Ce que je fais pour cela, j'ai mon petit serveur perso installé dans la version bukkit qui va bien. (Besoin d'explication pour ça aussi ? Faut juste télécharger le craftbukkit à la place du minecraft_server.jar et lancer la commande qui va bien pour démarrer le serveur. Les plugins sont chargés automatiquement en étant dans le répertoire plugins)

Quand tu as codé ton plugin, tu cliqueras sur le nom du projet associé, tu fais "Export..." et tu choisiras "Jar file" ou équivalent. Et c'est tout :D Tu colles ça dans le répertoire plugin sus-nommé, tu lances le serveur et zouh, tu testes. Je te conseille de blinder de logs.

Si tu as besoin de voir des exemples de plugin, tu chopes Java-Decompiler (existe en plugin Eclipse ! Très pratique :D) http://java.decompiler.free.fr/
Tu pourras voir les sources de n'importe quel Jar comme si tu étais dans Eclipse (ou presque).

Après, il y a quelques notions Bukkitiennes, notamment comment marche un plugin, et tout, mais ça est très bien expliqué sur le wiki : http://wiki.bukkit.org/Portal:Developers

Je te conseille de toujours avoir la JavaDoc Bukkit ouverte dans un coin ;) (Au pire, tu as l'aide interne Eclipse et l'auto-complétion, mais c'est moins lisible, je trouve)

Bref, s'il te manque des infos n'hésite pas. Au pire, on pourra essayer de se choper sur mumble si tu as besoin d'aide en live. (Au pire tu m'envoies des PM aussi)

Après, si tu veux publier et diffuser tes plugins à la communauté de Minecraft, c'est encore une autre histoire :p (C'est expliqué sur le wiki aussi)

Bon courage Warzouz ;)

Edit: et si tu veux voir un peu mon plugin, les sources sont dispos ici : https://github.com/Ghomerr/TravelGates Je ne dis pas être un exemple, mais j'utilise pas mal de choses apprises au boulot, qui je pense, sont pas déconnantes. Bukkit est dispo sur GitHub aussi. Par contre, j'ai toujours pas mis de commentaires, désolé :/ (Mais je code explicitement, donc ça devrait aller :P)

_________________
avatar
Ghomerr

Messages : 3742
Age : 29

Profil
Rôle: Chronomètre rétrograde

http://www.youtube.com/user/Ghomerr6

Revenir en haut Aller en bas

Re: Appels aux experts

Message  Warzouz le Jeu 24 Nov 2011 - 22:01

Merci ghomerr.

Je n'ai jamais développé sous Java, mais je connais bien le dév objet et à peu, près tous ses concepts de base (héritage, polymorphisme, pointeurs de fonction/délégués...). Je suis à l'aise avec le XML comme base de données (pour des petits volumes).

Je vais commencer par installer le JDK (je n'ai que le JRE actuellement), installer Eclipse. Je vais aussi installer un serveur local CraftBukkit. Je pense que ça sera samedi...

_________________
Réfléchir, c'est déjà désobéir
avatar
Warzouz

Messages : 5852
Age : 45

Profil
Rôle: Déménageur nihiliste

Revenir en haut Aller en bas

Re: Appels aux experts

Message  Swissing le Jeu 24 Nov 2011 - 22:11

Tien, ça m'intéresse, j'y jetterais un oeil!
avatar
Swissing

Messages : 1468
Age : 21

Profil
Rôle: Éternel procrastinateur

Revenir en haut Aller en bas

Re: Appels aux experts

Message  Ghomerr le Jeu 24 Nov 2011 - 22:20

Je ne sais pas si j'ai été très clair sur tous les points.

Si besoin, je détaillerai une étape ou autre.

Sinon, je connaissais pas les bases de données XML :P Je comprends pourquoi ça supporte de petits volumes, ça doit pas être très rapide :P

Bon après, pour le Java en lui-même, j'ai pas lu le cours tout entier du site du zéro, vu que je connaissais déjà, juste quelques passages. Mais ayant suivi d'autres cours sur ce site, je sais que c'est de la qualité ! (Notamment le langage C que j'ai appris entièrement sur ce site, vu qu'en cours c'était nul :P, de même que le html, css, php et mysql. Et ce en une semaine :drunk: )

_________________
avatar
Ghomerr

Messages : 3742
Age : 29

Profil
Rôle: Chronomètre rétrograde

http://www.youtube.com/user/Ghomerr6

Revenir en haut Aller en bas

Re: Appels aux experts

Message  Warzouz le Jeu 24 Nov 2011 - 23:25

Ghomerr a écrit:Sinon, je connaissais pas les bases de données XML :P Je comprends pourquoi ça supporte de petits volumes, ça doit pas être très rapide :P
Tu peux facilement faire l'équivalent d'une table de 1000 lignes en XML. Ca reste très performant. Par contre, c'est hiérarchique. Mais on arrive avec plusieurs fichiers à faire une base assez élaborée. Tu charges tes données, puis tu travailles en mémoire. Tant que c'est pas trop gros, ça marche très bien.

Les alternatives sont des fichiers plats (pas très souple), ou des petites bases (style access) mais on tombe vide dans des trucs complexes à gérer (avec des installations supplémentaires). Le XML c'est super simple, très souple et ça s'édite avec notepad. Tu peux stocker des données hétérogènes dans un même fichier.

Je me sers vraiment de la base de la base du XML. J'utilise aucun schéma, DTD, XSL (je sais même pas vraiment à quoi ça sert...)

Si tu veux voir comme j'utilise les XML, tu peux installer ce logiciel (tu vas voir un air de famille avec Mapguide et MC config Manager...) http://rcommunity.nazgulworld.com

Tu installes AT-43 par exemple, et tu joues un peu avec les boites de dialgue. tu peux ensuite aller voir les XML dans APPDATA. Tout le logiciel est basé sur des données en XML. J'ai 1/3 de code généré par l'IDE, 1/3 de code à moi, et 1/3 de XML (définition d'armées, langue...). et après il y a les données sauvegardées de l'utilisateur. J'ai passé des centaines d'heures sur ce soft. J'ai même reçu 2500€ en figurines de l'éditeur du jeu.

_________________
Réfléchir, c'est déjà désobéir
avatar
Warzouz

Messages : 5852
Age : 45

Profil
Rôle: Déménageur nihiliste

Revenir en haut Aller en bas

Re: Appels aux experts

Message  Ghomerr le Ven 25 Nov 2011 - 20:38

<geek>
Ah, c'est géré en mémoire. Je pensais que tu tapais directement sur le disque en fait :D

Sinon, pareillement, j'utilise surtout le XML dans des composants/outils/langages dérivés, plus que du pur XML. D'ailleurs, le pur XML, à part pour organiser et hiérarchiser des données, ça sert effectivement pas à grand chose (dans des modèles de données par exemple, en Javascript pour les documents :p). Mais en base de données pure, je ne connaissais pas ^^

Sinon, le DTD et XSL c'est quasiement utilisé pour la même chose. Juste que le XSL est plus récent je crois. Si je ne dis pas de bêtises, c'est utilisé pour faire des transformations. Par exemple, tu définis un emploi du temps en XML, en hiérarchisant les cours, les matières, les jours, etc... ensuite, ça peut te générer un affichage graphique en HTML ou SVG pour afficher et présenter tes données.

Le DTD, ça doit faire à peu près la même chose je crois, mais c'est plus vieux et moins utilisé maintenant (on le retrouve encore dans les entêtes HTML si ne dis pas de bêtises, avec le doctype :p)

Je regarderai ton programme à l'occaz ^^

Personnellement, le XML, je l'utilise au boulot pour faire des appels web services (SOAP / REST) ou pour faire des automates à états :p (en SCXML).
</geek>

_________________
avatar
Ghomerr

Messages : 3742
Age : 29

Profil
Rôle: Chronomètre rétrograde

http://www.youtube.com/user/Ghomerr6

Revenir en haut Aller en bas

Re: Appels aux experts

Message  Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum