Maison Problème commun Être développeur back-end semble plus difficile aujourd'hui qu'il y a 20 ans

Être développeur back-end semble plus difficile aujourd'hui qu'il y a 20 ans

Apr 02, 2024 pm 04:38 PM
后端开发

En comparant le paysage actuel du développement back-end avec celui de la fin des années 1990, un changement significatif peut être constaté. Alors que les barrières à l’entrée dans le développement de logiciels ont diminué, les rôles de développement back-end sont devenus plus complexes et les développeurs sont confrontés à un plus large éventail de défis et d’attentes.

Être développeur back-end semble plus difficile aujourd'hui qu'il y a 20 ans

La comparaison du paysage actuel du développement backend avec celui de la fin des années 1990 révèle un changement majeur. Même si les barrières à l’entrée dans les carrières en développement de logiciels ont diminué, le rôle est désormais plus complexe et les développeurs sont confrontés à un plus large éventail de défis et d’attentes.

Aujourd'hui, les ingénieurs s'efforcent de construire des systèmes plus grands et plus complexes et sont confrontés à une multitude de choix dans tous les aspects du développement logiciel. À partir de quel langage, outil, plateforme, framework, etc. utiliser, vers quelle solution, style architectural, modèle de conception, etc. mettre en œuvre.

Une complexité supplémentaire est la nécessité de concevoir des systèmes distribués robustes, évolutifs et sécurisés, capables de prendre en charge des milliers d'utilisateurs simultanés, souvent avec une disponibilité presque parfaite, et de se conformer à des réglementations strictes en matière de gestion des données et de sécurité.

Cet article examine en profondeur l'évolution du développement backend au cours des 20 dernières années, révélant les facteurs qui ont contribué à sa difficulté accrue.

Attentes plus élevées des utilisateurs

Les ordinateurs d'aujourd'hui disposent de façon exponentielle de plus de mémoire et de puissance de traitement, ainsi que d'autres capacités auparavant inimaginables. Ces sauts technologiques ont permis le développement de logiciels toujours plus complexes et puissants.

À mesure que les fonctionnalités des logiciels augmentent, les attentes des utilisateurs augmentent également.

Les utilisateurs modernes ont besoin d'un logiciel qui soit non seulement accessible à l'échelle mondiale, mais qui offre également une expérience multiplateforme transparente, une conception réactive, ainsi que des mises à jour et des capacités de collaboration en temps réel. Ils attendent d'excellentes performances, une haute disponibilité et des mises à jour continues pour répondre à leurs besoins changeants avec de nouvelles fonctionnalités et améliorations.

Ce changement oblige les développeurs à exploiter une gamme de technologies pour répondre à ces attentes, ce qui rend le développement backend plus difficile.

Échelle et complexité des systèmes accrues

Les problèmes logiciels que nous résolvons aujourd'hui sont bien plus complexes qu'ils ne l'étaient il y a 20 ans. Nous orchestrons désormais des réseaux informatiques pour traiter des milliers de transactions par seconde et adaptons les systèmes pour accueillir des millions d'utilisateurs.

Les développeurs doivent désormais savoir comment gérer de grandes bases de code multilingues, implémenter des systèmes distribués et gérer les complexités du multi-threading et du multi-traitement. De plus, la nécessité d’une gestion efficace des abstractions et des dépendances complique encore davantage le processus de développement.

Pour les systèmes distribués complexes, l'abstraction est cruciale pour que les développeurs puissent réduire la complexité, masquer les détails inutiles et se concentrer sur les fonctionnalités de niveau supérieur.

L'inconvénient d'une utilisation intensive de l'abstraction est que le débogage est plus difficile et une compréhension complète du système plus difficile, notamment en raison des limitations des outils de visualisation du système traditionnels.

De plus, la prolifération des API nécessite une gestion méticuleuse des dépendances pour éviter la création de systèmes complexes, fragiles ou opaques qui les rendent difficiles à comprendre, à maintenir ou à étendre.

Alors que de nombreux développeurs utilisent encore des tableaux blancs ou des outils de création de diagrammes non interactifs pour schématiser leurs systèmes, des outils plus dynamiques et automatisés sont récemment apparus qui peuvent fournir des informations en temps réel sur l'architecture du système.

Ces changements et bien d'autres (par exemple, exigences de sécurité accrues, introduction de la mise en cache, attentes accrues en matière de couverture des tests, gestion des exceptions, optimisations du compilateur, etc.) soulignent la complexité accrue du développement backend moderne.

L'époque où un seul programmeur pouvait superviser un système entier est révolue depuis longtemps, remplacée par le besoin de grandes équipes distribuées et de compétences approfondies en matière de collaboration, de documentation et d'organisation.

Un choix écrasant

La technologie évoluant à un rythme rapide, les développeurs doivent désormais naviguer dans un vaste écosystème croissant de langages de programmation, de frameworks, de bibliothèques, d'outils et de plates-formes.

Cela peut conduire à une paralysie décisionnelle et incarner le paradoxe du choix : c'est une erreur de penser que si nous donnons plus de choix aux développeurs, ils seront plus heureux et plus productifs. Les choix illimités sont plus attrayants en théorie qu’en pratique.

Le dernier rapport du CNCF documente les nombreuses options disponibles en technologie - des centaines d'options révélées !

Bien qu'un certain niveau d'autonomie dans le choix de la meilleure technologie ou du meilleur outil pour une solution soit important, trop de choix peuvent conduire à une surcharge et finalement submerger les gens ou conduire à la procrastination ou à l'inaction.

La solution consiste à trouver un équilibre entre donner aux développeurs la liberté de faire des choix significatifs et organiser des options pour éviter une surcharge de choix. En fournissant des conseils rigoureusement sélectionnés et ciblés et en favorisant une culture de partage des connaissances et des meilleures pratiques, nous permettons aux développeurs de naviguer dans le vaste paysage technologique avec confiance et efficacité.

Différents ensembles de compétences

L'émergence du cloud computing a introduit des complexités supplémentaires pour les développeurs back-end, les obligeant à maîtriser le déploiement et la gestion d'applications dans des environnements cloud, à comprendre la conteneurisation et à sélectionner les outils d'orchestration appropriés.

En plus des connaissances techniques, les compétences particulièrement appréciées par les développeurs backend modernes incluent :

  • Gérez les logiciels existants et réduisez la dette technique architecturale. Aujourd'hui, la plupart des projets sur lesquels travaillent les développeurs sont des « terrains industriels ». Comprendre comment adapter et faire évoluer une architecture pour s'adapter à des cas d'utilisation imprévus tout en gérant (et potentiellement en réduisant) la dette technique architecturale est une compétence précieuse.

  • Assemblez le logiciel en choisissant la bonne technologie. Avec l'explosion du logiciel en tant que service (SaaS) et des logiciels open source, le développement de logiciels est passé à une approche de type assemblage, dans laquelle les ingénieurs back-end doivent soigneusement sélectionner et combiner des composants, des bibliothèques et des frameworks pour créer un logiciel complet où chaque pièce s'adapte. ensemble de manière transparente.

  • Concevoir une architecture système évolutive, performante et sécurisée. Les ingénieurs logiciels back-end sont également des concepteurs et ils doivent avoir une compréhension approfondie des principes de conception de logiciels pour créer des applications évolutives et maintenables.

  • Communiquer entre les équipes. Les systèmes distribués sont construits par de grandes équipes composées de nombreuses parties prenantes différentes. La marque d’un bon ingénieur est la capacité à communiquer efficacement, favorisant une compréhension partagée et une prise de décision efficace entre toutes les parties prenantes.

Conclusion

En regardant l'évolution du développement backend au cours des deux dernières décennies, il est clair que le rôle a évolué d'une tâche de programmation côté serveur relativement simple à une discipline aux multiples facettes nécessitant un large éventail de compétences.

Des défis tels que répondre aux attentes plus élevées des utilisateurs, gérer l'échelle et la complexité des systèmes, gérer un large éventail de choix et acquérir des compétences diverses mettent en évidence la complexité du développement backend moderne.

Bien qu'entrer dans le monde du développement de logiciels n'ait jamais été aussi simple, être aujourd'hui un excellent développeur backend nécessite de s'adapter à un environnement technologique plus complexe et en évolution rapide. Avoir une expertise en architecture système, en services cloud, en outils de conteneurisation et d'orchestration, ainsi que les compétences générales nécessaires pour communiquer efficacement entre les équipes, restent la clé du succès dans cet espace dynamique.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Commandes de chat et comment les utiliser
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Lignes de formatage PHP en CSV et écriture du pointeur de fichier Lignes de formatage PHP en CSV et écriture du pointeur de fichier Mar 22, 2024 am 09:00 AM

Cet article expliquera en détail comment PHP formate les lignes en CSV et écrit les pointeurs de fichiers. Je pense que c'est assez pratique, je le partage donc avec vous comme référence. J'espère que vous pourrez gagner quelque chose après avoir lu cet article. Formater les lignes au format CSV et écrire dans le pointeur de fichier Étape 1 : Ouvrir le pointeur de fichier $file=fopen("path/to/file.csv","w"); Étape 2 : Convertir les lignes en chaîne CSV à l'aide de la fonction fputcsv( ) convertit les lignes en chaînes CSV. La fonction accepte les paramètres suivants : $file : pointeur de fichier $fields : champs CSV sous forme de tableau $delimiter : délimiteur de champ (facultatif) $enclosure : guillemets de champ (

PHP modifie l'umask actuel PHP modifie l'umask actuel Mar 22, 2024 am 08:41 AM

Cet article expliquera en détail la modification de l'umask actuel en PHP. L'éditeur pense que c'est assez pratique, je le partage donc avec vous comme référence. J'espère que vous pourrez gagner quelque chose après avoir lu cet article. Présentation de PHP modifiant l'umask actuel umask est une fonction php utilisée pour définir les autorisations de fichier par défaut pour les fichiers et répertoires nouvellement créés. Il accepte un argument, qui est un nombre octal représentant l'autorisation de bloquer. Par exemple, pour empêcher l'autorisation d'écriture sur les fichiers nouvellement créés, vous utiliserez 002. Méthodes pour modifier l'umask Il existe deux manières de modifier l'umask actuel en PHP : En utilisant la fonction umask() : La fonction umask() modifie directement l'umask actuel. Sa syntaxe est : intumas

PHP crée un fichier avec un nom de fichier unique PHP crée un fichier avec un nom de fichier unique Mar 21, 2024 am 11:22 AM

Cet article expliquera en détail comment créer un fichier avec un nom de fichier unique en PHP. L'éditeur pense que c'est assez pratique, je le partage donc avec vous comme référence. J'espère que vous pourrez gagner quelque chose après avoir lu cet article. Création de fichiers avec des noms de fichiers uniques en PHP Introduction La création de fichiers avec des noms de fichiers uniques en PHP est essentielle pour organiser et gérer votre système de fichiers. Les noms de fichiers uniques garantissent que les fichiers existants ne sont pas écrasés et facilitent la recherche et la récupération de fichiers spécifiques. Ce guide couvrira plusieurs façons de générer des noms de fichiers uniques en PHP. Méthode 1 : utiliser la fonction uniqid() La fonction uniqid() génère une chaîne unique basée sur l'heure et les microsecondes actuelles. Cette chaîne peut être utilisée comme base pour le nom du fichier.

PHP calcule le hachage MD5 du fichier PHP calcule le hachage MD5 du fichier Mar 21, 2024 pm 01:42 PM

Cet article expliquera en détail le calcul par PHP du hachage MD5 des fichiers. L'éditeur pense que c'est assez pratique, je le partage donc avec vous comme référence. J'espère que vous pourrez gagner quelque chose après avoir lu cet article. PHP calcule le hachage MD5 d'un fichier. MD5 (MessageDigest5) est un algorithme de chiffrement unidirectionnel qui convertit les messages de longueur arbitraire en une valeur de hachage de 128 bits de longueur fixe. Il est largement utilisé pour garantir l’intégrité des fichiers, vérifier l’authenticité des données et créer des signatures numériques. Calculer le hachage MD5 d'un fichier en PHP PHP propose plusieurs méthodes pour calculer le hachage MD5 d'un fichier : Utilisez la fonction md5_file() La fonction md5_file() calcule directement la valeur de hachage MD5 du fichier et renvoie une valeur de 32 caractères.

PHP renvoie un tableau avec les valeurs clés inversées PHP renvoie un tableau avec les valeurs clés inversées Mar 21, 2024 pm 02:10 PM

Cet article expliquera en détail comment PHP renvoie un tableau après avoir inversé la valeur de la clé. L'éditeur pense que c'est assez pratique, je le partage donc avec vous comme référence. J'espère que vous pourrez gagner quelque chose après avoir lu cet article. PHP Key Value Flip Array Key Value Flip est une opération sur un tableau qui échange les clés et les valeurs du tableau pour générer un nouveau tableau avec la clé d'origine comme valeur et la valeur d'origine comme clé. Méthode d'implémentation En PHP, vous pouvez effectuer un retournement clé-valeur d'un tableau via les méthodes suivantes : Fonction array_flip() : La fonction array_flip() est spécialement utilisée pour les opérations de retournement clé-valeur. Il reçoit un tableau en argument et renvoie un nouveau tableau avec les clés et les valeurs échangées. $original_array=[

PHP tronque le fichier à une longueur donnée PHP tronque le fichier à une longueur donnée Mar 21, 2024 am 11:42 AM

Cet article expliquera en détail comment PHP tronque les fichiers à une longueur donnée. L'éditeur pense que c'est assez pratique, je le partage donc avec vous comme référence. J'espère que vous pourrez gagner quelque chose après avoir lu cet article. Introduction à la troncature de fichiers PHP La fonction file_put_contents() en PHP peut être utilisée pour tronquer des fichiers à une longueur spécifiée. La troncature consiste à supprimer une partie de la fin d'un fichier, raccourcissant ainsi la longueur du fichier. Syntaxe file_put_contents($filename,$data,SEEK_SET,$offset);$filename : le chemin du fichier à tronquer. $data : Chaîne vide à écrire dans le fichier. SEEK_SET : désigné comme début du fichier

PHP détermine si une clé spécifiée existe dans un tableau PHP détermine si une clé spécifiée existe dans un tableau Mar 21, 2024 pm 09:21 PM

Cet article expliquera en détail comment PHP détermine si une clé spécifiée existe dans un tableau. L'éditeur pense que c'est très pratique, je le partage donc avec vous comme référence. J'espère que vous pourrez gagner quelque chose après avoir lu cet article. PHP détermine si une clé spécifiée existe dans un tableau : En PHP, il existe de nombreuses façons de déterminer si une clé spécifiée existe dans un tableau : 1. Utilisez la fonction isset() : isset($array["key"]) Cette fonction renvoie une valeur booléenne, vraie si la clé spécifiée existe, fausse sinon. 2. Utilisez la fonction array_key_exists() : array_key_exists("key",$arr

Mar 22, 2024 pm 12:31 PM

Cet article expliquera en détail le codage numérique du message d'erreur renvoyé par PHP lors de l'opération Mysql précédente. L'éditeur pense que c'est assez pratique, je le partage donc avec vous comme référence. J'espère que vous pourrez gagner quelque chose après avoir lu cet article. . Utilisation de PHP pour renvoyer les informations d'erreur MySQL Introduction au codage numérique Lors du traitement des requêtes MySQL, vous pouvez rencontrer des erreurs. Afin de gérer efficacement ces erreurs, il est crucial de comprendre le codage numérique des messages d’erreur. Cet article vous guidera dans l'utilisation de php pour obtenir l'encodage numérique des messages d'erreur Mysql. Méthode d'obtention du codage numérique des informations d'erreur 1. mysqli_errno() La fonction mysqli_errno() renvoie le numéro d'erreur le plus récent de la connexion MySQL actuelle. La syntaxe est la suivante : $erro