Projeto TCC, Quais escolhas? (FW, IDE, etc)

16 respostas
J

Seguinte…
Estamos em 8 pessoas (vamos ver se ninguem pede para sair XD) nossa missão é desenvolver
um sistema na area financeira (empresarial), este sistema deverá ser essencialmente desktop
mas deverá permitir acessos via dispositivos móveis.

Somos totalmente noobas em java, nosso curso são 6 semestres e ainda estamos no terceiro,
ou seja, ainda não tivemos aula de java, mas esta é a linguagem “menina dos olhos”* da faculdade,
todos começam os tccs no 5º semestre, como nos queremos fazer o tcc com 2 assuntos
(desenvolvimento agil e desenvolvimento para dispositivos móveis), resolvemos antecipar e
iniciar já.

As dúvidas:

[list]Por onde começar[/list][list]Qual Framework?[/list][list]Qual IDE [/list][list]O que é melhor para desenvolver para desktop?[/list][list]E para dispositivos móveis?[/list][list]Qual banco de dados?[/list]

  • Explicando pq mesmo sendo a “menina dos olhos”, no 3º semestre ainda não é ensinado a
    linguagem: Pq os caras acham que primeiro é preciso entulhar de disciplinas do tipo Algoritmo,
    Teoria OO, SQL e também c#, para depois enfrentar o “grande monstro” que é prof de Java
    (ai que meda! :slight_smile: )

16 Respostas

marcio_de_jesus_sant

Olha ao meu ver se vce não tiver uma bse dessa materias OO, BD,Algoritmo vce tera dificuldade então é assim mesmo a respeito de IDE pode ser NetBeans para desenvolvimento desktop e eclipse para dispositivo moveis, BD pode ser mysql. essa é aminha opinião framework eu não comentei porque seria interessante vce ver o funcionamento de conexão sem framework para vce entender e depois sim procurar para um famework para conexão como Hibernate. ai vou te adianta baixa umas videoa aulas pra vce assistir e ir estudando
http://dionlan.blogspot.com/search/label/JSF

luxu

sei naum mas pra dispositivos móveis as coisas são mais compactas, ou seja, o q usar no projeto desktop é um pouco diferente, dê uma pesquisada…

A

Olha…

A resposta é um tanto complexa, veja:

1 - Vc está familiarizado com alguma ferramenta/técnologia Java específica?
2 - Pq tem d ser essencialmente Java Desktop?
3 - O desenvolvimento Java Mobile tem muitas particularidades a serem levadas em conta,
isso foi pensado?

Se fosse eu q estivesse hj fazendo um tcc, embora no final do ano terei d fazer o meu tb,
talvez eu escolha:

1 - IDE Eclipse Indigo com plugin SVN visando o desenvolvimento em equipe
2 - Framework JSF 2 com AJAX nativo e CSS, PrimeFaces e JQuery
3 - Seria essencialmente Java Web (pois não tenho experiência alguma com Java Desktop e Mobile
apenas conhecimento através de leitura e faculdade)

Será q vc pode falar um pouco do skill (conhecimento, perfil) da sua equipe e também do objetivo de negócio (meta do seu tcc, regras/processos de négocio q ele irá sistematizar)?

abs,

J

andredecotia:

1 - Vc está familiarizado com alguma ferramenta/técnologia Java específica?

Como eu disse na msg original, somos completamente “NOOBAS” em java

Java, é a escolha, agora…
Vc acha q um sistema voltado para finanças poderia ser diferente? (dê motivos) sei lá
de repente estamos errados, o que quis eu dizer com “essencialmente” é que o sistema
não seria antes de tudo um website e sim um sistema interno da empresa, mais ou
menos como um ERP, que pode ter partes web, mas em essencia sera desktop.

andredecotia:
3 - O desenvolvimento Java Mobile tem muitas particularidades a serem levadas em
conta, isso foi pensado?

Este é um dos motivos de termos postado aqui.

andredecotia:
“Se fosse eu q estivesse hj fazendo um tcc, embora no final do ano terei d fazer o meu tb,
talvez eu escolha:”

Eheheh, Bem vindo ao TCC! XD

J

andredecotia:
Será q vc pode falar um pouco do skill (conhecimento, perfil) da sua equipe e também do objetivo de negócio (meta do seu tcc, regras/processos de négocio q ele irá sistematizar)?

Faltou comentar esta:
Como eu disse na msg original, somos todos “NOOBAS” em java, a maioria pessoas muito jovens, então, sem grande experiencia, mas com certeza todos muito inteligentes.
Quanto às regras de negócio, não tem nada específico, poderiamos considerar como regras de negócios, as regras de um sistema genérico da area de finanças.

Michel_M

Primeiro de tudo eu começaria modelar o banco de dados ou talvez fazer a modelagem UML(no seu TCC vai ser obrigado fazer a modelagem do sistema?) do sistema.

Para banco de dados eu te indicaria o MySQL(RAZOAVEL), SQLServer(BOM) ou Postgre(OTIMO).

Boa sorte…

J

Michel M:
Primeiro de tudo eu começaria modelar o banco de dados ou talvez fazer a modelagem UML(no seu TCC vai ser obrigado fazer a modelagem do sistema?) do sistema.

Para banco de dados eu te indicaria o MySQL(RAZOAVEL), SQLServer(BOM) ou Postgre(OTIMO).


Ok, este conhecimento ja temos, começaremos com certeza modelando o BD, no momento a escolha esta sob o Firebird, mais pela licença.
Argurmentos convincentes e mudariamos o BD, nossa maior duvida é quanto ao FW e IDE.

