HyperAI

Profitez Des Vacances Pour Exercer Votre Force Intérieure Et Vous Apprendre À Changer De Langage De Programmation En Douceur

il y a 7 ans
Information
Dao Wei
特色图像

La douleur des programmeurs qui changent d'armes

Pour les programmeurs, à l’ère des changements rapides, il n’est probablement pas réaliste de s’en tenir à un seul langage de programmation.

Il y a toujours des raisons pour lesquelles, après avoir maîtrisé une langue, vous avez soudainement besoin de créer d'autres projets dans une autre langue.

De nombreux programmeurs rencontrent des difficultés courantes lorsqu’ils apprennent un nouveau langage de programmation. Par exemple, si l’on connaît les habitudes d’une ancienne langue, on peut être confus lorsqu’on utilise une nouvelle langue, ce qui peut conduire à une gêne lors de son utilisation.

De plus, les programmeurs qui ne sont pas suffisamment compétents seront perdus pendant un certain temps s’ils veulent utiliser des analogies pour comprendre le nouveau langage.

Ne vous effondrez pas encore.

Voici un livre secret sur les arts martiaux qui peut vous aider à basculer entre les nouveaux et les anciens langages de programmation. Il est en vente à un prix spécial de 0,50 centime par exemplaire pour les fêtes. Vérifiez-le.

Pour résoudre ce problème, trois ingénieurs de l’Université d’État de Caroline du Nord (NCSU) ont trouvé une bonne solution.

Dans l’un de leurs articles, ils ont proposé une méthode basée sur le transfert d’apprentissage et ont emprunté l’idée de l’apprentissage par analogie pour créer un outil d’apprentissage qui permet aux programmeurs d’apprendre de nouveaux langages plus rapidement.

Routines de démontage conventionnelles et mur d'air novice

La méthode d’apprentissage par analogie, souvent utilisée par les programmeurs expérimentés, est un bon moyen de développer de nouvelles compétences. Il utilise les points communs entre les langages de programmation pour faire des analogies, ce qui facilite la maîtrise des compétences d'un nouveau langage.

En termes simples, cela signifie apprendre de nouvelles connaissances à partir des connaissances existantes.

C'est différent du décor des romans d'arts martiaux où des personnes sans aucune compétence peuvent facilement maîtriser des compétences magiques. Avec cette méthode, plus vous maîtrisez de langages de programmation, plus vous avez de chances d’appliquer ce que vous avez appris à d’autres domaines.

Cependant, la méthode d’apprentissage par analogie n’est pas très conviviale pour les programmeurs novices qui ont peu d’expérience, en particulier ceux qui viennent de maîtriser un ou deux langages de programmation. Parce qu’ils n’ont pas assez d’échantillons, il leur est difficile de découvrir les similitudes entre la nouvelle langue et la langue dans laquelle ils sont bons. Alors, face à une nouvelle langue, je me retrouve toujours face à un mur.

Par exemple, il est très difficile pour quelqu’un qui connaît les langages procéduraux (comme C) d’apprendre les langages orientés objet (comme C++). Étant donné que les idées des deux langues sont si différentes, il est difficile de déduire l’apprentissage en utilisant la méthode d’apprentissage par analogie.

Pour prendre un autre exemple, il est très difficile d’amener les programmeurs VB à apprendre ASP. Parce que l'une est une architecture C/S (Client/Serveur) et l'autre est une architecture B/S (Navigateur/Serveur).

Bien que les deux soient similaires en termes de syntaxe, l'écart architectural est énorme et il est difficile pour les programmeurs inexpérimentés de faire le saut en apprenant par analogie.

De plus, après avoir commencé à apprendre une nouvelle langue, vous serez également confronté aux problèmes suivants dans l'application pratique :

1. Pensée inertielle

Après avoir appris plusieurs langues, nous sommes souvent confus au sujet de la grammaire et les mélangeons. Par exemple, certaines langues utilisent « ; » comme caractère de fin, tandis que d'autres utilisent « Entrée ». Si la langue que vous connaissez se termine par « ; », il sera difficile de la corriger en raison de la pensée inertielle.

2. Différentes conditions d'exécution du programme

Après avoir compilé un programme exe, il se peut qu'il ne puisse pas s'exécuter immédiatement. Différentes langues peuvent nécessiter une configuration supplémentaire. Par exemple, les programmes écrits en langage C peuvent généralement être exécutés directement, mais les programmes écrits en VFP nécessitent l'installation du composant DLL du système VFP, donc les programmes VFP nécessitent un disque d'installation. Les programmeurs habitués au langage C peuvent avoir envie de jeter leur clavier lorsqu'ils rencontrent VFP pour la première fois.

