Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/cppbrasil/material-de-aprendizado

Coleção de materiais e links para aprendizado de C e C++, em português ou inglês.
https://github.com/cppbrasil/material-de-aprendizado

Last synced: about 1 month ago
JSON representation

Coleção de materiais e links para aprendizado de C e C++, em português ou inglês.

Awesome Lists containing this project

README

        

Material para aprendizado de C e de C++
=======================================

Coleção de materiais e links para aprendizado de C e de C++, em português ou inglês.

C++
---

### Vídeos

#### Português:

##### Playlists

- [Curso C++ - Professor Bruno](https://www.youtube.com/playlist?list=PLx4x_zx8csUjczg1qPHavU1vw1IkBcm40)
- [Curso Qt5 - Professor Bruno](https://www.youtube.com/playlist?list=PLx4x_zx8csUhzAyii9-cY-IJwo00p_5AC)
- [Curso de C++ 2021.1 - CALICO UFSC - Tarcísio Eduardo Moreira Crocomo](https://www.youtube.com/playlist?list=PLd_tyl_0h07Pp9QIfbqHx5TIvCnnZuwCi)
- [C++ para iniciantes - Marcos Castro](https://www.youtube.com/playlist?list=PL8eBmR3QtPL13Dkn5eEfmG9TmzPpTp0cV)
- [Programação em C++ - Alan de Freitas](https://youtube.com/playlist?list=PLIUc9-A-aPpqrzY3YuWDUOyQLOBCb5lck)

#### Inglês:

##### Videos selecionados, Bjarne Stroustrup

- [The essence of C++](https://www.youtube.com/watch?v=86xWVb4XIyE)
- [CppCon 2017 - Learning and Teaching Modern C++](https://www.youtube.com/watch?v=fX2W3nNjJIo)
- [The aims and status of modern C++](https://www.youtube.com/watch?v=SwJUPeWKRHo)
- [C++20: Reaching for the Aims of C++](https://www.youtube.com/watch?v=wADLYEjP4ag)

##### CppCon:

- [CppCon 2014 - Herb Sutter "Back to the Basics! Essentials of Modern C++ Style"](https://www.youtube.com/watch?v=xnqTKD8uD64)
- [CppCon 2015 - Kate Gregory “Stop Teaching C"](https://www.youtube.com/watch?v=YnWhqhNdYyk)
- [CppCon 2016 - Jason Turner “Rich Code for Tiny Computers: A Simple Commodore 64 Game in C++17”](https://www.youtube.com/watch?v=zBkNBP00wJE)
- [CppCon 2017 - Ben Deane & Jason Turner “constexpr ALL the Things!”](https://www.youtube.com/watch?v=PJwd4JLYJJY)
- [CppCon 2017 - Kate Gregory “10 Core Guidelines You Need to Start Using Now”](https://www.youtube.com/watch?v=XkDEzfpdcSg)
- [CppCon 2018 - Jonathan Boccara “105 STL Algorithms in Less Than an Hour”](https://www.youtube.com/watch?v=2olsGf6JIkU)
- [CppCon 2018 - Jason Turner “Applied Best Practices”](https://www.youtube.com/watch?v=DHOlsEd0eDE)
- [CppCon 2018 - Jon Kalb “This is Why We Can’t Have Nice Things”](https://www.youtube.com/watch?v=fv--IKZFVO8)
- [CppCon 2018 - Kate Gregory “Simplicity: Not Just For Beginners”](https://www.youtube.com/watch?v=n0Ak6xtVXno)
- [CppCon 2018- Kate Gregory “What Do We Mean When We Say Nothing At All?”](https://www.youtube.com/watch?v=kYVxGyido9g)
- [CppCon 2018 - Walter E. Brown “C++ Function Templates: How Do They Really Work?”](https://www.youtube.com/watch?v=NIDEjY5ywqU)
- [CppCon 2019 - Kate Gregory “Naming is Hard: Let's Do Better”](https://www.youtube.com/watch?v=MBRoCdtZOYg)

##### Other Events:

- [code::dive 2015 - Bartosz Szurgot "C++ vs C the embedded perspective"](https://www.youtube.com/watch?v=PDSvjwJ2M80&feature=youtu.be)
- [code::dive 2016 - Bartosz Szurgot "The taming of the Software: C++, embedded... and more"](https://www.youtube.com/watch?v=NGLid96ceEo)
- [Meeting C++ 2017 - Jason Turner "Practical constexpr"](https://www.youtube.com/watch?v=xtf9qkDTrZE)
- [C++ Code Smells 2019 - Jason Turner](https://www.youtube.com/watch?v=nqfgOCU_Do4)
- [C++ on Sea 2019 - Kate Gregory "Oh The Humanity!"](https://www.youtube.com/watch?v=SzoquBerhUc)
- [Meeting Cpp 2021 - Klaus Iglberger "Design Patterns - Facts and Misconceptions"](https://youtu.be/u5EAJTHPJN8)
- [Linux Foundation - C++ for Embedded Development - Thiago Macieira](https://www.youtube.com/watch?v=wLq-5lBc7x4)
- [Barr Group - Getting Started with C++ in Embedded Systems - Michael Wilk](https://www.youtube.com/watch?v=V0iUF22-m5I)

##### Playlists

- [CppCon 2019 - Back to Basics](https://www.youtube.com/playlist?list=PL5qoVlA-tv09ykIIPHP9N6vgJaFPnYWCa)
- [CppCon 2020 - Back to Basics](https://www.youtube.com/playlist?list=PLHTh1InhhwT5o3GwbFYy3sR7HDNRA353e)
- [CppCon 2021 - Back to Basics](https://www.youtube.com/playlist?list=PLHTh1InhhwT4TJaHBVWzvBOYhp27UO7mI)
- [C++ Weekly - Jason Turner](https://www.youtube.com/playlist?list=PLs3KjaCtOwSZ2tbuV1hx8Xz-rFZTan2J1)
- [CppCast - Rob Irving and Jason Turner](https://www.youtube.com/channel/UCuCjADS4u3uJDTqUaG0H9dA/playlists)
- [CppNuts - Rupesh Yadav](https://www.youtube.com/user/MrRupeshyadav/playlists)
- [C++ - Cherno](https://www.youtube.com/playlist?list=PLlrATfBNZ98dudnM48yfGUldqGD0S4FFb)
- [NES Emulator From Scratch - javidx9](https://www.youtube.com/watch?v=nViZg02IMQo&list=PLrOv9FMX8xJHqMvSGB_9G9nZZ_4IgteYf)
- [C++ Machine Learning](https://www.youtube.com/watch?v=jKtbNvCT8Dc&feature=youtu.be)

### EBooks

#### Inglês
- [Algorithms for Modern Hardware - w/ C++ examples](https://en.algorithmica.org/hpc/)
- [C++ Best Practices - Jason Turner](https://legacy.gitbook.com/download/pdf/book/lefticus/cpp-best-practices)
- [C++ Notes for Professionals](https://books.goalkicker.com/CPlusPlusBook/)
- [C++ Standard ISO (Working Draft)](https://eel.is/c++draft/)
- [Cpp Core Guidelines - Diretrizes Principais do C++](http://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines)
- [Hacking C++ - Infographics & Cheat Sheets](https://hackingcpp.com/cpp/cheat_sheets.html)
- [Learn C++](https://www.learncpp.com/)
- [Learning C++ eBook - Rip Tutoral](https://riptutorial.com/ebook/cplusplus)
- [Modern C++ 11 to 20 [en-US] - ChangKun](https://changkun.de/modern-cpp/en-us/00-preface/) - [[Download]](https://changkun.de/modern-cpp/pdf/modern-cpp-tutorial-en-us.pdf)
- [Practical Guide to Bare Metal C++ - Alex Robenko](https://arobenko.github.io/bare_metal_cpp/)
- [SEI CERT C++ Coding Standard (2016) - Aaron Ballman](https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?pageId=88046682) - [[Download]](https://resources.sei.cmu.edu/downloads/secure-coding/assets/sei-cert-cpp-coding-standard-2016-v01.pdf)
- [The Joint Strike Fighter air vehicle C++ coding standards - Lockheed Martin Corporation](http://www.stroustrup.com/JSF-AV-rules.pdf)
- [The C++ Annotations [Online] - Frank B. Brokken](http://www.icce.rug.nl/documents/cplusplus/) - [[Download]](https://gitlab.com/fbb-git/cppannotations-zip)

C
-

### Vídeos

#### Playlists

##### Português

- [Linguagem C Programação Descomplicada - André Backes](https://www.youtube.com/user/progdescomplicada/playlists)
- [Programação Moderna em C - Fernando Mercês](https://www.youtube.com/playlist?list=PLIfZMtpPYFP5qaS2RFQxcNVkmJLGQwyKE)
- [Introdução à Programação de Redes em C - Ítalo Cunha](https://www.youtube.com/playlist?list=PLyrH0CFXIM5Wzmbv-lC-qvoBejsa803Qk)
- [Ponteiros em C - Agostinho Brito](https://www.youtube.com/playlist?list=PLWWAoQUirHNoKlnNdSnDRw8NQEe9wcYiD)

##### Inglês

- [Beginner C Videos - Jacob Sorber](https://www.youtube.com/playlist?list=PL9IEJIKnBJjG5H0ylFAzpzs9gSmW_eICB)

### EBooks

#### Português

- [C Para Seres Humanos - Yaks Vinicios S. Souza](https://github.com/Plankiton/CParaSeresHumanos/releases)
- [Guia sobre programação de redes em C - Beej](https://beej.us/guide/bgnet/translations/bgnet_ptbr.html)

#### Inglês

- [C Notes for Professionals](https://books.goalkicker.com/CBook/)
- [Beej's Guide to Network Programming](https://beej.us/guide/bgnet/html/)
- [The Lost Art of Structure Packing - Eric S. Raymond](http://www.catb.org/esr/structure-packing/)
- [Modern C](https://modernc.gforge.inria.fr/)
- [SEI CERT C Coding Standard - Rules for Developing Safe, Reliable, and Secure Systems](https://wiki.sei.cmu.edu/confluence/display/c/SEI+CERT+C+Coding+Standard) - [[Download]](https://resources.sei.cmu.edu/downloads/secure-coding/assets/sei-cert-c-coding-standard-2016-v01.pdf)

### [Livros Físicos (pagos)](livros.md)

### [Projetos, Exercícios e Tutoriais](projetos-exercicios-tutoriais.md)

Outros materiais interessantes
------------------------------

### Vídeos

#### Playlists

##### Português

- [Arquitetura Organizacional de Computadores - Ronaldo Luiz Alonso](https://www.youtube.com/playlist?list=PLI_dauuJZJxCSXrlDtP8MVpqaajJzdsZn)
- [Programação e Desenvolvimento de Software - Fernando Magno Quintão(DCC - UFMG)](https://www.youtube.com/playlist?list=PLC-dUCVQghfd-2RHqSxKjBSTBc9FrT0GQ)
- [SOLID Design Principles - Carlos Reis](https://www.youtube.com/playlist?list=PLboKtxk1EpigdaiaKOv9Y4YpZdzEkNJcW)

##### Inglês

- [C++ Weekly - Ep 78 - Intro to CMake](https://www.youtube.com/watch?v=HPMvU64RUTY)
- [C++ Links (Resources list) - C++ Communities](https://github.com/MattPD/cpplinks)
- [CppCon 2017: Mathieu Ropert “Using Modern CMake Patterns to Enforce a Good Modular Design”](https://www.youtube.com/watch?v=eC9-iRN2b04)
- [How to CMake Good - vector-of-bool](https://www.youtube.com/playlist?list=PLK6MXr8gasrGmIiSuVQXpfFuE1uPT615s)
- [Pattern-Oriented Software Architectures for Concurrent and Networked Software - Douglas C. Schmidt](https://www.youtube.com/playlist?list=PLZ9NgFYEMxp6CHE-QQ040tlDILNcBqJnc)

### EBooks

#### Português

- [Apostila Git - Walmes Marques Zeviani(UFPR)](https://gitlab.c3sl.ufpr.br/pet-estatistica/apostila-git/blob/devel/apostila_git.pdf)
- [Expressões Regulares - Aurélio Jargas](https://aurelio.net/regex/guia/)
- [Git Magic(pt-BR) - Serafini, Leonardo Siqueira Rodrigues](http://www-cs-students.stanford.edu/~blynn/gitmagic/intl/pt_br/)
- [Pro Git - pt-BR](https://git-scm.com/book/pt-br)
- [Sistemas Operacionais: Conceitos e Mecanismos - Carlos Maziero(UFPR)](http://wiki.inf.ufpr.br/maziero/doku.php?id=socm:start)

#### Inglês

- [Algorithms Notes for Professionals](https://books.goalkicker.com/AlgorithmsBook/)
- [API Design Principles - TQtC](https://wiki.qt.io/API_Design_Principles)
- [C++ Draft - Rascunho do padrão do C++ (C++next e versões anteriores do standard)](https://eel.is/c++draft)
- [Designing Qt-Style C++ APIs - Matthias Ettrich](https://doc.qt.io/archives/qq/qq13-apis.html)
- [Efficient Programming with Components - Justin Meneirs](https://justinmeiners.github.io/efficient-programming-with-components/)
- [Intel® 64 and IA-32 Instruction Set Reference - online](https://namazso.github.io/x86/)
- [Modern CMake](http://cliutils.gitlab.io/modern-cmake/)
- [Posix Standard](https://pubs.opengroup.org/onlinepubs/9699919799/)
- [Pro Git](https://git-scm.com/book)
- [Beginner's Guide to Linkers](https://lurklurk.org/linkers/linkers.html)
- [The Little Manual of API Design - Jasmin Blanchette](https://people.mpi-inf.mpg.de/~jblanche/api-design.pdf)

### Ferramentas

- [Cdecl - Traduz código em C para inglês e vice-versa](https://cdecl.org/)
- [ClangFormat - Conjunto de ferramentas para formatação de código](https://clang.llvm.org/docs/ClangFormat.html)
- [Clang-Tidy - Analisador estático para C++](https://clang.llvm.org/extra/clang-tidy/)
- [Clazy - Plugin de avisos para Clang com foco em Qt](https://kde.org/applications/development/org.kde.clazy)
- [CppCheck - Analisador estático para C e C++](http://cppcheck.sourceforge.net/)
- [DR. Memory - Analisador dinâmico para binários](https://drmemory.org)
- [include-what-you-use - Analisador de #includes para C e C++](https://include-what-you-use.org/)
- [Simian - Analisador de similaridade](https://www.harukizaemon.com/simian/)
- [Valgrind - Utilitário para análise dinâmica](https://valgrind.org/)
- [KCachegrind - Ferramenta de visualização de dados de performance (callgrind)](https://kde.org/applications/development/org.kde.kcachegrind)
- [Massif Visualizer - Ferramenta de visualização de dados de memória (massif)](https://kde.org/applications/development/org.kde.massif-visualizer)
- [wg21.link - Redirecionador de links para issues, drafts e propostas para o C++](https://wg21.link)

- Otimizadores de tempo de compilação
- [Ccache - Sistema de cache para compiladires](https://ccache.dev/)
- [Gold Linker - GNU ELF linker mais rápido que ld](https://sourceware.org/binutils/)
- [Sccache - Sistema de cache distribuida para compiladores](https://github.com/mozilla/sccache)

### Compiladores Online
- [C++ Insights - Expansor de código para visualizar transformações pelo compilador](https://cppinsights.io/)
- [C++ Build Benchmark - Compare C++ Builds](https://build-bench.com)
- [Compiler Explorer - Teste vários compiladores](https://godbolt.org/)
- [Lista de Compiladores Online C & C++](https://arnemertz.github.io/online-compilers/)
- [Quick C++ Benchmark - Online](http://quick-bench.com/)
- [Wasm Explorer - Teste códigos C++ para WebAssembly](https://mbebenita.github.io/WasmExplorer/)

### Conformidade com o padrão C++
- [GCC](https://gcc.gnu.org/projects/cxx-status.html)
- [Clang](https://clang.llvm.org/cxx_status.html)
- [cppreference - Tabela de comparação entre compiladores](https://en.cppreference.com/w/cpp/compiler_support)

Licença
-------

O material disponível diretamente neste repositório está sob licença
[CC-0](LICENSE), a não ser que esteja explicitamente marcado de outra forma.

Para contribuir
---------------

Veja o nosso [guia para contribuir](CONTRIBUTING.md).