Frameworks, langages de programmation : Coder à partir de zéro vs utiliser un framework
Pour un rapide rafraîchissement des différences entre ces deux termes – un langage de programmation est essentiellement la façon dont nous communiquons avec les ordinateurs et leur disons quoi faire grâce à l’utilisation de la syntaxe et de la sémantique.
Un framework, en revanche, est un ensemble de programmes réunis pour accomplir une tâche, rendre le codage plus efficace et, d’une manière générale, faciliter la vie des codeurs.
Maintenant, les deux ne sont pas exactement opposés l’un à l’autre, mais il y a un débat en cours dans la communauté des programmeurs sur ce qui est plus important pour les codeurs d’être plus familiers avec : Les langages de programmation (les rouages) ou les frameworks (plus rapides et, parfois, plus fonctionnels).
Certains des frameworks les plus populaires dont vous avez peut-être entendu parler incluent Ruby on Rails et Angular.JS, entre autres. Mais les deux langages de programmation et les frameworks qui les accompagnent continuent de monter et de descendre chaque jour.
Alors, qu’est-ce que cela signifie pour vous ?
NEXT GENERATION DEVOPS : VALUE STREAM MANAGEMENT
Helen Beal (DevOps Institute.)
HOW TO GROW YOUR SERVERLESS TEAM
Sheen Brisals (The LEGO Group)
MLOPS : LIVRAISON CONTINUE DE SYSTEMES D’APPRENTISSAGE MACHINE
Hauke Brammer (finpair GmbH)
Frameworks vs. Solutions personnalisées
Dans un monde parfait, vous sauriez tout ce qu’il y a à savoir sur les frameworks et les langages. Mais nous ne vivons pas dans un monde parfait et votre temps est précieux.
Regardons les différences entre les deux options et pourquoi vous êtes plus susceptible de bénéficier d’une vaste connaissance des frameworks que d’une connaissance aiguë de tous les tenants et aboutissants du langage de programmation.
Construire à partir de zéro
Le développement n’est pas facile, alors pourquoi se compliquer la tâche ?
C’est une équation assez simple, à son niveau le plus fondamental : Pourquoi partir de zéro quand vous pouvez tirer parti d’outils déjà conçus pour vous aider dans vos efforts de programmation ?
Le fait est que beaucoup de frameworks ont fait une grande partie du travail préparatoire pour vous et peuvent créer une expérience plus efficace de votre côté.
Bien sûr, vous ne serez peut-être pas totalement d’accord avec chaque décision prise par le créateur du framework. Vous pourriez même être en mesure de mieux le faire vous-même si vous transfériez le langage vers votre syntaxe de codage préférée. Mais tout cela a un coût en termes de temps.
Transférer tout dans le langage de votre choix pourrait prendre des jours, voire des années, en fonction de l’ampleur du framework ou de ce que vous cherchez exactement à copier.
Vous n’obtiendrez peut-être pas tout ce que vous cherchez du framework, ou du moins, pas exactement de la façon dont vous le préféreriez, mais l’alternative est de repartir de zéro, et ce n’est pas vraiment viable compte tenu des contraintes de temps qui nous sont imposées par la seule vertu d’être mortel et de ne pas disposer d’un temps indéfini pour tout bricoler afin que ce soit exactement comme nous le voulons.
SEE ALSO : Les tendances technologiques 2017 : Voici les principaux frameworks
Les frameworks simplifient les choses
Voici un aperçu assez pratique de toutes les façons dont Ruby on Rails aide les utilisateurs à réduire certaines des minuties des heures interminables de codage.
Des petites choses comme la suppression des points-virgules et d’autres petits trucs astucieux permettent aux programmeurs de couper quelques coins ici et là sans être pénalisés.
Bien sûr, vous devez toujours avoir une connaissance assez complète de Ruby pour travailler sur Rails, mais au final, vous n’avez pas besoin d’être un programmeur expert en Ruby pour passer à Rails.
Vous continuez à coder, mais beaucoup de petits détails et d’aspects plus frustrants du codage seront nettoyés par de bons frameworks, et c’est un bonus dont vous ne voulez pas vous priver.
Vous devez déjà vous préoccuper de tant d’autres aspects de votre code, de la conception générale aux problèmes de sécurité, alors pourquoi ne pas laisser le framework faire une partie du gros travail pour vous ?
L’automatisation prend le dessus
Il fut un temps où chaque frappe au clavier devait être exacte pour que votre programme fonctionne comme vous le souhaitiez. Mais avec le progrès technologique vient l’adoucissement des bords.
Nous n’avons plus besoin de passer des milliers de lignes de code au peigne fin. Au lieu de cela, beaucoup de ces ajouts inutiles ou de ces faux pas sont dépouillés par des compilateurs et des protocoles automatisés conçus pour trouver ces morceaux de code inutiles.
Cette évolution a dédramatisé à quel point vous devez être précis et familier avec un code particulier, car les conséquences d’une erreur ou de ne pas faire les choses exactement comme il faut étaient bien plus importantes.
Apprendre les bons outils pour le travail
Comme je l’ai mentionné au début de cet article, le codage évolue. Il change. Il se développe.
Et l’une des façons dont il s’est développé est la dépendance à l’interface de programme d’application (API) et aux algorithmes pour vous aider à accomplir la tâche que vous vous êtes fixée.
Les frameworks, par exemple, définissent et mettent généralement en œuvre des algorithmes, et obtenir des algorithmes corrects peut parfois être plus crucial pour votre réussite en matière de programmation que les spécificités de la syntaxe.
Encore, vous pouvez reconfigurer ces algorithmes, mais vous risquez de faire une erreur qui pourrait faire dérailler votre projet. De même, c’est une autre question de temps. Pourquoi ajouter des heures de travail et augmenter le risque de bouleverser votre code alors que vous pouvez plutôt trouver des moyens de faire avec un algorithme déjà fonctionnel et parfaitement viable mis en œuvre par le framework ?
Again, cela peut ne pas vous donner tout ce que vous voulez. Mais comme le dit la chanson des Rolling Stones, il vous donnera ce dont vous avez besoin.
SEE ALSO : Nouveau numéro de JAX Magazine – Quel est l’avenir des frameworks ?
Ce que les frameworks ajoutent que les langages de programmation ne font pas
Les frameworks et les langages de programmation sont imbriqués. Il ne s’agit pas d’un système binaire. Ce n’est pas l’un ou l’autre. Ils fonctionnent de concert et les programmeurs doivent connaître les deux assez bien pour être vraiment efficaces. Bien sûr, vous serez parfois confronté à des situations nécessitant des solutions complexes qu’un framework ne sera pas en mesure de résoudre. Par exemple, il arrive qu’un problème unique nécessite un ensemble spécifique de solutions qu’un framework ne peut pas fournir, et vous devez donc revenir à la programmation.
Mais voilà – vous ne pouvez consacrer qu’une partie de votre temps à l’apprentissage des deux frameworks et des langages qu’ils améliorent. Le temps est une ressource et vous devez le dépenser à bon escient. Et une fois que vous avez une compréhension assez complète des deux frameworks et des langages de programmation, lequel d’entre eux devez-vous investir le plus de temps dans l’apprentissage ? Lequel fera finalement de vous le meilleur codeur ?
La réponse est les frameworks. Ils vous rendront plus rapide, plus efficace et moins enclin à commettre une erreur humaine stupide. Ils sont l’équivalent d’une autoroute par rapport à la conduite en ville. Les autoroutes sont simplifiées et ont supprimé de nombreux obstacles tels que les bâtiments et les feux. Bien sûr, vous n’aimez pas toujours la direction d’une autoroute, ou vous pensez qu’un nid de poule devrait être réparé, ou vous pensez qu’il serait plus efficace de dévier certaines sections, mais vous n’allez pas sortir de votre voiture et commencer à la reconstruire à la main, n’est-ce pas ?
Parce que si l’objectif est un déplacement plus rapide et plus efficace, alors reconstruire l’autoroute prendrait beaucoup trop de temps par rapport au fait de l’utiliser telle quelle.
C’est essentiellement l’accord que vous obtenez avec les frameworks. Plus rapide, plus efficace, plus sûr. Peut-être pas toujours selon vos spécifications exactes mais, étant donné l’alternative, les frameworks sont là pour vous faciliter la vie et ils offrent tout simplement plus que ce que les langages de programmation seuls peuvent offrir.
.