3. Problèmes d'appel dans la langue

Les fonctions d'appel impliquées dans le langage sont des moyens couramment utilisés, mais différents langages utilisent des appels différents. Par conséquent, lorsqu’ils débutent avec un nouveau langage, les programmeurs doivent prêter une attention particulière à la manière d’appeler le nouveau langage.

Dans la plupart des cas, les programmeurs expérimentés peuvent s’appuyer sur leur expérience pour résoudre ces problèmes, mais les programmeurs novices peuvent avoir du mal à les résoudre.

De nouveaux outils ouvrent la porte à un nouveau monde

Afin d'aider les programmeurs novices à maîtriser la méthode d'apprentissage par analogie et à résoudre les problèmes qui surviennent dans le processus d'application de nouveaux langages, Transfer Tutor, un outil d'apprentissage développé par trois ingénieurs de l'Université d'État de Caroline du Nord, joue un bon rôle auxiliaire.


Cet outil permet aux utilisateurs de trouver des points communs entre les anciennes et les nouvelles langues afin qu'ils puissent mieux s'adapter à la nouvelle langue. Mais actuellement, l’outil nécessite toujours des frais.

Le principe de base qu'il utilise est d'identifier les différences entre les deux langues phrase par phrase, et de réduire la difficulté d'apprentissage et d'utilisation de la nouvelle langue grâce à des comparaisons et des invites. Il définit trois types de migrations de syntaxe :

1. Transfert négatif : Transfert négatif

En expliquant en détail les langues nouvelles et anciennes, les différences entre les deux langues peuvent être clarifiées, évitant ainsi les erreurs causées par l'interférence d'autres langues lors de la compréhension de la nouvelle langue.

2. Transfert positif

Trouvez les éléments communs entre deux langues afin que les utilisateurs puissent comprendre rapidement la nouvelle langue grâce à des analogies et améliorer l'efficacité de l'apprentissage.

3. Nouveau fait : nouvelle syntaxe

Pour ces grammaires uniques dans de nouvelles langues, Transfer Tutor fournira aux utilisateurs des explications détaillées et des exemples pour aider à mémoriser et à raccourcir le temps d'apprentissage de l'utilisateur.

Prenons comme exemples les langages courants Python et R pour voir comment fonctionne cet outil.

Ceux qui les connaissent doivent savoir qu’il existe des similitudes entre les langages Python et R, mais qu’il existe également des différences.

Par exemple, lors de la sélection d'une table, l'opérateur « [ ] » est utilisé pour sélectionner des lignes en Python, mais est utilisé pour sélectionner des colonnes dans R. Dans R, « », doit être ajouté pour sélectionner des lignes. Lors de la troncature, l'indice en Python est un intervalle ouvert commençant à 0 (c'est-à-dire [0:5], le résultat est 0-4), tandis que l'indice en langage R est un intervalle fermé commençant à 1 (c'est-à-dire [1:5], le résultat est 1-5).

Briser la barrière entre Python et R

Comment Transfer Tutor nous aide-t-il à briser les barrières entre les deux ?

Tout d’abord, Transfer Tutor marquera tous les éléments similaires dans les langages Python et R et les affichera à des fins de comparaison. Vous pouvez cliquer pour passer à l'élément suivant. Cette méthode d’affichage de comparaison élément par élément peut aider les utilisateurs à obtenir tous les points clés de la connaissance.

Transfer Tutor expliquera ensuite en détail les différences et la nouvelle grammaire entre les différentes langues.

Enfin, la fonction d'auto-vérification de Transfer Tutor vous permet d'effectuer un débogage en une seule étape du code écrit dans le nouveau langage. Il est utilisé pour vérifier l'exactitude des résultats d'apprentissage et pour expliquer séparément les différences entre les deux langues.

À en juger par leur processus de fonctionnement expérimental, l'outil est très efficace dans le transfert d'apprentissage du langage Python vers le langage R, permettant aux programmeurs de réaliser « achetez-en un, obtenez-en un gratuitement » pour ces deux langages.

Cependant, il reste encore à vérifier si cette applicabilité s’applique à toutes les langues. Cependant, il peut désormais être utilisé dans l’apprentissage de plusieurs langues. Pour les humains tourmentés par les différentes langues, c’est comme un roseau jeté sur la rivière.

Quant à savoir quand les programmeurs d’IA apparaîtront et seront capables de sauver les innombrables créatures du monde qui écrivent du code comme la lumière de Bouddha, eh bien, cette question devrait être posée aux grands noms qui écrivent du code. Quand pourrons-nous percer la singularité de l’IA ?