• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

passado

Criação de aplicação -Opiniões

16 mensagens neste tópico

Boas, iniciei recentemente o estudo da programação, na escola, em visual basic, atraves do visual studios 2008. Como esta sempre foi uma área de meu interesse ando a tentar desenvolver um projecto que pegue em base de dados, que consta no seguinte:

Eu como arbitro de basquetebol sinto alguma dificuldade em gerir o que tenho a receber e o que ja me pagaram, pois bem peguei nesse problema á uns tempos e criei um livro de excel (Este), livro de excel este que eu queria evoluir e nao ser um mero livro de excel, comecei por tentar o access (numa disciplina estou a começar o estudo de access) mas pensei e porque não tentar o visual basic?!

coloquei mãos ao trabalho e comecei a ler um Tutorial num livro de visual studios da FCA que eu tenho, pois bem deu-me para ter uma ideia do que o SQl como funciona etc, agora a minha duvida é a seguinte sera necessário uma coisa tão complexa?

O objectivo da aplicação é, e começando pelo mais simples:

Temos um arbitro, esse arbitro recebe todas as semanas uma convocatória ao receber a convocatória iria abrir a aplicação e registar os seguintes dados:


  • *Nº do Jogo
    *Data/Local
    *Escalão
    *Competição
    *Remuneração
    *Custos Extras (este campo é mais especifico mas por agora fica assim)
    *Realizado (campo Sim/Não)
    *Pago (campo Sim/Não)

   

Ao inserir estes dados, pretendia que, ao colocar o escalão e a competição aparece-se automaticamente a remuneração.

Os dados ficavam registados, o arbitro ao domingo por exemplo, voltava a abrir a aplicação, abria uma form de pesquisa e procurava um jogo através do numero do mesmo para editar o registo se o jogo foi realizado ou nao.

O mesmo aconteceria quando o pagamento fosse feito, o arbitro procurava por o jogo X e alterava o registo em como o jogo estava pago.

Depois teria uma zona de relatórios, onde essencial era ter um relatório que me desse o total de jogos que foi convocado, a quantos faltou e quantos realizou.

outro relatório seria de pagamentos, com os dados de quantos jogos realizou, os que ja recebeu e o que ainda falta receber.

Assim o essencial é isto e era o que me interessava para já mais tarde iria melhorando, como o nivel de detalhe dos relatórios etc.

A minha grande questão é? uso SQL? uso VB aliado a access? que tipo de base de dados uso?

Basicamente quero converter o que tenho em excel para uma coisa "mais aserio"

Cumps

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

(...) agora a minha duvida é a seguinte sera necessário uma coisa tão complexa?

Pelo que disseste não, a folha de excel servia perfeitamente, aliás, até uma simples folha de papel quadriculado seria suficiente.

Passo a explicar, não vás pensar que estou a ridicularizar a situação: O que me parece é que, como querias aprender e tentar saber um pouco mais, passaste de algo que funcionava para algo que, embora também vá funcionar, tem propósitos algo diferentes.

A complexidade dependerá muito do que queres fazer e do objectivo do programa. Passar do Excel para um sistema próprio é natural, agora seria necessário passar logo para um BD, e porquê uma BD relacional, que te obriga a aprender uma nova linguagem, neste caso SQL.

Os dados que pretendes guardar são tão simples que podias guardá-los num ficheiro de texto, num ficheiro XML, num ficheiro binário, enfim, em algo mais simples, mais pequeno a nível de desenvolvimento, e que por outro lado te fornecesse uma maior aproximação da linguagem. Se estiveres a pensar em usar outras coisas, como MS Access, MSSQL, MySQL, ou outra coisa qualquer, vais perder tempo a aprender a usar essas tecnologias e ferramentas que podias empregar na aprendizagem da linguagem e das tecnologias base da linguagem. Pessoalmente acho que se deve sempre consolidar as bases antes de se passar para algo mais avançado, não que usar MSSQL ou Access seja muito mais avançado, apenas que distrai da aprendizagem base.

Nem todos os programas que guardam dados usam um motor de bases de dados relacionais, muitos usam apenas um ficheiro, quer seja de texto quer seja binário, e para a maioria dos casos é suficiente. Se é esperado que a aplicação lide com milhões de registos, então é uma boa opção usar um motor de bases de dados, tem várias vantagens, mas para aplicações que lidam com dados simples, sem relações ou com relações demasiado limitadas, um simples ficheiro é suficiente.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Se é esperado que a aplicação lide com milhões de registos, então é uma boa opção usar um motor de bases de dados, tem várias vantagens, mas para aplicações que lidam com dados simples, sem relações ou com relações demasiado limitadas, um simples ficheiro é suficiente.

Foi isso que pensei, se seria necessário uma coisa, para mim ainda complexa, ou armazenar os dados em algo mais simples...

Assim surge-me outra duvida, eu a parte dos formulários, dos cálculos etc penso ter o mínimo conhecimento para ser capaz de construir, o meu problema é mesmo o armazenamento de dados, assim aconselhas-me a começar por exemplo por armazena-los em ficheiros .xml é isso?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Antes de passares para o XML, sugeria-te que pegasses num simples ficheiro de texto, organizado de forma simples, sequencial. Ou um ficheiro binário. Passar para XML obriga-te a perceber como funcionam os parsers  de XML sem sequer saberes ler um ficheiro de texto.

