Aprender programação nunca foi tão acessível. Hoje, qualquer pessoa com acesso à internet pode encontrar materiais de alta qualidade sem gastar nada. Mas, em meio a tantos links espalhados, sempre surge a dúvida: onde encontrar uma coleção confiável e bem organizada de livros de programação em português?
A resposta está no repositório Free Programming Books no GitHub. Mantido pela comunidade e apoiado pela Ebook Foundation, esse projeto reúne milhares de materiais gratuitos de programação em dezenas de idiomas. E o melhor: existe uma seção inteira dedicada ao português do Brasil, que já conta com mais de 200 títulos.
👉 Página oficial: Free Programming Books — pt_BR
O que você encontra nessa lista?
A lista é organizada em categorias temáticas, facilitando a navegação. A seguir, um resumo detalhado:
📘 Linguagens de Programação
Livros completos e introdutórios, além de materiais avançados sobre as principais linguagens:
- Python: desde fundamentos até tópicos avançados de automação, data science e web.
- Java: orientação a objetos, desenvolvimento de aplicações desktop e backend.
- C e C++: conceitos básicos e programação de baixo nível.
- C#: programação com .NET, ASP.NET e aplicações modernas.
- JavaScript: fundamentos da web, Node.js, frameworks como React e Angular.
- PHP, Ruby, Go, Scala e outras: guias de uso prático, frameworks e boas práticas.
🏛️ Fundamentos de Ciência da Computação
- Algoritmos e estruturas de dados.
- Teoria da computação e compiladores.
- Lógica de programação.
- Arquitetura de computadores.
Esses livros são ideais para quem quer criar uma base sólida antes de mergulhar em frameworks ou linguagens específicas.
☁️ Tópicos Avançados e Especializações
- Bancos de dados: SQL, NoSQL, MongoDB, PostgreSQL, MySQL.
- Sistemas distribuídos e concorrência.
- DevOps: CI/CD, Docker, Kubernetes.
- Redes e segurança: protocolos, criptografia e práticas de segurança modernas.
- Inteligência Artificial e Machine Learning: desde introduções até materiais acadêmicos.
🧩 Frameworks e Ferramentas
Livros que focam em tecnologias aplicadas:
- Front-end: Angular, React, Vue.js.
- Back-end: Django, Laravel, Spring.
- Mobile: desenvolvimento Android e iOS.
📖 Referências Acadêmicas
Muitos desses livros são utilizados em cursos universitários e disponibilizados legalmente pelos próprios autores, como parte de iniciativas de ensino aberto.
Por que essa lista é importante?
- É gratuita e confiável: diferente de PDFs piratas, todos os links são disponibilizados oficialmente pelos autores ou editoras.
- Está sempre atualizada: a comunidade no GitHub mantém o repositório vivo, adicionando novos materiais constantemente.
- Está em português: aprender programação em outro idioma pode ser um desafio para iniciantes. Ter conteúdo em português reduz a barreira inicial.
- Abrange desde iniciantes até especialistas: você pode começar com lógica de programação e chegar a tópicos como inteligência artificial e DevOps.
Como aproveitar melhor essa lista?
- Escolha um ponto de partida: se está começando, vá em fundamentos e lógica de programação.
- Selecione uma linguagem principal: Python e JavaScript são as mais recomendadas para iniciantes.
- Monte sua trilha de aprendizado: depois de dominar uma linguagem, avance para bancos de dados, sistemas distribuídos e boas práticas.
- Pratique em paralelo: não caia na armadilha de só ler. Crie projetos reais enquanto estuda.
- Volte periodicamente: novos materiais são adicionados ao repositório, então vale revisar a lista de tempos em tempos.
Exemplos práticos de uso da lista
- Estudantes universitários: reforçar disciplinas com livros de algoritmos e arquitetura de computadores.
- Desenvolvedores iniciantes: aprender uma linguagem do zero com guias didáticos em português.
- Profissionais em transição de carreira: explorar tópicos como DevOps e cloud sem gastar com cursos caros.
- Engenheiros experientes: atualizar-se em novas ferramentas como Kubernetes ou frameworks modernos de front-end.
Lista completa
Agnósticos
Cloud Computing
- Guia da Computação em Nuvem: Conceito, Prática & Capacitação – Beatriz Oliveira, Mariana Carvalho (PDF, EPUB)
IDE and editors
- O Editor de Texto Vim – Sérgio Luiz Araújo Silva, et al.
- Vim para Noobs – William Oliveira Souza (HTML, PDF, EPUB) (Necessário criar uma conta (gratuita) no Leanpub para baixar o livro completo)
- Vimbook – Cássio Botaro (HTML)
- Visual Studio Code: Produtividade infinita – Felipe Cabrera Ribeiro dos Santos
Programação
- Algoritmos e Estruturas de Dados 1 – Marcos Castilho, Fabiano Silva, Daniel Weingaertner (PDF) (CC BY-NC-ND)
- Algoritmos e Programação – Adolfo José G. S. Baudson, Francisco César R. de Araújo (PDF)
- Introdução a Algoritmos e Programação – Fabricio Ferrari, Cristian Cechinel (PDF)
- Lógica de Programação para iniciantes – Gustavo Furtado de Oliveira Alves (PDF)
- Paradigmas de programação – Edson Alves (HTML)
Sistemas Operacionais
- Guia Foca Linux – Gleydson Maziolli (PDF)
- Sistemas Operacionais: Conceitos e Mecanismos – Carlos A. Maziero (PDF) (CC BY-NC-SA) (:construction: em contínuo desenvolvimento)
Android
- Google Android: Uma abordagem prática e didática – Rafael Guimarães Sakurai (Necessário criar uma conta (gratuita) no Leanpub para baixar o livro completo nos formatos PDF, EPUB, MOBI ou pelo próprio site)
Arduino
- Arduino Guia Iniciante – Multilógica Shop (PDF)
Assembly
- Assembly x86 – Luis Felipe, Mente Binária (gitbook)
- Linguagem Assembly: Introdução ao padrão Intel 8086 – José Augusto N. G. Manzano (PDF)
Banco de Dados
- Introdução a Banco de Dados – Joyce Aline de Oliveira Marins, Gracyeli Santos Souza Guarienti (PDF)
Basic
- Programação de computadores para iniciantes com Small Basic – José Augusto N. G. Manzano (PDF)
C
- Algoritmos em Grafos – Yoshiharu Kohayakawa (HTML)
- Algoritmos para Grafos (via Sedgewick) – Paulo Feofiloff (HTML)
- Apostila Linguagem C – Silvio Lago (PDF)
- C Completo e Total – Terceira Edição (1996) – Herbert Schildt (PDF)
- Guia Beej’s Para Programação em Rede – Usando Internet Sockets – Brian “Beej Jorgensen” Hall,
trl.:
cv8minix3 (HTML) - Introdução a Programação – livro adotado na UFPB.
- Linguagem C – Notas de Aula – Carmem Hara, Wagner Zola (HTML, PDF)
- O Fantástico Mundo da Linguagem C (PDF)
- Projeto de Algoritmos (em C) – Paulo Feofiloff (HTML)
C#
- C# e Orientação a Objetos – Caelum
- C# para Iniciantes – André Carlucci, Carlos dos Santos, Claudenir Andrade, Rafael Almeida, Ray Carneiro, Renato Haddad (PDF)
C++
- Apostila Linguagem C++ – Silvio Lago (PDF)
- Programação Orientada a Objetos em C++ (PDF)
- Tópicos Especiais em Programação – Edson Alves (HTML)
Dart
- Dart Documentação – dart.dev
- Flutter para Iniciantes – Rubens de Melo (gitbook)
Docker
- Descomplicando o Docker – Jeferson Fernando
Elixir
- Elixir DOJO – Victor Oliveira Nascimento (HTML)
- Learn4Elixir – Universidade Brasileira Livre (Livebook)
Engenharia de Software
- Engenharia de Software – Uma Abordagem Profissional – Roger S. Pressman, Bruce R. Maxim (PDF)
- Engenharia de Software Moderna – Marco Tulio Valente (HTML)
Metodologias de Desenvolvimento de Software
- Kanban e Scrum – obtendo o melhor de ambos (account required)
- Kanban em 10 Passos (account required)
- Scrum e XP direto das Trincheiras (account required)
Arquitetura de Software
- ASP.NET Core architecture (PDF)
- Melhores Práticas de Arquitetura de Software na era da Nuvem (Necessário criar uma conta (gratuita) no Leanpub para baixar o livro completo nos formatos PDF, EPUB, MOBI ou pelo próprio site)
- Microservices architecture (PDF)
- Modernizing existing .NET apps (PDF)
Outros
- CI – Integração Contínua Sem Desculpa
- Engenharia de Software Moderna – Marco Tulio Valente (HTML)
- Primeiros passos com Padrões de Projeto
Fortran
- Introdução ao Fortran90 – Unicamp/ Cenapad – SP (PDF)
Fundamentos Matemáticos Computacionais
- Análise de Algoritmos – Paulo Feofiloff (HTML)
- Computação: Matemática Discreta – Raquel Montezuma Pinheiro Cabral (PDF)
- Exercícios de Teoria dos Grafos – Paulo Feofiloff (PDF)
- Matemática Fundacional para Computação – Em progresso – Thanos Tsouanas (:construction: em contínuo desenvolvimento)
- Minicurso de Análise de Algoritmos – Paulo Feofiloff (PDF)
- Otimização Combinatória – Paulo Feofiloff (PDF)
- Uma Introdução Sucinta à Teoria dos Grafos – Y. Kohayakawa, Y. Wakabayashi, P. Feofiloff (PDF)
Git
- Git – guia prático – Roger Dudler (HTML)
- Git Magic – Ben Lynn,
trl.:
Leonardo Siqueira Rodrigues (HTML, PDF) - Minicurso – Controle de Versão usando o Git – LTIA UNESP, Marcelo Augusto Cordeiro
- Pro Git – Scott Chacon, Ben Straub, et al. (HTML, PDF, EPUB)
GO
- Aprenda Go com Testes – Lauren Ferreira
- Construindo Aplicações Web em Golang – astaxie (CC BY-SA)
- Go – hands on (CC BY-SA)
- Go Lang – A linguagem do Google – Suelen Goularte Carvalho (PDF)
- Go por Exemplo – Mark McGranaghan, Jeremy Ashkenas, golangbr, Daniela Tamy Iwassa (HTML) (CC BY)
Haskell
- Aprender o Haskell será um grande bem para você – Miran Lipovača,
trl.:
Tailor Fontela
HTML and CSS
- Apostila de HTML – Robertha Pereira Pedroso (PDF)
- Curso SASS – Amanda Vilela
- Desenvolvimento Web com HTML, CSS e JavaScript – Caelum
- Dive Into HTML5 – Mark Pilgrim
- Estruturando o HTML com CSS
Inteligência Artificial
- Aplicações de Machine Learning – Ricardo Augusto Manfredini, Geraldo Nunes Corrêa, Bruno Rodrigues de Oliveira, Suellen Teixeira Zaradzki de Pauli (PDF)
- Inteligência artificial: avanços e tendências – Fabio G. Cozman, Guilherme Ary Plonski, Hugo Neri (PDF) (CC BY-NC-SA)
- Processamento de Linguagem Natural: Conceitos, Técnicas e Aplicações em Português – Helena M. Caseli, Maria G. V. Nunes (PDF) (CC BY-NC-ND)
Internet das Coisas
- A Internet das Coisas – Eduardo Magrani (PDF) (CC BY-SA)
Java
- Imergindo na JVM – Otavio Santana (Leanpub account or valid email requested)
- Introdução a Ciência da Computação com Java Alfredo Goldman, Fabio Kon, Paulo J. S. Silva (PDF)
- Java Básico e Oriêntação a Objeto – Clayton Escouper das Chagas, Cássia Blondet Baruque, Lúcia Blondet Baruque (PDF)
- Java e Orientação a Objetos – Caelum
- Java para Desenvolvimento Web – Caelum
- Programação Orientada a Objetos: Uma Abordagem com Java – Ivan Luiz Marques Ricarte (PDF)
- Programação para iniciantes Alexandre Afonso (PDF)
JavaScript
- Eloquente JavaScript
- EXPERT JS Stack
- Guia JavaScript
- Guia Rápido de Desenvolvimento para Firefox OS (HTML)
- JS: A forma certa
- You Don’t Know JS: Async & Performance
- You Don’t Know JS: ES6 & Além
- You Don’t Know JS: Escopos & Closures
- You Don’t Know JS: Iniciando
- You Don’t Know JS: this & Prototipagem de Objetos
- You Don’t Know JS: Tipos & Gramática
AngularJS
- Criando uma aplicação simples com AngularJS – Davi Ferreira
- Criando uma aplicação Single Page com AngularJS – Lucas Caprio
- Entendendo as diretivas e fazendo abas com AngularJS – Diego Eis
Backbone.js
Ember.js
Express.js
Grunt
Gulp
jQuery
Knockout.js
Meteor
Next.js
- O manual do Next.js para iniciantes – freeCodeCamp
Node.js
- Aplicações web real-time com Node.js – Caio Ribeiro Pereira
- Construindo APIs testáveis com Node.js – Waldemar Neto (HTML)
- Node.js para Leigos
- Raspagem de dados com Node.js
React
Vue.js
- Adicionar Bootstrap e Font-awesome no projeto criado com o Vue Cli
- Documentação pt-BR
- Vue.js na prática – Daniel Schmitz, Daniel Pedrinha Georgii (Necessário criar uma conta (gratuita) no Leanpub para baixar o livro completo nos formatos PDF, EPUB, MOBI ou pelo próprio site)
- VueJS: Filtro para criar URL’s amigáveis
Julia
- Programação de Computadores com Linguagem Julia – José Augusto N. G. Manzano (PDF)
Kubernetes
- Descomplicando Kubernetes – Jeferson Fernando
- Introdução ao Kubernetes no Azure
LaTeX
- Breve Introdução ao LaTeX2e – Lenimar Nunes de Andrade (PDF)
- Introdução ao LaTeX 2 – Ou LaTeX 2 em 105 minutos
- Latexação – Tássio Naia dos Santos (PDF)
Lisp
- Introdução a linguagem LISP (HTML)
- Linguagem LISP – Primeiros passos com Common LISP (CL) – José Augusto N. G. Manzano (PDF)
Logo
- Academia da Tartaruga – José Augusto N. G. Manzano (PDF)
- Linguagem Logo: Introdução com UCBLogo 6.2.2 – José Augusto N. G. Manzano (PDF)
Lua
Pascal
- Programando com Pascal – Jaime Evaristo (PDF)
PHP
- Api REST Com Silex no GAE – Nanderson Castro (PDF, EPUB, MOBI)
- CakePHP
- Curso Linguagem PHP 2000 Maurício Vivas de Souza Barreto (PDF)
- PHP Do jeito certo
- PHPUnit (PDF, EPUB, MOBI)
Yii
- Guia Definitivo para Yii 2.0 – Yii Software (PDF)
Python
- Apostila de Python – Alberson Wander Sá dos Santos (PDF)
- Aprenda computação com Python
- Curso de Python e Django
- Django 101 – Introdução ao Django
- Introdução a Visão Computacional com Python e OpenCV (PDF)
- O Guia do Mochileiro para Python!
- O tutorial de Python
- Pensando Tkinter – Steven Ferg (PDF)
- Pense em Python
- Python e Orientação a Objetos
- Python Fluente, Segunda Edição (2023) – Luciano Ramalho (HTML)
- Python Funcional – Eduardo Mendes
- Python para Desenvolvedores (PDF)
- Python para Matemáticos – Andréa Lins, Lins Souza (PDF)
- Tutorial Django Girls
Django
- Desenvolvimento Web com Python e Django – Vinícius Ramos (endereço de e-mail solicitado, não obrigatório)
- Documentação do Django
- Tutorial Django Girls
R
- Análise Exploratória de Dados usando o R – Enio Jelihovschi (PDF)
- Fundamentos Estatísticos de Ciência dos Dados – Renato Assunção (PDF)
- Introdução à Linguagem R: seus fundamentos e sua prática – Pedro Duarte Faria
- R para cientistas sociais – Jakson Alves de Aquino (PDF)
RegEx
Ruby
Rust
- A Linguagem de Programação Rust – Steve Klabnik, Carol Nichols,
trl.:
Lucas Guimarães,trl.:
Mario Idival,trl.:
Alberto Margarido, et al. (HTML)
Shell / Bash
- Bash Scripting – Meleu (gitbook)
- Casamento de Padrões no Shell do GNU/Linux – Blau Araújo (PDF)
- Curso Intensivo de Programação do Bash – Guia de Estudos – Blau Araújo (PDF)
- Curso Shell GNU – Blau Araújo (PDF) (:construction: in process)
- Introdução ao Shell Script – Aurelio Marinho Jargas (PDF)
- Pequena introdução ao linux e ao Shell Script (PDF)
- Pequeno Manual do Programador GNU/Bash – Blau Araújo (PDF)
TypeScript
- Iniciando no TypeScript – Guia prático para os primeiros passos da linguagem – Maicon Silva (HTML)
- TypeScript Documentação
- TypeScript: O guia definitivo – Eduardo Rabelo (HTML)
Conclusão
O repositório Free Programming Books é uma das melhores coleções gratuitas de livros de programação disponíveis na internet — e o fato de estar traduzida e organizada em português a torna ainda mais valiosa.
Se você busca construir ou expandir sua carreira em tecnologia, vale salvar essa página nos favoritos e revisitar sempre que precisar de uma nova referência.
📌 Comece explorando a lista hoje mesmo:
👉 Mais de 200 livros gratuitos de programação em português