Awesome Open Source
Awesome Open Source

Guia do Desenvolvedor Back-end

Guia do Desenvolvedor Back-end

🎯 O guia para alavancar a sua carreira

Abaixo voc encontrar contedos para te guiar e ajudar a se torna um desenvolvedor back-end, caso voc j atue como back-end confere o repositrios para descobrir novas ferramentas para o seu dia-a-dia, os caminhos que voc pode tomar e as tecnologias para incorporar na sua stack para se tornar um profissional atualizado e diferenciado no back-end, faa bom uso do guia e bons estudos!

Segue nas redes sociais para acompanhar mais contedo:

Aviso importante

Antes de tudo voc pode me ajudar e colaborar, deu bastante trabalho fazer esse repositrio e organizar para fazer seu estudo ou trabalho melhor, portanto voc pode me ajudar das seguinte maneiras

Direitos autorais

Esse projeto tomou como rerefncia para ser feito os roadmaps feito pelo projeto roadmap.sh voc pode conferir todo o projeto original feito pelos autores principais pelos links abaixo, desde j agradecendo a todos eles por fornecer esse contedo que serviu de extrema importncia e de base para a criao deste repositrio.

Nossa proposta

A proposta deste guia fornecer contedos para estudo e ferramentas para gui-lo se voc estiver confuso sobre qual o prximo aprendizado, no influenciar voc a seguir os 'hypes' e 'trendys' do momento. Acreditamos que com um maior conhecimento das diferentes estruturas e solues disponveis poder escolher a ferramenta que melhor se aplica s suas demandas. E lembre-se, 'hypes' e 'trendys' nem sempre so as melhores opes.

🔰 Para quem est comeando agora

No se assuste com a quantidade de contedo apresentados neste guia. Acredito que quem est comeando pode us-lo no como um objetivo, mas como um apoio para os estudos. Neste momento, d enfoque no que te d produtividade e o restante marque como Ver depois. Ao passo que seu conhecimento se torna mais amplo, a tendncia este guia fazer mais sentido e fcil de ser assimilado. Bons estudos e entre em contato sempre que quiser! 👊

Colabore

  • Abra Pull Requests com atualizaes
  • Discuta ideias em Issues
  • Compartilhe o repositrio com a sua comunidade

Traduo

Se voc deseja acompanhar esse repositrio em outro idioma que no seja o Portugus Brasileiro, voc pode optar pelas escolhas de idiomas abaixo, voc tambm pode colaborar com a traduo para outros idiomas e a correes de possveis erros ortogrficos, a comunidade agradece.

Guia Extenso de ProgramaoEnglish Click Here
Guia Extenso de ProgramaoSpanish Click Here
Guia Extenso de ProgramaoChinese Click Here
Guia Extenso de ProgramaoHindi Click Here
Guia Extenso de ProgramaoArabic Click Here
Guia Extenso de ProgramaoFrench Click Here
Guia Extenso de ProgramaoItalian Click Here
Guia Extenso de ProgramaoKorean Click Here
Guia Extenso de ProgramaoRussian Click Here
Guia Extenso de ProgramaoGerman Click Here
Guia Extenso de ProgramaoJapanese Click Here

NDICE

Back-end roadmap
Linux
Git & Github
HTTP
APIs
HTML
CSS
JavaScript
Python
Java
C
C++
C#
R
Kotlin
Golang
PHP
TypeScript
Ruby
Grunt
Gulp.js
Lua
Django
Node.js
Ext.js
MongoDB
PostgreeSQL
SQL
MySQL
ASP.net
Raspberry Pi
AWS Cloud
Inteligncia Artificial
Machine Learning
Data Science
NumPy
Pandas
SciPy
Matplotlib
Estatstica
XML
XML AJAX
XML DOM
XML DTD
XML Schema
XSLT
XPath
XQuery
API Rest
API Json
Docker
Padres de arquitetura
Recomendao de livros
Ferramentas & Desafios

Back-end roadmap

Back-end Roadmap

Linux

