Aller au contenu

Nouveau membre ?! Pense à te présenter pour accéder au contenu du forum !

New member ?! Introduce yourself to get access to the forum !

Homeomorphe

Membre
  • Compteur de contenus

    11
  • Inscription

  • Dernière visite

  • Points

    275 [ Donner ]

Réputation sur la communauté

12 Neutre

À propos de Homeomorphe

  • Rang
    Moussaillon
  • Date de naissance 09/24/1988

Profil

  • Nationalité
    Français
  • Sexe
    Homme

Visiteurs récents du profil

Le bloc de visiteurs récents est désactivé et il n’est pas visible pour les autres utilisateurs.

  1. Mise à jour du sujet avec changelog mis en place.
  2. Ayo la commu', des béta testeurs de disponibles ?
  3. Merci ! De base moi non plus, mais ça a l'air d'être assez le foutoir sur la majorité des ému de Dofus, j'ai donc pris l'initiative de remettre de l'ordre là-dedans! L'émulateur est codé en Java, je reprends Ancestra 0.4.2 de Diabu. Au départ j'ai hésité à reprendre un émulateur nommé PowerEmu qui était hyper propre mais j'avais trop de boulot dessus et en plus il est en .net si je me trompe pas et c'est pas ma tasse de thé x) Homéo
  4. 66 personnes qui ont vu mon sujet et personne pour m'accompagner ? C'est triste ...
  5. Bonsoir, Après avoir checké l'ensemble de l'API de Dofus dans ses moindres détails et en m'étant informé sur l'émulation de Dofus 1.29 (par ailleurs j'ai checké aussi d'autres types d'émulation mais celle-ci reste quand même ma favorite) j'ai décidé de reprendre un émulateur aussi vieux que moi () à savoir Ancestra de Diabu. Je travaille dessus depuis hier dans l'optique de monter de toute pièce un serveur stable pour un mode JcJ (expérience gagnée en défi et/ou agression), le système de base d'honneur/déshonneur, d'alignement en fait, sera intégré de manière complète afin de pouvoir retrouver un système de JcJ complet. En une quinzaine d'heures de boulot sur l'émulateur j'ai déjà intégré pas mal de choses mais le plus dur reste à venir, la stabilité de mon code. C'est-à-dire que le code et les fonctions X ou Y que j'ajoute ne détériorent en rien le code précédent pour garantir une fluidité de calcul même pour les machines à faible CPU pour qu'il n'y ait aucune sensation de lag. Mon boulot m'avantage sur ce projet car j'avance vite et 'bien' (subjectivement #imthegodlmao). Si des gens souhaitent se joindre à moi, pour des tâches binaires ou plus complexes, c'est avec plaisir, je saurai vous guider! Changelog : Homéo
  6. Les Interfaces (suite logique des classes abstraites) Une interface est un type, au même titre qu’une classe, mais abstrait et qui donc ne peut être instancié (par appel à 'new' plus 'constructeur'). Une interface décrit un ensemble de signatures de méthodes, sans implémentation, qui doivent être implémentées dans toutes les classes qui implémentent l’interface. L’utilité du concept d’interface réside dans le regroupement de plusieurs classes (les interfaces sont très utilisées même à haut un niveau!) , tel que chacune implémente un ensemble commun de méthodes, sous un même type. Une interface possède les caractéristiques suivantes : ● elle contient des signatures de méthodes; ● elle ne peut pas contenir de variables; ● une interface peut hériter d’une autre interface (avec le mot-clé extends); ● une classe (abstraite ou non) peut implémenter plusieurs interfaces. La liste des interfaces implémentées doit alors figurer après le mot-clé 'implements' placé dans la déclaration de classe, en séparant chaque interface par une virgule. Dans notre exemple précédent (du premier cours), Forme peut être une interface décrivant les méthodes qui doivent être implémentées par les classes Rectangle et Cercle, ainsi que par la classe Carre (non explicitée précédemment, même si celle-ci peut profiter de son héritage de Rectangle). L’interface Forme s’écrit alors de la manière suivante : public interface Forme { public int surface(); public void affiche(); } Pour obliger les classes Rectangle, Cercle et Carre à implémenter les méthodes surface() et affiche(), il faut modifier l’héritage de ce qui était la classe Forme en une implémentation de l’interface définie ci-dessus : public class Rectangle implements Forme { ... } et public class Cercle implements Forme { ... } Note assez importante : En déclarant un tableau constitué d’objets implémentant l’interface Forme, on peut appeler la méthode affiche() qui existe et est implémentée par chaque objet. Si une classe implémente une interface mais que le programmeur n’a pas écrit l’implémentation de toutes les méthodes de l’interface, une erreur de compilation se produira sauf si la classe est une classe abstraite ! Les classes abstraites et les interfaces sont des notions très abstraite, la compréhension des ces notions est très compliquée mais son utilité est redoutable. Elles permettent de décomposer les travaux et une optimisation du code certaine. En vous souhaitant une bonne compréhension, Homéo'
  7. Avec plaisir. En effet quand une chose est abstraite c’est tout de suite plus dur à assimiler. Homéo’
  8. Classes abstraites Nota Bene : pour ce cours je prend comme hypothèse que vous avez déjà des bases de Java, le cas échéant, allez lire les cours présents dans la section 'tutoriels'. Le concept de classe abstraite se situe entre celui de classe et celui d’interface (notion que j'introduirai plus tard, selon moi c'est plus simple de commencer par les classes abstraites). C’est donc une classe qu’on ne peut pas directement instancier car certaines de ses méthodes ne sont pas implémentées. Une classe abstraite peut donc contenir des variables (de n'importe quel type, primitif ou non), des méthodes implémentées et des signatures de méthode à implémenter. Une classe abstraite peut donc implémenter (partiellement ou totalement, même s'il est rare que ce le soit totalement) des interfaces et peut hériter d’une classe ou d’une classe abstraite. La création d'une classe abstraite se fait de la sorte : public abstract class { … }. Imaginons que l’on souhaite attribuer deux variables, origine_x et origine_y, à tout objet représentant une forme nous avons donc la classe suivante avec les 'Getter' et les 'Setter' : comme suit : public abstract class Forme { private int origine_x; private int origine_y; // Constructeur dit 'par défaut' public Forme() { this.origine_x = 0; this.origine_y = 0; } // Getter public int getOrigineX() { return this.origine_x; } public int getOrigineY() { return this.origine_y; } // Setter public void setOrigineX(int x) { this.origine_x = x; } public void setOrigineY(int y) { this.origine_y = y; } // Méthodes abstraites public abstract int surface(); public abstract void affiche();} - Classes et méthodes génériques : De plus, il faut rétablir l’héritage des classes Rectangle et Cercle vers Forme (car les rectangles et les cercles sont des formes , et si vous avez bien suivi votre cours sur l'héritage, on utilise le mot-clé 'extends' (toutefois il en existe un autre qui pour les interfaces appelées 'implements' qui fait strictement la même chose, j'en parlerai dans un prochain cours!) : // Classe Rectangle qui étend forme public class Rectangle extends Forme { ... } // Classe Cercle qui étend forme public class Cercle extends Forme { ... } Lorsqu’une classe hérite d’une classe abstraite, elle doit : - soit implémenter les méthodes abstraites de sa super-classe en les dotant d’un corps ; - soit être elle-même abstraite si au moins une des méthodes abstraites de sa super-classe reste abstraite. Fin de ce premier cours. Cordialement, Homéo
  9. Bonjour, Prénom / Pseudonyme : Livio / Homéo Ville / Région / Pays : Paris 16ème / Île de France / France Age : 30 ans Définissez vous en quelques lignes, caractères, qualités et vos défauts : Hello à tous, Pourquoi Homéomorphe comme pseudo ? J'ai étudié les mathématiques pendant plusieurs années en même temps que l'informatique et de là j'ai eu une passion pour les applications homéomorphes (ou homéomorphismes). Je suis quelqu'un de droit, passionné par énormément de chose. J'aime apprendre, appliquer et comprendre des notions aussi abstraite que pratique. Je suis un passionné de développement en tout genre. Définissez vos activités, vos passions en quelques lignes : Je travaille chez Sogeti High Tech depuis 5 ans, un leader Français assez connu qui bosse sur l'ingénierie et le conseil en technologie. Je suis' 'Chargé de Développement' , en somme je dirige les équipes de développement sur différents projets ainsi que 'Chargé de Cyber-Sécurité', pas besoin d'expliquer je pense. J'ai fais un Master Développement Général & IA (ajd qui est remplacé par Master Image & IA, si mes souvenirs sont bon), ainsi qu'un Master M.I.G.S (Mathématique pour l’Informatique Graphique et la Statistique). En capacités générales je connais et utilise de façon professionnelles les langages suivants : C, C++, C#, Java, Javascript, Python En outre, je sais faire plein d'autre chose mais un listing serait long et ennuyeux! Comment avez-vous connu Funky-Émulation ? En me baladant sur Internet. Que recherchez-vous sur ce forum ? A partager mes connaissances, apprendre de nouvelles choses (on a toujours des choses à apprendre des autres). Qu'attendez-vous de Funky-Émulation et de sa communauté ? Une ambiance générale agréable et de l'activité ! Avez-vous des compétences particulières de près comme de loin dans le domaine de l'informatique ? Je n'avais pas vu cette question précédemment alors je vous invite à lire 4 questions plus hauts! Un petit message pour la fin ? A très vite sur le forum ! Cordialement, Homéo'
×

Information importante

By using this site, you agree to our Conditions d’utilisation.