Niveau de compréhension du tuto
- GummyStaffeux retraité
- Nombre de messages : 2666
Age : 33
Localisation : Belgique
Distinction : Modérateur imprévisible
Papy Lolo' [Nabots Nimousse]
Date d'inscription : 27/01/2008
[Tutoriel RUBY] Les rudiments du Ruby
Dim 3 Fév 2008 - 20:13
Etant moi-même en plein apprentissage du Ruby, j'ai décidé de vous faire partager mes acquis en ce qui concerne ce (fabuleux) langage de programmation particulièrement efficace sous XP et VX.
ATTENTION Je n'ai pas encore eu le temps d'étudier en profondeur les changements opérés de RGSS vers RGSS2, donc ces tutos concernent entièrement le scripting sous RMXP.
Allons-y!
1) Introduction
Le Ruby, c’est facile! Mais, en fait, le Ruby, c’est quoi ?
Le Ruby, c’est un langage de programmation orienté objet, ce qui signifie que TOUT est un objet dans un script Ruby.
Par exemple, :
- La classe « Scene_Map » est un objet Ruby
- La méthode « Initialize » est un objet Ruby
- La variable globale « $machintruc » est un objet Ruby
- La condition « If input trigger » est un objet Ruby
- Etc…
2) Définitions des termes utilisés
Le Ruby comprend plusieurs termes spécifiques à ce langage. Nous allons ici découvrir ce que veulent dire ces termes indigènes
Classe (Class) :
Une class (Nous utiliserons toujours les termes anglophones pour plus de facilité In Script) est une sorte d’ ensemble, qui contient un autre ensemble d’informations.
Par exemple, la class « Panier de Fruits » contient les méthodes « Ajouter fruit » et « Retirer fruit », et contient les objets « Pomme », « Poire » et « Orange ».
Méthode (Method) :
Une method est l’application d’instructions. Par exemple nous avons la méthode « Ajouter Fruit » qui dit qu’on ajoute un fruit au panier.
Objet :
Un objet in script est un élément particulier d’un ensemble d’infos. Par exemple, dans la class « Panier de Fruits », on a les objets « Pomme », « Poire » et « Orange ».
Attention à ne pas confondre avec la définition générale du Ruby…
Le terme OBJET en Ruby désigne au sens large le contenu d'un script, et au sens strict (ici, donc) une information propre à une method dans une class.
Variable :
Il existe, comme cité plus haut, plusieurs types de variable dans le Ruby.
Variable Globale :
Une variable globale est une variable à laquelle on attribue quelque chose. Cette variable aura exactement le même contenu partout dans n’importe quel script du système. Si quelque part on change ce contenu, il sera changé partout où la variable est inscrite également.
Ces variables sont facilement reconnaissables, elles sont toujours précédées d’un signe $.
Si par exemple il n’y a qu’un seul joueur en jeu, alors on peut utiliser la variable globale, ce qui donnerait ceci :
Variable Particulière :
Une variable particulière est une variable spécifique à quelque chose, à un objet le plus souvent. Aucune autre variable n’aura sa valeur. Utile lors de la création de plusieurs variables variant très peu de caractéristiques.
Ces variables sont facilement reconnaissables car elles sont toujours précédées d’un signe @.
Pour exemple, imaginons une chienne venant de mettre bas. Pour créer une portée de 5 chiots, nous devons créer un "moule" servant à créer chaque chiot, avec ses caractéristiques propres. Le voici (nous verrons ces notions plus tard en détail, ce n'est pas l'objet principal de ce chapitre) :
Définition :
Une définition dans un script sert à initialiser les informations nécessaires au fonctionnement du script. Par exemple, reprenons notre panier de fruits, si l’on veut ajouter un fruit, il faut expliquer à RMXP comment. Voici le code :
Si vous lisez ce bout de texte, ça veut dire que vous avez tout suivi sans balancer votre ordi par la fenêtre
Félicitations!
Cette introduction au Ruby permet aux néophytes d'en savoir plus à propos des termes et utilités. Evidemment, cette liste n'est pas exhaustive, il y a encore beaucoup d'autres caractéristiques du Ruby!
J'ai essayé d'établir ce tuto de façon la plus claire et lisible possible, pour permettre une bonne compréhension.
Pour terminer, voici un script mettant en application tous les éléments vus dans ce chapitre (à savoir les variables, méthodes, etc). Analysez-le et tentez d'en comprendre le fonctionnement.
Naturellement, n'étant pas infaillible, j'ai pu commettre des erreurs. Si vous en avez repéré, ou si même vous avez des questions ou des problèmes, n'hésitez pas à les poser, je pense que les scripteurs du forum tenteront de vous répondre au mieux.
Enjoy!
ATTENTION Je n'ai pas encore eu le temps d'étudier en profondeur les changements opérés de RGSS vers RGSS2, donc ces tutos concernent entièrement le scripting sous RMXP.
Allons-y!
1) Introduction
Le Ruby, c’est facile! Mais, en fait, le Ruby, c’est quoi ?
Le Ruby, c’est un langage de programmation orienté objet, ce qui signifie que TOUT est un objet dans un script Ruby.
Par exemple, :
- La classe « Scene_Map » est un objet Ruby
- La méthode « Initialize » est un objet Ruby
- La variable globale « $machintruc » est un objet Ruby
- La condition « If input trigger » est un objet Ruby
- Etc…
2) Définitions des termes utilisés
Le Ruby comprend plusieurs termes spécifiques à ce langage. Nous allons ici découvrir ce que veulent dire ces termes indigènes
Classe (Class) :
Une class (Nous utiliserons toujours les termes anglophones pour plus de facilité In Script) est une sorte d’ ensemble, qui contient un autre ensemble d’informations.
Par exemple, la class « Panier de Fruits » contient les méthodes « Ajouter fruit » et « Retirer fruit », et contient les objets « Pomme », « Poire » et « Orange ».
Méthode (Method) :
Une method est l’application d’instructions. Par exemple nous avons la méthode « Ajouter Fruit » qui dit qu’on ajoute un fruit au panier.
Objet :
Un objet in script est un élément particulier d’un ensemble d’infos. Par exemple, dans la class « Panier de Fruits », on a les objets « Pomme », « Poire » et « Orange ».
Newbie a écrit:Attends, attends! T'as dit que un objet, c'était n'importe quoi en Ruby! Tout ce qui est du Ruby est objet! A l'aide, j'ai un plomb qui pète!
Attention à ne pas confondre avec la définition générale du Ruby…
Le terme OBJET en Ruby désigne au sens large le contenu d'un script, et au sens strict (ici, donc) une information propre à une method dans une class.
Variable :
Il existe, comme cité plus haut, plusieurs types de variable dans le Ruby.
Variable Globale :
Une variable globale est une variable à laquelle on attribue quelque chose. Cette variable aura exactement le même contenu partout dans n’importe quel script du système. Si quelque part on change ce contenu, il sera changé partout où la variable est inscrite également.
Ces variables sont facilement reconnaissables, elles sont toujours précédées d’un signe $.
Si par exemple il n’y a qu’un seul joueur en jeu, alors on peut utiliser la variable globale, ce qui donnerait ceci :
- Code:
Joueur 1
$hp==XXX
Variable Particulière :
Une variable particulière est une variable spécifique à quelque chose, à un objet le plus souvent. Aucune autre variable n’aura sa valeur. Utile lors de la création de plusieurs variables variant très peu de caractéristiques.
Ces variables sont facilement reconnaissables car elles sont toujours précédées d’un signe @.
Pour exemple, imaginons une chienne venant de mettre bas. Pour créer une portée de 5 chiots, nous devons créer un "moule" servant à créer chaque chiot, avec ses caractéristiques propres. Le voici (nous verrons ces notions plus tard en détail, ce n'est pas l'objet principal de ce chapitre) :
- Code:
class Chiot # Création du "moule" d'un chiot avec ses stats
def initialize
@santé = 100
@besoins = 5
@faim = 0
end
Définition :
Une définition dans un script sert à initialiser les informations nécessaires au fonctionnement du script. Par exemple, reprenons notre panier de fruits, si l’on veut ajouter un fruit, il faut expliquer à RMXP comment. Voici le code :
- Code:
def Ajouter un Fruit
@pommes = @pommes + 1
@poires= @poires + 1
@oranges= @oranges +1
end
Si vous lisez ce bout de texte, ça veut dire que vous avez tout suivi sans balancer votre ordi par la fenêtre
Félicitations!
Cette introduction au Ruby permet aux néophytes d'en savoir plus à propos des termes et utilités. Evidemment, cette liste n'est pas exhaustive, il y a encore beaucoup d'autres caractéristiques du Ruby!
J'ai essayé d'établir ce tuto de façon la plus claire et lisible possible, pour permettre une bonne compréhension.
Pour terminer, voici un script mettant en application tous les éléments vus dans ce chapitre (à savoir les variables, méthodes, etc). Analysez-le et tentez d'en comprendre le fonctionnement.
Naturellement, n'étant pas infaillible, j'ai pu commettre des erreurs. Si vous en avez repéré, ou si même vous avez des questions ou des problèmes, n'hésitez pas à les poser, je pense que les scripteurs du forum tenteront de vous répondre au mieux.
- Spoiler:
- Je conseille de copier ce code dans un script vierge sous RMXP pour plus de lisibilité.
- Code:
#==========================================================#
# Script servant d'évaluation n°1 - Gamemaker #
#==========================================================#
class Chiot # Création du "moule" d'un chiot avec ses stats
def initialize
@santé = 100
@besoins = 5
@faim = 0
end
# un chiot quelconque qui mange
def manger
@faim = @faim + 50
@besoins = @besoins + 30
end
# un chiot quelconque qui fait ses besoins
def petits_besoins
@besoins = @besoins - 30
end
end
class Chien_et_compagnie
#dans creer_famille, je dis que Billy est un Chiot, Baggy est un Chiot, Batty est un chiot, etc...
def creer_famille
@Billy = Chiot.new
@Batty = Chiot.new
@Boggy = Chiot.new
@Budy = Chiot.new
end
#dans manger_famille, je dis que chaque chiot doit manger...
def manger_en_famille
@Billy.manger
@Batty.manger
@Boggy.manger
@Budy.manger
end
def petits_besoins_en_famille
@Billy.petits_besoins
@Batty.petits_besoins
@Boggy.petits_besoins
@Budy.petits_besoins
end #Fin de la method
end #Fin de la class : fin du script.
Enjoy!
- Mister GeekStaffeux retraité
- Nombre de messages : 719
Age : 30
Localisation : Vosges
Distinction : aucune
Date d'inscription : 20/12/2007
Re: [Tutoriel RUBY] Les rudiments du Ruby
Dim 3 Fév 2008 - 21:25
Game', tu sais que j'te kiffe ?
Ton tuto m'a déjà servis, j'espère qu'il en sera de même pour les autres !
Ton tuto m'a déjà servis, j'espère qu'il en sera de même pour les autres !
Re: [Tutoriel RUBY] Les rudiments du Ruby
Ven 2 Mai 2008 - 19:30
Excellent !
J'ai tout compris, même si ce n'est que des bases ça m'a beaucoup appris !
Bravo à toi et merci.
J'ai tout compris, même si ce n'est que des bases ça m'a beaucoup appris !
Bravo à toi et merci.
Re: [Tutoriel RUBY] Les rudiments du Ruby
Ven 2 Mai 2008 - 21:54
tuto clair, par contre, je ne sais pas si c'est exprès, mais tu n'as pas parlé ni des constantes (VARIABLE), ni des variables de methode ( variable), ni de module (@@variable)...
peut etre ne faut il pas tout devoiler d'un coup ^^
peut etre ne faut il pas tout devoiler d'un coup ^^
- metakingMembre
- Nombre de messages : 368
Age : 29
Distinction : aucune
Date d'inscription : 18/04/2008
Re: [Tutoriel RUBY] Les rudiments du Ruby
Sam 3 Mai 2008 - 8:07
mentenant je vois plus clair merci !
super tuto
super tuto
- AzakiModérateur
- Nombre de messages : 1742
Age : 31
Localisation : Dans ton cul(stom), t'as vu, tarba? é_è
Distinction : Commentateur sportif
Indépendantiste Breton
Chevalier de lumière
Membre du Haruhi fan-club
Membre du Tsukasa Nishino fan-club.
[Chou n°3]
Mist'
Fils caché de Francis L'Alan
[Coco' ]
Chevalier Noir
Ex-Empereur d'Erem Vehyx (ou pas!! x) )
Date d'inscription : 14/05/2008
Re: [Tutoriel RUBY] Les rudiments du Ruby
Mer 14 Mai 2008 - 19:18
Super! et en plus j'en cherchais un tuto Ruby!
Re: [Tutoriel RUBY] Les rudiments du Ruby
Mer 14 Mai 2008 - 19:35
Ce tuto est très Claire et très utile, merci Gamemaker !
- gasha-17Membre
- Nombre de messages : 180
Age : 32
Distinction : aucune
Date d'inscription : 15/04/2008
Re: [Tutoriel RUBY] Les rudiments du Ruby
Mer 14 Mai 2008 - 21:46
merci beaucoup pour le tuto
çà va me servir
j'ai hâte de voir tes prochains tutos sur le ruby
çà va me servir
j'ai hâte de voir tes prochains tutos sur le ruby
- GummyStaffeux retraité
- Nombre de messages : 2666
Age : 33
Localisation : Belgique
Distinction : Modérateur imprévisible
Papy Lolo' [Nabots Nimousse]
Date d'inscription : 27/01/2008
Re: [Tutoriel RUBY] Les rudiments du Ruby
Mer 14 Mai 2008 - 22:35
Ca fait plaisir, ça sert à quelque chose finalement
Mouais, le prochain tuto Ruby... Y'en aura pas. J'l'apprends plus, mon prof est mort demandez à Berka.
Mouais, le prochain tuto Ruby... Y'en aura pas. J'l'apprends plus, mon prof est mort demandez à Berka.
Re: [Tutoriel RUBY] Les rudiments du Ruby
Mer 14 Mai 2008 - 22:47
mon prof est mort
ben, il va falloir attendre l'ouverture de mon site...
un tout petit apercu !
http://rpgruby.olympe-network.com
- AzakiModérateur
- Nombre de messages : 1742
Age : 31
Localisation : Dans ton cul(stom), t'as vu, tarba? é_è
Distinction : Commentateur sportif
Indépendantiste Breton
Chevalier de lumière
Membre du Haruhi fan-club
Membre du Tsukasa Nishino fan-club.
[Chou n°3]
Mist'
Fils caché de Francis L'Alan
[Coco' ]
Chevalier Noir
Ex-Empereur d'Erem Vehyx (ou pas!! x) )
Date d'inscription : 14/05/2008
Re: [Tutoriel RUBY] Les rudiments du Ruby
Jeu 15 Mai 2008 - 10:46
On va en apprendre des choses sur ton site!^^
Tu le mettera en partenariat avec ce forum?^^
Tu le mettera en partenariat avec ce forum?^^
- GummyStaffeux retraité
- Nombre de messages : 2666
Age : 33
Localisation : Belgique
Distinction : Modérateur imprévisible
Papy Lolo' [Nabots Nimousse]
Date d'inscription : 27/01/2008
Re: [Tutoriel RUBY] Les rudiments du Ruby
Ven 16 Mai 2008 - 18:15
C'est GM qui m'apprenait le Ruby, mais il s'est fait priver d'ordi ce con xD bref.
Bien ton site Berka, me réjouis de lire la suite
Bien ton site Berka, me réjouis de lire la suite
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum