#+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

** Como clonar o repositório do curso...

Com o =git= instalado, executar:

#+begin_example
git clone https://gitlab.com/blau_araujo/cblc
#+end_example

Isso criará o diretório =cblc= no diretório corrente, por exemplo:

#+begin_example
:~/cursos$ git clone https://gitlab.com/blau_araujo/cblc
:~/cursos$ ls
cblc
:~/cursos$ cd cblc
:~/cursos/cblc$
#+end_example

*** Importante!

Não faça alterações no diretório do curso, ou você terá dificuldades para
atualizá-lo!

** Como atualizar o repositório do curso...

Entre no diretório clonado e execute:

#+begin_example
git pull origin main
#+end_example
