Better Programmer (Partie 04): Comment devenir un développeur plus rapide
Introduction
Un développement plus rapide est le rêve de tout développeur. Personne ne veut développer un programme ou un morceau de code toute la semaine ou passer trop d'heures, voire de jours, à essayer de comprendre les choses quand nous sommes bloqués dans le processus de codage.
Chaque codeur veut être plus rapide
- Peut-être avez-vous regardé une vidéo de codage MQL5 sur YouTube qui était difficile à suivre parce que vous êtes trop lent pour rattraper la vitesse de l'instructeur et que vous souhaitez atteindre ce niveau par vous-même.
- Peut-être avez-vous vu des développeurs avec une vitesse de codage magnifique sur le clavier, ils peuvent écrire un algorithme complexe en quelques minutes qui peut vous prendre des heures voire des jours à coder.
- Ou peut-être aimeriez-vous pouvoir coder plus rapidement et efficacement afin de pouvoir livrer des travaux plus rapidement sur Freelance et être en avance sur vos concurrents.
- Ou peut-être voulez-vous impressionner votre conjoint/partenaire par vos capacités de superman sur le clavier, être capable de coder avec aucun bug un algorithme complexe en peu de temps.
- Parfois, vous voudrez peut-être être en mesure de fournir des mises à jour rapides des produits sur le Market et de corriger les bugs et les erreurs que vos clients vous ont envoyés dans votre boîte de réception de courrier électronique ou de messages MQL5.
Faites attention et prenez votre stylo et votre cahier près de vous car je suis sur le point de larguer des bombes de connaissances sur la façon d'augmenter votre vitesse de codage tout en produisant un travail de haute qualité pour vous et votre client.
Vous n'avez besoin d'aucun de ces éléments pour atteindre votre potentiel de vitesse de codage maximal
- Vaste expérience de codage
- Meilleur clavier mécanique
- Être doué pour la frappe au clavier à mémoire musculaire
- Beaucoup de RAM, de nombreux cœurs, un processeur graphique puissant sur votre ordinateur personnel (PC)
Développeur plus rapide vs Codeur plus rapide
Avant de commencer à supprimer ces clés, je pense qu'il serait préférable d'expliquer la différence entre un développeur et un codeur.
Développeur | Codeur |
---|---|
Les développeurs sont des rédacteurs de code plus expérimentés. Ils sont responsables de pratiquement tout dans le projet, par exemple : Conception, planification du travail, codage et tout ce qui concerne le projet. | Toute personne capable d'écrire du code est souvent qualifiée de codeur par les personnes extérieures à l'industrie technologique. Mais, généralement, les codeurs sont considérés comme le niveau de programmeurs (développeurs) le moins formé ou le moins expérimenté. Ces personnes n'ont pas les mêmes connaissances algorithmiques qu'un programmeur ou un développeur, car elles sont souvent débutantes dans le domaine, maîtrisant un seul langage de codage. Les codeurs sont généralement chargés d'écrire des morceaux de code directs qui peuvent facilement être délégués par les développeurs. En tant que codeur, vous n'avez pas besoin de tout savoir sur le projet. Par exemple, un client indépendant peut souhaiter ajouter une fonction Trailing Stop dans son EA. Un codeur peut aller directement et le coder, l'appeler dans la fonction Ontick puis le tester une ou deux fois sur MetaTrader 5 pour s'assurer qu'il fonctionne si c'est le cas, il le renvoie au client |
Dans cet article, nous allons discuter du terme plus large de développeur - comment vous pouvez développer plus rapidement vos systèmes. Nous allons tout étudier entre le design, l'éthique du travail, les outils à utiliser, le codage, le débogage, etc.
COMMENT DEVENIR PLUS RAPIDE EN TANT QUE DÉVELOPPEUR
01 : Éviter les bugs et les mauvaises architectures
Les développeurs pensent qu'ils passent beaucoup de temps à écrire du code, mais en réalité, nous passons la plupart de notre temps à lire du code, à déboguer et à déterminer quoi faire.
Cela peut vous prendre trois heures pour déboguer un morceau de code que vous avez codé pendant 30 minutes, donc plus vous avez de bugs, plus il vous faudra de temps pour terminer le codage de votre projet. Vous savez maintenant que les bugs ralentissent notre processus de développement. Donc, la meilleure chose à faire pour nous est de les éviter le plus tôt possible.
Mauvaise architecture + Bugs = c'est la fin du monde (je plaisante)
Avoir des bugs dans votre projet est mauvais, mais ne pas le déboguer ou les repérer facilement simplement à cause d'une mauvaise architecture est encore pire. Il suffit de regarder ce morceau de code tiré d'un EA que quelqu'un m'a donné pour corriger les bugs.
ouble NPB=ND(m_account.Balance()*PortionPC,2); if(CbT==0||PortChange<0||(PortChange>0&&NPB>PortionBalance))PortionBalance=NPB; if(Pb+Ph<0)DrawDownPC=-(Pb+Ph)/PortionBalance; if(!FirstRun&&DrawDownPC>=MaxDDPercent/100) { ET(A,displayColorLoss,"Equity Stop Loss Reached"); if(PlaySounds)PlaySound(AlertSound); return(0); } if(-(Pb+Ph)>MaxDD)MaxDD=-(Pb+Ph); MaxDDPer=MathMax(MaxDDPer,DrawDownPC*100); if(SaveStats)Stats(false,TimeCurrent()<NextStats,PortionBalance,Pb+Ph); //+-----------------------------------------------------------------+ //| | //+-----------------------------------------------------------------+ double StepAB=InitialAB*(1+StopTradePercent),StepSTB=m_accout.Balance()*(1-StopTradePercent), NextISTB=StepAB*(1-StopTradePercent); if(StepSTB>NextISTB){ InitialAB=StepAB; StopTradeBalance=StepSTB; } double InitPortion=StopTradeBalance*PortionPC; if(PortionBalance<InitPortion) { if(CbT==0) { AllowTrading=false; if(PlaySounds)PlaySound(AlertSound); Print("Portion Balance dropped below stop trade percent"); MessageBox("Reset EA, account balance dropped below stop trade percent on "+Symbol()+Period()," Warning",48); return(0); } else if(!ShutDown&&!RecoupClosedLoss) { ShutDown=true; if(PlaySounds)PlaySound(AlertSound); Print("Portion Balance dropped below stop trade percent"); return(0); } }
Regardez à quel point l'architecture est mauvaise. Il n'est pas étonnant qu'il y ait des bugs dans le code. Comme vous pouvez le voir, le code est difficile à comprendre facilement en un coup d'œil, même si vous êtes celui qui a écrit le code en premier lieu.
Vous serez tellement malchanceux (tout comme moi), si quelqu'un vous engage en tant que freelance pour corriger des bugs, et que vous voyez plus de 10 000 lignes de code comme le code ci-dessus (cela fait plus de 3 semaines maintenant et je n'ai toujours pas fini).
C'est exactement mon point ici. Soyez toujours cohérent avec vos modèles de codage, la façon dont vous nommez les fonctions, créez des variables, etc., choisissez celui avec lequel vous êtes à l'aise et assurez-vous qu'ils sont faciles à utiliser pour vous et pour tout le monde.
02 : Apprenez à déboguer rapidement
Nous avons vu sur le premier point que les bugs nous ralentissent et se nourrissent de notre temps. Le débogage est un long sujet pour tout couvrir dans cet article. Je recommande à tous de lire l'article Débogage des programmes MQL5 pour en savoir plus sur le débogage.
Pour être rapide, nous devons apprendre à déboguer très rapidement, voici quelques conseils rapides.
01 : Utilisez le MétaÉditeur CodeStyler .
C'est comme un petit pas vers le débogage, cet outil incroyable ne peut pas se déboguer lui-même mais peut aider à changer l'apparence de notre code et rendre le code clair et facile à lire.
02 : Affichez et Commentez plus.
Pour découvrir ce qui ne fonctionne pas, nous devons imprimer et commenter plus de code dans les zones suspectes.
Trouvez toujours les bugs dans les zones où ils ne peuvent pas être trouvés.
03 : N'essayez pas de changer quoi que ce soit avant d'avoir bien compris comment cela fonctionne.
Je suis sûr que cela vous est déjà arrivé, vous avez supprimé un morceau de code pour que votre système fonctionne, puis vous vous rendez compte plus tard que le code que vous avez supprimé n'a rien à voir avec les bugs de votre système, alors maintenant vous devez réécrire du code une autre fois et il n'y a aucune garantie que vous n'exposerez pas votre système à d'autres bugs tout au long du processus.
Avant de supprimer quoi que ce soit, lisez-le dans la documentation s'il s'agit d'une fonction intégrée ou d'une méthode. Si vous n'êtes pas sûr, demandez-le sur le forum. Je copierais personnellement tout le code dans un fichier texte lorsque je ne suis pas sûr de la bonne chose à faire, de cette façon je peux être flexible en changeant de code et en testant de nouvelles choses et en me référant au code principal lorsque j'ai découvert quel était l'erreur.
03 : Les bibliothèques sont créées pour un usage spécifique
Lorsque vous travaillez avec une bibliothèque, il est essentiel d'utiliser les classes fournies de la façon dont elles sont prévues, essayer de forcer notre chemin parce que nous sommes trop paresseux pour implémenter quelque chose de propre est un moyen sûr de provoquer un désastre.
Si vous utilisez la bibliothèque standard, il est recommandé d'instancier et de référencer les membres de la bibliothèque de la meilleure manière qui soit claire, simple, cohérente et probablement de la manière recommandée par les développeurs de bibliothèques professionnels.
Par exemple, au lieu de faire référence à la bibliothèque Trade Classes de manière paresseuse et avec des noms peu clairs qui ne sont même pas cohérents comme celui-ci,
#include <Trade\AccountInfo.mqh> //Classe pour travailler avec les propriétés du compte de trading #include <Trade\SymbolInfo.mqh> //Classe pour travailler avec les propriétés des instruments de trading #include <Trade\OrderInfo.mqh> //Classe pour travailler avec les propriétés des ordres en attente #include <Trade\OrderHistoryInfo.mqh> //Classe pour travailler avec les propriétés de l'historique des ordres #include <Trade\PositionInfo.mqh> //Classe pour travailler avec les propriétés de positions ouvertes #include <Trade\DealInfo.mqh> //Classe pour travailler avec les propriétés de l'historique des transactions #include <Trade\Trade.mqh> //Classe pour l'exécution des opérations de trading #include <Trade\TerminalInfo.mqh> //Classe pour obtenir les propriétés de l'environnement du terminal //--- CAccountInfo ac; CSymbolInfo symb; COrderInfo orders; CHistoryOrderInfo hist_orders; CPositionInfo pos; CDealInfo _clos; CTrade my_trade; CTerminalInfo info;
Au lieu de cela, référencez toutes les bibliothèques d'une manière cohérente et facile à comprendre et la meilleure façon de le faire est de le référencer dans le format de membre de Classe de référence m_*** - représente les membres d'un certaine classe
comme ceci,
#include <Trade\AccountInfo.mqh> //Classe pour travailler avec les propriétés du compte de trading #include <Trade\SymbolInfo.mqh> //Classe pour travailler avec les propriétés des instruments de trading #include <Trade\OrderInfo.mqh> //Classe pour travailler avec les propriétés des ordres en attente #include <Trade\OrderHistoryInfo.mqh> //Classe pour travailler avec les propriétés de l'historique des ordres #include <Trade\PositionInfo.mqh> //Classe pour travailler avec les propriétés de positions ouvertes #include <Trade\DealInfo.mqh> //Classe pour travailler avec les propriétés de l'historique des transactions #include <Trade\Trade.mqh> //Classe pour l'exécution des opérations de trading #include <Trade\TerminalInfo.mqh> //Classe pour obtenir les propriétés de l'environnement du terminal //--- CAccountInfo m_account; //membre de of account info CSymbolInfo m_symbol; //membre de symbolInfo COrderInfo m_order; //membre de OrderInfo CHistoryOrderInfo m_orderhistory; //membre de Orderhistory info CPositionInfo m_position; //membre de position info CDealInfo m_deal; //membre de deal info CTrade m_trade; //membre de trade info CTerminalInfo m_terminal; //membre de terminal info
De plus, n'oubliez pas de mettre des commentaires à la fin de la référence de la bibliothèque afin que vous puissiez vous rappeler en quoi consiste la référence la prochaine fois que vous essayez d'y accéder lorsque vous codez.
De plus, afin d'accélérer notre capacité à coder, nous devrions préférer utiliser des bibliothèques standard prêtes à l'emploi pour gérer nos tâches plutôt que d'essayer de tout implémenter à partir de zéro. Ces bibliothèques ont été créées par des programmeurs professionnels pour rendre notre code MQL5 DRY (Ne vous répétez pas) et pour accélérer le processus de développement. J'encourage tout le monde à les utiliser, sans parler d'autres bonnes bibliothèques sur la codebase et certaines sur le Market.
Selon vous, qui code plus rapidement entre ces deux ;
Le codeur qui réécrit tout de zéro (probablement un NOOB) | Le codeur qui utilise la bibliothèque standard |
---|---|
double SymbolAsk(string symbol) { if (symbol == "") symbol = Symbol(); return SymbolInfoDouble(symbol, SYMBOL_ASK); } double SymbolBid(string symbol) { if (symbol == "") symbol = Symbol(); return SymbolInfoDouble(symbol, SYMBOL_BID); } int SymbolDigits(string symbol) { if (symbol == "") symbol = Symbol(); return (int)SymbolInfoInteger(symbol, SYMBOL_DIGITS); } double SymbolLotSize(string symbol) { if (symbol == "") symbol = Symbol(); return SymbolInfoDouble(symbol, SYMBOL_TRADE_CONTRACT_SIZE); } double SymbolLotStep(string symbol) { if (symbol == "") symbol = Symbol(); return SymbolInfoDouble(symbol, SYMBOL_VOLUME_STEP); } double SymbolMaxLot(string symbol) { if (symbol == "") symbol = Symbol(); return SymbolInfoDouble(symbol, SYMBOL_VOLUME_MAX); } double SymbolMinLot(string symbol) { if (symbol == "") symbol = Symbol(); return SymbolInfoDouble(symbol, SYMBOL_VOLUME_MIN); } | #include <Trade\SymbolInfo.mqh> CSymbolInfo m_symbol; input string Input_symbol = "EURUSD"; //+------------------------------------------------------------------+ //| Expert initialization function | //+------------------------------------------------------------------+ int OnInit() { //--- string symbol = Input_symbol=="" ? Symbol() : Input_symbol; m_symbol.Name(symbol); //Définit le nom du symbole pour notre objet de classe CSymbolInfo //--- return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| Expert tick function | //+------------------------------------------------------------------+ void OnTick() { //--- m_symbol.RefreshRates(); //Obtient la dernière cotation double SymbolAsk = m_symbol.Ask(); double SymbolBid = m_symbol.Bid(); double SymbolDigits = m_symbol.Digits(); double SymbolLotSize = m_symbol.ContractSize(); double SymbolLotStep = m_symbol.LotsStep(); double SymbolMaxLot = m_symbol.LotsMax(); double SymbolMinLot = m_symbol.LotsMin(); } |
Les utilisateurs de bibliothèque standard sont 3 fois plus productifs que les non-utilisateurs, sans oublier qu'ils ont moins de code dans leurs programmes, ce qui signifie moins de bugs.
04 : Évitez les codes alambiqués
J'espère que dans votre carrière de codage, vous avez vu quelque chose comme le code ci-dessous dans l'EA de quelqu'un
if(LbT>0) { BEb=ND(BEb/LbT,Digits()); if(BCa<0)BEb-=ND(BCa/PipVal2/(LbB-LbS),Digits()); if(Pb>PbMax||PbMax==0)PbMax=Pb; if(Pb<PbMin||PbMin==0)PbMin=Pb; if(!TradesOpen) { FileHandle=FileOpen(FileName,FILE_BIN|FILE_WRITE); if(FileHandle>-1) { FileWriteInteger(FileHandle,TbF); FileClose(FileHandle); TradesOpen=true; if(Debug)Print(FileName+" File Written: "+TbF); } } }
Cela peut être facile au moment où vous écrivez ce bloc de code, mais il ne sera pas facile de le lire au moment où vous voudrez le déboguer, il y a de fortes chances que vous oublierez certaines des variables sinon toutes, vous devrez donc recommencer à vous y référer. Pensez à quel point cette activité vous fait perdre du temps !
Écrire des algorithmes complexes fera que les gens vous détesteront et vous vous embrouillerez.
Forcer toute la logique à apparaître au même endroit est dégoûtant, vouloir avoir trop d'opérations dans une seule fonction ralentira notre processus de développement puisque nous devons organiser soigneusement notre code et nous assurer que tout fonctionne aussi bien.
Si vous avez besoin de certains types d'opérations, envisagez de créer des fonctions indépendantes qui ne peuvent le faire que pour qu'il vous soit facile de terminer une chose puis de passer à l'autre.
05 : Évitez les distractions.
— Beverly R. Imes
Gardez votre téléphone en mode silencieux (si vous ne l'éteignez pas du tout) et ne le tirez pas pour vérifier vos "J'aime" et les partages de vos photos sur les réseaux sociaux. Vous serez tellement inefficace si vous le faites. Si vous êtes dans un environnement bruyant et dérangeant, trouvez un endroit pour vous asseoir et terminer votre projet.
Si c'est suffisamment important pour vous, vous éviterez toutes les distractions : fermez la porte, éteignez votre téléphone, éteignez les réseaux sociaux, restez Focus et faites le travail.
Je pense que c'est le plus grand défi que nous devons relever en tant que développeurs dans le monde moderne où vous êtes à un clic de beaux modèles séduisants sur Instagram et de vidéos de chats mignons sur Snapchat.
Il est tentant lorsque les choses sont difficiles sur votre projet lorsque vous ne pouvez pas trouver le bon code à mettre en œuvre, de faire une pause et de voir ce qui se passe sur les réseaux sociaux, ou simplement de sortir et de vous détendre.
Ce n'est pas que je suis contre les pauses et les moments de détente avec des amis non, ne vous méprenez pas, je ne code pas 24h/24 et 7j/7 même si j'ai trop de projets de développement MQL5 et web qui m'attendent. Mais je crois que tout le monde devrait s'en tenir à un horaire qui lui convient. Si ce n'est pas le moment de consulter les médias sociaux, ne le faites pas. Si c'est du temps de codage, tenez-vous-en à cela jusqu'à la fin de la session (peu importe à quel point les choses deviennent confuses ou difficiles) je préfère prolonger les sessions de codage si je n'ai rien d'important à faire après cela.
Les codeurs distraits peuvent coder pendant 5 heures ou plus quelque chose que les programmeurs concentrés peuvent coder en 45 minutes
06 : Lire la documentation et apprendre
Après avoir trouvé la solution à votre problème sur le forum, ne le copiez-collez pas précipitamment en pensant que vous terminerez votre projet plus rapidement de cette façon (j'ai touché cela dans mon premier article). Assurez-vous de comprendre comment coder la solution par vous-même. Il est difficile de travailler avec du code copié quand quelque chose ne va pas, surtout quand il y a des bugs puisque vous ne le comprenez pas personnellement.
J'encourage chaque codeur à lire fréquemment la documentation, en particulier sur les choses que nous ne connaissons pas déjà ou avec lesquelles nous ne sommes pas encore à l'aise.
Comment cela augmente-t-il notre vitesse de développement ?
Plus vous en savez sur le langage MQL5, plus vous êtes à l'aise et plus il devient facile en tant que programmeur. Il est toujours difficile de trouver le bon code pour concrétiser efficacement votre idée (Programme), c'est là que la plupart de notre temps est perdu. J'espère bien que vous pouvez dire à quel point il est difficile de coder même des choses simples si vous n'êtes pas très au courant d'une activité particulière telle que le codage d'indicateurs, de scripts, d'expert advisors, etc. C'est là que l'expérience entre en jeu.
Alors, comment obtenir de l'expérience ? Ma réponse est toujours simple : apprendre et essayer différentes choses
Ceux qui connaissent bien le langage MQL5 ont des options infinies sur la façon de transformer leur idée en code efficace et significatif. Ils savent où utiliser
- les Tableaux
- les boucles For / While
- les fichiers pour stocker lire des données
- Requêter et lire des données à partir d'un serveur Web
- et bien d'autres trucs sympas - je ne peux pas tout citer dans cet article
07 : Répétition espacée
— Hermann Ebbinghaus
C'est ainsi que nous avons appris tout ce que nous savons en le faisant encore et encore lentement jusqu'à ce que cela devienne une seconde nature. Notre mémoire dans notre cerveau est limitée et ne conservera que ce que nous utilisons régulièrement, donc si nous voulons conserver quelque chose dans notre esprit, nous devons le faire régulièrement. Nous devrions apprendre à utiliser cela à notre avantage.
Comment ?
Étant donné que l'une des raisons pour lesquelles nous sommes lents est notre ignorance sur ce sujet particulier, nous devons toujours rechercher les domaines que nous devons améliorer (certains d'entre eux sont abordés dans cet article). Une fois que nous avons trouvé ces domaines, nous devons continuellement nous efforcer de nous améliorer dans ces domaines jusqu'à ce que nous devenions exceptionnellement bons. Cela fonctionne bien lorsque vous essayez d'apprendre et de maîtriser une compétence particulière telle que Apprentissage automatique, Algorithmes auto-adaptatifs, etc.
08 : Raccourcis clavier et configuration de MetaEditor
Les raccourcis clavier sont amusants et peuvent vous faire gagner beaucoup de temps lorsqu'il s'agit d'écrire du code sur le clavier. Je suis un pro dans ce domaine et j'aime apprendre aux codeurs mes raccourcis clavier productifs sur MetaEditor.
L'apprentissage des raccourcis clavier change la vie lorsqu'il s'agit de taper du code et je pense que l'utilisation du clavier au lieu d'une souris devrait être adoptée par tous les développeurs puisque nous passons la plupart de notre temps sur notre clavier, nous devons donc être bons dans ce domaine.
Voici quelques-uns de mes raccourcis préférés sur un PC Windows (pour Mac et Linux,. Je n'en suis pas si sûr, mais les utilisateurs de Mac peuvent remplacer CTRL par COMMAND) ;
RACCOURCI | USAGE |
---|---|
F4 | Basculer entre MT5 et MetaEditor |
F7 | Compiler le code |
CTRL+F7 | Compiler tous les documents ouverts |
CTRL+C | Copier le code sélectionné |
CTRL+V | Coller le code sélectionné |
CTRL+X | Couper le code sélectionné |
CTRL+Z | Annuler les modifications dans le code |
CTRL+Y | Refaire les modifications dans le code |
CTRL+A | Sélectionnez tout le code |
CTRL+END | Déplacer le curseur sur la dernière ligne de code de votre document |
CTRL+HOME | Déplacer le curseur sur la première ligne de code de votre document |
SHIFT + Directions(GAUCHE, HAUT, DROITE, BAS) | Sélectionnez le code vers cette direction |
TAB | Augmenter le retrait du code sélectionné |
SHIFT+TAB | Diminuer l'indentation du code sélectionné |
CTRL+ Retour arrière | Supprimer le mot entier d'une ligne |
DEBUT | Déplacer le curseur au début d'une ligne |
FIN | Déplacer le curseur à la fin d'une ligne |
CTRL+ ? | //--- Mettre un séparateur de code à la ligne suivante |
CTRL+> | //+---------------------------------------------------------- ----------------------+ //| Ajoute ceci à la ligne actuelle et aux deux suivantes | //+---------------------------------------------------------- ----------------------+ |
CTRL+" | // ajoute deux barres obliques au début d'une ligne |
CTRL+, | Appliquer styler à votre document actuel |
CTRL+F4 | Fermer le document actuel |
CRL +F5 | Démarrer/Reprendre le débogage sur les données d'historique |
CTRL+T | Ouvrir / masquer la boîte à outils |
CTRL+D | Ouvrir / masquer le navigateur |
ALT+G | Aller à la déclaration de Variable/Fonction |
WINDOWS+T | Pour naviguer entre les applications de la barre des tâches au cas où je voudrais en ouvrir une Navigateur Internet (CHROME) et recherche d'un problème |
CTRL+F | Ouvrir le champ de recherche Rechercher |
CTRL+S | Enregistrer le document actuel |
CTRL + Directions | Sauter d'un mot à l'autre dans cette direction |
CTR + + | Naviguer vers l'avant |
CTRL+ - | Naviguer vers l'arrière |
CTRL+SHIFT+U | Transformer le code sélectionné (un mot) en Majuscule |
CTRL+U | Transformer le code sélectionné (un mot) en Minuscule |
Coinfiguration de MetaEditor
Il est également important d'avoir la meilleure configuration de MetaEditor qui favorise l'écriture de code plus rapidement. Regardons quelques-uns des paramètres que je recommande à tout le monde d'essayer.
Ces cases doivent être cochées
- Insérer () et fermer }]" - cela aidera à éviter les erreurs (fin de programme inattendue, parenthèses déséquilibrées) qui pourraient être difficiles et à attraper dans trop de lignes de code.
- Mettre en surbrillance les crochets correspondants : cela vous rappellera dans quelle fonction ou dans quel bloc vous vous trouvez.
- Mettre en surbrillance la ligne actuelle – il peut être déroutant d'arriver à l'endroit où vous codiez la dernière fois, la définition de cette option vous aidera à y arriver rapidement en un coup d'œil ou vous devrez continuer à faire défiler le code et le courant ligne sera mise en surbrillance.
- Historique du presse-papiers : pour voir votre historique de copier-coller, vous pourrez copier différentes lignes de code et y accéder facilement.
D'autres paramètres choisissent la bonne taille de police pour la capacité de vos yeux et la distance entre vos yeux et le PC, pas besoin de définir une petite taille de police que vous pouvez à peine voir.
Vous pouvez jouer avec les paramètres pour trouver plus de paramètres afin d'accéder plus rapidement à Outils>Options.
09 : Apprendre à utiliser Google
Apprendre à faire la bonne recherche Google est une activité qui fait gagner du temps et peut accélérer votre vitesse de codage. Il y a de fortes chances que vous tombiez sur de nombreux problèmes lors du codage et que vous ayez besoin d'une solution immédiate, mais savoir où trouver les solutions ne suffit pas, vous devez également savoir comment rechercher efficacement la solution.
Faire une recherche sur Google vous suffit pour obtenir rapidement les bonnes réponses à vos questions, n'est-ce pas ? FAUX
Voyons un exemple de la façon dont le codeur utilisateur Google moyen qui s'est retrouvé coincé dans la lecture d'un tableau à partir d'un fichier binaire utilise Google pour rechercher la solution.
La première chose que la plupart des gens font est d'aller sur Google et de chercher quelque chose comme comment lire un tableau dans un fichier binaire voici ce qu'ils obtiennent
Remarque : Le nombre total de résultats est supérieur à 98 millions.
Vous voyez ? Le Web est plein de déchets et de sites qui vous font perdre du temps. Si vous ne faites pas attention, vous finirez par perdre votre temps et vos données privées seront volées par des pirates. Le terme de recherche est trop vague pour obtenir le résultat immédiat spécifique dont nous avons besoin. Pour obtenir les résultats souhaités, nous devons être très clairs et précis.
Il y a trop de conseils de recherche pour ceux qui souhaitent approfondir ce sujet, je recommande de regarder cette courte vidéo. Je vais parler de deux conseils seulement.
01 : Site spécifique à rechercher
Il n'y a pas de meilleur endroit pour obtenir les solutions concernant MQL5 que MQL5.com chaque fois que vous effectuez une recherche sur Google, considérez MQL5.com comme le site que vous souhaitez que Google recherche pour vos réponses.
Ajoutez site:MQL5.com à la fin de votre terme de recherche, et ce résultat de la recherche
Seuls 568 résultats sont renvoyés cette fois, tous provenant de MQL5.com (Le site : URL) ordonne à Google de rechercher uniquement dans le site spécifié.
02 : Plus spécifique
MQL5.com est encore un site vague à rechercher si vous êtes très clair avec ce que vous voulez car c'est un grand site, il y a un moyen que j'utilise toujours pour moi-même mais ce n'est pas recommandé par google. Mais ça marche ! Je l'utilise depuis peu, mais la clé ici est que vous devez savoir pour quelle partie de MQL5 vous voulez que vos résultats soient prioritaires, par exemple Articles, Forum, Codebase, etc. Vous préférerez peut-être les résultats de :
- La section Article si vous voulez en savoir plus sur un sujet.
- Le Forum si vous voulez une solution rapide
- Codebase si vous voulez voir ce que les autres ont codé avant.
Rechercher dans ce format MQL5 + suivi de section + puis un terme de recherche, exemple dans ce cas
Forum MQL5 comment lire un tableau dans un fichier binaire voici le résultat
Cette méthode est spécifique mais nous n'avons toujours pas commandé google vers un site spécifique (le site Web sur lequel vous vous trouvez actuellement uniquement), la meilleure chose serait d'ajouter site:MQL5.com. Le terme de recherche final est maintenant forum comment pour lire un tableau dans un fichier binaire site :MQL5.com Google renverra 399 résultats cette fois.
Conclusion
Cela suffit pour cet article, je travaille encore sur d'autres astuces pour augmenter notre vitesse de programmation et booster notre productivité. Il y a d'autres conseils à venir sur les prochains articles puisqu'il y en a beaucoup. Je recommande à chaque codeur de pratiquer ces habitudes et ces méthodes quotidiennement
Merci d'avoir lu, j'aimerais entendre quelques-uns des conseils de votre part dans la section de discussion de cet article.
Meilleures salutations.
Traduit de l’anglais par MetaQuotes Ltd.
Article original : https://www.mql5.com/en/articles/9752
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Vous acceptez la politique du site Web et les conditions d'utilisation