O que acham do Openswing para desenvolvimento Desktop?

Obrigado

ViniGodoy

Se você é completamente Newbie em Java, comece estudando Java:


http://www.submarino.com.br/produto/1/21294017/use+a+cabeca!+java

Depois você estuda um pouco de Android.

E depois vc volta no GUJ com ainda mais dúvidas e nos pergunta.

E, sim, primeiro é mesmo preciso entulhar de disciplinas como algorítmo, teoria OO, estruturas de dados, bancos de dados, etc… aliás, aprender isso é muito mais importante do que aprender uma mera linguagem, como o Java.

Alys

javalob:
andredecotia:
3 - O desenvolvimento Java Mobile tem muitas particularidades a serem levadas em
conta, isso foi pensado?

Este é um dos motivos de termos postado aqui.

Recentemente fiz meu TCC relacionado a desenvolvimento móvel, então, posso lhe adiantar alguns percalços:

1 - Nem todas as plataformas rodam Java ME (dispositivos com Android, por exemplo)

2 - Existem diferentes tipos de dispositivos móveis, não só o celular.

3 - Cada dispositivo móvel tem suas particularidades de memória, tamanho da tela, rede wireless, bluetooth, etc.

4 - Voltando ao problema da memória, isso interfere diretamente em como você vai armazenar informações (e, de novo: isso varia um pouco de dispositivo para dispositivo).

O assunto é extremamente amplo, por isso você tem que filtrar bastante. Para considerar fazer o trabalho envolvendo plataformas móveis, sugiro que você pense um pouco a respeito dos itens que levantei, e veja se é viável ou não, dentro do seu prazo, conhecimento, matérias a cursar, etc.

J

[quote=ViniGodoy]Se você é completamente Newbie em Java, comece estudando Java:


http://www.submarino.com.br/produto/1/21294017/use+a+cabeca!+java.[/quote]

O problema é este, por exemplo, este livro que vc cita eu tenho, mas ele apresenta penas a
linguagem, o que temos dúvida é por onde começar, talvez esta entrevista possa
esclarecer o tipo de duvida que temos:

http://itweb.com.br/video/tequines-especialista-explica-principais-erros-que-desenvolvedores-java-cometem-na-hora-da-criacao/

ViniGodoy

Mas você já sabe a linguagem? Se nem isso sabem, comecem por isso.
Sem isso, vocês sequer serão capazes de entender o que os frameworks oferecem.

J

ViniGodoy:
Mas você já sabe a linguagem? Se nem isso sabem, comecem por isso.
Sem isso, vocês sequer serão capazes de entender o que os frameworks oferecem.

Sim, não que sejamos ‘experts’, mas a maioira do grupo ja tem experiencia com outras linguagens
OO e ja brinca com o Java.

Nossa principal preocupação neste momento é iniciar com as escolhas
das ferramentas/ide/fw de forma correta, na nossa opinião, não basta sair programando.

Michel_M

Qual IDE que vc tem mais intimidade eclipse ou netbeans?

Pois qualquer uma das duas são otimas ferramentas para o desenvolvimento…
Ai fica a seu critério…

ViniGodoy

Bom, como o sistema é desktop, vocês tem poucas alternativas quanto ao ambiente gráfico, a não ser o Swing. É importante estudar bem os fundamentos do Swing (layout managers, models, etc), para não cair nos erros mais do que batidos aqui no GUJ (e que me levou a colocar a observação em vermelho em minha assinatura). Dê uma olhada nas 15 dicas úteis no uso do Swing.

Para a parte de persistência, vocês podem usar ou o Hibernate, ou então o pacote de persistência do Spring (que é mais próximo do JDBC e menos automático).
O Spring também vai fornecer um poderoso framework de IoC, e até classes para auxílio na interface gráfica.

Para a parte de celulares, comecem já a estudar o Android.

Quanto à IDEs. O Netbeans possui um editor gráfico poderoso, chamado Matisse. [color=red]Não o utilizem antes de entender bem como o Swing funciona!!![/color] Eu recomendaria inclusive que vocês primeiro fizessem uma mini-aplicação Swing no braço, para só depois se aventurarem no matisse. O Eclipse possui como editor de telas o Google Window Builder, que também é muito bom. As duas IDEs são excelentes. Sugiro que vocês programem numa delas, seja lá qual vocês mais gostarem ou a que for mais conveniente - por exemplo, vocês podem optar por uma que já esteja nos labs da sua faculdade.

Só não façam metade da equipe programar em um lugar e metade em outro.

Existem diversas alternativas para o banco de dados, mas nenhuma delas é significativamente melhor do que a outra para um sistema de pequeno porte. Novamente, optem pela sua conveniência e escolher a que já estará instalada nos computadores da sua faculdade pode ser uma ótima escolha.

Michel_M

Aproveitando já, como o projeto vai ser feito em equipe
tenta dar uma olha em versão de controle,vai ser uma
mão na roda.

Pq ficar retalhando código ninguém merece.

J

Michel M:
Aproveitando já, como o projeto vai ser feito em equipe
tenta dar uma olha em versão de controle,vai ser uma
mão na roda.

Pq ficar retalhando código ninguém merece.

Acho que minha msg não foi muito clara, eheheh, somos newbies, mas nem tanto. :slight_smile:

SOMOS NWEBIES ESSENCIALMENTE EM JAVA. ahãããñ, quer dizer… sei lá, entende?

Criado 23 de setembro de 2011
Ultima resposta 25 de set. de 2011
Respostas 16
Participantes 7