InícioFAQBuscarMembrosRegistrar-seLogin
A Equipe Central RPG Maker deseja a todos Boas Vindas!
Olá galera venho aqui pedir para ajuda a vocês pesso que postem conteúdo em nossa comunidade irei ajudar a vocês também.
Agora nossa comunidade também tem o famoso projeto de ouro porem da nossa comunidade leva um nome diferente leva o nome Osca de Ouro entre no tópico de Notícias e fique por dentro das novidades.

Compartilhe | 
 

 Aula Extra 4: Módulos

Ver o tópico anterior Ver o tópico seguinte Ir em baixo 
AutorMensagem
..:: P.V Supreme ::..
Membro
Membro


Sexo : Masculino
Mensagens : 241

MensagemAssunto: Aula Extra 4: Módulos   Dom Dez 19, 2010 1:26 pm



Introdução
Esta aula pode ser considerada como parte do curso básico, os módulos são um conteúdo básico ao qual eu acabei esquecendo de explicar, mas "antes tarde do que nunca" vamos hoje estudar o que são, pra que servem e como se usam os módulos!


O que são?
Módulos são criados quase como as classes, você pode considerar um módulo como um pacote de informações(métodos, constantes e funções) que poderão ser acessadas a qualquer momento por qualquer classe, são magnificamente úteis para o armazenamento de dados como a configuração utilizada em um script, facilitando a vida de todos os scripters.


Para que servem?
Posso dizer que existem 3 tipos básicos de módulos: Armazenamento, Pacote de Funções e Pacote de Métodos. Os 3 tipos podem ser utilizados em um módulo só, ou seja, cada módulo pode ter 3 partes distintas, uma de cada tipo. Apenas vou lembrar que essa classificação é pessoal e não oficial, vou dividí-los por questões didáticas!

Armazenamento
Como o nome ja diz, servem basicamente para armazenar dados constantes tais como configurações ou um banco de dados para os scripts, são fáceis de manusear e muito fáceis de criar, bastando ao scripter declarar as constantes dentro do bloco de códigos do módulo.

Pacote de Funções
Essa "parte" ou "tipo" de módulo exerce uma função bem parecida com uma classe, mas por ser estático, essas funções podem ser utilizadas a qualquer momento, por exemplo, o módulo Math, esse módulo nada mais é que um conjunto de métodos que fazem operações matemáticas avançadas como raiz, logarítmo e etc. Módulos desse tipo são muito usados por scripter que possuem pacotes de funções próprios como o módulo XRXS, RTH...

Pacote de Métodos
Essa é uma finalidade mais complexa dos módulos, ela serve literalmente para economizar linhas de programação, para o script, nada muda, mas para o scripter, a diferença é grande. Um módulo tem suporte para armazenar métodos que serão emprestados, divididos ou como queira chamar, para outras classes, assim, você pode ter um método só e usá-lo em várias classes diferentes!


Como usar?
Usar um módulo é uma tarefa simples, na declaração, apenas mudamos o ja conhecido class por module, Além disso, muitos preferem criar módulos apenas com letras maiúsculas como APS, RTH, SDK... mas existem exceções como o User_Edit do Net Play! AVISO! Módulos não são instanciados, ou seja, não da pra usar o comando new, você deve usar diretamente o nome do módulo!

Armazenamento
Para armazenar dados constantes em um módulo, basta criá-lo e ir adicionando as infos, veja o exemplo:

Código:

module APS
  DATA = []
  DATA = [1,7,21,23,12]
end

Para acessar a constante DATA, basta por o nome do módulo seguido de :: e o nome da variável, no exemplo fica APS::DATA. Você pode armazenar qualquer tipo de dado primitivo dentro de um módulo.


Pacote de Funções
Os pacotes de funções são métodos que são armazenados em um módulo e podem ser usados a qualquer momento. Para criar um método do tipo função, use def self., dentro do bloco de códigos é tudo na mesma, veja o exemplo:

Código:

module Math
  def self.hipotenusa(catA, catB)
    a = sqrt(catA*catA + catB*catB)
    return a
  end
end

Para usar esse método, basta chamar Math::hipotenusa(3,4) (como é um método, pode usar Math.hipotenusa(3,4)) por exemplo, o script irá retornar o valor da hipotenusa desse triângulo!

Você pode dividir as funções por classes ou módulos internos, por exemplo

module RPG
  module Cache
    def self.picture(name)
<..>

Assim, seu módulo pode ter diversos blocos distintos cada um com suas funções


Pacote de Métodos
Pacotes de métodos nada mais são que um ou mais métodos criados dentro de um módulo, mas que só tem utilidade se forem usados dentro de uma classe, para isso usamos o comando include na classe, Veja o exemplo:

Código:

module APS
  def count
    @n += 1
  end
end

class Teste
  include APS
  def initialize
    @n = 0
  end
end

Veja que a classe Teste não tem nenhum método, mas como utilizei um include APS, o método count presente no módulo, é importado para o APS, note duas coisas, o método count não tem o "self", isso por que métodos com self só podem ser usados diretamente pelo módulo, eles não são importados como include, métodos sem o self não podem ser usados direto pelo módulo, mas são importados. Além disso, note que usei no método um atributo com o mesmo nome do atributo de Teste, sem isso o script não funciona. Você pode criar uma série de métodos e ir importando eles em todas as classes que os utilizarão, assim não tem que criar um por um!


Módulos de Scripters
É comum que com o tempo e experiência, os scripters mais avançados peguem o hábito de usarem sempre as mesmas funções, para economizar tempo, eles criam módulos próprios, esses módulos servem para armazenar tudo o que eles irão utilizar em seus scripts, daí surgem os modulos ja mencionados, como o meu próprio, o APS, ou os mais requintados como o RTH que são cheios de coisas. Nesses módulos, vocês provavelmente encontrarão os 3 tipos de módulo mencionados juntos, dando ênfase para as funções.


Tags de Busca

Módulo
module
include
constante


..:: Crédito ::..
Total a: Anderson Porto...
Por Disponibilizar: ..:: P.V Supreme ::..


..:: Agradecimentos ::..
Google xD foi da onde que tirei... + sei que essas aulas são de Anderson Porto...

OBS: Chegamos ao Final Dessa Etapa, Próxima Etapa: Sintaxe
Voltar ao Topo Ir em baixo
http://centralrpgmaker.forumeiro.com
Nandik
Membro
Membro


Mensagens : 143

MensagemAssunto: Re: Aula Extra 4: Módulos   Seg Dez 20, 2010 7:52 am

P.V acho que vc não leu a nova regra desta área!!
da pra identifica que isso e de Script??
Voltar ao Topo Ir em baixo
..:: P.V Supreme ::..
Membro
Membro


Sexo : Masculino
Mensagens : 241

MensagemAssunto: Re: Aula Extra 4: Módulos   Seg Dez 20, 2010 9:22 am

Nandik, acho que você que não entendeu, me desculpe mais vo te que falar, você só sabe criticar, só sabecriar regras sem sentido, isso faz parte das Auas de RGSS, eu não falei que era aula de Script, isso facilita + o Entendimento do RGSS, então antes de falar qualquer coisa, pense antes...
Voltar ao Topo Ir em baixo
http://centralrpgmaker.forumeiro.com
Nandik
Membro
Membro


Mensagens : 143

MensagemAssunto: Re: Aula Extra 4: Módulos   Seg Dez 20, 2010 1:42 pm

p.V aqui vai se postada aulas de eventos também então acho que você deve pensar, e eu não critiquia Aula.
Voltar ao Topo Ir em baixo
Conteúdo patrocinado




MensagemAssunto: Re: Aula Extra 4: Módulos   Hoje à(s) 10:23 am

Voltar ao Topo Ir em baixo
 
Aula Extra 4: Módulos
Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo 
Página 1 de 1
 Tópicos similares
-
» [Photoshop - Vídeo Aula][Criação de Styles - By Flash]
» [Iniciante][Video-Aula][ON]Video aula sign completa no ps, e animada no flash !
» [Video-Aula] Sign GFX Clean
» Promoção Wave 533 EXTRA.COM.BR
» #IAJ Aula 05 - Pontuação

Permissão deste fórum:Você não pode responder aos tópicos neste fórum
 :: Rpg Maker XP :: Tutoriais-
Ir para: