Construção de algoritmos: tipos de dados simples e estruturados, variáveis e constantes, comandos de atribuição, comandos de entrada e saída, avaliação de expressões, funções pré-definidas, conceito de bloco de comandos, estruturas de controle, subprogramação, passagem de parâmetros, recursividade, programação estruturada.
Noções de complexidade de algoritmos. Estrutura de dados: definição e utilização; vetor, matriz, listas, pilhas, filas, árvores e suas generalizações. Conceitos e algoritmos de manipulação. (Algoritmos)
Noções de complexidade de algoritmos. Estrutura de dados: definição e utilização; vetor, matriz, listas, pilhas, filas, árvores e suas generalizações. Conceitos e algoritmos de manipulação. (Estrutura de Dados)
Programação orientada a objetos: conceitos fundamentais, princípios de concepção, padrões.
Linguagens de programação. Java,
Tecnologias e práticas frontend web: Acessibilidade, HTML,
Ajax, frameworks (Bootstrap, Angular, VueJS e React).
Padrões de frontend: SPA e PWA.
Tecnologias backend: Frameworks: Hibernate, Struts, SpringBoot, Ruby on Rails, Node.js. o Especificações: JEE (JPA, EJB, JSF, JMS e JTA), JVM.
Ferramentas de qualidade: Selenium e JMeter. Ferramentas de gestão de configuração: versionamento (Git e GitLab), CI/CD (GitLab CI e Jenkins). Containers: Docker e Kubernetes. DevOps: versionamento de código; pipeline; CI/CD
XML: Estrutura da linguagem, transformação XSLT, DTD, XML Schema.
Noções de Desenvolvimento MVC (Model View Controller) e Mapeamento ObjetoRelacional (ORM).