carloshsamaral:
jmmenezes:
Vamos lá, seguem meus 2 centavos:
Acho que se o objetivo é aprender lógica, eu seguiria os seguintes passos (lembrando que não é regra utilizar estes passos para qualquer sistema, mas para quem esta começando acho mais facil).
1-Iria desenvolver em Destkop (acho mais facil do que web para começar), se usar um RAD para as telas acho também mais facil que console.
2-Comece desenvolvendo as telas… se for usar swing e/ou swt eu achei muito legal um plugin para o Eclipse chamado WindowBuilder. Escola o NetBeans ou o Eclipse e crie as seguintes telas:
a) Tela de cadastro de produtos, acho que 5 campos basicos para começar (codigo do produto, nome do produto, preço de compra, porcentagem de lucro, quantidade em estoque)
b) Tela de cadastro de cliente (codigo do cliente, nome do cliente, endereco, aqui fica livre os campos)
c) Tela de cadastro de pedidos, nesta tela um combo para selecionar o cliente e uma lista para adicionar produtos, com a quantidade de cada produto e um preço total (que será calculado automáticament).
3-Se sabe acessar banco de dados, então eu iria criar o modelo de dados. Se quiser fazer com arrays, só que as vezes a programação de persistência pode se tornar complicada.
4-Implemente os cadastros basicos (produto e cliente), somente lendo os campos da tela e gravando no banco de dados, depois implemente atualização e exclusão
5-Implemente as regras de validação de produto e cliente
6-Implemente agora a tela de pedido que será um pouco mais complexa pois irá calcular preço do produto baseado na % de lucro e também o preço total baseado nas quantidades
7-Por ultimo faça a parte de baixar do estoque e também a validação do pedido para não deixar colocar nada que não exista no estoque
PS: Este definitivamente não é a melhor pratica de desenvolvimento embora possa ser util em muitos casos e muito usada principalmente em sistemas menores… Acho dificil começar desenvolvendo baseado em TDD ou outras metodologias, e até mesmo dificil começar o desenvolvimento separando tudo em camadas!
Boa sorte
Amigo, vc me deu a base que eu queria :D, o problema que Swing eu não sei direito e nem SWT vou ter que da uma olhada… Muito obrigado, eu acho que a parte de cliente nem precisa, só preciso mesmo do estoque e pedidos.
Se alguém poder acrescentar ou dar outras dicas estou apto a isso =]
Amigo… perfeito… elimina a parte de cliente então e só grava o nome do mesmo no pedido!
Quanto mais simplificar no começo melhor… sei que muitos vão discordar de mim, mas eu acho que criar “algo” é um bom passo no aprendizado da programação… é importante estudar padrões de projeto, arquitetura, etc e conhecer as formas de fazer, mas na minha opnião acho muito dificil você criar algo perfeito do nada, tanto que na faculdade se começa aprendendo programação estruturada em código macarrão!
Em relação ao Swing e SWT… eu gosto mais do SWT pela questão de performance, mas tem de tomar alguns cuidados a mais pois ele não é tão portável quanto o swing… o plugin Window builder trabalha bem com os 2, mesmo por que suas telas serão extremamente simples.
Eu não começaria por web, pois acho que antes de começar a criar sistemas web, precisa aprender como o basico do http funciona, um pouco de html, e pensar que existem coisas processadas no cliente e no servidor! Geralmente os estagiários que trabalharam comigo sem conhecer nada tinham mais facilidade em começar com desktop!