Linux um termo popularmente empregado para se referir a sistemas operativos ou sistemas operacionais que utilizam o Kernel Linux. O ncleo foi desenvolvido pelo programador finlands Linus Torvalds.

  • Melhores distros linux para programadores - Segue a lista das melhores distros de Linux para programadores, diretamente do arquivo geral do Guia Dev Brasil.
  • Guia Foca - O GuiaFoca um guia que traz desde explicaes bsicas sobre computadores e o sistema GNU/Linux at a administrao e segurana do sistema. Os assuntos do guia so explicados em linguagem clara e organizados de forma linear e didtica, evitando termos tcnicos nos nveis iniciais, at que o usurio se habitue com sua utilizao de forma gradual.
  • Informaes sobre distros - Informaes e atualizaes sobre distros.
  • Cursos de Linux - Cursos de Linux para te guiar do bsico ao avanado.

Git & Github

Git um sistema de controle de verses distribudo, usado principalmente no desenvolvimento de software, mas pode ser usado para registrar o histrico de edies de qualquer tipo de arquivo.

  • Git - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Git4Noobs - A ideia ensinar para os usurios iniciantes que o Git no nenhum "monstro" de se aprender e tambm ensinar como usar num ambiente onde h mais de um desenvolvedor atuando no projeto sem desorganizar ou perder algum trao de cdigo no processo.
  • Conhecendo os super poderes do Git - Guia com seleo de comandos para o Trabalho com Git e GitHub
  • Aprenda Git - Aprenda a utilizar o Git e seus comandos atravs desse site.
  • Git School - Escola do Git, vrias ferramentas para treinar e aprender Git.
  • Git Flow Cheatsheet - Este cheatsheet demonstra o uso bsico e o efeito das operaes do git-flow
  • Cursos de Git & Github - Cursos de Git & Github do repositrio geral do Guia Dev Brasil

HTTP

O Hypertext Transfer Protocol, sigla HTTP um protocolo de comunicao utilizado para sistemas de informao de hipermdia, distribudos e colaborativos. Ele a base para a comunicao de dados da World Wide Web.

  • MDN - HTTP - O MDN Web Docs o website oficial de Mozilla para desenvolvimento de padres web

APIs

O conceito de API nada mais do que uma forma de comunicao entre sistemas. Elas permitem a integrao entre dois sistemas, em que um deles fornece informaes e servios que podem ser utilizados pelo outro, sem a necessidade de o sistema que consome a API conhecer detalhes de implementao do software, as APIs permitem que o usurio final utilize um aplicativo, software ou at uma simples planilha, consultando, alterando e armazenando dados de diversos sistemas, sem que o usurio precise acess-los diretamente.

  • MDN - APIs - O MDN Web Docs o website oficial de Mozilla para desenvolvimento de padres web
  • APIs Pblicas - Uma lista coletiva de APIs gratuitas para uso em software e desenvolvimento web

HTML

HTML (Linguagem de Marcao de HiperTexto) o bloco de construo mais bsico da web. Define o significado e a estrutura do contedo da web. Outras tecnologias alm do HTML geralmente so usadas para descrever a aparncia/apresentao (CSS) ou a funcionalidade/comportamento (JavaScript) de uma pgina da web, sendo assim HTML uma linguagem essncia para voc que quer se tornar desenvolvedor front-end.

  • MDN - HTML - O MDN Web Docs o website oficial de Mozilla para desenvolvimento de padres web
  • Cursos de HTML - Cursos de HTML do repositrio geral do Guia Dev Brasil

CSS

CSS (Cascading Style Sheets) um mecanismo para adicionar estilo a um documento web. O cdigo CSS pode ser aplicado diretamente nas tags ou ficar contido dentro das tags <style>. Tambm possvel, em vez de colocar a formatao dentro do documento, criar um link para um arquivo CSS que contm os estilos.

  • MDN - CSS - O MDN Web Docs o website oficial de Mozilla para desenvolvimento de padres web
  • Cursos de CSS - Cursos de CSS do repositrio geral do Guia Dev Brasil

