Curso de C Orientado a Testes

Curso de C Orientado a Testes

Sobre o Curso

O Test Driven Development (TDD - Desenvolvimento Orientado a Testes, em tradução livre) é uma técnica de desenvolvimento de software em ciclos incrementais (Baby Steps). Em resumo, nenhum código em...

Framework de testes unitários em C

smart_display#0 - Como realizar teste unitário com o Unity
smart_display#1 - Testes unitários de float e ignorar testes específicos
smart_display#2 - Teste unitários com strings e mensagens de erro do unity
smart_display#3 - Como fazer arquivo Makefile para automatizar testes unitários do unity

O que é desenvolvimento orientado a testes?

smart_display#4 - O que é Test Driven Development (TDD - Desenvolvimento orientado a testes)
smart_display#5 - Exemplo função para calcular a hipotenusa (Parte 1)
smart_display#6 - Exemplo função para calcular a hipotenusa (Parte 2)
smart_display#7 - O que é refatoração? Refatoração da função hipotenusa

Desenvolvimento de uma Pilha com TDD

smart_display#8 - Implementação de uma estrutura de dados do tipo Pilha com TDD
smart_display#9 - Função init (inicialização da Pilha)
smart_display#10 - Função empty (verificar se a Pilha está vazia)
smart_display#11 - Função push (empilhar elemento na Pilha)
smart_display#12 - Função Top (verificar elemento no topo da Pilha)
smart_display#13 - Função Pop (remover elemento do topo da pilha, desempilhar)
smart_display#14 - Função Print (exibir elementos da pilha no terminal)

Estratégias de depuração

smart_display#15 - Como utilizar cores no terminal, em saídas de programas em C e no Unity
smart_display#16 - Variáveis booleanas e implementação da interface stdbool em c
smart_display#17 - Como fazer depuração (Debug) do código: Matriz simétrica (Parte 1)
smart_display#18 - Como fazer depuração (Debug) do código: Matriz simétrica (Parte 2)
smart_display#19 - Como fazer depuração (Debug) do código: Matriz simétrica (Parte 3)
smart_display#20 - Como fazer depuração (Debug) do código: Matriz simétrica (Parte 4)
smart_display#21 - Como fazer depuração (Debug) do código: Matriz simétrica (Parte 5)

Estratégias de refatoração

smart_display#22 - Como funcionam o pré processamento e as macros em C
smart_display#23 - Refatoração do código da matriz simétrica (Parte 1)
smart_display#24 - Refatoração do código da matriz simétrica (Parte 2)
smart_display#25 - Refatoração do código da matriz simétrica (Parte 3)
smart_display#26 - Refatoração do código da matriz simétrica (Parte 4)
smart_display#27 - As macros assert e NDEBUG da biblioteca assert.h

Depuração profissional com o GDB

smart_display#28 - Como depurar um programa em C de maneira profissional? O depurador GDB
smart_display#29 - Comandos básicos do GDB: run, start, next, print e break
smart_display#30 - Depurar um programa passo a passo com breakpoints do GDB
smart_display#31 - Depuração de funções de bibliotecas em C com o comando step do GDB
smart_display#32 - Exercício de depuração com o GDB
smart_display#33 - O modo de depuração Text User Interface (TUI) do GDB
smart_display#34 - Exibir o código fonte no terminal do GDB
smart_display#35 - Monitorar variáveis no GDB com o comando display
smart_display#36 - Monitorando a pilha e os frames no GDB
smart_display#37 - Chamar funções, executar comandos do Shell e Makefiles no GDB
smart_display#38 - Depuração automatizada com GDB scripts
smart_display#39 - Gerar arquivos de logging no GDB
smart_display#40 - Como corrigir erros de segmentação e monitorar ponteiros no GDB

Exercícios sobre Pilhas em C

smart_display#41 - Exercícios sobre Estrutura de dados Pilha
smart_display#42 - Exercício conversor de decimal em binário utilizando pilhas (Parte 1)
smart_display#43 - Exercício conversor de decimal em binário utilizando pilhas (Parte 2)
smart_display#44 - Exercício sistema de entrega de pizzas utilizando pilhas (Parte 1)
smart_display#45 - Exercício sistema de entrega de pizzas utilizando pilhas (Parte 2)
smart_display#46 - Exercício sistema de entrega de pizzas utilizando pilhas (Parte 3)
smart_display#47 - Exercício sistema de entrega de pizzas utilizando pilhas (Parte 4)

Básico de sinais e processos no Linux

smart_display#48 - Como enviar e tratar sinais e processos no Linux com C (Parte 1)
smart_display#49 - Como enviar e tratar sinais e processos no Linux com C (Parte 2)
smart_display#50 - Automatizar envio de sinais ao processo com um programa de monitoramento

Desenvolvimento de uma Fila em C com o GDB

smart_display#51 - Como implementar uma estrutura de dados fila em C, função criar fila
smart_display#52 - Implementar uma estrutura de dados fila em C, função inserir (Parte 1)
smart_display#53 - Implementar uma estrutura de dados fila em C, função inserir (Parte 2)
smart_display#54 - Implementar uma estrutura de dados fila em C, função listar
smart_display#55 - Implementar uma estrutura de dados fila em C, função apagar
smart_display#56 - Implementar os testes da estrutura de dados fila (Parte 1)
smart_display#57 - Implementar os testes da estrutura de dados fila (Parte 2)

Depuração de vetores e alocação dinâmica

smart_display#58 - Como fazer a depuração de vetores no GDB? Alocação estática e dinâmica
smart_display#59 - Criar uma função de alocação dinâmica personalizada em c (Parte 1)
smart_display#60 - Criar uma função de alocação dinâmica personalizada em c (Parte 2)
smart_display#61 - Função de alocação dinâmica personalizada de strings em c
smart_display#62 - Alocação dinâmica de vetores de structs em C
smart_display#63 - Inicialização de vetores de structs em C
smart_display#64 - Utilizando variáveis durante a depuração com GDB
smart_display#65 - Como testar ponteiros em linguagem C utilizando o Unity
smart_display#66 - Como testar arrays em linguagem C utilizando o Unity
smart_display#67 - Como testar vetores de structs em linguagem C utilizando o Unity
smart_display#68 - Criar um separador de strings em C na forma chave=valor (Parte 1)
smart_display#69 - Criar um separador de strings em C na forma chave=valor (Parte 2)

Bibliotecas estáticas e dinâmicas

smart_display#70 - Como criar bibliotecas estáticas e dinâmicas em C (Parte 1)
smart_display#71 - Como criar bibliotecas estáticas e dinâmicas em C (Parte 2)

Chamadas de sistema no Linux

smart_display#72 - O que são as chamadas de sistema (syscalls) no Linux? Como criar processos
smart_display#73 - Criar processos no Linux, a chamada de sistema fork
smart_display#74 - As chamadas de sistema wait e exec no Linux
smart_display#75 - Como rodar um comando ou script do shell em um programa em C
smart_display#76 - A função system e a chamada de sistema waitpid
smart_display#77 - Como obter o valor de uma variável de ambiente do shell em C

Implementação de um Daemon em linguagem C

smart_display#78 - Como implementar um daemon em C: Introdução e estrutura das aulas
smart_display#79 - Oque é um Daemon e como funciona a técnica fork and die?
smart_display#80 - Implementação de um Daemon em C e utilização da syslog
smart_display#81 - Configurar o Daemon e o script de serviço para o init
smart_display#82 - Implementação da função daemonize e da técnica fork and die (Parte 1)
smart_display#83 - Implementação da função daemonize e da técnica fork and die (Parte 2)
smart_display#84 - Implementação da função daemonize e da técnica fork and die (Parte 3)

Questionário

quizQuestionário

Grátis

Este curso inclui:

  • Video aulas: 86
  • Carga horária: 14h16
  • Certificado validado
  • Recursos adicionais

Instrutor(a):

Rodolfo Dirack

5 cursos928 alunosSou o autor do canal Geofisicando no Youtube sobre programação aplicada à geofísica. Neste canal postamos cursos de várias linguagens de programação, como Shell Script, Python, C, Makefile, Fortran e etc.