Vous trouverez ci-dessous du contenu pour vous guider et vous aider à devenir développeur back-end. Si vous travaillez déjà en tant que développeur back-end, consultez les référentiels pour découvrir de nouveaux outils pour votre vie quotidienne, les chemins que vous pouvez suivre. prenez et les technologies à intégrer dans votre stack pour devenir un professionnel actualisé et différencié du back-end, faites bon usage du guide et de bonnes études !
Suivez-nous sur les réseaux sociaux pour plus de contenu :
Bonjour! Si vous lisez ceci, vous connaissez probablement déjà mon référentiel GitHub, qui propose du contenu gratuit pour aider les développeurs à améliorer leurs compétences. Et si vous êtes ici, vous envisagez peut-être de faire un don pour soutenir la poursuite du projet.
Si vous souhaitez contribuer, plusieurs options sont disponibles, notamment PayPal, PagSeguro, Mercado Pago, Buy Me A Coffe, Pic Pay et Pix. Tout don, aussi petit soit-il, est extrêmement bienvenu et sera utilisé de manière responsable et transparente. Merci d'envisager de soutenir mon projet ! Ensemble, nous pouvons continuer à partager nos connaissances et contribuer à créer une communauté de développeurs plus forte et plus collaborative.
Ce référentiel est un projet gratuit pour la communauté des développeurs. Vous pouvez m'aider en achetant le livre électronique "e-Front" si vous souhaitez apprendre ou améliorer vos compétences en développement front-end. Le livre électronique est complet et couvre les technologies essentielles telles que HTML, CSS, JavaScript, React, TypeScript et bien plus encore. La valeur est symbolique et votre achat m'aide à produire et fournir plus de contenu gratuit à la communauté. Obtenez-le maintenant et commencez votre parcours dans le développement front-end.
Tout d'abord, vous pouvez m'aider et collaborer, il a fallu beaucoup de travail pour créer ce référentiel et l'organiser pour améliorer votre étude ou votre travail, vous pouvez donc m'aider des manières suivantes
Ce projet a pris les feuilles de route réalisées par le projet roadmap.sh comme référence pour créer la création de ce référentiel.
Le but de ce guide est de fournir un contenu d'étude et des outils pour vous guider si vous ne savez pas quoi apprendre ensuite, et non de vous inciter à suivre les « hypes » et les « tendances » du moment. Nous pensons qu'avec une meilleure connaissance des différentes structures et solutions disponibles, vous serez en mesure de choisir l'outil qui s'applique le mieux à vos demandes. Et rappelez-vous que les « battages publicitaires » et les « tendances » ne sont pas toujours les meilleures options.
Ne soyez pas effrayé par la quantité de contenu présenté dans ce guide. Je crois que ceux qui débutent peuvent l'utiliser non pas comme un objectif, mais comme un support pour leurs études. À ce stade, concentrez-vous sur ce qui vous donne de la productivité et marquez le reste comme Voir plus tard . À mesure que vos connaissances s’élargissent, ce guide tend à avoir plus de sens et à être plus facile à assimiler. Bonnes études et contactez-nous quand vous le souhaitez ! ?
Si vous souhaitez suivre ce référentiel dans une langue autre que le portugais brésilien, vous pouvez choisir les choix de langue ci-dessous, vous pouvez également collaborer à la traduction dans d'autres langues et aux corrections d'éventuelles fautes d'orthographe, la communauté vous remercie.
・Anglais — Cliquez ici
・Espagnol — Cliquez ici
・Chinois — Cliquez ici
・Hindi — Cliquez ici
・Arabe — Cliquez ici
・Français — Cliquez ici
・Italien — Cliquez ici
・Coréen — Cliquez ici
・Russe — Cliquez ici
・Allemand — Cliquez ici
・Japonais — Cliquez ici
?️ Feuille de route back-end
? Linux
? Git et Github
? HTTP
? Apis
? HTML
? CSS
? Javascript
? Python
? Java
? W
? C++
? W#
? R.
? Kotlin
? Golang
? PHP
? Manuscrit
? Rubis
?❄️ Grunt
? Gulp.js
? Lune
? Django
? Noeud.js
? Ext.js
? MongoDB
? PostgreSQL
? SQL
? MySQL
? ASP.net
? Framboise Pi
? Nuage AWS
? Intelligence artificielle
? Apprentissage automatique
? Science des données
? NumPy
? Pandas
? SciPy
? Matplotlib
? Statistique
? XML
?️ XML AJAX
? XML-DOM
? DTD XML
? Schéma XML
? XSLT
? XPath
? XQuery
? API de repos
? API Json
? Docker
? Modèles architecturaux
Recommandation de livre
Outils et défis
Linux est un terme couramment utilisé pour désigner les systèmes d'exploitation ou les systèmes d'exploitation qui utilisent le noyau Linux. Le noyau a été développé par le programmeur finlandais Linus Torvalds.
Git est un système de contrôle de version distribué utilisé principalement dans le développement de logiciels, mais peut être utilisé pour enregistrer l'historique des modifications de tout type de fichier.
L'Hypertext Transfer Protocol, acronyme HTTP, est un protocole de communication utilisé pour les systèmes d'informations hypermédias, distribués et collaboratifs. C'est la base de la communication de données sur le World Wide Web.
Le concept d’API n’est rien de plus qu’une forme de communication entre systèmes. Ils permettent l'intégration entre deux systèmes, dans lesquels l'un d'eux fournit des informations et des services pouvant être utilisés par l'autre, sans que le système qui consomme l'API ait besoin de connaître les détails de mise en œuvre du logiciel, les API permettent à l'utilisateur final d'utiliser une application. logiciel ou même une simple feuille de calcul, interrogeant, modifiant et stockant les données de différents systèmes, sans que l'utilisateur ait besoin d'y accéder directement.
HTML (HyperText Markup Language) est l’élément de base du Web. Définit la signification et la structure du contenu Web. Les technologies autres que HTML sont généralement utilisées pour décrire l'apparence/présentation (CSS) ou la fonctionnalité/comportement (JavaScript) d'une page Web. Le HTML est donc un langage essentiel pour vous qui souhaitez devenir développeur front-end.
CSS (Cascading Style Sheets) est un mécanisme permettant d'ajouter du style à un document Web. Le code CSS peut être appliqué directement aux balises ou contenu dans les balises <style>. Il est également possible, au lieu de placer la mise en forme dans le document, de créer un lien vers un fichier CSS contenant les styles.
JavaScript est un langage de programmation structuré, de haut niveau, faiblement typé dynamiquement et interprété selon plusieurs paradigmes. Avec HTML et CSS, JavaScript est l'une des trois principales technologies du World Wide Web.
Python est un langage de programmation de haut niveau, interprété par script, impératif, orienté objet, fonctionnel, typé dynamiquement et puissant. L'une des utilisations de Python est d'automatiser les tâches, cependant, le langage permet également de collecter, d'organiser et de sauvegarder des informations à partir de pages Internet ; surveiller les réseaux sociaux ; créer un site Web ou une application ; créer des jeux ; exécuter des algorithmes d'apprentissage automatique ; créer des applications d'intelligence artificielle (IA), entre autres
Java est un langage de programmation orienté objet. Java vous permet d'exécuter des jeux, de télécharger des photos, de discuter en ligne, de faire des visites virtuelles et d'utiliser des services tels que des formations en ligne, des services bancaires en ligne et des cartes interactives. Si vous n'avez pas Java, de nombreuses applications et sites Web ne fonctionneront tout simplement pas, apprenez Java et programmez sur n'importe quelle plate-forme : l'un des grands avantages de Java est qu'en plus d'être un langage, c'est une plate-forme de développement. Avec lui, vous pouvez développer des applications pour ordinateur de bureau, téléphone portable, carte, Web, télévision numérique, etc.
C est un langage de programmation compilé à usage général, structuré, impératif, procédural, standardisé par l'Organisation Internationale de Normalisation, le langage C se retrouve facilement dans les principaux jeux du marché actuel, les éditeurs d'images et de vidéos, les robots, les systèmes d'automatisation, et aussi de nombreux systèmes d'exploitation sont programmés entièrement ou partiellement en C, comme Windows, Linux et Mac OS.
C++ est un langage de programmation compilé multi-paradigmes à usage général utilisé pour le développement de systèmes embarqués, de bibliothèques graphiques, de jeux, de systèmes d'exploitation, entre autres, vous permettant de tout développer, depuis des tâches simples telles que la ligne de commande ou des applications Web, jusqu'aux tâches complexes. systèmes en temps réel, largement utilisés sur le marché financier. Dans l'enseignement académique, il est largement accepté car il couvre les langues de haut et de bas niveau et est open source.
C# est un langage de programmation multi-paradigmes fortement typé développé par Microsoft dans le cadre de la plateforme .NET. Sa syntaxe orientée objet était basée sur C++ mais inclut de nombreuses influences d'autres langages de programmation, tels que Object Pascal et, principalement, Java.
R est un langage de programmation orienté objet multi-paradigmes, de programmation fonctionnelle, dynamique, faiblement typé, destiné à manipuler, analyser et visualiser des données. Le langage de programmation R aide donc à la collecte, au traitement et à la transformation de ces données. De plus, elle est chargée d'aider à mettre en œuvre des algorithmes pour effectuer des analyses statistiques, des modèles d'inférence, des régressions et des visualisations de données.
Kotlin est un langage de programmation open source statique qui prend en charge la programmation orientée objet et fonctionnelle. Kotlin fournit une syntaxe et des concepts similaires à ceux d'autres langages, notamment C#, Java et Scala, entre autres, et est un langage de programmation largement utilisé par les développeurs Android du monde entier.
Golang est un langage explicitement conçu destiné à résoudre les problèmes liés aux langages et outils existants tout en exploitant nativement les architectures matérielles modernes. Il a été conçu non seulement en pensant aux équipes de développeurs, mais également aux équipes de maintenance à long terme.
PHP (acronyme récursif de PHP : Hypertext Preprocessor) est un langage de script open source à usage général, largement utilisé, particulièrement adapté au développement Web et qui peut être intégré au HTML.
C'est un outil qui permet d'écrire du code, en effectuant une programmation orientée objet sans perdre ses avantages. Lors de la compilation du code TypeScript, du code JavaScript est généré, et ce code est ce qui sera exécuté dans le navigateur
Ruby est un langage de programmation relativement nouveau. Il est interprété multi-paradigme, dispose d'un typage dynamique et dispose même d'une gestion automatique de la mémoire. C'est également un langage multiplateforme, donc supporté par différents types de systèmes d'exploitation, Windows, Linux, entre autres. De nombreuses applications célèbres utilisent Ruby, comme les sites Airbnb et SoundCloud, le réseau social Twitch et le site de streaming de séries et de films Hulu. . Ruby peut être très utile, car il peut être utilisé pour créer différents programmes de bureau.
Grunt est un exécuteur de tâches JavaScript, un outil utilisé pour effectuer automatiquement des tâches fréquentes telles que la minification, la compilation, les tests unitaires et le fluff. Il utilise une interface de ligne de commande pour effectuer des tâches personnalisées définies dans un fichier.
Gorgée. js est un outil d'automatisation de tâches JavaScript. Des tâches telles que la réduction, l'optimisation et la compilation de fichiers, si répétitives et nécessaires au développement, peuvent être automatisées avec Gulp.
Lua est un langage de programmation interprété, avec script de haut niveau, avec typage dynamique et multiparadigme, réfléchissant et léger, conçu par Tecgraf de PUC-Rio en 1993 pour étendre les applications en général, de manière extensible, pour le prototypage et pour être intégrées dans logiciels complexes, tels que des jeux.
Django est un framework de développement web rapide, écrit en Python, qui utilise le modèle modèle-modèle-vue, utilisé dans les grandes entreprises comme Instagram, Mozilla et Pinterest, le Framework Django attire l'attention des développeurs Python car il permet la création de sites Web. applications avec des processus hautement optimisés.
Le nœud. js est un environnement d'exécution sur le port standard 80, basé sur la pile web ouverte (HTML, CSS et JS). En d’autres termes, il s’agit d’une plateforme sur laquelle il est possible de créer des applications Javascript sans dépendre d’un navigateur pour son exécution. Son exécution monothread ne nécessite pas de réponse à chaque requête.
ExtJS est un framework d'application purement Java Script qui fonctionne dans n'importe quel navigateur, de IE6 à la dernière version de Chrome. Il vous permet de créer les meilleures applications multiplateformes en utilisant uniquement un navigateur et il dispose d'une API phénoménale.
MongoDB est un logiciel de base de données documentaire multiplateforme gratuit, open source et écrit en langage C++. Classé comme programme de base de données NoSQL, MongoDB utilise des documents de type JSON avec des schémas.
PostgreSQL est un système de gestion de bases de données objet-relationnel basé sur POSTGRES, version 4.2, développé au département d'informatique de l'Université de Californie à Berkeley, qui a été le pionnier de nombreux concepts qui sont devenus plus tard disponibles dans certaines publicités de bases de données.
Le langage de requête structuré, ou langage de requête structuré, ou SQL, est le langage de requête déclaratif standard pour les bases de données relationnelles. De nombreuses fonctionnalités originales de SQL ont été inspirées par l'algèbre relationnelle.
MySQL est un système de gestion de bases de données qui utilise le langage SQL comme interface. Il s'agit actuellement de l'un des systèmes de gestion de bases de données les plus populaires d'Oracle Corporation, avec plus de 10 millions d'installations dans le monde.
Nestjs est un framework qui vous permet de créer des applications de nœuds efficaces et évolutives. Il utilise Express en coulisses, mais il est également compatible avec Fastify. Son architecture est très similaire à Angular.
ASP.NET est la plate-forme de développement d'applications Web de Microsoft et succède à la technologie ASP. Il permet, grâce à un langage de programmation intégré au .NET Framework, de créer des pages dynamiques. Ce n'est ni un langage de programmation comme VBScript, PHP, ni un serveur web comme IIS ou Apache.
Raspberry Pi est une série de mini-ordinateurs multiplateformes de petite taille à carte unique avec des composants intégrés qui se connectent à un écran d'ordinateur ou à un téléviseur et utilisent un clavier et une souris standard.
Amazon Web Services, également connu sous le nom d'AWS, est une plateforme de services de cloud computing, qui forme une plateforme de cloud computing proposée par Amazon.com. Les services sont offerts dans diverses zones géographiques à travers le monde.
L'intelligence artificielle est une intelligence de type humain affichée par des systèmes logiciels et constitue également un domaine d'études universitaires.
L'apprentissage automatique ou apprentissage automatique ou encore l'apprentissage automatique ou l'apprentissage automatique est un sous-domaine de l'ingénierie et de l'informatique issu de l'étude de la reconnaissance de formes et de la théorie de l'apprentissage informatique en intelligence artificielle.
La science des données est un domaine interdisciplinaire axé sur l'étude et l'analyse de données économiques, financières et sociales structurées et non structurées, qui vise à extraire des connaissances, à détecter des modèles et/ou à obtenir des informations pour une éventuelle prise de décision.
NumPy est une bibliothèque pour le langage de programmation Python, qui prend en charge le traitement de grands tableaux et matrices multidimensionnels, ainsi qu'une large collection de fonctions mathématiques de haut niveau pour opérer sur ces matrices.
En programmation informatique, pandas est une bibliothèque logicielle créée pour le langage Python pour la manipulation et l'analyse de données. Il propose notamment des structures et des opérations pour manipuler des tableaux numériques et des séries chronologiques. C'est un logiciel libre sous licence BSD.
SciPy est une bibliothèque Open Source en langage Python conçue pour les mathématiciens, les scientifiques et les ingénieurs. Il porte également le nom d'une conférence de programmation scientifique populaire avec Python. Sa bibliothèque principale est NumPy qui permet une manipulation pratique et rapide d'un tableau à N dimensions.
Matplotlib est une bibliothèque logicielle permettant de créer des graphiques et des visualisations de données générales, conçue pour et dans le langage de programmation Python et son extension mathématique NumPy. Créé à l'origine par le biologiste et neuroscientifique américain John D.
La statistique est la science qui utilise des théories probabilistes pour expliquer la fréquence d'apparition d'événements, à la fois dans des études observationnelles et dans des expériences visant à modéliser le caractère aléatoire et l'incertitude afin d'estimer ou de permettre la prédiction de phénomènes futurs, selon le cas.
XML est une recommandation du W3C pour générer des langages de balisage destinés à des besoins particuliers. C'est l'un des sous-types de SGML capable de décrire différents types de données. Son objectif principal est de faciliter le partage d’informations via Internet.
Ajax est l'utilisation méthodologique de technologies telles que Javascript et XML, fournies par les navigateurs, pour rendre les pages Web plus interactives avec l'utilisateur, en utilisant des demandes d'informations asynchrones. Il a été initialement développé par le chercheur Jessé James Garret, puis par plusieurs associations.
La classe XML DOM (Document Object Model) est une représentation en mémoire d'un document XML. Le DOM vous permet de lire, manipuler et modifier par programme un document XML. La classe XmlReader lit également XML. Cependant, il fournit un accès non mis en cache, en avant uniquement et en lecture seule.
Une définition de type de document est un ensemble de déclarations de balisage qui définissent un type de document pour un langage de balisage de la famille SGML. Une définition de type de document définit les éléments de base juridiques d'un document XML.
XML Schema est un langage basé sur le format XML permettant de définir des règles de validation dans des documents au format XML. Il s'agit du premier langage de schéma pour XML à obtenir le statut de recommandation du W3C. Ce langage est une alternative à la DTD, dont la syntaxe n'est pas basée sur le format XML.
Les transformations XSL, ou XSLT, sont un langage de balisage XML utilisé pour créer des documents XSL qui, à leur tour, définissent la présentation des documents XML dans les navigateurs et autres applications qui les soutiennent. Il est important de noter que le document XSL ne modifie pas le document XML d'origine, c'est-à-dire qu'il ne crée pas un autre document.
XPath, le langage du chemin XML, est un langage de requête pour sélectionner les nœuds dans un document XML. De plus, XPath peut être utilisé pour calculer les valeurs à partir du contenu d'un document XML. Xpath a été défini par le World Wide Web Consortium
XQuery est un langage de requête, avec certaines fonctionnalités de programmation, conçus pour interroger les collections de données XML. Il est sémantiquement similaire à SQL. XQuery a été développé par le W3C XML Query Working Group. Il a été développé en collaboration avec XSLT 2.0 par le groupe de travail XSL.
Le transfert d'état de représentation est un style d'architecture logicielle qui définit un ensemble de contraintes à utiliser pour créer des services Web.
L'API JSON est un format qui fonctionne avec HTTP. Il décrit comment les clients doivent demander ou modifier les données d'un serveur et comment le serveur doit répondre à ces demandes.
Docker est un ensemble de produits de plate-forme en tant que service qui utilisent la virtualisation au niveau du système d'exploitation pour fournir des logiciels dans des packages appelés conteneurs. Les conteneurs sont isolés les uns des autres et regroupent leurs propres logiciels, bibliothèques et fichiers de configuration.
Un modèle architectural est une solution générale et réutilisable à un problème qui se produit fréquemment dans l'architecture logicielle dans un contexte donné. Les modèles architecturaux sont similaires aux modèles de conception de logiciels, mais ont une portée plus large
Sites pour former des projets arrière