Gente, sou programador PHP e fiz um curso basico e avançado de Java.
Posso dizer que realmente ajuda, agora o que ensina mesmo é ler livros, a pratica e bons sources, para entender como os mesmos foram feitos.
Sei que consigo fazer um sistema simples de restaurante (produtos, mesas, garcons, pedidos)… Porem a questão do começo, do passo inicial está me “matando”… Alguém já fez algum projeto parecido, pode me dar uma ajuda para começar…
Escolha uma metodologia de desenvolvimento de software(RUP, Praxis, XP, SCRUM etc), que ela descreverá os passos para a construção do seu sistema, desde a modelagem à documentação.
Basicamente você vai começar pela coleta de requisitos, para depois partir para a modelagem do sistema.
Espero que isso seja um pontapé para você
T
treloso
Tem alguma que você acha mais fácil para começar ou então que seria melhor para o meu projeto?
Valeu pela dica!
RichardVaugh
Eu acharia interessante você dar uma olhada em padrões de projeto orientados a objetos…
É isso que estou fazendo atualmente. Está me ajudando muito com essa questão de ‘onde começar’.
rodrigo.ferreira
Começe sempre começando e terminando pelo cliente.
1)Anotetudooqueoclientedeseja(ouçaoclientemuito)2)FaçaalistadeRecursos(pontosimportantesdoqueoclientequer,oueleachaquequer...inconstânciaseatributoscomuns)3)Destesrecursos,extraiaosrequisitosetentemontarumesboçodeformainformaldosistema(escritonumalinguagemqueoclienteentenda,geralmentetextual...enãoemdiagramas)4)Façaoprocessochamadode"Análise de Domínio",queéondevocêmostraparaoclienteoquevocêconseguiuabstrairpraeletercertezaseérealmenteaquiloqueelequer.(Estespassossãomuitoimportantesparadiminuiroriscodascoisasdaremerradasnofuturo...doqueclienteperceberquevocênãofezoqueelequeriaeele,consequentementenãotepagarcomovocêqueria...:-))5)Apartirdoavaldocliente,verifiqueospontosmaisimportantesdosrecursosecomeçeporeles...analizandosesabeoquerealmentesignificaesesabequetecnologiautilizar/comoimplementarorecurso/requisito...casonãosaiba,percamaistemponestaetapadescobrindo,porqueissorealmentepodeserumproblemanofuturo.6)Façaodiagramadecasosdeuso.7)Façaoscasosdeuso...8)Façaaanálisetextualdoscasosdeusopradescobriroscandidatosaclasseseametodos9)DescubraasclassesefaçaanálisedeOO,useosprincípiosfundamentaisdeOO(SRP,OCP,DRY,LSP,etc)eimplementeosDesignPatternsapropriados...10)etc...etc...etc...
Como os colegas já disseram, não existe uma fórmula pronta para isso… e talvez sejam necessários mais ou menos passos para realizar uma boa análise (consequentemente uma boa codificação), gerando menos dores de cabeça no futuro para a extensão do software (manutenção/extensão). Afinal, “O software sempre vai mudar!”. Todas estas etapas são importantes quando você está elaborando uma arquitetura/projeto para uma equipe de desenvolvimento aonde os riscos tendem a ser maiores. A recomendação é uma boa leitura de livros sobre análise e projeto orientado a objetos (A&POO)… por lá, conseguiremos sempre aprender mais e mais coisas desta ciência interminável e sempre mutável.
Abraço,
T
treloso
Rodrigo, espetacular sua explanação, muito obrigado, vou sim procurar algum livro que me dê até mais segurança para começar.
Link_pg
Olá!
Uma dica que dou é criar uma lista de funcionalidades do seu sistema, ou seja, o QUE ele vai fazer e o que ele NÃO vai fazer.