🧩 Exercícios: Acessibilidade e Redação Técnica em Markdown
Extra Documentação Técnica com Markdown • Trilha Progressiva em 4 Níveis
🎯 Nível 1: Fundamentos
Problema 11.1 — Correção de Hierarquia Semântica de Cabeçalhos
Contexto: Um autor novato estruturou um arquivo pulando níveis de cabeçalhos (# para ### e depois #####). Corrija a estrutura para atender às diretrizes de acessibilidade WCAG 2.1.
Requisitos de Execução:
- Garantir que exista apenas um
# H1no documento. - Manter as seções principais em
## H2. - Manter as subseções em
### H3sem pular níveis.
Resultado Esperado
# Guia de Instalação do PostgreSQL
## Pré-requisitos de Sistema
### Requisitos de Memória e CPU
O servidor necessita de no mínimo 4 GB de RAM.
## Procedimento de Instalação no Linux
📤 Instruções de Entrega (Microsoft Teams)
- Salve o arquivo como:
Atividade_11_1_SeuNome.md - Envie na tarefa:
Atividade Cap 11 - Acessibilidade e Redação Técnica
🔑 Gabarito de Código & Solução Comentada
# Guia de Instalação do PostgreSQL
## Pré-requisitos de Sistema
### Requisitos de Memória e CPU
O servidor necessita de no mínimo 4 GB de RAM.
## Procedimento de Instalação no Linux
Comentário: A navegação por teclado em leitores de tela depende da progressão contígua de níveis (H1 -> H2 -> H3). Pular de H1 para H3 desorienta usuários cegos.
🎯 Nível 2: Prática
Problema 11.2 — Refatoração de Textos Alternativos (Alt Text)
Substitua três instâncias de alt text genéricos (, , ) por descrições funcionais e contextuais de alta qualidade.
🔑 Gabarito de Código & Solução Comentada
<!-- Antes:  -->

<!-- Antes:  -->

<!-- Antes:  -->

🎯 Nível 3: Integração
Problema 11.3 — Eliminação do Antipattern “Clique Aqui”
Reescreva um conjunto de 3 instruções técnicas eliminando a expressão genérica “clique aqui”, transformando os próprios links em frases de ação autoexplicativas.
🔑 Gabarito de Código & Solução Comentada
<!-- Versão Inacessível:
Para baixar o certificado SSL clique aqui. Para ler a política de privacidade clique aqui. -->
<!-- Versão Acessível: -->
Faça o [download do certificado digital raiz ICP-Brasil em formato CRT](https://exemplo.org/cert.crt).
Para detalhes sobre governança de dados pessoais, consulte a nossa [Política de Privacidade e Conformidade com a LGPD](https://exemplo.org/privacidade).
🎯 Nível 4: Desafio
Problema 11.4 — Linter de Acessibilidade em Markdown com Python
Construa um script em Python que inspecione arquivos Markdown e emita advertências caso encontre:
- Imagens com alt text vazio (
![]()) ou genérico (“imagem”, “foto”, “print”). - Links cujo texto seja “clique aqui”, “aqui” ou “link”.
- Saltos ilegais de cabeçalho (ex: H1 para H3).
🔑 Gabarito de Código & Solução Comentada
# markdown_a11y_linter.py
import re
def auditar_acessibilidade_md(caminho_arquivo):
problemas = []
with open(caminho_arquivo, "r", encoding="utf-8") as f:
linhas = f.readlines()
nivel_anterior = 0
for num, linha in enumerate(linhas, 1):
# 1. Checar Cabeçalhos
m_head = re.match(r"^(#{1,6})\s+", linha)
if m_head:
nivel = len(m_head.group(1))
if nivel_anterior > 0 and nivel > nivel_anterior + 1:
problemas.append(f"Linha {num}: Salto ilegal de cabeçalho de H{nivel_anterior} para H{nivel}!")
nivel_anterior = nivel
# 2. Checar Links Inacessíveis
for m in re.finditer(r"\[(.*?)\]\((.*?)\)", linha):
texto = m.group(1).strip().lower()
if texto in ["aqui", "clique aqui", "saiba mais", "link"]:
problemas.append(f"Linha {num}: Link inacessível encontrado: '{texto}'")
# 3. Checar Alt Text de Imagens
for m in re.finditer(r"!\[(.*?)\]\((.*?)\)", linha):
alt = m.group(1).strip().lower()
if not alt or alt in ["imagem", "foto", "screenshot", "print"]:
problemas.append(f"Linha {num}: Alt text de imagem ausente ou genérico: '{alt}'")
return problemas