Ma mémoire
Plutôt ma mémoire, et un peu de copier-coller
Plutôt du copier-coller, et un peu ma mémoire
Moteur de recherche - Google ou autres
Codes existants
Auto complétion (Eclipse) et copier/coller
Un peu de mémoire.
Avec ma réflexion a 99% du temps.
mais je suis coder amateur,j'ai pas de pression.J'ai le temps de réfléchir et simplifier.En plus ,je ne code pas de l'algorithme ultra pointu.
j'ai fais de la retranscription une fois,pour convertir des couleurs en hsv vers rgb et vice versa.En extrème recours...
Il ne faut pas oublier, je le rappelle que les frameworks nous évite de mémoriser certains blocs de code
Par exemple, il est inutile de mémoriser une chaine de connexion à une base de donnée, on utilise simplement l'ORM![]()
Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
Mes cours/tutoriaux
Bonjour.
Je code avec l'auto-complétion, la documentation et le copier/coller.
De toute façon, qui peut prétendre connaître toutes les fonctions/paramètres d'un framework, de mémoire...
Le fait de ne pas apprendre/connaître par coeur des fonctions/paramètres d'un langage/framework, me permet de réflechir à l'architecture de mon programme, à la mise en place d'algorithme complexe, etc...
Les prioirités avant tout...
Le seul truc que je code de mémoire :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 for(int i = 0; i < 100; i++){ ... }
Open Source Microsoft MediaFoundation
https://github.com/mofo7777
http://jeux.developpez.com/faq/directx/?page=dshow
Sauf que suivant le langage ce sera :Le seul truc que je code de mémoire :
for(int i = 0; i < 100; i++){
...
}
ou
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 for ($i = 1; $i < 100; $i++) { ...... }
ou
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 for (var i=0;i<100;i++){ ..... }
etc, etc, etc.......
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 for Index:= 1 to 100 do begin .... end;
non le secret pour moi c'est de se rappeller quoi utiliser et bien l'utiliser(un for ou un while ou un until), des "if" ou des "case" ou "switch" ... savoir que cela existe et les retrouver.
Perso, j'aime le travail de mémoire, on ait plus heureux lorsqu'un bout de code marche et qu'il a été produit par notre cerveau.. Mais il peut aussi arriver qu'on se trouve devant une situation où par exemple on a oublié la signature d'un fonction, où on cherche une fonction qui fait tel ou tel chose. Là; la la mémoire n'a plus sa place.
Il m'est souvent arrivé de passer par google, il m'a aidé à resoudre d'autres problèmes personnels?![]()
Sauriez-vous, par exemple, coder une connexion à une base de données et effectuer des requêtes simples de type create table, alter table, insert, etc avec du mysqli orienté objet, le tout de mémoire ?
Oui et je préfère souvent faire du SQL à la mano bien propre et logique que passer par un ORM. Même si j'aime bien Entitfy Framework.
Êtes vous, plutôt, de ceux qui sont obligés de recourir à du code existant, Google, et au copier-coller ?
ça dépend si on me demande de coder un algo super connu, je me renseigne pour trouver les implémentations éprouvée et j'en choisi une. Il n'y a aucune raison de réinventer la roue.
Avez-vous une autre méthode ? Si oui, laquelle ?
Je garde de la documentation sous la main bouquins, tuto pdf etc.
[QUOTE=redcurve;7446340]Sauriez-vous, par exemple, coder une connexion à une base de données et effectuer des requêtes simples de type create table, alter table, insert, etc avec du mysqli orienté objet, le tout de mémoire ?
Non,
On utilise une architecture interne ou un framework, donc je n'utilise plus les fonction de base.
Rien que la connection string c'est le genre de truc que je ne retiens pas car elle varie en fonction des bases de données
Êtes vous, plutôt, de ceux qui sont obligés de recourir à du code existant, Google, et au copier-coller ?
Obliger non.
Mais en général ma démarche est :
Je ne suis pas le seul à être confronter à un tel problème.
Comment les autres ont fait pour solutionner le problème
Je juge leur solution et souvent je l'opte ou l'adapte.
Quand je ne trouve pas de solution je me demerde pour la créer moi même
Je trouve débile d'essayé de réinventer la roue.
Je suis payé pour faire avancer la charue, pas pour tester si des roues carrés sont meilleurs que des roues rondes.
Je ne suis qu'un pauvre débutant alors ne frappez pas si mes idées ne sont pas bonnes
Bonjour
Je trouve que la mémoire a tendance à écraser. le copier-coller internet l'encourage davantage à faire oublier.
Bah 'écraser' est après tout le travail de la mémoireÉprouvez-vous des difficultés à mémoriser les fonctions et syntaxes des langages que vous utilisez ?Vous ne croyez surtout pas qu'un développeur se rappellerait l'ordre exacte des paramètres d'une fonction complexe en C par exemple, après n'avoir touché à ce langage pendant des années. En PHP, en VB ... dans les chaines de connexion à une BDD par exemple, on peut facilement se tromper et mettre un ; au lieu d'une virgule, un = au lieu de : .....
Les uns, certes, à force de pratiquer peuvent arriver à apprendre et à se rappeler les syntaxes et l'ordre des paramètres. Mais souvent c'est vers la doc qu'on se retourne pour vérifier la syntaxe.... est-ce-que ces développeurs ont un dictionnaire des fonctions+syntaxes+paramètres+ordre en tête, ou savent-ils que la fonction existe et vont vite par exemple sur le manuel, sur la documentation disponible ou ailleurs pour récupérer la bonne syntaxe ?
Bah je fais partie de cette deuxième catégorie qui, sait que la chose existe, et va donc fouiller la documentation disponible pour récupérer la syntaxe exacte.Et vous ?
Si je suis encore sur le point de départ, si le langage m'est nouveau ... alors oui, je suis obligée de recourir du code existant, Google ... mais sans faire du copier-coller. Personnellement, je préfère consulter un code existant, le retaper, au lieu de copier-coller. Car en tapant le code une fois et en le retapant, tu finiras par le graver dans ta mémoire.Êtes vous, plutôt, de ceux qui sont obligés de recourir à du code existant, Google, et au copier-coller ?
La méthode que je conseille vivement, c'est d'éviter le copier coller, surtout si l'on est en phase d'apprentissage. Par la suite, si l'on progresse, si l'on est sur que notre mémoire peut se rappeler le code, alors là on peut recourir au copier coller, histoire de gagner du temps.Avez-vous une autre méthode ? Si oui, laquelle ?
Ce qu'a dit BenoitM est intéressant: "Je suis payer pour faire avancer la charue, pas pour tester si des roues carrés sont meilleurs que des roues rondes", je trouve cela assez vrai.
Personnellement, je pense que dans un premier temps, lors de l'apprentissage, il est important de ne pas trop copier coller, afin d'enregistrer un minimum les bases, mais une fois qu'elles sont connues, qu'on sais exactement ce que l'on copie, c'est bon.
La mémoire travail à mon sens plus sur l'aspect théorique et logique, la syntaxe étant un point que nous pouvons déléguer à google, ça permet à mes yeux de se concentrer sur des points plus importants: "comment apporter une solution clair et précise à ce problème"
Pour cela il faut tout de même un minimum de grammaire dans le langage que l'ont pratique (Et c'est important quand même, imaginons, nous nous retrouvons sans le net)
Réinventer la roue, l'industrie fait celà tout le temps : la roue de l'Airbus A380 ou du TGV est bien différente de la roue en 3 morceaux de bois de nos ancêtres les gaulois.
Alors quand il existe sur l'étagère une roue qui colle exactement à notre besoin, autant l'utiliser; sinon, autant concevoir une roue qui correspond mieux à notre besoin.
Les 4 règles d'airain du développement informatique sont, d'après Michael C. Kasten :
1)on ne peut pas établir un chiffrage tant qu'on a pas finalisé la conception
2)on ne peut pas finaliser la conception tant qu'on a pas complètement compris toutes les exigences
3)le temps de comprendre toutes les exigences, le projet est terminé
4)le temps de terminer le projet, les exigences ont changé
Et le serment de non-allégiance :
Je promets de n’exclure aucune idée sur la base de sa source mais de donner toute la considération nécessaire aux idées de toutes les écoles ou lignes de pensées afin de trouver celle qui est la mieux adaptée à une situation donnée.
Coder de mémoire, pourquoi pas après 15 de RPG2 sur IBM 36, en restant dans cette techno et en traitant toujours les mêmes aspects.
Désormais, avec la profusion de langages différents à mettre en œuvre pour pondre une appli, en particulier dans le domaine du web, ça devient une gageure. Sans compter qu'à chaque jour sa nouveauté révolutionnaire (framework, librairie js, architecture etc..) qui "facilitera grandement la vie du développeur"
Et puis une petite recherche ne nous met pas à l'abri de trouver un algo ou des instructions plus adaptés à un développement que l'on a pourtant mainte fois réalisé et que l'on pensait maitriser parfaitement.
Je rejoins toutes celles est ceux qui pensent qu'il est plus important de savoir chercher et s'organiser que de connaitre par cœur, ce qui implique de rester sur ses acquis, par ailleurs.
Une petite anecdote que j'ai lue dans un bon bouquin de Jean Claude Ameisen :
Les chauffeurs de taxis londoniens ont une mémoire phénoménale, ils peuvent connaitre les emplacements de plus de 25000 rues, adresses d'intérêt, etc... Pour cela ils passent par un apprentissage intensif de plusieurs années. D'un point de vue physiologique, leur hippocampe (région du cerveau impliquée dans la mémoire d'apprentissage) s'est davantage développé que la moyenne des autres personnes. A l'inverse, les chercheurs ont noté qu'ils avaient également plus de mal que la moyenne à apprendre de nouvelles notions. C'est comme si leur mémoire était accaparée est se trouvait moins disponible pour d'autres apprentissages.
Et bien si l'on transpose cette étude à notre cas, on en déduit qu'on devrait donc passer moins de temps à apprendre bêtement par coeur, et cela laisse davantage de disponibilité à notre cerveau pour apprendre de nouvelles choses et réfléchir. C'est pour cela qu'internet et google m'ont énormément ouvert l'esprit dans mon métier de développeur, en me libérant des obligations d'apprentissage par coeur.
Evidemment, il ne faudrait pas tomber dans l'excès inverse : si l'on est sans arrêt rendu sur le net pour chercher comment écrire une boucle ou un foreach, on perd plus de temps que l'on en gagne.
Pour moi tout est une question d'équilibre : pas question de connaitre par coeur toutes les subtilités des CSS par exemple, mais bien avoir bien intégré l'utilisation des propriétés principales est indispensable pour avancer plus vite.
Depuis qu'il est nouvellement conseillé d'utiliser PDO en PHP je n'ai pas encore eu le loisir de prendre des vacances au point d'apprendre la syntaxe par coeur mysqli.
D'autre part, je pense que l'expérience fait rentrer tout ça dans la tête. Plus on conçoit, plus on sait concevoir, et plus le code est tellement photographié par le copié collé qu'il en deviendrait instinctif.
Après le truc, c'est que le programmeur étant assez feignasse, quand il s'agit d'écrire des lignes avec moult caractères, chacun nécessitant le support de plusieurs doigts à la fois, normal de préférer copier coller.
... Et d'ailleurs, Jquery, voir JQuery UI, finalement, c'est du copié collé "intelligent" ...
Merci pour un topic aussi humble, parce que je commençais à me demander si personne ne copiait collait. Malgré tout, je n'ai pu me résoudre à voter, car les select boxes sont remplacés par des radios. Toute réponse de ma part aurait été fausse.
Terminées les prises de tête pour programmer en php. On procède comme ça : http://cavril.developpez.com/php/ (débutants pressés voulant éviter d'approfondir vers la POO)
C'est une réflexion qui m'a choqué. Avant Internet, ou plutôt il y a plus de 20ans, on apprenait un langage en lisant un livre, en passant beaucoup de temps à apprendre la méthode et la syntaxe. Il fallait plusieurs semaines avant d'oser dire que l'on pratiquait un langage. Pour l'anecdote, mon premier langage fut le basic du ZX80 de Sinclair que j'ai appris sans jamais avoir l'ordinateur chez moi, mais en lisant tout simplement le livre, et donc s'en pratiquer (la commande de mon Zx80 n'est jamais arrivé à cause du succès de la machine). Aujourd'hui, on apprend un langage en une journée, cela signifie que l'on passe à coté de plein de chose: la méthode, les insuffisances, les moyens de contourner ces dernières, etc..
Et bien moi-même aujourd’hui, j'utilise internet et le copier/coller même pour les instructions les plus élémentaires, et même pour les langages que j'ai pratiqué de longue date (exemple Php, VBA, C). En le remarquant, j'ai trouvé deux raisons pour expliquer ce phénomène du (google + copier/coller):
1 - je ne suis plus un développeur à plein temps, et ma mémoire n'est plus entrainé
2- Les doc en ligne (VAB par exemple), ne sont pas bien faite, ni pour l'apprentissage (c'est une cata), ni pour les développeurs (il n'y pas de moteur de recherche digne de ce nom comparé à google).
Ces deux raisons me sont propres. Mais il faut ajouter également l'esprit "zapping" de nos cerveaux d'aujourd'hui. Le temps va trop vite, les yeux et le cerveaux ne parvienne plus à fixer les informations qui passent devant nous. Nous sommes drogué à la quantité d'information, et nous de passons plus assez de temps à "digérer" cette quantité. A cela j'ajoute malheureusement une dilution importante des bonnes informations noyées dans un flux de très mauvaises qualités. Il est loin le temps où un livre comme le kernigan & Ritchie (langage C), était un plaisir de lecture tant par sa clarté que par sa pédagogie donnant envie d'apprendre. Maintenant les outils sont souvent obscurs mal documentés.
Désolé pour la longueur de ma tentative d'explication, mais le constat est terrible: le copier/coller est devenu primordial.
Apprendre un langage en une journée ? Pour savoir faire quoi à la fin aussi ?
Si je prends un gars qui n'a jamais fait de PHP (ou ASP, ou JEE) de sa vie et que je lui demande d'apprendre une journée et ensuite de coder une plateforme de type Amazon je pense pas que le résultat soit là.
Une journée pour les mnémoniques basiques du langage (condition, boucle, utilisation des variables, ect) mais pas une journée pour le maîtriser et être opérationnel.
![]()
« Toujours se souvenir que la majorité des ennuis viennent de l'espace occupé entre la chaise et l'écran de l'ordinateur. »
« Le watchdog aboie, les tests passent »
Vu qu'il m'arrive de coder dans différents langages (C, C#, Perl, Python, PHP, ...), je ne m'amuse pas à apprendre les méthodes d'appel des fonctions de chacun...
C'est surtout adapter la roue à leurs besoins (Poids/Resistance) qu'ils font et non changer la forme, celle-ci est toujours ronde et non carré ou triangulaire.
De plus se sont les ingénieurs d'airbus qui travaillent sur le design de la roue, le pilote d'avions ne se demande pas si l'ingénieur d'airbus ou de boeing ont bien designé la roue de l'avions (sauf en cas de problème)
Quand on me demande de vérifier si un code iban est correcte perso je vais chercher l'aggo sur internet sans me demande si je ne pourrais pas faire mieux
Je ne suis qu'un pauvre débutant alors ne frappez pas si mes idées ne sont pas bonnes
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager