Conteúdo da aula 0

This commit is contained in:
Blau Araujo 2025-03-10 07:05:02 -03:00
parent d69ec39faa
commit c418f0bbea
4 changed files with 165 additions and 97 deletions

View file

@ -1,107 +1,22 @@
#+title: Curso Básico da Linguagem C
#+author: Blau Araujo
#+startup: show2levels #+startup: show2levels
#+options: toc:3 #+options: toc:3
* Curso Básico da Linguagem C * Curso Básico da Linguagem C
** Objetivos Este curso introdutório visa apresentar os conceitos e os elementos fundamentais
da programação em linguagem C. Todo o conteúdo é dirigido ao ambiente de
programação do GNU/Linux e requer apenas recursos nativos ou disponíveis em
qualquer distribuição.
Este curso introdutório visa apresentar os conceitos e os elementos ** Links úteis
fundamentais da programação em linguagem C. Todo o conteúdo é dirigido
ao ambiente de programação do GNU/Linux e requer apenas recursos nativos
ou disponíveis em qualquer distribuição.
** O que você vai aprender - [[https://gitlab.com/blau_araujo/cblc/-/issues][Dúvidas e discussões]] (issues).
- [[./aulas][Exemplos utilizados nas aulas]].
- [[./c17/iso-iec-9899-2017.pdf][Especificações C17]] (PDF em inglês).
- Como computadores executam programas. ** Anotações das aulas
- Como sistemas operacionais possibilitam a execução de programas.
- Os elementos componentes de um código em C.
- Como os códigos em texto viram programas executáveis.
- Princípios de programação imperativa e procedural.
- Variáveis, funções e tipos de dados.
- Memória, endereços e estruturas de dados.
- Expressões e operações lógicas e aritméticas.
- Como reaproveitar programas com bibliotecas.
** Por que aprender C em 2025 - [[./aulas/00/README.org][Aula 0: Sobre o curso]]
- É uma linguagem relativamente simples.
- É perfeita para introduzir e demonstrar conceitos de programação.
- Propicia vários /insights/ sobre o hardware e o sistema.
- Tem implementação nativa no GNU/Linux (compilador e bibliotecas).
- Enfatiza a responsabilidade de quem programa na solução de problemas.
- É uma linguagem relevante e amplamente utilizada.
** Como você vai aprender
As aulas serão divididas em 3 estágios:
*** 1. Apresentação do conteúdo em vídeo
A aula começa com todas as pessoas participantes assistindo juntas ao
vídeo do tópico do dia.
*** 2. Demonstrações ao vivo
O conteúdo do vídeo será complementado com demonstrações e experimentos
ao vivo para explorar possibilidades e fixar conceitos. Neste estágio,
as pessoas participantes serão estimuladas a tirar suas dúvidas e a
deduzir resultados.
*** 3. Exercícios e desafios
Toda aula terá um ou mais exercícios e desafios que deverão ser
solucionados, apresentados e discutidos na aba de /issues/ do nosso
repositório.
** Repositório do curso
O conteúdo em texto, bem como exemplos e exercícios, estarão disponíveis
no [[https://gitlab.com/blau_araujo/cblc][nosso repositório Git]]. Este repositório é público e pode ser
acessado por qualquer pessoa interessada em aprender, mesmo que não seja
inscrita no curso.
** Aulas gravadas e encontros ao vivo
- Todas as aulas terão um conteúdo em vídeo previamente gravado que será
apresentado nos encontros ao vivo pelo Jitsi.
- Nada será gravado durante as nossas videoconferências!
- Os vídeos relativos aos tópicos das aulas serão disponibilizados para
membros do canal @debxp, no YouTube, após o término do curso.
#+begin_quote
Todas as demais pessoas inscritas no canal terão acesso aos vídeos 7 dias
depois deles serem liberados para membros.
#+end_quote
** Duração e calendário do curso
Serão 3 aulas semanas ao longo de 5 a 8 semanas, dependendo dos feriados
e do progresso da turma.
- *Início:* 10 de março de 2025
- *Término:* Entre 11 e 25 de abril de 2025
- *Horário:* Segundas, quartas e sextas, às 19:30h
** Investimento e inscrições
Para inscrever-se, basta seguir este procedimento:
1. Fazer um PIX no valor de R$250,00 para *cursos@blauaraujo.com*.
2. Enviar um e-mail para [[mailto:cursos@blauaraujo.com][cursos@blauaraujo.com]] anexando o comprovante
de pagamento e informando:
- Nome completo
- CPF
- Endereço completo com CEP
- E-mail para contato
3. Em resposta, você receberá um e-mail de confirmação e a nota fiscal.
#+begin_quote
*Importante!* O link da sala de videoconferência será informado no e-mail
de confirmação da inscrição!
#+end_quote
** Dúvidas, casos especiais e outras informações
Envie um e-mail para: blau@debxp.org

62
aulas/README.org Normal file
View file

@ -0,0 +1,62 @@
#+title: Curso Básico da Linguagem C
#+subtitle: Aula 0: Sobre o curso
#+author: Blau Araujo
#+startup: show2levels
#+options: toc:3
* Aula 0: Sobre o curso
[[https://youtu.be/RZmfuuABTHY][Vídeo desta aula]]
** Do que vamos precisar...
- Editores: Geany, GNU Emacs, Vim, GNU Nano, etc...
- Shell: GNU Bash
- Repositório: https://gitlab.com/blau_araujo/cblc
- Compilador: GNU Compiler Collection (gcc)
- Depuração: GNU Debugger (gdb)
- Documentação: Páginas de manual
** Requisitos...
- Uma instalação do GNU/Linux
- Noções de operação do sistema pelo terminal
- Atenção e cuidado com os detalhes
- Uma boa dose de curiosidade
- Vontade de aprender
** O que vamos aprender...
- Como computadores executam programas
- Como o sistema possibilita a execução de programas
- Como códigos em texto viram código de máquina
- Princípios de programação imperativa e estruturada
- Elementos de um código em C
- Variáveis, funções e tipos de dados
- Memória, endereços e estruturas de dados
- Estruturas de decisão e repetição
- Expressões lógicas e aritméticas
- Programas "recicláveis" (bibliotecas)
** Como vamos aprender...
*** Aulas divididas em 3 estágios:
- Apresentação do conteúdo gravado
- Demosntrações ao vivo
- Exercícios e desafios
*** Repositório do curso:
- Anotações das aulas
- Exemplos e exercícios
- Tira-dúvidas (aba Issues)
** Por que aprender...
- Linguagem muito simples
- Perfeita para aprender os princípios da programação
- Tem implementação nativa do GNU/Linux
- Enfatiza o papel de quem programa na solução de problemas
- Intimamente ligada ao gerenciamento de memória
- Linguagem viva, relevante e amplamente utilizada

BIN
c17/iso-iec-9899-2017.pdf Normal file

Binary file not shown.

91
curso.org Normal file
View file

@ -0,0 +1,91 @@
#+startup: show2levels
#+options: toc:3
* Curso Básico da Linguagem C
** Objetivos
Este curso introdutório visa apresentar os conceitos e os elementos
fundamentais da programação em linguagem C. Todo o conteúdo é dirigido
ao ambiente de programação do GNU/Linux e requer apenas recursos nativos
ou disponíveis em qualquer distribuição.
** O que você vai aprender
- Como computadores executam programas.
- Como sistemas operacionais possibilitam a execução de programas.
- Os elementos componentes de um código em C.
- Como os códigos em texto viram programas executáveis.
- Princípios de programação imperativa e procedural.
- Variáveis, funções e tipos de dados.
- Memória, endereços e estruturas de dados.
- Expressões e operações lógicas e aritméticas.
- Como reaproveitar programas com bibliotecas.
** Por que aprender C em 2025
- É uma linguagem relativamente simples.
- É perfeita para introduzir e demonstrar conceitos de programação.
- Propicia vários /insights/ sobre o hardware e o sistema.
- Tem implementação nativa no GNU/Linux (compilador e bibliotecas).
- Enfatiza a responsabilidade de quem programa na solução de problemas.
- É uma linguagem relevante e amplamente utilizada.
** Como você vai aprender
As aulas serão divididas em 3 estágios:
*** 1. Apresentação do conteúdo em vídeo
A aula começa com todas as pessoas participantes assistindo juntas ao
vídeo do tópico do dia.
*** 2. Demonstrações ao vivo
O conteúdo do vídeo será complementado com demonstrações e experimentos
ao vivo para explorar possibilidades e fixar conceitos. Neste estágio,
as pessoas participantes serão estimuladas a tirar suas dúvidas e a
deduzir resultados.
*** 3. Exercícios e desafios
Toda aula terá um ou mais exercícios e desafios que deverão ser
solucionados, apresentados e discutidos na aba de /issues/ do nosso
repositório.
** Repositório do curso
O conteúdo em texto, bem como exemplos e exercícios, estarão disponíveis
no [[https://gitlab.com/blau_araujo/cblc][nosso repositório Git]]. Este repositório é público e pode ser
acessado por qualquer pessoa interessada em aprender, mesmo que não seja
inscrita no curso.
** Aulas gravadas e encontros ao vivo
- Todas as aulas terão um conteúdo em vídeo previamente gravado que será
apresentado nos encontros ao vivo pelo Jitsi.
- Nada será gravado durante as nossas videoconferências!
- Os vídeos relativos aos tópicos das aulas serão disponibilizados para
membros do canal @debxp, no YouTube, após o término do curso.
#+begin_quote
Todas as demais pessoas inscritas no canal terão acesso aos vídeos 7 dias
depois deles serem liberados para membros.
#+end_quote
** Duração e calendário do curso
Serão 3 aulas semanas ao longo de 5 a 8 semanas, dependendo dos feriados
e do progresso da turma.
- *Início:* 10 de março de 2025
- *Término:* Entre 11 e 25 de abril de 2025
- *Horário:* Segundas, quartas e sextas, às 19:30h
** Investimento e inscrições
Inscrições encerradas.
** Dúvidas, casos especiais e outras informações
Envie um e-mail para: blau@debxp.org