JavaRush /Blogue Java /Random-PT /Pausa para café #52. 10 sites mais úteis para desenvolved...

Pausa para café #52. 10 sites mais úteis para desenvolvedores Java, 7 modelos de desenvolvimento de software que você deve conhecer

Publicado no grupo Random-PT

10 sites mais úteis para desenvolvedores Java

Fonte: Tarun Telang Abaixo está uma lista dos recursos da web mais eficazes e confiáveis ​​sobre a tecnologia Java. Eles podem ser úteis tanto para programadores Java experientes quanto para iniciantes. Tenho usado esses recursos há anos para encontrar as informações mais recentes sobre tecnologias Java.Pausa para café #52.  10 sites mais úteis para desenvolvedores Java, 7 modelos de desenvolvimento de software que você deve conhecer - 1

1. Seção sobre tecnologia Java no site da Oracle

O recurso contém informações sobre quase tudo que você precisa saber sobre Java, incluindo notícias, artigos, blogs, materiais de referência, opções de carreira e informações relacionadas a projetos Java. Recomendo visitar este site regularmente para se manter atualizado com as últimas novidades sobre a plataforma Java.

2. Página de download do Java

Você não pode ficar sem este recurso se quiser baixar e instalar a versão mais recente do Java Development Kit. Ele também contém instruções detalhadas sobre como executar arquivos de instalação Java em diversas plataformas.

3. Referência da API Java

Esta seção do site da Oracle contém informações de referência sobre a API Java SE. A documentação HTML é gerada a partir do código-fonte Java usando a ferramenta JavaDoc.

4. Tutorial Java

Há uma grande coleção de tutoriais e materiais de referência sobre a linguagem de programação Java. As lições também estão disponíveis no livro The Java Tutorial, Sixth Edition (em inglês). Você pode seguir este link para comprá-lo na Amazon.

5. Javarancha

O site contém testes práticos e recursos úteis para aprender tópicos que vão desde Java, bancos de dados, Android até preparação para certificação. Este é um lugar muito bom para aprender Java através de exercícios práticos.

6. Projetos relacionados ao Java EE no GitHub

Aqui você encontra projetos relacionados ao Java EE, bem como projetos anteriormente hospedados em Java.net. Este site contém muitos links diferentes para projetos com informações adicionais sobre eles e informações de contato relacionadas a esses projetos.

7. Javapédia

Visite este site para acompanhar discussões, perguntas e respostas sobre tecnologias e estruturas Java. Javapedia.net é útil tanto para desenvolvedores experientes de Java e Java EE, quanto para iniciantes e estudantes que se preparam para entrevistas.

8.TheServerSide.com _

O site contém informações sobre as tecnologias mais recentes do Java Enterprise Edition. Este é um lugar onde os desenvolvedores Java discutem vários tópicos relacionados a Java, Java EE, programação, software e tendências no desenvolvimento do lado do servidor. Esta é uma grande comunidade online para arquitetos corporativos e desenvolvedores Java, onde você pode encontrar notícias diárias, discussões técnicas, webinars e outras informações úteis.

9.Java.com _

Este é o lugar onde você pode encontrar o software Java mais recente (jogos, aplicativos móveis e de desktop). Este é um recurso legal e seguro para instalação de plugins Java. Ao contrário de muitos outros sites, não há anúncios pop-up ou arquivos de instalação duvidosos que não sejam realmente relacionados ao Java.

10. Vá.Java

Aqui você encontrará informações atualizadas sobre como Java suporta a inovação que impulsiona nosso mundo digital. O site contém uma coleção de recursos na plataforma Java para estudantes, amadores, desenvolvedores e executivos de empresas de TI. Embora você possa encontrar muitos sites semelhantes na Internet com links Java, a maioria deles está desatualizada e mostra informações relevantes apenas antes do Java 5. Desde o Java 8, a linguagem passou por grandes mudanças, o que exige que os desenvolvedores adotem uma nova abordagem para programação em Java. A linguagem também está evoluindo muito rapidamente, com novas versões do Java sendo lançadas a cada seis meses.

7 modelos de desenvolvimento de software que você deve conhecer

Fonte: DZone O ciclo de vida de desenvolvimento de software é o processo de planejar, projetar, desenvolver, testar e implantar software ao menor custo possível, de preferência no menor tempo possível. Para atingir este objetivo, as equipes de desenvolvimento devem escolher o modelo de desenvolvimento de software correto que atenda aos requisitos do projeto e às expectativas de todas as partes interessadas. Pausa para café #52.  10 sites mais úteis para desenvolvedores Java, 7 modelos de desenvolvimento de software que você deve conhecer - 2Existem 7 modelos que você deve conhecer, do Waterfall ao V-Model e ao Scrum. Vejamos cada um deles.

1. Modelo Cascata (Cachoeira)

Pausa para café #52.  10 sites mais úteis para desenvolvedores Java, 7 modelos de desenvolvimento de software que você deve conhecer - 3O modelo cascata é considerado um dos primeiros métodos de desenvolvimento de software. Já pelo nome fica claro que este processo de desenvolvimento inclui uma progressão linear em ordem: análise, design, desenvolvimento, teste, implantação e suporte. Cada etapa é claramente definida por resultados específicos. O modelo cascata é sequencial, o que significa que a próxima etapa não pode começar até que a atual seja concluída. Uma etapa é considerada concluída quando o objetivo é alcançado e alguém concorda em continuar trabalhando no projeto. Não há flexibilidade neste modelo – você não pode pular, voltar ou alterar etapas. Como resultado, o processo de desenvolvimento pode ser desnecessariamente complexo e caro. A falta de flexibilidade torna este modelo mais caro e trabalhoso em comparação com outros modelos. Se os requisitos não forem claros ou mal compreendidos, usar este modelo será muito arriscado. Além disso, este modelo não é ideal para projetos de longo prazo, complexos ou em andamento, onde é necessária maior flexibilidade. Embora as deficiências do modelo sejam visíveis e significativas, ele pode ser útil para projetos pequenos e pontuais, com requisitos limitados e prazos curtos, porque é simples e rápido de configurar. No entanto, a equipe deve garantir que todos os requisitos sejam claramente definidos, inequívocos e não possam mudar no futuro. O modelo Waterfall caiu em desuso à medida que as equipes de TI adotavam um desenvolvimento de software mais ágil que permite melhorias contínuas.

2. Modelo V

Pausa para café #52.  10 sites mais úteis para desenvolvedores Java, 7 modelos de desenvolvimento de software que você deve conhecer - 4O modelo V, ou modelo de aprovação e verificação, estende o modelo em cascata adicionando um plano de teste. Em vez de descer linearmente pelos estágios de desenvolvimento de software, o modelo V desce para o estágio de codificação, depois gira e começa a subir pelos estágios de teste, formando um formato de V. Cada estágio de desenvolvimento corresponde a uma atividade de teste específica. Isso permite que a equipe encontre bugs nas especificações, no código e na arquitetura no início do projeto. Adicionar um plano de teste dá ao modelo V uma chance melhor de sucesso do que o modelo em cascata. No entanto, o modelo V permanece linear, o que o torna inflexível. Assim como no modelo cascata, a equipe só poderá iniciar a próxima etapa após a conclusão da etapa anterior. Isso torna as mudanças difíceis, caras e demoradas. Assim, este modelo é mais adequado para projetos curtos com requisitos fixos, bem definidos e documentados, mas não é ideal para projetos de longo prazo, complexos ou em curso.

3. Modelo iterativo (incremental)

Pausa para café #52.  10 sites mais úteis para desenvolvedores Java, 7 modelos de desenvolvimento de software que você deve conhecer - 5Como outros modelos de desenvolvimento de software, o modelo iterativo (incremental) foi projetado para superar algumas das desvantagens do modelo em cascata. Também começa com o planejamento e termina com a implantação. Mas, ao contrário do modelo em cascata, este modelo envolve a repetição de ciclos ao longo do processo. Esses loops podem ser iterativos (repetidos) ou incrementais (passo a passo). O processo de desenvolvimento começa com um pequeno conjunto de requisitos e cada ciclo dentro dele é acompanhado por um novo conjunto de requisitos. A natureza iterativa deste modelo permite que o software evolua e cresça à medida que pequenas alterações podem ser feitas ao longo do processo. Isso acontece porque a nova iteração se baseia na anterior. Os desenvolvedores podem fazer alterações com base na experiência de ciclos anteriores. Como todos os requisitos não são definidos no início do projeto e muitas alterações são feitas ao longo do caminho, o trabalho pode começar rapidamente. No entanto, os recursos podem ser rapidamente esgotados à medida que o processo se repete muitas vezes, sem falar que a gestão se torna mais complexa. Embora o modelo permita algumas mudanças, ainda consiste em processos claramente definidos, que por vezes levam à inflexibilidade. O custo de fazer alterações é menor que os modelos em cascata e V, mas este modelo não é ideal para projetos onde os requisitos podem mudar durante a iteração. O modelo iterativo cria mais riscos devido a mudanças frequentes, custos e requisitos de recursos desconhecidos e prazos incertos.

4. Modelo de prototipagem

Pausa para café #52.  10 sites mais úteis para desenvolvedores Java, 7 modelos de desenvolvimento de software que você deve conhecer - 6O modelo de prototipagem concentra-se em melhorar a compreensão da equipe de desenvolvimento sobre os desejos e necessidades do cliente através da criação de protótipos. Ao criar uma pequena cópia de trabalho do programa desejado, mal-entendidos podem ser eliminados antes do início do desenvolvimento completo. O protótipo é desenvolvido, testado e finalizado tendo em conta os desejos e comentários do cliente. Assim que o protótipo for aceito, a equipe começa a desenvolver o produto final. Um modelo de prototipagem pode reduzir drasticamente o número de iterações. Isso economiza tempo e aumenta as chances de satisfação do cliente. No entanto, você precisa considerar o tempo que um desenvolvedor gasta desenvolvendo protótipos. Se o cliente exigir muitas mudanças, mudar de ideia com frequência ou fizer solicitações irrealistas, o desenvolvimento de um protótipo pode rapidamente se tornar complicado. Por esta razão, é melhor limitar o número de iterações permitidas antes que o protótipo seja aceito. Uma vez que o protótipo final esteja em desenvolvimento, nenhum requisito ou alteração adicional poderá ser feito no plano. Esta é uma desvantagem significativa do modelo de prototipagem.

5. Modelo espiral

Pausa para café #52.  10 sites mais úteis para desenvolvedores Java, 7 modelos de desenvolvimento de software que você deve conhecer - 7O modelo espiral concentra-se na avaliação de riscos. Com isso, qualquer equipe que queira utilizar esse modelo deve contar com especialistas com conhecimentos e habilidades em uma área específica. O modelo consiste em quatro etapas: planejamento, análise de riscos, desenvolvimento e avaliação. O número de voltas na espiral depende do projeto específico e dos requisitos do gestor. Em média, o desenvolvimento de software utilizando este modelo leva 6 meses. O modelo espiral combina os recursos do modelo em cascata e da prototipagem, enfatizando o design, incluindo a prototipagem (durante a fase de design) e seguindo etapas semelhantes às do modelo em cascata. O desenvolvimento contínuo e iterativo permite que os desenvolvedores façam alterações e adicionem novos recursos. Além disso, o desenvolvimento é sistemático, o que simplifica o processo. O cliente está envolvido na revisão de cada etapa do ciclo, o que pode ser oneroso para o processo de desenvolvimento se não houver comunicação constante com o cliente. Como o número de ciclos ou iterações não está definido, existe o risco de excesso de orçamento e de cumprimento de prazos. Portanto, criar um produto acabado geralmente requer muito tempo e despesas.

Metodologia flexível (Ágil)

Agile é uma metodologia baseada em 12 princípios descritos no Manifesto Ágil . É mais uma mentalidade do que um conjunto de protocolos rígidos. O método Agile foi projetado para desenvolver software de forma mais eficiente do que usar modelos anteriores, incluindo o modelo em cascata. A essência do modelo ágil é o foco na colaboração, comunicação e mudança constante. Existem várias opções para o desenvolvimento ágil. Todos eles se concentram no trabalho em equipe, na colaboração multifuncional, no desenvolvimento iterativo e no feedback inicial do cliente. Testes, feedback e mudanças permitem que as equipes desenvolvam e lancem softwares melhores. Vejamos os 2 modelos Agile.

6. Modelo Scrum

Pausa para café #52.  10 sites mais úteis para desenvolvedores Java, 7 modelos de desenvolvimento de software que você deve conhecer - 8O modelo Scrum é o modelo Agile mais popular. Suas iterações de desenvolvimento são conhecidas como sprints. Durante esses sprints de 1 a 4 semanas, as equipes avaliam o sprint anterior, adicionam novos recursos e planejam o próximo sprint. Alterações não são permitidas após a definição das atividades do sprint. Após cada sprint, novos recursos/elementos são adicionados que serão codificados e testados no próximo sprint. Isso continua até que todos os recursos tenham sido adicionados e o projeto seja considerado pronto para lançamento. O aumento da colaboração entre equipes multifuncionais e entre a organização e o cliente reduz os mal-entendidos e erros que muitas vezes surgem da má comunicação. Além disso, etapas adicionais reduzem o tempo de lançamento no mercado. A comunicação aprimorada reduz o tempo gasto na solução de erros e aumenta a probabilidade de o usuário final ficar satisfeito com o produto. No entanto, tal cooperação requer uma participação significativa do cliente no processo de trabalho. Você também precisa levar em consideração que se o cliente exigir a adição de muitas funções, o prazo do projeto poderá ser atrasado.

7. Modelo Kanban

Pausa para café #52.  10 sites mais úteis para desenvolvedores Java, 7 modelos de desenvolvimento de software que você deve conhecer - 9Ao contrário de outros modelos, o Kanban não possui iterações distintas. Quando uma equipe planeja iterações, elas são sprints incrivelmente curtos, às vezes tão curtos quanto um dia. Para indicar visualmente o andamento do projeto e outros detalhes, é utilizado um quadro com anotações em forma de adesivos (adesivos). Essa visualização permite que a equipe se concentre no recurso mais importante em desenvolvimento no momento. Além disso, o quadro Kanban enfatiza que há espaço para melhoria contínua dos recursos. Embora o método do post-it possa ajudar a motivar uma equipe a se concentrar na tarefa importante, é uma maneira inadequada de definir e manter cronogramas. Por esta razão, é muito difícil planear projetos de longo prazo. Como não existe um estágio de planejamento definido, alterações podem ser feitas a qualquer momento. Uma das desvantagens comuns do Kanban é a falta de prazos. Este problema pode piorar se as alterações forem feitas constantemente.

Transição para Ágil

Cada um desses modelos foi criado para melhorar o processo de desenvolvimento e entrega de software. Qualquer modelo de desenvolvimento pode funcionar bem para tipos específicos de projetos. No entanto, os modelos manuais mais antigos, como o modelo em cascata, estão rapidamente a tornar-se uma coisa do passado. As equipes de TI e as empresas em geral devem agir com mais rapidez e eficiência na criação de software, no atendimento às necessidades dos clientes e no acompanhamento dos concorrentes. Um processo de desenvolvimento de software mais rápido, repetível e seguro é baseado na automação. E como o nível de automação e velocidade é inatingível para muitos modelos, a metodologia Agile acaba se tornando mais popular.
Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION