
Fundamentos de Programação
Área Científica: Informática / Ciência e Tecnologia da Programação
Neste primeiro módulo você entenderá o que é um computador, como funciona, para que serve, que limitações tem e como se controla.
Você irá estudar programação do zero utilizando a Linguagem de Programação Python na sua versão mais recente (Python3). Você entenderá como funciona um algoritmo, como desenvolver um algoritmo e qual o seu papel na informática e no mundo.
Requisitos:
Sem requisitos prévios
Conteúdos do Módulo:
Fundamentos e Lógica da Programação
Configuração de um ambiente de Programação
Instruções Sequenciais
Estruturas de Controle
Estruturas de Dados
Estruturas Compostas
Arquivos e Módulos
Você deverá ser capaz de:
Compreender o que é um computador, como funciona, para que serve, que limitações tem e como se controla.
Conhecer e saber utilizar os conceitos da programação definidos pela linguagem para a construção de um algoritmo
Conhecer e saber utilizar os tipos e estruturas de dados da linguagem de programação utilizada
Desenvolver, testar e corrigir programas de pequena e média dimensão numa linguagem de programação moderna (Python)
Informações Adicionais:
Ritmo aconselhado de realização do módulo e conselhos adicionais:
Duas aulas por dia com prática dos conteúdos, pós e durante as aulas
O módulo está acompanhado de:
Slides explicativos para download
Recursos Externos como Documentos, Links, etc.
Exercícios com resolução
Prova Final não obrigatória
A Grade Curricular do módulo encontrasse logo abaixo.
Infraestruturas e Tecnologias WEB
Área Científica: Informática / Ciência e Tecnologia da Programação
Neste módulo você aprenderá as primeiras noções de utilização de ferramentas e de programação web. Você estudará como as infraestruturas web estão organizadas, como é realizada a comunicação entre cliente e servidor, gestão de domínios por DNS e outros protocolos de rede de alto nível.
Será dado um enfoque também para o desenvolvimento front-end (cliente) de páginas web utilizando HTML5, CSS3 e Programação em JavaScript, Document Object Model (DOM) e JavaScript Object Notation (JSON).
Requisitos:
É aconselhado a conclusão do módulo anterior (Fundamentos de Programação) para melhor entendimento da linguagem JavaScript
Conteúdos do Módulo:
Fundamentos de Redes, HTTP, DNS e Hospedagem
Funcionamento Lógico de uma Página WEB
Tipos de Arquivos Constituintes de uma Página WEB
Desenvolvimento e estruturação com HTML5
Desenvolvimento e estilização com CSS3
Programação e Desenvolvimento com JavaScript
Utilização do DOM no JavaScript
Manipulação de Dados por JSON
Você deverá ser capaz de:
Compreender e explicar o funcionamento lógico de uma página WEB e os seus protocolos de rede
Saber criar uma página web utilizando a linguagem HTML5 e CSS3
Criar, gerir e manipular conteúdos constituintes da estrutura de uma página web
Manipular elementos de uma página web utilizando programação em JavaScript
Manipular dados através de JSON
Informações Adicionais:
Ritmo aconselhado de realização do módulo e conselhos adicionais:
Três a quatro aulas por dia com prática dos conteúdos, pós e durante as aulas
O módulo está acompanhado de:
Slides explicativos para download
Recursos Externos como Documentos, Links, etc.
Um Projeto em Desenvolvimento WEB (Construção de uma página WEB utilizando HTML5 e CSS3)
Prova Final não obrigatória
A Grade Curricular do módulo encontrasse logo abaixo.
Análise e Modelação de Sistemas
Área Científica: Informática / Sistemas de Informação
Neste módulo você obterá uma geral dos principais conceitos de software, das metodologias de desenvolvimento de software, e da linguagem UML para construção de modelos.
Requesitos:
Sem requisitos prévios
Contéudos do Módulo:
Metodologias de Desenvolvimento de Software
Engenharia e Gestão de Requisitos
Modelação Visual com UML
Modelação de Componentes Estáticos e Dinâmicos
Arquitetura de Software
Conceitos e Organização de Testes de Sistemas
Linguagens e Ferramentas para o Desenvolvimento de Software
Você deverá ser capaz de:
Aplicar técnicas de engenharia de requisitos para a construção de especificações
Explicar o conceito de arquitetura do software e utilizar modelos visuais para a comunicar.
Conhecer os principais processos de desenvolvimento de software, com foco nos métodos ágeis e desenvolvimento iterativo.
Aplicar uma linguagem de modelação padronizada (UML) e interpretar modelos nela construídos
Identificar as principais ferramentas e linguagens para o desenvolvimento de um software especifico
Informações Adicionais:
Ritmo aconselhado de realização do módulo e conselhos adicionais:
Duas aulas por dia com prática dos conteúdos, pós e durante as aulas
O módulo está acompanhado de:
Slides explicativos para download
Recursos Externos como Documentos, Links, etc.
Exemplos no Programa Gratuito LucidChart
Prova Final não obrigatória
A Grade Curricular do módulo encontrasse logo abaixo.
Programação Orientada a Objetos
Área Científica: Informática / Ciência e Tecnologia da Programação
Neste módulo você aprenderá a desenvolver programas e algoritmos eficientes com uma linguagem de programação robusta (C#) utilizando o paradigma de programação orientado a objetos utilizado no desenvolvimento de sistemas por objeto estudados no módulo de análise e modelação de sistemas.
Requisitos:
Conclusão do módulo de Fundamentos de Programação ou conclusão do curso de fundamentos de C# no canal de Youtube TTech Inc ou conhecimento equivalente.
Conteúdos do Módulo:
Introdução aos Paradigmas de Programação
Revisão de conceitos para C#
Classes e Objetos
4 Pilares da Programação Orientada a Objetos
Abstração, Herança, Encapsulamento e Polimorfismo
Interfaces
Você deverá ser capaz de:
Decompor problemas computacionais de pequena e média dimensão segundo o paradigma de orientação por objetos (POO)
Programar com uma linguagem de programação complexa: C#
Escrita de Código Robusto e Eficiente
Informações Adicionais:
Ritmo aconselhado de realização do módulo e conselhos adicionais:
Duas aulas por dia com prática dos conteúdos, pós e durante as aulas
O módulo está acompanhado de:
Slides explicativos para download
Recursos Externos como Documentos, Links, etc.
Módulo de apoio aos fundamentos de C# Grátis no Youtube (TTech Inc)
Prova Final não obrigatória
A Grade Curricular do módulo encontrasse logo abaixo.
Arquitetura de Computadores I
Área Científica: Informática / Arquitetura dos Sistemas Computacionais
Neste Módulo você estudará arquitetura de computadores entendendo os processos fundamentais da computação de dados binários e o significado do código de máquina. Você construirá circuitos lógicos fundamentais do seu processador e estudar a arquitetura dos processadores utilizados pela linha PC.
Requisitos:
Sem requisitos necessários
Conteúdos do Módulo:
Introdução aos sistemas de computação de uso geral
Representação da informação e operações básicas
Informação Binária e Aritmética
Representação de Informação
Circuitos Lógicos
Operações Lógicas
Circuitos Combinacionais e Sequenciais
Arquitetura x86
Você deverá ser capaz de:
Descrever formas de representação da informação nos computadores digitais, com relevo para a representação da informação numérica e as operações aritméticas básicas.
Descrever operações lógicas e dos componentes eletrônicas que as realizam.
Compreender o funcionamento dos sistemas com memória e dos principais dispositivos de armazenamento de informação
Familiaridade com a arquitetura de processadores modernos
Informações Adicionais:
Ritmo aconselhado de realização do módulo e conselhos adicionais:
Duas a três aulas por dia com fixação e pesquisa adicional dos conteúdos.
O módulo está acompanhado de:
Slides explicativos para download
Recursos Externos como Documentos, Links, etc.
Simulações no Simulador Proteus
Prova Final não obrigatória
A Grade Curricular do módulo encontrasse logo abaixo.
Arquitetura de Computadores II
Área Científica: Informática / Arquitetura dos Sistemas Computacionais
Neste Módulo o estudo da arquitetura de computadores será avançado estudando conceitos mais abrangentes relativos a componentes de um sistema de computação de uso geral. Será dado um foco especifico ao estudo da memória RAM e processadores. Será abordado também como analisar componentes através de programas do sistema operativo e programas disponibilizados como CPUZ e GPUZ.
Requisitos:
Aconselhado a conclusão do módulo Arquitetura de Computadores I
Conteúdos do Módulo:
Memória RAM
Arquitetura, Tipos, Módulos, Desempenho,...
Processadores
Conceitos + Marcas: Intel e AMD
Armazenamento
Vídeo
Alimentação
Cabeamento
Você deverá ser capaz de:
Capacidade de analisar e interpretar funcionalmente a estrutura de um computador digital
Compreender a funcionalidade de periféricos básicos
Compreender a comunicação entre componentes internos
Compreender a estrutura da memória e os seus processos de comunicação com o processador
Informações Adicionais:
Ritmo aconselhado de realização do módulo e conselhos adicionais:
Duas aulas por dia com pesquisas sobre casos práticos dos conteúdos.
O módulo está acompanhado de:
Slides explicativos para download
Recursos Externos como Documentos, Links, etc.
Análises de Desempenho e Utilização de Componentes Internos
Prova Final não obrigatória
A Grade Curricular do módulo encontrasse logo abaixo.
Algoritmos e Estruturas de Dados
Área Científica: Informática / Ciência e Tecnologia da Programação
Neste Módulo você estudará conceitos avançados da programação, continuando os seus estudos na linguagem C# e construindo algoritmos complexos e analisando estruturas de dados complexas. Diferentes algoritmos serão abordados disponibilizando também a sua versão de código em Python 3.
Requisitos:
Conclusão do Módulo de Programação Orientada a Objetos ou conhecimento equivalente
Conteúdos do Módulo:
Melhoria e Reforço no conhecimento em C#
Analise de Algoritmos iterativos e recursivos
Estratégias Algorítmicas
Implementação de Algoritmos de Busca e Ordenação
Busca Sequencial, Bubble Sort, Busca Binária...
Implementação de Estruturas de Dados
Listas, Dicionários, Árvores, Filas, Pilhas, Grafos,...
Você deverá ser capaz de:
Desenvolver estratégias algorítmicas fundamentais envolvendo iteração e recursividade
Saber analisar o desempenho de algoritmos iterativos e recursivos em termos da sua complexidade algorítmica
Saber aplicar e utilizar estruturas de dados eficientes e robustas
Informações Adicionais:
Ritmo aconselhado de realização do módulo e conselhos adicionais:
Uma a duas aulas por dia com prática e exercícios dos conteúdos.
O módulo está acompanhado de:
Slides explicativos para download
Recursos Externos como Documentos, Links, etc.
Disponibilização de alguns códigos na linguagem Python 3
Prova Final não obrigatória
A Grade Curricular do módulo encontrasse logo abaixo.
Introdução:
O curso Engenharia Informática é projetado para ensinar diversos conceitos no desenvolvimento, análise e manutenção de sistemas de software.
O currículo abrange desde os fundamentos de programação e infraestruturas web até áreas avançadas como inteligência artificial, segurança informática e engenharia de software. Ao longo do curso, os estudantes adquirem competências em algoritmos, estruturas de dados, sistemas operativos, redes de computadores e bases de dados, além de desenvolverem habilidades críticas em padrões de design, compiladores, testes e qualidade de software. O curso também aborda aspetos éticos e profissionais, preparando os estudantes para enfrentar desafios tecnológicos e inovar na criação de soluções eficientes e seguras para o mercado de informática e computação.
Motivação:
O principal objetivo do curso é guiar os estudantes pelas diversas áreas da informática com um foco para as áreas de software e sistemas informáticos capacitando um conhecimento diversificado nas vastas áreas informáticas de grande relevância.
O curso não só tenciona ensinar os conceitos teóricos e práticos como também prover habilidades ao estudante de se tornar autodidata e conseguir compreender as suas principais áreas de interesse, ter capacidade de raciocínio, ser autónomo e capaz de evoluir futuramente sozinho.
Estrutura:
A grade curricular do curso está divida em seis partes, cada uma explicada logo abaixo. Cada parte possui uma determinada quantidade de módulos e cada um cobre um assunto de forma abrangente e com determinada profundidade.
1ª Parte: Introdução aos conceitos básicos de programação, infraestrutura web e modelação de sistemas, estabelecendo as fundações para a compreensão do desenvolvimento de software e sistemas.
2ª Parte: Progressão na programação (orientada a objetos) e na compreensão da arquitetura e funcionamento interno dos computadores.
3ª Parte: Desenvolvimento de habilidades em algoritmos, estruturas de dados, sistemas operativos e redes de computadores, preparando para desafios técnicos mais complexos.
4ª Parte: Estudo de padrões de software, compiladores e bases de dados, aprofundando o design e a implementação de sistemas de software.
5ª Parte: Introdução à inteligência artificial, engenharia de software e segurança informática, abordando áreas avançadas e emergentes na computação.
6º Parte: Consolidação de conhecimentos em engenharia de software, com foco em teste e qualidade, além de explorar aspectos profissionais e éticos da informática.
Requisitos:
O curso não dispõe de qualquer requisito uma vez que todos os conceitos são ensinados do absoluto zero. Caso seja do seu interesse realizar algum módulo de forma independente sem a conclusão dos anteriores, os requisitos específicos desse módulo podem ser consultados na descrição da primeira aula dos mesmos (Introdução ao Módulo).
Sobre as Aulas:
As aulas são ministradas utilizando como recurso slides explicativos que possuem teoria e logo depois uma parte prática. A quantidade de teoria e prática de cada aula varia conforme o necessário. (O curso tende a atingir uma forte componente prática nos módulos de programação e um equilíbrio entre teoria e prática nos restantes módulos)
Todos os slides exibidos nas aulas estão disponíveis para download assim como outros recursos de apoio ao aprendizado.
As aulas estão também organizadas em módulos que possuem uma estrutura muito definida de forma a que a sua realização sequencial possa ir incrementando novos conceitos e aprofundando conhecimentos ao longo da sua realização. No fim de cada módulo existe uma prova sobre os assuntos abordados.
Suporte e Diversos:
Qualquer dúvida pode ser tirada numa sessão própria da Udemy onde você terá contacto direto com o instrutor. Caso queira comunicar melhor e com outros alunos no perfil do instrutor o botão website possui um link para um servidor de Discord com uma área exclusiva para alunos.
O curso possui um certificado final com o nome do curso, duração e nome do aluno que pode ser utilizado como prova de conclusão e certificação de competências.
O curso também disponibiliza um prazo de reembolso de 30 dias. (Caso seja concluído uma grande quantidade de aulas não será possível emitir um reembolso, tenha em consideração que o processo de reembolso é gerido totalmente pela plataforma e suporte da Udemy)
A quem se destina o curso:
Os módulos do curso são baseados em cadeiras / disciplinas universitárias no entanto o curso não se pode comparar a tal. O curso foi feito para estudantes de qualquer nível que necessitam de adquirir conhecimentos ou para entusiastas e pessoas que tenham interesse na área de informática e queiram aprender sobre os principais aspetos.
É essencial assistir às previas de cada módulo para entender quais os conteúdos abordados e os resultados da aprendizagem dos mesmos.
Perguntas Frequentes:
Que linguagens de programação o curso aborda?
O curso ensina de forma geral a linguagem Pyhton, de forma superficial a linguagem JavaScript e de forma aprofundada a linguagem C#. No entanto os conceitos abordados podem ser aplicados em grande parte das linguagem orientadas a objetos. O curso aborda ainda HTML, CSS, e XAML.
Porque os fundamentos são dados em Python e a Programação Orientada a Objetos em C#?
Os fundamentos de programação são dados em Pyhton, passando depois diretamente para C# em orientação a objetos. Não é necessário um módulo de fundamentos de programação em C# uma vez que os conceitos são os mesmos e serão revistos no módulo. Mesmo assim caso o aluno considere necessário (pouco provável) existe um módulo de fundamentos de programação em C# grátis no Youtube (TTech Inc)
Qual a profundidade dos assuntos abordados?
O curso aborda diferentes áreas a diferentes níveis de profundidade. Você obterá um conhecimento detalhado sobre cada área que cada módulo cobre. O principal foco do curso é a programação e o mesmo a aborda de forma bastante aprofundada. Os outros módulos abordam os conceitos essenciais e esses podem ser muito aprofundados ou não. Em geral o curso oferece um conhecimento bem detalhado das diferentes áreas informáticas.