mirror of
https://gitlab.com/blau_araujo/cblc.git
synced 2025-05-09 18:16:37 -03:00
Conteúdo da aula 0
This commit is contained in:
parent
d69ec39faa
commit
c418f0bbea
4 changed files with 165 additions and 97 deletions
109
README.org
109
README.org
|
@ -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
62
aulas/README.org
Normal 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
BIN
c17/iso-iec-9899-2017.pdf
Normal file
Binary file not shown.
91
curso.org
Normal file
91
curso.org
Normal 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
|
Loading…
Add table
Reference in a new issue