JavaScript

JavaScript uma linguagem de programao interpretada estruturada, de script em alto nvel com tipagem dinmica fraca e multiparadigma. Juntamente com HTML e CSS, o JavaScript uma das trs principais tecnologias da World Wide Web.

  • MDN - JavaScript - O MDN Web Docs o website oficial de Mozilla para desenvolvimento de padres web
  • Cursos de JavaScript - Cursos de JavaScript do repositrio geral do Guia Dev Brasil

Python

Python uma linguagem de programao de alto nvel, interpretada de script, imperativa, orientada a objetos, funcional, de tipagem dinmica e forte. Um dos usos do Python automatizar tarefas, no entanto, a linguagem tambm permite coletar, organizar e salvar informaes de pginas na internet; monitorar redes sociais; construir um site ou app; criar jogos; rodar algoritmos de machine learning; criar aplicaes de inteligncia artificial (IA), dentre outros

  • Python - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Documentao da linguagem Python - Documentao oficial da linguagem Python em PT-BR
  • Cursos de Python - Cursos de Python diretamente do repositrio geral do Guia Dev Brasil.

Java

Java uma linguagem de programao orientada a objetos. O Java permite executar jogos, fazer upload de fotos, bater papo on-line, fazer tours virtuais e usar servios, como treinamento on-line, transaes bancrias on-line e mapas interativos. Se voc no tiver o Java, muitas aplicaes e websites simplesmente no funcionaro, aprenda Java e programe em uma qualquer plataforma: Uma das grandes vantagens do Java que ele alm de ser uma linguagem uma plataforma de desenvolvimento. Com ele possvel desenvolver aplicaes para desktop, celular, carto, web, televiso digital, etc.

  • Java - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Documentao da linguagem Java - A documentao do Java encontra-se em ingls porm voc pode usar uma extenso ou o google translater para traduzir
  • Aprenda programao Java em detalhes - Scaler Topics - Scaler Topics fornece artigos de programao relacionados a Python, Java, Estrutura de Dados, C/C++ e outras linguagens de programao populares com tutoriais fceis de seguir e programas de exemplo.
  • Cursos de Java - Cursos de Java diretamente do repositrio geral do Guia Dev Brasil.

C

C uma linguagem de programao compilada de propsito geral, estruturada, imperativa, procedural, padronizada pela Organizao Internacional para Padronizao, a linguagem C pode ser facilmente encontrada em grandes jogos do mercado atual, editores de imagem e vdeo, robs, sistemas de automao, e tambm muitos sistemas operacionais so programados totalmente ou parcialmente em C, como por exemplo o Windows, o Linux e o Mac OS.

  • C - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Documentao da linguagem C - Documentao oficial da linguagem C em PT-BR
  • Cursos de C - Cursos de C diretamente do repositrio geral do Guia Dev Brasil

C++

C++ uma linguagem de programao compilada multi-paradigma e de uso geral, usado para o desenvolvimento de sistemas embarcados, bibliotecas grficas, jogos, sistemas operacionais, entre outros, permitindo desenvolver desde tarefas simples como aplicaes na linha de comando ou web, at sistemas complexos de tempo real, muito usadas no mercado financeiro. No ensino acadmico, ela tem grande aceitao porque abrange as linguagens de alto e baixo nvel e open source.

  • C++ - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Documentao da linguagem C++ - Documentao oficial da linguagem C++ em PT-BR
  • Cursos de C++ - Cursos de C++ diretamente do repositrio geral do Guia Dev Brasil
  • Tutorial de C++ para iniciantes - Aprenda C++ para iniciantes. Este tutorial consiste em tpicos C++ passo a passo completos.

C#

C# uma linguagem de programao, multiparadigma, de tipagem forte, desenvolvida pela Microsoft como parte da plataforma .NET. A sua sintaxe orientada a objetos foi baseada no C++ mas inclui muitas influncias de outras linguagens de programao, como Object Pascal e, principalmente, Java.

  • Tour pela linguagem C# - Um pouco mais sobre a linguagem C# e o que ela pode fazer.
  • C# - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Documentao da linguagem C# - Documentao oficial da linguagem C# em PT-BR
  • Cursos de C# - Cursos de C# diretamente do repositrio geral do Guia Dev Brasil

R

R uma linguagem de programao multi-paradigma orientada a objetos, programao funcional, dinmica, fracamente tipada, voltada manipulao, anlise e visualizao de dados, dessa forma, a linguagem de programao R auxilia na coleta, tratamento e transformao desses dados. Alm disso, ela responsvel por ajudar na implementao de algoritmos para realizar anlise estatsticas, modelos de inferncia, regresso e visualizao de dados

  • R - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Documentao da linguagem R - Documentao oficial da linguagem R, no est disponivel em PT-BR mas pode ser traduzida para o idioma de sua escolha pelo google translate.
  • Cursos de R - Cursos de R diretamente do repositrio geral do Guia Dev Brasil

Kotlin

Kotlin uma linguagem de programao de cdigo aberto esttica, compatvel com programao orientada a objetos e funcional. O Kotlin fornece sintaxe e conceitos semelhantes de outras linguagens, incluindo C#, Java e Scala, entre muitos outros, uma linguagem de programao amplamente usada por desenvolvedores Android em qualquer lugar.

  • Kotlin - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Documentao da linguagem Kotlin - Documentao oficial da linguagem Kotlin, no est disponivel em PT-BR mas pode ser traduzida para o idioma de sua escolha pelo google translate.
  • Cursos de Kotlin - Cursos de Kotlin diretamente do repositrio geral do Guia Dev Brasil

Go

O Golang uma linguagem explicitamente projetada, destinada a resolver problemas com linguagens e ferramentas existentes, enquanto aproveita nativamente as arquiteturas de hardware modernas. Ela foi projetada no s com equipes de desenvolvedores em mente, mas tambm com equipes de manuteno a longo prazo.

  • GO - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Documentao da linguagem GO - Documentao oficial da linguagem GO, no est disponivel em PT-BR mas pode ser traduzida para o idioma de sua escolha pelo google translate.
  • Cursos de GO - Cursos de GO diretamente do repositrio geral do Guia Dev Brasil.

PHP

O PHP (um acrnimo recursivo para PHP: Hypertext Preprocessor ) uma linguagem de script open source de uso geral, muito utilizada, e especialmente adequada para o desenvolvimento web e que pode ser embutida dentro do HTML.

  • PHP - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Documentao da linguagem PHP - Documentao oficial da linguagem PHP em PT-BR
  • Cursos de PHP - Cursos de PHP diretamente do repositrio geral do Guia Dev Brasil.

TypeScript

Trata-se de uma ferramenta que permite escrever um cdigo, fazendo programaes orientadas a objetos sem perder suas vantagens. Ao compilar um cdigo TypeScript, gerado um cdigo JavaScript, e esse cdigo o que ser executado no browser

  • TypeScript - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Documentao da linguagem TypeScript - Documentao oficial da linguagem TypeScript, no est disponivel em PT-BR mas pode ser traduzida para o idioma de sua escolha pelo google translate.
  • Curso de TypeScript - Cursos de TypeScript diretamente do repositrio geral do Guia Dev Brasil.

Ruby

Ruby uma linguagem de programao relativamente nova. interpretada multiparadigma, possui uma tipagem dinmica e ainda tem um gerenciamento de memria automtico. tambm uma linguagem multiplataforma, sendo assim suportada por diversos tipo de sistemas operacionais, Windows, Linux, entre outros, muitas aplicaes famosas utilizam o Ruby, como os sites Airbnb e SoundCloud, a rede social Twitch e o site de streaming de sries e filmes Hulu. O Ruby pode ser muito til, pois serve para criar diversos programas para desktop.

Grunt

Grunt um executor de tarefas JavaScript, uma ferramenta usada para executar automaticamente tarefas frequentes, como minificao, compilao, teste de unidade e fiapos. Ele usa uma interface da linha de comandos para executar tarefas personalizadas definidas em um arquivo.

Gulp js

Gulp. js uma ferramenta de automao de tarefas em JavaScript. Tarefas como minificar, otimizar e compilar arquivos, to repetitivas e necessrias ao desenvolvimento, podem ser automatizadas com o Gulp.

Lua

Lua uma linguagem de programao interpretada, de script em alto nvel, com tipagem dinmica e multiparadigma, reflexiva e leve, projetada por Tecgraf da PUC-Rio em 1993 para expandir aplicaes em geral, de forma extensvel, para prototipagem e para ser embarcada em softwares complexos, como jogos.

Django

Django um framework para desenvolvimento rpido para web, escrito em Python, que utiliza o padro model-template-view, usado em grandes empresas como o Instagram, Mozilla e o Pinterest, o Django Framework atrai ateno dos desenvolvedores de python porque permite a criao de aplicaes web com processos muito otimizados.

  • Django - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Documentao do Django - Documentao do Django em ingls.
  • Cursos de Django - Cursos de Django diretamente do repositrio geral do Guia Dev Brasil.

Node JS

O Node. js um ambiente de execuo na porta 80 padro,baseado na pilha da web aberta (HTML, CSS e JS). Ou seja, uma plataforma em que possvel criar aplicaes Javascript sem depender de um browser para a execuo. Sua execuo em single-thread no exige resposta a cada requisio.

  • Node.js - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Documentao do Node.js - Documentao do Node.js em ingls.
  • Cursos de Node.js - Cursos de Node.js diretamente do repositrio geral do Guia Dev Brasil.

Ext JS

ExtJS um framework de aplicaes Java Script puro que funciona em qualquer Browser, desde do IE6 para at a mais recente verso do Chrome. Ele permite que voc criar as melhores aplicaes multiplataformas usando nada alm de um Browser, e tem uma API fenomenal.

MongoDB

MongoDB um software de banco de dados orientado a documentos livre, de cdigo aberto e multiplataforma, escrito na linguagem C++. Classificado como um programa de banco de dados NoSQL, o MongoDB usa documentos semelhantes a JSON com esquemas.

PostgreeSQL

PostgreSQL um sistema gerenciador de banco de dados objeto-relacional baseado no POSTGRES, Verso 4.2, desenvolvido na Universidade da Califrnia no Departamento de Cincias da Computao em Berkeley, o qual foi pioneiro em muitos conceitos que vieram a estar disponveis em alguns bancos de dados comerciais mais tarde.

SQL

Structured Query Language, ou Linguagem de Consulta Estruturada ou SQL, a linguagem de pesquisa declarativa padro para banco de dados relacional. Muitas das caractersticas originais do SQL foram inspiradas na lgebra relacional.

  • SQL - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Documentao do SQL - Documentao Oficial do SQL em ingls
  • Cursos de SQL - Cursos de SQL diretamente do repositrio geral do Guia Dev Brasil.

MySQL

O MySQL um sistema de gerenciamento de banco de dados, que utiliza a linguagem SQL como interface. atualmente um dos sistemas de gerenciamento de bancos de dados mais populares da Oracle Corporation, com mais de 10 milhes de instalaes pelo mundo.

  • MySQL - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Documentao do MySQL - Documentao Oficial do MySQL em ingls
  • Cursos de MySQL - Cursos de MySQL diretamente do repositrio geral do Guia Dev Brasil.

Nestjs

O Nestjs um framework que permite criar aplicaes node eficientes e escalaveis. Utiliza Express por debaixo dos panos, porm tambm compativel com Fastify. Sua arquitetura lembra muito a do Angular.

  • Nest - Documentao oficial.
  • Treina Web - Hellow World com Nest.
  • EZDevs - Tutorial basico de um CRUD com Nest e Mongo.
  • Youtube - Video tutorial do basico ao avanado (Para iniciantes).

ASP net

ASP.NET a plataforma da Microsoft para o desenvolvimento de aplicaes Web e o sucessor da tecnologia ASP. Permite, atravs de uma linguagem de programao integrada na .NET Framework, criar pginas dinmicas. No nem uma linguagem de programao como VBScript, PHP, nem um servidor web como IIS ou Apache.

  • ASP - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Documentao do ASP.net - Documentao Oficial do PostgreeSQL em PT-BR.
  • Cursos de ASP.net - Cursos de ASP.net diretamente do repositrio geral do Guia Dev Brasil.

Raspberry Pi

Raspberry Pi uma srie de mini-computadores de placa nica multiplataforma, de tamanho reduzido com componentes integrados, que se conecta a um monitor de computador ou televiso, e usa um teclado e um mouse padro.

AWS Cloud

Amazon Web Services, tambm conhecido como AWS, uma plataforma de servios de computao em nuvem, que formam uma plataforma de computao na nuvem oferecida pela Amazon.com. Os servios so oferecidos em vrias reas geogrficas distribudas pelo mundo.

  • AWS Cloud - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Documentao do AWS - Documentao oficial da linguagem Lua em ingls.
  • AWS Cloud - Escola da Nuvem - A Escola da Nuvem uma organizao da sociedade civil, sem fins lucrativos, que prepara estudantes para carreiras na nuvem e os conecta a empregadores em potencial.
  • Cursos de AWS - Cursos de AWS diretamente do repositrio geral do Guia Dev Brasil.

Inteligncia artificial

Inteligncia artificial a inteligncia similar humana exibida por sistemas de software, alm de tambm ser um campo de estudo acadmico.

Machine Learning

O aprendizado automtico ou a aprendizagem automtica ou tambm aprendizado de mquina ou aprendizagem de mquina um subcampo da Engenharia e da cincia da computao que evoluiu do estudo de reconhecimento de padres e da teoria do aprendizado computacional em inteligncia artificial.

Data Science

Cincia de dados uma rea interdisciplinar voltada para o estudo e a anlise de dados econmicos, financeiros e sociais, estruturados e no-estruturados, que visa a extrao de conhecimento, deteco de padres e/ou obteno de insights para possveis tomadas de deciso.

NumPy

NumPy uma biblioteca para a linguagem de programao Python, que suporta o processamento de grandes, multi-dimensionais arranjos e matrizes, juntamente com uma grande coleo de funes matemticas de alto nvel para operar sobre estas matrizes.

  • NumPy - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Documentao do NumPy - Documentao oficial do NumPy em ingls.
  • Cursos de NumPy - Cursos de NumPy diretamente do repositrio geral do Guia Dev Brasil.

Pandas

Em programao de computadores, pandas uma biblioteca de software criada para a linguagem Python para manipulao e anlise de dados. Em particular, oferece estruturas e operaes para manipular tabelas numricas e sries temporais. software livre sob a licensa licena BSD.

  • Pandas - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Documentao do Pandas - Documentao oficial do Pandas em ingls.
  • Cursos de Pandas - Cursos de Pandas diretamente do repositrio geral do Guia Dev Brasil.

SciPy

SciPy uma biblioteca Open Source em linguagem Python que foi feita para matemticos, cientistas e engenheiros. Tambm tem o nome de uma popular conferncia de programao cientfica com Python. A sua biblioteca central NumPy que fornece uma manipulao conveniente e rpida de um array N-dimensional.

  • SciPy - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Documentao do SciPy - Documentao oficial do SciPy em ingls.
  • Cursos de SciPy - Cursos de SciPy diretamente do repositrio geral do Guia Dev Brasil.

Matplotlib

Matplotlib uma biblioteca de software para criao de grficos e visualizaes de dados em geral, feita para e da linguagem de programao Python e sua extenso de matemtica NumPy. Originalmente criada pelo bilogo e neurocientista americano John D

  • Matplotlib - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Documentao do Matplotlib - Documentao oficial do Matplotlib em ingls.
  • Cursos de Matplotlib - Cursos de Matplotlib diretamente do repositrio geral do Guia Dev Brasil.

Estatstica