Ler e escrever dados para ficheiro de texto e ficheiros binários é algo base em programação, assim sugeria-te que fizesses esse sistema usando um ficheiro simples, texto ou binários, ou até os dois. Mais tarde, XML é capaz de ser uma boa passagem.

Claro que esta é a minha visão das coisas, certamente outros utilizadores te dirão que podes começar já com um servidor de bases de dados, ou a usar XML ou outra tecnologia da moda, pessoalmente acho que não é o melhor caminho.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Fazes assim... segues o conselho do knitter e guardas isso tipo em formato INI, CSV, ou uma coisa parecida inventada por ti.

Depois quando a tua aplicação estiver funcional e lhe quiseres implementar funcionalidades mais complexas, não é muito difícil fazer uma migração para outro sistema, até é um bom exercício.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

@Knitter

Eu exponho as minhas duvidas para quem, mais que eu, sabe me sugerir o melhor :)

Vou pesquisar para por mãos á obra :thumbsup:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eu tenho um visão um pouco diferente (em alguns pontos).

Se por um lado acho que não deves usar uma base de dados para algo tão "pequeno", acho que usar um ficheiro INI, TXT ou mesmo CSV é uma má opção. O Visual Studio permite muito facilmente usar os ficheiros XML de uma forma muito básica e até mais simples do que outro tipo de ficheiro de texto. Trabalhar com ficheiros binários é ainda mais complexo.

Através da funções DataSet.WriteXml("nome do ficheiro") e DataSet.ReadXml("nome do ficheiro") podes colocar várias tabelas (datatables) em memória e utilizar como se de uma base de dados tratasse.

Além disso é mais rápido e muito prático.

Mas é apenas mais uma opinião e não invalida as anteriores.

Eu exponho as minhas duvidas para quem, mais que eu, sabe me sugerir o melhor :)

No fórum :thumbsup:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eu tenho um visão um pouco diferente (em alguns pontos).

Se por um lado acho que não deves usar uma base de dados para algo tão "pequeno", acho que usar um ficheiro INI, TXT ou mesmo CSV é uma má opção. O Visual Studio permite muito facilmente usar os ficheiros XML de uma forma muito básica e até mais simples do que outro tipo de ficheiro de texto. Trabalhar com ficheiros binários é ainda mais complexo.

Através da funções DataSet.WriteXml("nome do ficheiro") e DataSet.ReadXml("nome do ficheiro") podes colocar várias tabelas (datatables) em memória e utilizar como se de uma base de dados tratasse.

Além disso é mais rápido e muito prático.

Mas é apenas mais uma opinião e não invalida as anteriores.

No fórum :thumbsup:

jpaulino, eu andei a procura de tutoriais sobre os tais xml mas nao encontrei grande coisa conheces alguma coisa que de para ter uma ideia de como funciona?

Eu foi como disse tudo o que sei de guardar dados é em variáveis para coisa do momento não para armazenar e mais tarde consultar e alterar :) 

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eu no blog tenho um pequeno artigo que fala sobre xml, mas não é o mais indicado para ti. No entanto podes ler para ficares com alguns conceitos:

VB.NET: Introdução ao XML 

Para o que tu pretendes, ou seja usar um ficheiro xml como base de dados, podes ler este artigo de um amigo meu, que está muito simples de aplicar e tem um exemplo para descarregar:

Xml Database Demo

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Muito obrigado vou então ver os dois links e tentar começar, ja percebi que ao inicio o objectivo vai ter de ser criar e editar registo depois então passo aos relatórios :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

É mesmo contra essa facilidade que prefiro a opção dos ficheiros de texto, para que quem está a aprender aprenda programar e não seja apenas mais um "utilizador de VS". Usar XML ou BD seria uma opção técnica viável e até bastante recomendada, se a questão fosse puramente técnica.

Mas considero que a melhor opção, neste caso, não é a técnica mas sim a que obriga a aprender melhor.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

É mesmo contra essa facilidade que prefiro a opção dos ficheiros de texto, para que quem está a aprender aprenda programar e não seja apenas mais um "utilizador de VS". Usar XML ou BD seria uma opção técnica viável e até bastante recomendada, se a questão fosse puramente técnica.

Mas considero que a melhor opção, neste caso, não é a técnica mas sim a que obriga a aprender melhor.

E eu gosto dessa aprendizagem, e andei á procura de algo que me ensina-se a tal criação de uma mini BD nesses ficheiros que referiste mas não encontrei nada

Cumps

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não precisas criar uma mini BD, apenas escrever dados directamente para ficheiro. Podes procurar por "vb.net write text file", que já dá uma grande ajuda.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não precisas criar uma mini BD, apenas escrever dados directamente para ficheiro. Podes procurar por "vb.net write text file", que já dá uma grande ajuda.

Ja li algumas cenas e nao me pareceu muito dificil, mas tenho uma duvida, ao criar os tais ficheiros, conseguirei depois tratar dados como somar a "coluna" de remonerações, criar relatorios em que ele só soma o campo remunerações se o campo pago tiver selecciona?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Conseguirás sempre tratar os dados, mas terás de programar a lógica que irá fazer o tratamento de dados. Repara que num ficheiro de texto não há noção de colunas, terás de ser tu a decidir como guardar os dados, em que formato, e como os ler depois.

Ler e escrever texto não é complicado, ensina-te ou obriga-te a praticar mais a parte da criação de estruturas de dados e programação.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora