Qualificação universitária
A maior faculdade de informática do mundo”
Porquê estudar no TECH?
Este Programa avançado atualizará os seus conhecimentos em Programação de forma prática, 100% online, sem abrir mão do máximo rigor acadêmico”

Este programa destina-se aos profissionais interessados em alcançar um nível mais elevado de conhecimento em Programação . Seu principal objetivo é capacitar o aluno para aplicar no mundo real os conhecimentos adquiridos ao longo do programa, além de proporcionar um ambiente de estudo baseado nas condições que podem ser encontradas em seu futuro, de forma rigorosa e realista.
Este Programa avançado irá preparar o aluno para a prática profissional da Programação , através de uma capacitação transversal e versátil, adaptada às novas tecnologias e inovações desta área. Além disso, proporcionará um amplo conhecimento em Programação em um programa ministrado por profissionais da área.
Oferecendo ao aluno a oportunidade de estudar 100% online, sem abrir mão de suas obrigações e facilitando o seu retorno à universidade. Além de atualizar seus conhecimentos e ajudá-lo a conquistar um certificado, contribuindo para seu crescimento pessoal e profissional.
Este programa de estudos melhorará suas habilidades e atualizará seus conhecimentos em Programação "
Este Programa avançado de Programação conta com o conteúdo mais completo e atualizado do mercado. Suas principais características são:
- O Desenvolvimento de 100 cenários simulados apresentados por especialistas em Programação
- Seu conteúdo gráfico, esquemático e extremamente prático proporciona informações científicas e práticas sobre Programação
- Atualizações sobre os últimos avanços em Programação
- Exercícios práticos onde o processo de autoavaliação é realizado para melhorar a aprendizagem
- Sistema interativo de aprendizagem baseado no método do estudo de caso e sua aplicação na prática real
- Aulas teóricas, perguntas aos especialistas, fóruns de discussão sobre temas controversos e trabalhos de reflexão individual
- Acesso a todo o conteúdo desde qualquer dispositivo fixo ou portátil com conexão à Internet
Comece agora a sua capacitação em Programação com este programa intensivo, sem sair do conforto de sua casa"
Com uma equipe de professores constituída por profissionais da área de Ciências da Computação, cuja experiência é somada nesta capacitação, além de reconhecidos especialistas de conceituadas instituições e universidades de prestígio.
Seu conteúdo multimídia, desenvolvido com a mais recente tecnologia educacional, oferece ao profissional uma aprendizagem situada e contextual, ou seja, um ambiente simulado que proporcionará uma aprendizagem imersiva, a fim de capacitá-lo para situações reais.
Este programa de estudos tem como fundamento a Aprendizagem Baseada em Problemas, que permite ao profissional abordar a solução de problemas reais que surgem ao longo do curso e de sua prática profissional. Para isso, o profissional contará com a ajuda de um sistema inovador de vídeos interativos desenvolvidos por reconhecidos especialistas em Sistemas de Informação com ampla experiência de ensino.
Aproveite a mais recente tecnologia educacional para se atualizar em Programação sem sair de casa"

Conheça os últimos avanços em Programação com o suporte de especialistas da área"
Plano de estudos
O conteúdo deste programa foi elaborado por uma equipe de profissionais de Ciências da Computação, conscientes da relevância da capacitação atual para aprofundar-se nessa área de conhecimento, com o objetivo de enriquecer humanisticamente o aluno, elevando o nível de conhecimento em Programação através das mais recentes tecnologias educacionais disponíveis.