Estatstica a cincia que utiliza as teorias probabilsticas para explicar a frequncia da ocorrncia de eventos, tanto em estudos observacionais quanto em experimentos para modelar a aleatoriedade e a incerteza de forma a estimar ou possibilitar a previso de fenmenos futuros, conforme o caso.

  • Estatstica - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Cursos de Estatstica - Cursos de Estatstica diretamente do repositrio geral do Guia Dev Brasil.

XML

XML uma recomendao da W3C para gerar linguagens de marcao para necessidades especiais. um dos subtipos da SGML capaz de descrever diversos tipos de dados. Seu propsito principal a facilidade de compartilhamento de informaes por intermdio da internet.

  • XML - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Documentao do XML - Documentao oficial do XML em PT-BR.
  • Cursos de XML - Cursos de XML diretamente do repositrio geral do Guia Dev Brasil.

XML AJAX

Ajax o uso metodolgico de tecnologias como Javascript e XML, providas por navegadores, para tornar pginas Web mais interativas com o usurio, utilizando-se de solicitaes assncronas de informaes. Foi inicialmente desenvolvida pelo estudioso Jess James Garret e mais tarde por diversas associaes.

  • XML Ajax - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Ajax - MDN - Documentao oficial do Ajax em PT-BR.
  • Cursos de Ajax - Cursos de XML Ajax diretamente do repositrio geral do Guia Dev Brasil.

XML DOM

A classe do DOM (Document Object Model) XML uma representao na memria de um documento XML. O DOM permite que voc leia, manipule e modifique programaticamente um documento XML. A classe XmlReader tambm l XML. No entanto, ela fornece acesso no armazenado em cache, apenas de encaminhamento e somente leitura.

  • XML DOM - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Modelo de Objeto de Documento (DOM) - Documentao oficial do XML DOM em PT-BR.
  • Cursos de DOM - Cursos de XML DOM diretamente do repositrio geral do Guia Dev Brasil.

XML DTD

Uma definio de tipo de documento um conjunto de declaraes de marcao que definem um tipo de documento para uma linguagem de marcao da famlia da SGML. Uma Definio de Tipo de Documento define os blocos de construo lcitos de um documento XML.

  • XML DTD - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Documentos com DTDs - Documentos com DTDs em PT-BR pela UFRJ.
  • Cursos de XML DTD - Cursos de XML DTD diretamente do repositrio geral do Guia Dev Brasil.

XML Schema

XML Schema uma linguagem baseada no formato XML para definio de regras de validao em documentos no formato XML. Foi a primeira linguagem de esquema para XML a obter o status de recomendao por parte do W3C. Esta linguagem uma alternativa ao DTD, cuja sintaxe no baseada no formato XML.

  • XML Schema - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • XML Schema para documentos XML - Estudo sobre o XML Schema para documentos XML.
  • Cursos de XML - Cursos de XML Schema diretamente do repositrio geral do Guia Dev Brasil.

XSLT

XSL Transformations, ou XSLT, uma linguagem de marcao XML usada para criar documentos XSL que, por sua vez, definem a apresentao dos documentos XML nos browsers e outros aplicativos que os suportem. importante observar que o documento XSL no altera o documento XML original, ou seja, no cria outro documento.

  • XLST - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Introduo ao XSLT - Introduo ao XSLT em PT-BR
  • Cursos de XSLT - Cursos de XSLT diretamente do repositrio geral do Guia Dev Brasil.

XPath

XPath, a XML Path Language, uma linguagem de consulta para selecionar ns de um documento XML. Ademais, XPath pode ser usada para computar valores do contedo de um documento XML. XPath foi definido pelo World Wide Web Consortium

  • XPath - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Documentao do XPath - Documentao oficial do XPath em PT-BR.
  • Cursos de XPath - Cursos de XPath diretamente do repositrio geral do Guia Dev Brasil.

XQuery

