none
Por onde começar?

    Question

  • Olá a todos.

    Tenho acompanhado algumas discussões sobre arquitetura de aplicações há algum tempo. Após muito ler, buscando elucidar minhas dúvidas de iniciante e, não tendo chegado a um lugar muito concreto, resolvi postar algumas dúvidas.

    É o seguinte:

    Imaginemos uma aplicação bem simples de controle de pedidos.  Nesta, tenho duas classes: Cliente e Pedido.

    1. Pensando em separação de camadas e boas práticas, como organizaria meu projeto?

    Ex.:

    Em uma dll, coloco minhas classes de negócio (cliente e pedido) ;
    Em outra dll, as classes de acesso a dados (DAO - DAL);
    Em outra a interface com o usuário (windows form - view)  ??


    2. Quanto ao mapeamento do banco de dados relacional X Classes, o que é recomendado? Criar minha própria classe, usar algum framework, tipo NHibernate... ?


    3. Quanto às classes de acesso às tabelas, utilizo DataSet's? Existe outra solução? Qual a "melhor" (sabendo que isto pode variar de caso para caso) ?


    4. Alguém conhece algum material onde é demonstrado a construção, passo-a-passo, de uma aplicação, conforme esses conceitos que mencionei, utilizando C# / Windows Form (estilo MS Pet Shop) ???



    Desde já agradeço a atenção.

    Abs,


       
    Friday, February 15, 2008 2:02 PM

Answers

  • Alexandre,

     

    Vamos lá.

     

    1)Eu gosto de trabalhar da forma que você explicou, desta forma acho que fica mais organizado.

     

    2)Existe os dois modelos, cada um tem vantagens e desvantagens.

    Por exemplo, se vc construir sua própia classe vc terá mais controle. Se vc utilizar um framework ganhará em produtividade!

     

    3)Referente a DataSet, tudo é relativo a qual o objetivo.

    Por exemplo, para popular um DropDownList onde vc não utilizar para alterar os dados é mais indicado utilizar o dataReader, pois é mais rápido. Por outro lado vc quer um boa integração com XML quer trabalhar de forma desconectada e pode alterar os dados é mais indicado o dataset/datatable. Sujiro vc dar uma estuda mais afundo nestas classes, pois compreender o foco de cada uma delas é de grande valia, pois ajudará vc a constriuir aplicações sólidas e performáticas.

     

    4)A questão quatro não conheço nenhum projeto público deste nível.

     

    Abraços,

     

     

    Monday, March 03, 2008 2:42 AM


  • Alexandro no meu projeto que estou desenvolvendo para escola. Estou usando da seguinte forma

            Windows Forms (camada de apresentação)
                      |
                      |
                   DLL  ( 1 classe capa de acesso a dados ) e o restante faz parte do negocio (Alunos.vb,  Classes.vb, Matricula.vb, DocRec.vb, DocAlu.vb, Pendfin.vb)  - Sem contar que fiz tudo atráves do diagrama de classe que a IDE ofere...dentro do projeto do tipo  Class Libray
                                            |
                    |                       |_______Aplicações Mobile Device
                    |                       |
                    |                       |_______Asp.NET Web Application
                    |
        E la no fundo do posso ( o SGBD PosgresSQL super robusto)
                
    Indico esse sgbd porque trabalho com ele ja a 4 anos em uma empresa que tem um fluxo de mais de 10 milhoes de registros roda em plataforma linux (Servidor com 8gb de Ram, biprocessado, so a fonte da maquina e 2000 Watts).




    Friday, March 07, 2008 3:12 AM
  • O link abaixo mostra um desejo macro de como minhas camadas se comunicão:

     

    http://www.topliga.com.br/images/camadas.jpg

     

    Para mais detalhes me encaminhem um e-mail:

     

    helder.marques@uol.com.br

    Thursday, March 27, 2008 10:23 PM

All replies

  • Alexandre,

     

    Vamos lá.

     

    1)Eu gosto de trabalhar da forma que você explicou, desta forma acho que fica mais organizado.

     

    2)Existe os dois modelos, cada um tem vantagens e desvantagens.

    Por exemplo, se vc construir sua própia classe vc terá mais controle. Se vc utilizar um framework ganhará em produtividade!

     

    3)Referente a DataSet, tudo é relativo a qual o objetivo.

    Por exemplo, para popular um DropDownList onde vc não utilizar para alterar os dados é mais indicado utilizar o dataReader, pois é mais rápido. Por outro lado vc quer um boa integração com XML quer trabalhar de forma desconectada e pode alterar os dados é mais indicado o dataset/datatable. Sujiro vc dar uma estuda mais afundo nestas classes, pois compreender o foco de cada uma delas é de grande valia, pois ajudará vc a constriuir aplicações sólidas e performáticas.

     

    4)A questão quatro não conheço nenhum projeto público deste nível.

     

    Abraços,

     

     

    Monday, March 03, 2008 2:42 AM


  • Alexandro no meu projeto que estou desenvolvendo para escola. Estou usando da seguinte forma

            Windows Forms (camada de apresentação)
                      |
                      |
                   DLL  ( 1 classe capa de acesso a dados ) e o restante faz parte do negocio (Alunos.vb,  Classes.vb, Matricula.vb, DocRec.vb, DocAlu.vb, Pendfin.vb)  - Sem contar que fiz tudo atráves do diagrama de classe que a IDE ofere...dentro do projeto do tipo  Class Libray
                                            |
                    |                       |_______Aplicações Mobile Device
                    |                       |
                    |                       |_______Asp.NET Web Application
                    |
        E la no fundo do posso ( o SGBD PosgresSQL super robusto)
                
    Indico esse sgbd porque trabalho com ele ja a 4 anos em uma empresa que tem um fluxo de mais de 10 milhoes de registros roda em plataforma linux (Servidor com 8gb de Ram, biprocessado, so a fonte da maquina e 2000 Watts).




    Friday, March 07, 2008 3:12 AM
  • O link abaixo mostra um desejo macro de como minhas camadas se comunicão:

     

    http://www.topliga.com.br/images/camadas.jpg

     

    Para mais detalhes me encaminhem um e-mail:

     

    helder.marques@uol.com.br

    Thursday, March 27, 2008 10:23 PM