Este Programa avançado de Programação conta com o conteúdo mais completo e atualizado do mercado"
Módulo 1. Fundamentos de Programação
1.1. Introdução à programação
1.1.1. Estrutura básica de um computador
1.1.2. Software
1.1.3. Linguagens de programação
1.1.4. Ciclo de vida de um software
1.2. Design de algoritmos
1.2.1. Solução de problemas
1.2.2. Técnicas descritivas
1.2.3. Elementos e estrutura de um algoritmo
1.3. Elementos de um programa
1.3.1. Origem e características da linguagem C++
1.3.2. O ambiente de desenvolvimento
1.3.3. Conceito de programa
1.3.4. Tipos de dados fundamentais
1.3.5. Operadores
1.3.6. Expressões
1.3.7. Sentenças
1.3.8. Entrada e saída de dados
1.4. Sentenças de controle
1.4.1. Sentenças
1.4.2. Bifurcações
1.4.3. Circuitos
1.5. Abstração e modularidade: funções
1.5.1. Design modular
1.5.2. Conceito de função e utilidade
1.5.3. Definição de uma função
1.5.4. Fluxo de execução em uma chamada de função
1.5.5. Protótipo de uma função
1.5.6. Retorno dos resultados
1.5.7. Chamada de uma função: parâmetros
1.5.8. Passagem de parâmetro por referência e por valor
1.5.9. Escopo identificador
1.6. Estruturas estáticas de dados
1.6.1. Matrizes (Arrays)
1.6.2. Matrizes e Poliedros
1.6.3. Busca e classificação
1.6.4. Funções de E/S para cadeias de caracteres
1.6.5. Estruturas e uniões
1.6.6. Novos tipos de dados
1.7. Estruturas de dados dinâmicas: ponteiros
1.7.1. Definição de ponteiro
1.7.2. Operadores e operações com ponteiros
1.7.3. Matrizes (Arrays) de ponteiros
1.7.4. Ponteiros e matrizes (Arrays)
1.7.5. Ponteiros para cadeias de caracteres
1.7.6. Ponteiros para estruturas
1.7.7. Indireção múltipla
1.7.8. Ponteiros para funções
1.7.9. Passagem de funções, estruturas e matrizes (Arrays) como parâmetros de funções
1.8. Arquivos
1.8.1. Conceitos básicos
1.8.2. Operações com arquivos
1.8.3. Tipos de arquivo
1.8.4. Organização de arquivos
1.8.5. Introdução aos arquivos C++
1.8.6. Manipulação de arquivos
1.9. Recursividade
1.9.1. Definição de recursividade
1.9.2. Tipos de recursão
1.9.3. Vantagens e desvantagens
1.9.4. Considerações
1.9.5. Conversão recursiva-iterativa
1.9.6. Pilha de recursão
1.10. Testes e documentação
1.10.1. Testes de programas
1.10.2. Teste de caixa branca
1.10.3. Teste de caixa preta
1.10.4. Ferramentas para realizar testes
1.10.5. Documentação de programas
Módulo 2. Estruturas dados
2.1. Introdução à programação em C++
2.1.1. Classes, construtores, métodos e atributos
2.1.2. Variáveis
2.1.3. Expressões condicionais e estruturas de repetição (loops)
2.1.4. Objetos
2.2. Tipos abstratos de dados (TAD)
2.2.1. Tipos de dados
2.2.2. Estruturas básicas e TAD
2.2.3. Vetores e Matrizes (Arrays)
2.3. Estruturas de dados lineares
2.3.1. Lista de TAD Definição
2.3.2. Listas vinculadas e duplamente vinculadas
2.3.3. Listas ordenadas
2.3.4. Listas em C++
2.3.5. TAD Pilha
2.3.6. TAD Fila
2.3.7. Pilha e Fila em C++
2.4. Estruturas de dados hierárquica
2.4.1. TAD Árvore
2.4.2. Caminhos
2.4.3. Árvores n-árias
2.4.4. Árvores binárias
2.4.5. Árvores binárias de busca
2.5. Estruturas hierárquicas de dados: árvores complexas
2.5.1. Árvores perfeitamente balanceadas ou árvores de altura mínima
2.5.2. Árvores multicaminho
2.5.3. Referências Bibliográficas
2.6. Heaps e filas de prioridade
2.6.1. TAD Heaps
2.6.2. TAD Fila de prioridade
2.7. Tabelas Hash
2.7.1. TAD Tabela Hash
2.7.2. Funções Hash
2.7.3. Funções Hash em tabelas Hash
2.7.4. Redispersão
2.7.5. Tabelas Hash abertas
2.8. Grafos
2.8.1. TAD de grafos
2.8.2. Tipos de grafos
2.8.3. Representação gráfica e operações básicas
2.8.4. Design de grafos
2.9. Algoritmos e conceitos gráficos avançados sobre grafos
2.9.1. Problemas sobre grafos
2.9.2. Algoritmos sobre caminhos
2.9.3. Algoritmos de busca ou caminho
2.9.4. Outros algoritmos
2.10. Outras estruturas de dados
2.10.1. Conjuntos
2.10.2. Matrizes (Arrays) paralelas
2.10.3. Tabelas de símbolos
2.10.4. Tries
Módulo 3. Programação avançada
3.1. Introdução à programação orientada a objetos
3.1.1. Introdução à programação orientada a objetos
3.1.2. Projeto de classes
3.1.3. Introdução à UML para modelagem de problemas
3.2. Relações entre classes
3.2.1. Abstração e herança
3.2.2. Conceitos avançados de herança
3.2.3. Polimorfismo
3.2.4. Composição e agregação
3.3. Introdução aos padrões de design para problemas orientados a objetos
3.3.1. O que são padrões de design?
3.3.2. Padrão Factory
3.3.3. Padrão Singleton
3.3.4. Padrão Observer
3.3.5. Padrão Composite
3.4. Exceções
3.4.1. O que são as exceções?
3.4.2. Captura e gestão de exceções
3.4.3. Lançamento de exceções
3.4.4. Criação de exceções
3.5. Interfaces de usuário
3.5.1. Introdução ao Qt
3.5.2. Posicionamento
3.5.3. O que são os eventos?
3.5.4. Eventos: definição e captura
3.5.5. Desenvolvimento de interfaces de usuário
3.6. Introdução à programação concorrente
3.6.1. Introdução à programação concorrente
3.6.2. O conceito de processo e fio de execução (threads)
3.6.3. Interação entre processos ou fio de execução (threads)
3.6.4. Os fios de execução (threads) em C++
3.6.5. Vantagens e desvantagens da programação concorrente
3.7. Gestão de fios de execução (threads) e sincronização
3.7.1. Ciclo de vida de um fio de execução (threads)
3.7.2. A classe Thread
3.7.3. Planejamento de fios de execução (threads)
3.7.4. Grupos de fios de execução (threads)
3.7.5. Fios de execução (threads) so tipo daemon
3.7.6. Sincronização
3.7.7. Mecanismos de bloqueio
3.7.8. Mecanismos de comunicação
3.7.9. Monitores
3.8. Problemas comuns dentro da programação concorrent
3.8.1. O problema dos produtores e consumidores
3.8.2. O problema dos leitores e escritores
3.8.3. O problema do jantar dos filósofos
3.9. Documentação e testes de software
3.9.1. Por que é importante documentar o software?
3.9.2. Documentação de design
3.9.3. Uso de ferramentas para documentação
3.10. Testes de software
3.10.1. Introdução aos testes de software
3.10.2. Tipos de testes
3.10.3. Teste de unidade
3.10.4. Teste de integração
3.10.5. Teste de validação
3.10.6. Teste de sistema
Módulo 4. Desenvolvimento de aplicações em rede
4.1. Linguagens de marcação HTML5
4.1.1. Noções básicas de HTML
4.1.2. Novos elementos HTML5
4.1.3. Formulários: novos controles
4.2. Introdução às folhas de estilo CSS
4.2.1. Primeiros passos com CSS
4.2.2. Introdução ao CSS3
4.3. Linguagem de Script do navegador: JavaScript
4.3.1. Conceitos básicos de JavaScript
4.3.2. DOM
4.3.3. Eventos
4.3.4. JQuery
4.3.5. Ajax
4.4. Conceito de programação orientada a componentes
4.4.1. Contexto
4.4.2. Componentes e interfaces
4.4.3. Estados de um componente
4.5. Arquitetura de componentes
4.5.1. Arquiteturas atuais
4.5.2. Integração e implantação de componentes
4.6. Framework Front-End: Bootstrap
4.6.1. Design com grade
4.6.2. Formulários
4.6.3. Componentes
4.7. Modelo-Visão-Controlador" (MVC)
4.7.1. Métodos de desenvolvimento web
4.7.2. Padrões de design: MVC
4.8. Tecnologias Grid da informação
4.8.1. Aumento dos recursos computacionais
4.8.2. Conceito da tecnologia Grid
4.9. Arquiteturas orientadas a serviços
4.9.1. SOA e serviços web
4.9.2. Topologia de um serviço web
4.9.3. Plataformas para serviços web
4.10. Protocolo HTTP
4.10.1. Mensagens
4.10.2. Sessões persistentes
4.10.3. Sistema criptográfico
4.10.4. Funcionamento do protocolo HTTP