XQuery uma linguagem de consulta, com alguns recursos de programao, que projetada para fazer consultas em colees de dados em XML. Ela semanticamente similar ao SQL. XQuery foi desenvolvido pelo grupo de trabalho XML Query do W3C. Foi desenvolvido em colaborao com o XSLT 2.0 pelo Grupo de Trabalho XSL.

  • XQuery - W3Schools - W3Schools um site educacional voltado ao aprendizado de tecnologias web. Seu contedo inclui tutoriais e referncias relacionadas a diversas linguagens.
  • Documentao do XQuery - Documentao oficial do XQuery em PT-BR.
  • Cursos de XQuery - Cursos de XQuery diretamente do repositrio geral do Guia Dev Brasil.

API Rest

Representational State Transfer, em portugus Transferncia Representacional de Estado, um estilo de arquitetura de software que define um conjunto de restries a serem usadas para a criao de web services.

API Json

A API JSON um formato que funciona com HTTP. Ele descreve como os clientes devem solicitar ou editar dados de um servidor e como o servidor deve responder a essas solicitaes.

Docker

Docker um conjunto de produtos de plataforma como servio que usam virtualizao de nvel de sistema operacional para entregar software em pacotes chamados contineres. Os contineres so isolados uns dos outros e agrupam seus prprios softwares, bibliotecas e arquivos de configurao.

  • Docker 101 Tutorial - Neste tutorial prtico e individualizado, voc aprender a criar imagens, executar contineres, usar volumes para persistir dados e montar no cdigo-fonte e definir seu aplicativo usando o Docker Compose. Voc aprender at mesmo sobre alguns tpicos avanados, como prticas recomendadas de criao de rede e imagem.
  • Documentao do Docker - Documentao do Docker em ingls.
  • Cursos de Docker - Cursos de Docker diretamente do repositrio geral do Guia Dev Brasil.

Padres de arquitetura

Um padro de arquitetura uma soluo geral e reutilizvel para um problema que ocorre com frequncia em arquitetura de software dentro de um determinado contexto. Padres de arquitetura so similares aos padres de projeto de software, mas possuem um escopo mais amplo

Recomendao de livros

Ferramentas e Desafios

Sites para treinar projetos back-end

  • Dev Challenge Back-End - Treine suas habilidades com desafios Back-end
  • HackerRank - Desafios de Programao Back-end. IDE integrada
  • CoderByte - Desafios de Programao Back-end. IDE integrada
  • CodeWars - Desafios de Programao Back-end. IDE integrada
  • Coding Games - Desafios Programao Back-end com foco em temtica de jogos. IDE integrada
  • Edabit - Desafios de Programao Back-end. IDE integrada
  • ChallengeRocket - Desafios de Programao Back-end. IDE integrada
  • CodeForces - Desafios de Programao Back-end com a compilao e testes feito pela plataforma porm sem IDE integrada
  • CodeSignal - Desafios de Programao Back-end. IDE integrada
  • Codility - Desafios de Programao Back-end. IDE integrada
  • CSES - Desafios de Programao Back-end. IDE integrada
  • DailyCodingProblem - Desafios de Programao Back-end enviados por e-mail. Soluo do problema Premium
  • Exercism.io - Desafios de Programao Back-end. Sem IDE integrada. Requer download de CLI.
  • LeetCode - Desafios de Programao Back-end. IDE integrada
  • BinarySearch - Desafios de Programao Back-end. IDE integrada
  • CodeAbbey - Desafios de Programao Back-end. IDE integrada
  • ProjectEuler - Desafios de Programao Back-end focado em problemas matemticos. IDE integrada
  • Sphere Onlune Judge (SPOJ) - Desafios de Programao Back-end com a compilao e testes feito pela plataforma porm sem IDE integrada
  • TopCoder - Desafios e Arena de Programao Back-end. IDE integrada
  • URI/Beecrowd - Desafios Programao Back-end, matemticos e SQL. IDE integrada
Related Awesome Lists
Top Programming Languages

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Python (862,627
Java (403,638
Php (293,148
Html (263,376
C (189,765
C Sharp (173,606
Golang (167,684
Css (154,658
Github (44,772
Git (34,892