Gerenciamento e Reprodução de Mídias a partir do

Propaganda
Gerenciamento e Reprodução de Mídias a partir do
Desenvolvimento de um Mp3 Player
André Luiz de Farias Mezzari1, Danilo Preve Menegaz1, Leandro Colombo da
Silva1 , Cristiane Raquel Woszezenki2, Priscyla Waleska Targino de Azevedo
Simões2
1
Acadêmico do curso de Ciência da Computação – Unidade Acadêmica de Ciências,
Engenharias e Tecnologias - Universidade do Extremo Sul Catarinense (UNESC) –
Criciúma, SC - Brasil
2
Professora do curso de Ciência da Computação - Unidade Acadêmica de Ciências,
Engenharias e Tecnologias - Universidade do Extremo Sul Catarinense (UNESC) –
Criciúma, SC - Brasil
{biver_, danilomenegaz, lcscri}@hotmail.com, {cristianerw,
pri}@unesc.net
Resumo. Este artigo apresenta um trabalho interdisciplinar a partir de
conceitos de estrutura de dados e programação orientada a objetos. Seu
objetivo buscou desenvolver um aplicativo voltado ao gerenciamento e
reprodução de músicas em formato mp3. Foi utilizada a estrutura lista,
implementada em Java, a partir da Collection ArrayList. As classes definidas
são: Player, controlador e audio. Foi desenvolvida uma interface gráfica em
Java a partir do ambiente NetBeans IDE 6.1 e, com o desenvolvimento desta
pesquisa pode-se correlacionar os assuntos e conhecimentos pertinentes as
duas disciplinas envolvidas, assim como aprofundar a lógica de programação
orientada a objetos apresentada.
Palavras-chave: Estrutura de dados; Programação orientada a objetos;
Coleções do Java; Mp3 Player.
1. Introdução
Com o avanço da internet e dos meios de comunicação digitais, se tornou cada vez mais
comum armazenar e escutar músicas no computador. O formato que acabou
popularizando as músicas foi o mp3. Um aplicativo para reprodução de músicas neste
formato não precisa ser muito complexo, afinal o que importa para o usuário é apenas
que a música seja reproduzida. Baseado neste conceito, procurou-se neste trabalho
desenvolver um aplicativo simples e ao mesmo tempo funcional, baseado nos conceitos
apresentados durante a terceira fase do curso de Ciência da Computação da UNESC.
Conhecendo os tipos de estrutura de dados e como podem ser aplicadas, iniciouse uma pesquisa, e como fundamentação teórica foram utilizados os seguintes conceitos:
listas lineares, pilhas, filas, programação orientada a objetos e linguagem Java. Tendo
em vista estes conceitos o objetivo deste trabalho é gerenciar músicas em listas de
reprodução, permitindo ao usuário organizar e reproduzir músicas em formato mp3.
1.1. Estruturas de dados
Durante a execução de qualquer programa computacional existem dados que são
manipulados, que podem ser de vários tipos, e são identificados e indexados pelas
denominadas variáveis. A estrutura de dados consiste de técnicas para manipulação,
armazenamento, organização e representação dos dados necessários à execução dos
programas, e segundo Preiss (2000, p.59), “É importante ressaltar que não consideramos
o vetor e a lista encadeada como TADs, mas como alternativa para a implementação dos
TADs”.
Segundo Moraes (2001), a lista linear é uma forma de organização dos dados
para uma melhor manipulação dos mesmos. Nesta estrutura tem-se um início (primeiro
elemento) e um final (último elemento). Dentre as estruturas de dados mais utilizadas,
tem-se as listas encadeadas e as listas com disciplina de acesso.
A lista encadeada é uma coleção linear (uma seqüência) de objetos autoreferenciais de classe, chamados nós, conectados por links de referência, daí o termo
encadeada, cada um referenciando outro da lista de várias formas dependendo de sua
organização, formando uma cadeia de elementos que armazena os dados. Segundo
Moraes (2001, p.107) “Uma lista ligada sem nós é uma lista nula ou vazia”. Nessa
situação, o ponteiro que aponta para o início da lista é um valor nulo.
1.2. Linguagem Java
Em 1991, a Sun Microsystems financiou uma pesquisa cooperativa interna com o
codinome “green”. O projeto resultou no desenvolvimento de uma linguagem de
programação baseada em C e C++, que seu criador James Gosling, chamou de OAK em
homenagem a uma árvore que dava para a janela do seu escritório nesta empresa.
Descobriu-se mais tarde que já havia uma linguagem denominada OAK. Assim, quando
a equipe da Sun visitou uma cafeteria local, o nome Java (cidade de origem de um tipo
de café importado) foi sugerido e se tornou oficial [Deitel e Deitel 2001].
Em 1995, a Sun anunciou o Java formalmente em uma conferência, e hoje em
dia é utilizado para criar páginas de internet com conteúdo interativo e dinâmico,
desenvolver aplicativos corporativos de larga escala, sistemas para dispositivos móveis,
entre outros.
Esta linguagem trata as estruturas de dados a partir das denominadas Collections
(Coleções), que são estruturas prontas, que podem ser manipuladas pelo programador,
através de códigos simples, não necessitando de uma manipulação complexa desses
dados, provendo uma facilidade maior na manipulação dos dados pelo programador
[Deitel e Deitel 2001].
1.3. Estruturas de dados orientada a objetos em Java
O Java disponibiliza coleções para manipulação dos dados, oferecendo ao programador
acesso à estruturas de dados pré-estabelecidas. Segundo Deitel e Deitel (2001), a
estrutura de coleções em Java fornece componentes reutilizáveis prontos para trabalhar;
assim, não é necessário escrever suas próprias classes de coleção.
A classe ArrayList, é uma implementação da interface List e seus objetos se
comportam como arrays redimensionáveis e permitem a inserção de todos os tipos de
dados, incluindo o valor null [Deitel e Deitel 2001].
2. Estudo de caso
Para o estudo de caso deste trabalho interdisciplinar definiu-se uma aplicação voltada ao
gerenciamento de arquivos de áudio no formato mp3, com as funções básicas de um
Mp3 Player padrão, baseado em conceitos de estrutura de dados e orientação a objetos.
Nesse Mp3 Player é possível a criação de listas para a reprodução de músicas, além das
funções de reprodução, parada, avanço e retrocesso nas músicas e entre as músicas (na
lista de reprodução), e alteração do volume de reprodução.
O aplicativo foi desenvolvido em Java no ambiente NetBeans IDE 6.1, e para a
implementação das funcionalidades de gerenciamento de listas de reprodução,
pesquisou-se qual seria o formato padrão para esta finalidade em players de música
comerciais, e assim decidiu-se então pelo padrão “m3u”. Com o uso desse formato é
possível salvar listas de reprodução utilizáveis em qualquer outro player comercial,
assim como reproduzir seu conteúdo em outros players.
As classes utilizadas e ilustradas na Figura 1 foram: Player, que executa as
funções principais do aplicativo; Áudio, que manipula os endereços das músicas para
reprodução; e, Controlador, que manipula as listas de reprodução e execução dos
arquivos.
Figura 1. Diagrama de Classes
A estrutura de dados lista foi utilizada a partir da Collection ArrayList do Java
para manipular as listas de reprodução.
O aplicativo ilustrado na Figura 2 oferece as opções de: selecionar uma música
individualmente; adicionar e remover músicas da playlist; reproduzir, parar, pausar,
avançar e retroceder; e, além disso é possível salvar as listas de reprodução em formato
“m3u”. A Figura 2 mostra o
Ainda na figura 2 pode-se notar o programa em execução com todas as funções
disponíveis na interface gráficas, além da barra de ferramentas padrão de um Mp3
Player.
Figura 2. Interface do aplicativo
3. Conclusão
A partir do desenvolvimento deste artigo pode-se concluir como as estruturas de dados e
a programação orientada a objetos são de fundamental importância no desenvolvimento
de softwares. Até mesmo um Mp3 Player necessita de tratamento de dados, que são
melhor representados pelas coleções orientadas a objetos de estruturas de dados do Java.
Assim, esta pesquisa interdisciplinar foi de fundamental importância para a
compreensão de conceitos de estrutura de dados e programação orientada a objetos na
terceira fase do curso de Ciência da Computação da UNESC, podendo-se compreender
melhor como estes conceitos se integram e interagem em uma aplicação prática
desenvolvida a partir dos conhecimentos adquiridos em sala de aula.
Pode-se destacar ainda que o conteúdo foi aprofundado desenvolvendo-se
inclusive uma interface gráfica, assunto geralmente apresentado na 5ª fase do curso.
Neste sentido, o produto final do trabalho foi representado por um Mp3 Player,
atualmente em uso pelos acadêmicos da terceira fase, que reproduz músicas além de
gerenciar listas para reprodução.
Referências
DEITEL, H. M.; DEITEL, P. J.. Java: Como programar. Tradução: Edson
Furnankizwicz. 3. ed.. Porto Alegre: Bookman, 2001.
MORAES, Celso Roberto. Estrutura de dados e algoritmos – uma abordagem didática.
São Paulo: Berkeley, 2001.
PREISS, Bruno R.. Estruturas de dados e algoritmos: Padrões e projetos orientados a
objetos com Java. Tradução: Elizabeth Ferreira. Rio de Janeiro: Campus, 2000.
Download