Uma experiência de capacitação única, fundamental e decisiva para impulsionar seu crescimento profissional"
Programa Avançado de Programação
O mundo atual está em constante evolução tecnológica e a programação se tornou uma das habilidades mais requisitadas no mercado de trabalho. Nesse contexto, o Programa Avançado de Programação da TECH se apresenta como uma excelente opção para aqueles interessados em adquirir os conhecimentos e habilidades necessárias para ingressar no mundo da programação. Este programa acadêmico tem como principal objetivo oferecer aos alunos uma capacitação sólida em diferentes linguagens e técnicas de programação, bem como no desenvolvimento de software. Ao longo do estudo, serão abordados temas fundamentais, como a programação orientada a objetos, o desenvolvimento de aplicativos móveis, a programação web e a segurança da informação, entre outros.
Estude online com a TECH
Uma das características mais destacadas deste programa é a sua abordagem prática. Através de projetos e exercícios reais, os alunos terão a oportunidade de aplicar os conhecimentos adquiridos e ganhar experiência no desenvolvimento de software. Além disso, contaremos com o constante suporte de professores especializados, que irão orientá-lo no processo de aprendizagem e responderão a qualquer dúvida que possa surgir. Os alunos não precisarão se preocupar com deslocamentos, uma vez que o Programa Avançado é ministrado totalmente online. A importância de um programa acadêmico como esse não pode ser subestimada. Em um mercado de trabalho cada vez mais exigente, a programação se tornou uma habilidade essencial para acessar posições de alta demanda e seu domínio poderá abrir portas para oportunidades profissionais. O Programa Avançado de Programação é uma oportunidade única para aqueles interessados em adquirir as habilidades e conhecimentos necessários para se destacar na área da programação. Sua abordagem prática, formato flexível e qualidade do corpo docente são algumas das características que o tornam uma opção altamente recomendável. Não perca a oportunidade de ampliar seus horizontes profissionais e mergulhar no emocionante mundo da programação.