Bonjour,

Voilà je poste sur le forum PHP pour savoir si vous êtes dans le même cas que moi, et pour avoir votre avis si vous le voulez bien.

Voilà, je viens du Monde de la programmation "procédurale. Mon cerveau est formatté dans ce Monde depuis mes études en Informatique de Gestion (1997)... ça vous donne une idée...

Je vous épargne le détail de mon parcours Pro dans l'informatique, en tout cas je me suis auto-formé au dev Web à partir de 2010 grâce à différentes sources sur le web dont les très bons tutos de Grafikart (merci beaucoup encore pour ton travail) ;)

Je suis passé travailleur indépendant en 2011 et jusqu'à présent je suis toujours resté en mode "procédurale" (php) à part quelques touches "objets" par-ci par-là, à l'image de mon dernier projet personnel (pro), un site assez "gros" ( + d'1 million de pages), 95% procédural je dirai.

Ca fait un moment que je me dis que je ne vais pas avoir le choix que de m'y coller...à la POO ...tout ça pour ne pas être largué par le "marché" ...(ça pourrait faire l'objet d'un autre sujet d'ailleurs...)...

Je viens donc de suivre la Formation PHP POO ( https://www.grafikart.fr/formations/programmation-objet-php ) proposée par Grafikart.... j'ai suivi toutes les vidéos... reproduit le code....et constat... je n'ai quasiment rien palpé.... :( ... je serai incapable de "penser" et "constuire" un projet web à la mode POO + MVC ... Pas la faute de Grafikart, mais impossible de switcher mon cerveau à la logique "POO".... :/

Vous allez me dire: "comme le reste, pratiques, et ça finira par rentrer" ... Et là je vous dirai "oui sans doute" , mais pour faire un parallèle, autant il y a 6 ans je n'y connaissais rien en HTML, CSS, PHP, Javascript, jquery, Ajax, Json, etc...autant après avoir suivi des tutos et m'être confronté à des problématiques diverses et variées, j'ai toujours fini par y arriver même si bien sûr ça n'a pas tjrs été sans mal. Mais là avec la POO, c'est une autre histoire, ce n'est plus une histoire de syntaxe, de non connaissance de telle ou telle fonction ou propriété, etc....mais c'est "penser" différemment et ça mon cerveau il coince a priori ... (logique j'imagine)....D'ailleurs pour en avoir un peu parler à 2 personnes de la même génération que moi, c'est un peu le même constat.

Le problème c'est que si je veux continuer à faire du dev web, il faudrait que je puisse me mettre à cette POO mais aussi connaître au moins l'un des Frameworks PHP (Symfony, Laravel ou CakePHP par ex) et là je suis coincé car vu que je n'ai rien palpé à la formation POO, ça sera sans doute encore pire avec un Framework (étant donné que je n'ai pas compris la logique de base).
Du coup je ne sais plus comment orienter mon fusil ...

Je me suis dit il y a quelques temps: "bon, je connais pas mal Wordpress (+ un thème PRO en particulier), on reste quand même pas mal dans du procédural, Wordpress pourrait donc être ma solution à long terme et la moins chronophage possible, en + j'aurais pas à me prendre la tête avec l'aspect responsive -design" ....
Alors, pour du site vitrine simple, ça le fait, en revanche je me suis très vite aperçu que pour un site + compliqué Wordpress n'était pas du tout la bonne solution....Alors c'est sûr vous pouvez absolument tout faire, tout personnaliser, etc tout en gardant la philosophie Wordpress mais question et performances....ça pique vraiment...(problématique des CMS) ....et c'est globalement vite le merdier et la galère, vous êtes englué dans la logique Wordpress, c'est hyper compartimenté, et vous passez parfois énormément de temps à coder des trucs uniquement pour caler à la philosophie Wordpress ...alors que vous l'auriez fait bcp + rapidement en solution "full maison" ...et je ne parle même pas des performannces des requêtes Ajax à la mode Wordpress ... catastrophiques...même avec un Ajax handler personnalisé, c'est lourd et hyper lent.... Donc pour ce projet, ça a été retour à la case départ... et sans plan B ... :(

Bref, désolé pour ce long message, j'ai un peu raconté ma vie. ;)

EN RESUME:
1 - Etes-vous confronter vous aussi à la même problématique que moi vis à vis de la POO (sans doute une histoire de génération) ?
2 - Et + généralement n'avez vous pas le sentiment comme moi que cela devient de + en + difficile de surfer sur la vague de toutes ces nouvelles technologies, qui sont de + en + nombreuses et qui rendent presques superflues, du jour au lendemain, des années d'expérience dans telle ou telle techno ? En gros "spécialiste un jour, largué demain" (Ce point là étant le + "problématique" selon moi ).

Merci par avance pour votre retour d'expérience.

Claw :)

42 réponses


Pour ma part, j'ai effectué ma formation web en 2010, et il est vrai que les nouvelles techno se sont multipliées ces dernières années, nottament les inombrables frameworks javascript. L'innovation a quand même du bon, cela prouve que le "web" en général continue d'évoluer et on peut choisir différents outils adaptés à des besoins particuliers... on n'est plus limité a PHP/MySQL.

Pour ce qui est de la POO, cela peut être plus ou moins difficile à comprendre selon les individus. La notion fondamentale est la classe qui donne naissance à l'Objet. Il n'y a pas de secret; il faut lire, relire, étudier. Il existe une flopée de sites/tutoriels sur la POO. Ne pas hésiter à changer de tuto si tu restes bloqué.
Bref quand tu auras saisi le concept d'Objet tu aura la possibilité de produire un code plus organisé, maintenable et sécurisé grâce à l'encapsulation.
Ensuite tu pourras te diriger vers un framework particulier.

persévérance

Claw69
Auteur

Merci Vapenation69 pour ton retour. :)

C'est clair que c'est sans doute une histoire de persévérance... mais avec la POO je trouve que c'est bien différent que d'apprendre une nouvelle techno.... En gros si je fais un espèce de parallèle, c'est comme si après des années et des années, je demandais d'un coup à mon cerveau d'écrire de la main gauche (je suis droitier ...) ...Forcément va falloir bcp de persévérance .... Alors qu'apprendre une nouvelle techno correspondrait davantage à apprendre à écrire une nouvelle lettre de l'alphabet ....il faudrait aussi de la persévérance mais pas autant, car ça ne serait pas la même gymnastique cérébrale. De plus, ça n'impliquerait pas de devoir ré-apprendre à écrire chaque lettre de l'alphabet ...contrairement au fait de passer à la main gauche... :/ ...

Pour ça que je faisais allusion à une histoire de génération, aujourd'hui et depuis quelques années, les neo-codeurs sont formés direct à la POO (enfin j'imagine) donc ce n'est pas un choc cérébral, c'est naturel...

Ca serait bien d'avoir des témoignages de développeurs de + de 30-35 ans .

Je ne sais pas si c'est ton cas mais concernant ta formation en 2010, tu as appris en procédural ou direct tu as été formé à la POO ?

Concernant les nouvelles technos, je ne remets pas du tout en cause leur utilité, c'est en effet autant d'outils potentiels supplémentaires dans la boîte à outil, mais c'est quand même difficile de continuer à surfer sur la vague, il y en a tellement et des nouvelles sans arrêt... Quid ensuite du temps qu'on peut accorder à cette recherche, découverte, formation sachant que les équations personnelles sont différentes (vie pro, vie perso, etc). En tout cas dans la gestion d'une "carrière" pro c'est un élément qu'il faut vraiment prendre en compte.... car par exemple dans mon cas perso si je veux prétendre à retourner dans le salariat (= SSII dans 95% des cas, et ça ne m'enchante pas du tout...), ça va être très compliqué je pense du fait que direct on va me demander si je "maîtrise" la POO, au moins un Framework PHP, etc.... Du coup même si tu as plusieurs années d'expériences dans le domaine, pour 1 élément auquel tu ne serais pas "formé", tu peux déjà être direct "hors concours" et rester sur le quai...

Mais comme tu dis, "persévérance", c'est la seule solution pour rester dans le train....

Claw69
Auteur

Merci Gynidark pour ton retour.

Maintenant côté POO , il faut réellement en avoir besoin, [...] si tu n'en as pas réellement besoin [...] fonces sur du procédural.

Pas d'accord. Ce n'est pas une histoire d'utilité selon moi mais de nécessité, notamment pour 2 points que j'évoquais précédemment:

  • si tu te retrouves sur le marché de l'emploi, si tu ne sais pas coder en POO et que tu ne connais pas au moins un Framework PHP, tu seras "hors course" ou en tout cas très désavantagé par rapport à un autre candidat. Et même si tu es engagé, tu seras très vite mis devant des difficultés.
  • imagines tu souhaites partir sur l'idée d'un projet web qui s'annonce relativement balèse (comme cela a été le cas récemment pour moi). Crois-tu vraiment qu'aujourd'hui on peut imaginer un tel projet en full procédurale ?! On le sait, ça deviendrait sans doute vite l'usine à gaz, galère à maintenir, à faire évoluer, galère pour que les gens puissent travailler en même temps si une équipe se constitue, etc, etc....Ou alors, je suis preneur d'une organisation/structure de site à la mode MVC mais version "procédurale" ! Je ne demande que ça ! ;)

A propos de la génération, je ne pense pas, ....

En fait ce que je voulais dire c'est que dans mon cas, à l'époque des études (1997), notre cerveau a été paramétré en mode procédural et il y est resté pendant des années et des années, contrairement à la nouvelle génération de codeurs qui est née à l'époque du web et apprend direct la POO, autrement dit avec un cerveau "vierge", non conditionné des années durant par une autre façon de "penser". C'est comme si je te disais 15ans après avoir passé ton permis : "Désormais, la pédale de frein est à droite, et l'accélérateur à gauche" ....je ne te donne pas 1km pr te manger un mur... A l'inverse, pour un néo-conducteur, ça ne lui posera aucun problème car son cerveau sera "neuf" , non pollué par d'anciens réflexes puisqu'il n'en aura encore aucun....Ca lui paraîtra donc naturel, il suffira juste d'apprendre et d'acquérir les réflexes. Contrairement à moi, où il faudrait que je désapprenne. Voilà, c'est ce que je voulais dire par rapport à la "nouvelle génération" et
c'est sentiment que j'ai face à la POO. Et 2 personnes de ma "génération" avec qui j'ai discuté ont exactement le même sentiment.

Pour l'histoire des nouvelles technos, encore une fois, je ne les remets pas en cause, c'est normal et logique que ça évolue (heureusement), mais c'est juste que je trouve, qu'il y en a de + en + , répondant à des besoins de + en + divers, de + en + précis, de + en + complexes, ce qui me fait penser que le métier risque de + en + de se compartimenter, avec des "spécialistes" de tel ou tel domaine, techno, etc....car un seul bonhomme ne pourra plus (humainement parlant) être un minimum spécialisé sur tout ce qui est sur le marché. A mon époque (ça fait dinosaure, alors que j'ai pas 40ans ;) ), un seul gars pouvait faire recueil de besoin, analyse, utilisait une techno (il n'y en avait pas 400 milles), faisait le minimum au niveau "déco" / graphisme, développait et grosso-modo ça le faisait.... Maintenant, avec toutes ces technos web différentes et par rapport à la diversité des besoins, problématiques, supports différents, etc, c'est juste impossible qu'un seul gars ait des compétences suffisantes sur tout .... D'ailleurs, la conséquence c'est qu'aujourd'hui, le métier se compartimente: développeurs web, web-designers, front-end, back-ends, etc, etc et ça se subdivise ensuite par techno: dev web php , dev web python, dev Java, etc. ... spécialiste Cake, Symfony, Laravel, etc, etc .... Ou pour le design, on commence à voir des UX Designer et des UI Designer ...
Alors bien sûr, on peut arriver à une certaine polyvalence (Grafikart en est un exemple) mais je trouve que c'est de + en + difficile de l'être ... d'où ma formule "difficile de surfer sur la vague".... Et avec les objets connectés qui vont arriver, je pense que cette polyvalence sera de + en + difficile à atteindre, je pense donc que cela "risque" de nous amener à nous "spécialiser" dans un domaine ... C'est mon statut de travailleur indépendant qui m'amène sans doute à dire cela car potentiellement je me dis qu'il faut que je puisse tout "maîtriser" pour potentiellement répondre à n'importe quel besoin, or ça devient impossible! (je caricature mais c'est l'idée)..

avec la POO je trouve que c'est bien différent que d'apprendre une nouvelle techno....

C'est clair que c'est un changement de paradigme

Je ne sais pas si c'est ton cas mais concernant ta formation en 2010, tu as appris en procédural ou direct tu as été formé à la POO ?

Personnellement, j'ai commencé avec du procédural et cela durant les 3/4 de mon cursus, et je regrette que nos enseignants ne nous aient pas initié à la POO dés le début. J'ai la sensation d'avoir perdu du temps a coder en procédural des projets entiers avec du code IMMONDE sans queue ni tête. Mais tu vois tu peut très bien adopter la POO car j'ai réellement
compris la philosophie de l'Objet après avoir été diplomé!

si je veux prétendre à retourner dans le salariat (= SSII dans 95% des cas, et ça ne m'enchante pas du tout...), ça va être très compliqué je pense du fait que direct on va me demander si je "maîtrise" la POO, au moins un Framework PHP

La encore tu l'a bien résumé, si le salariat est ton choix tu devras connaître la POO, c'est le must de nos jours.

Je vais répondre très rapidement. J'étais comme toi avec le procédurale, même si je ne suis qu'un pur amateur, ce n'est pas mon métier. J'ai voulu me mettre à la mode de la POO, suivi des tutos et je n'ai rien compris. Enfin si, l'idée d'une boite (ta classe) où tu appuis sur des boutons (les méthodes) pour avoir des actions/réponses. On donne souvent l'exemple de la voiture, d'un personnage etc, mais je ne voyais pas l'idée pour un site internet.

Je ne sais pourquoi, un jour, j'ai suivi la formation cakephp (version 2.x) de grafikart. Et bien, j'ai pu comprendre l'utilisation de la POO dans un exemple plus que concret pour faire un site. L'utilisation des classes, le fait qu'elles héritent toutes de AppController, l'utilisation des méthodes pour une action précise et rendant une vue (pas toujours le cas). Maintenant, je suis sous cakephp 3 et j'ai suivi la formation POO de grafikart. J'ai ainsi pu comprendre le fonctionnement de cakephp niveau core. Étrange de procéder à l'envers, mais pour moi, ça à marcher. Biensur, je ne connais pas l'utilisation de tous les design pattern et autre concept profond de la POO, mais assez pour pouvoir utiliser le framework cakephp 3.

Claw69
Auteur

@Vapenation69:

je regrette que nos enseignants ne nous aient pas initié à la POO dés le début

Te plaints pas, nous à l'école on a appris le Basic et le Cobol !!! Futuriste hein !? ;)

si le salariat est ton choix tu devras connaître la POO, c'est le must de nos jours.

Houlà non, mon choix n'est pas de retourner dans le salariat, et encore moins en SSII, mais si j'y suis contraint par contraintes "persos", je n'aurais pas bien le choix que de m'y mettre à la POO.... Et de toute façon, même en indépendant comme aujourd'hui, pas vraiment le choix non plus ... aaaargh ... ;)
Ou alors je me spécialise sur une niche, une ancienne techno! Ca peut paraître "con" dis comme ça, mais p-e pas tant que ça! Un de mes voisins m'a raconté il y a quelques jours qu'il connaissait une indépendante spécialisée dans le RPG AS400, qui avait fait ça toute sa vie (voir wikipédia pour ceux qui sont nés après 1532 !!) ... !!! Et il me disait qu'elle se faisait des c...lles en or ! Pourquoi ? Peu de clients, normal, mais le peu qu'elle a (des sociétés qui utilisent des anciens systèmes et qui veulent pas y toucher), sont facturés à prix d'or étant donné qu'il n'y a quasiment plus de compétences sur le marché ! Avis aux amateurs.... je vais p-e revoir mes cours de Basic moi ! :p

p.s. : Tu es lyonnais Vapenation69 ? ;)

Claw69
Auteur

@JeremyB

Merci bcp pour ton retour d'expérience, je me sens moins seul ! ;)

J'avais dans l'idée aussi de suivre la formation CakePhp de Grafikart ...mais comme tu l'as compris, après avoir fait la formation POO, j'm'étais dit, laisses-tomber, c'est pas la peine, poses les crayons! Du coup tu me re-donnes un peu d'espoir ! :) J'vais sans doute jeter un oeil à cette formation.

J'apporte mon témoignage.
J'ai 35 ans et j'ai eu mon BTS 'informatique de gestion' en 2002.
J'ai surtout appris le procédural.

Je passe mon parcours PRO, mais en 2011 nouveau travail et la je suis tout de suite tombé dans le bain d'un Framework PHP (Zend) et le la programmation objet.
Y a pas de secret faut se retourner le cerveau au début mais quand on y a gouté on voit les intérêts de la POO d'un MVC. Je me suis formé à Zend 2 et la j'ai encore du me retourner le cerveau.

Bref pour moi se retouner le cerveau c'est tout le temps j'ai appris des nouvelles techno ETL (Talend) et la faut oublié les réflexes de programamtion habituel, aujourd'hui j'apprend le MVVM avec des library JS (knockout).

A mon humble avis ce n'est pas facile mais c'est le métier qui veut ça.
Bon courage dans tes nouvelles expérimentations.

J'ai un parcours un peu différent vu que je suis 100% autodidacte et j'ai maintenant passé la 30aine (j'ai commencé à 15, et les choses sérieuses à 18 ans, on va dire).
J'ai personnelement refusé le passage au POO pendant des années, estimant ça trop complexe et je pensais me débrouiller très bien avec du procédurale bien organisé.

Grosse erreur de ma part, même si l'organisation que j'avais mis en place était idéal (pour du procédural), je me voyais obligé de faire régulièrement des copiés collés (d'appel de function ou method, mais ça restait du copié collé quand même). Ça fait maintenant quelques années que je suis passé en POO, et je me sens pousser des ailes en terme de rapidité de développement et de réadaptation.

Evidemment, ça demande énormement de travail et de recherche, les tutos sont biens mais survol souvent la surface, et ne vont quasiment jamais en profondeur, ce qui n'est pas gênant si on utilise un FW, mais en l'occurence, quand on souhaite faire le sien, là ça demande énormement de recherche pour bien faire les choses (et aussi les faire comme ça nous convient, c'est l'avantage).

Je suis également assez d'accord avec toi sur l'évolution rapide du web. Je me sens quasiment en permanence dépassé justement parce que je m'informe énormement (et en vérité, c'est ce qui rend ce job passionannt, vraiment !). Après je me rassure quand même, en discutant avec des développeurs vraiment bon, certes ils sont pointus mais très souvent sur un domaine très précis. J'ai l'avantage d'être maintenant très au point sur chacune des techno que j'utilise, et ça c'est un vrai plaisir de pouvoir toucher à tout (je me lasse très vite). Evidemment, je suis indépendant, si je devais être salarié avec un métier très spécialisé, ça ne serait surement pas un avantage (sauf à être dans une petite structure). Mais je ferai tout pour rester indépendant, malgré les ENORMES galères administratives que ça génère ( merci la RSI :D )

Bref, faut continuer, une fois que tu auras compris (et ça va te prendre plusieurs semaines au minimum), c'est vraiment que du bonheur.

Bonjour,

Même soucis que toi des études d'électronique avec un peu d'info débuts des 1990s, conversion au web dés 97 et essentiellement de l'autoformation ensuite. Autant dire que que du procedurale. Dans l'agence je suis seul pour couvrir toute notre activité internet avec des clients de longue date et des structure qui se construisent par empilement de couches successives dont certaines partie ont presque 10 ans. Depuis qq années je sens bien être arrivé au bout de la techno et si pendant des années les sites de veilles techno m'ont bien aidé d'un coup il y a 3 ou 4 ans j'ai commencé à ne plus comprendre un traitre mot des technos présentées sur certains articles :)
Pour quitter un peu le tout fait main je me suis mis à drupal 7 il y a 4 ans histoire de voir d'autres choses, si le choix n'était pas des plus heureux question longévité de la techno ca m'a au moins fait voir autre chose et aider à comprendre le paysage. Car en effet on comprend vite que les sites sont plus pensés applicatif que mise en page stricto comme il y a longtemps. On s'appui sur du MVC, de là découle une tonne de sous langages et le tout repose essentiellement sur du POO pour les outils réçents. Inutile de suivre un tuto symphony si ce fondamental n'est pas levé, on va pas bien loin.
Au printemps je me suis aussi fait la serie des tuto ici mais j'ai aussi coincé à un moment. Arrivé a une leçon le néant totale, le mur. Le soucis est que basiquement la POO n'est pas insurmontable mais ils y a bcp de notions autours et le tuto les met en plus rapidement dans un contexte MVC et certaines notions sont mal assimilées c'est terminé. Comme on est seul face à son problème et que par ailleurs ont doit tj bosser on finit par laisser filer.
Finalement pour Drupal j'avais commencé seul puis pris 3 j de formation + une journnée de support sur un projet en cours. Et ça m'avais considérablement apporté car j'avais déja butté sur plein de pb concrets.
Donc là pareil 3 j de formations à la rentrée et en attendant je continue à entretenir ce que j'ai compris. J'espère que ce sera aussi efficace. L'avantage de la formation c'est aussi de couper avec le quotidient et de dédier un espace temps complet à un sujet et avec un support quand ça coince. C'est précieux et vaut souvent l'investissemen si on se prépare bien en amont.

Claw69
Auteur

@Kyleb:

Merci pour ton retour.

A l'image des nouvelles technos, je ne remets pas du tout en cause l'utilité et l'intérêt de la POO, je soulignais juste le côté "retournage de cerveau", qui selon moi est différent et + compliqué dans le cas de la POO que d'aborder en générale une nouvelle techno où il "suffit" en général d'apprendre une nouvelle syntaxe, des nouvelles fonctions, propriétés... (je simplifie mais c'est l'idée)....

Mais en effet le métier oblige d'apprendre sans arrêt, pour "rester dans le Train et pas rester sur le quai", c'est ce que je m'efforce de faire aussi.

Merci pour la découverte de ETL Talend, MVVM et knockoutJs, encore 3 trucs que je ne connaissais même pas de nom ! Tu m'veux du mal ou quoi !? ;)

Claw69
Auteur

@Kenor:

Merci pour ton retour.

[...] si on utilise un FW, mais en l'occurence, quand on souhaite faire le sien [...]

Dans l'idéal ça serait mon objectif ... pour éviter d'être dépendant de tel ou tel Framework, d'une nouvelle version qui chamboulerai tout, pour contourner le pb "performances moyennes" d'un FW, etc....
Donc autant te dire que j'ai encore du chemin à faire ! ;)

Merci encore pour ton témoignage, qui semble confirmer que même si on finit par y arriver, le passage à la POO semble laisser des souvenirs à nombre d'entre nous !! ;)

Claw69
Auteur

@seaseb:

Merci pour ton témoignagne.

Au printemps je me suis aussi fait la serie des tuto ici mais j'ai aussi coincé à un moment. Arrivé a une leçon le néant totale, le mur

Pareil, je ne peux pas vraiment dire à partir de quelle leçon exactement (la 1ère peut-être ! ;) ) , cela dit j'ai quand même été au bout de toute la formation POO, mais à un moment donné, comme une buse, je ne faisais que reconduire dans mon éditeur le code de Grafikart, sans + rien palper en terme de logique, organisation, structure... super efficace quoi... :/ ... Sans doute qu'il faudrait que je la reprenne du début mais du coup ça fout un coup question motiv' ... :(

Donc là pareil 3 j de formations à la rentrée et en attendant je continue à entretenir ce que j'ai compris. J'espère que ce sera aussi efficace.

N'hésites pas à faire un retour sur cette formation, savoir si elle a été efficace. Car perso les formations "nouvelles technos, dev, etc" à la mode "traditionnelle" (= en groupe, à dates imposées, durée (très) limitée, qualité/compétences du prof ??, etc), j'ai un avis + négatif que positif, d'autant plus qu'elles coûtent souvent un bras financièrement parlant...
C'est pas pour faire le rebelle, mais aujourd'hui grâce au web (le site de grafikart en est un exemple), on peut apprendre tout sur tout, à son rythme, 24h24, 7j/7, se faire aider via la communauté et échanger (forums, etc), s'inspirer de bonnes pratiques, revoir les vidéos, les tutos, etc... choses que tu ne peux pas faire en classe "tradi"...
Pour te dire, je n'ai pas dépensé 1 seul euro pour me former au dev web alors qu'en 2010 je ne savais même pas ce qu'était une balise HTML... Bon cela dit j'ai encore plein de choses à apprendre, c'est sûr, mais je ne suis pas sûr que si j'avais fait le cursus de formation de "n" semaines que m'avait proposé à l'époque le Pôle Emploi, ça m'aurait rendu service, mon apprentissage aurait été sans doute bcp moins rapide et efficace...
Ne serait-ce que devoir attendre "n" semaines pour commencer la formation aurait été un frein.... alors que là via le web tu peux commencer dans la minute et à ton rythme.

Cela dit, je reste ouvert. Bénéficier de support, comme tu dis, ça en revanche, ça peut être très intéressant car tu as un soutien sur une problématique précise.

Ce n'est que mon avis...

Hello !

Pour participer au débat, je vais rajouter ma couche ^^

Alors je suis un dev web depuis un peu plus de deux ans, en reconversion pro et 30 ans depuis mars. (Avant j'étais dans la compta. Donc rien à voir)
J'ai faits une formation web, avant de rejoindre une école info. Je suis actuellement en dernière année.

Personnellement à chaque fois, les cours de PHP commençaient en procédural, avant de montrer comment on pouvait refactoriser son code pour le rendre plus maintenable, coopératif et performant.

Je suis loin de maitriser le PHP OO, ni même les fonctions que je ne connais pas toute par coeur (Pas taper !! ). Mais c'est un peu ce que j'ai retenu de l'orienté objet, tu nommes tes classes de façon à ce qu'elle gère un domaine particulier, tu sépares ton code en vues, modèles, controlleurs pour avoir une architecture claire, compréhensible pour ceux qui travaillent avec toi.

Le code n'est pas copié / collé 50 fois. Tu as moins de risques d'oublier de faire des modifications.

Ce que j'en retiens, c'est que ça permet de mieux ranger ce que tu fais. Ca te permet de créer des classes helpers (Comme celle de grafikart avec la génération de formulaires) Quand tu crées un formulaire, tu appelles ta classe, la méthode pour avoir ton champ et basta. Tu vas pas copier / coller chaque fois que tu vas vouloir un formulaire. Au moins tu fais une modification dans ta classe pour tout le monde, et tu as pas à aller voir spécifiquement chacun de tes formulaires pour modifier le comportement.

Perso j'ai aussi une classe outils, ou j'ai quelques méthodes pour savoir si un jour spécifique est un jour de week end ou pas, une qui me dit si le jour est un jour feriés, une méthode pour serialiser, etc. Et c'est encapsulé dedant. J'ai pas la fonction 50 fois dans mon code où je pourrais en avoir besoin.

Après tu as tous ces principes d'héritages, de design pattern etc. Je n'ai pas l'expérience ou l'historique pour savoir si c'est mieux ou pas. Les plus ou les moins d'un principe procédural à de la POO. Mais c'est ce que je retiens (En gros hein ! )

Mais quand tu fais la formation grafikart, tu te retrouves avec une application en MVC, avec plein de bonnes pratiques (et d'amélioration possible hein :-p) .

Pour ce qui est des nouvelles technos, bien que fleurissante et comme tu le dis au final de plus en plus partitionné. C'est le monde qui change. Avant on avait tous un écran 15 pouces avec un bon gros tube cathodique. Puis maintenant tu as plein d'écran différent, sans compter les téléphones, tablettes, montre, voiture.

Il est impossible de tout connaitre, tout maitrisé. Mais en apprenant un peu plus l'orienté objet en php, j'ai eu moins de problèmes à comprendre l'orienté objet en javascript, et de commencer à fouiller node.js, ou angular (bien que je débute dessus.) par exemple.

Nul ne peut tout connaître. L'expérience en POO t'apprendra à appréhender pas mal de techno récente. Enfin pour moi ça a été le cas. Après je suis pas un expert en développement avec mes deux petites années. Mais c'est le retour que je peux en faire ! Même si j'ai l'impression que plus j'en connais, moins j'en sais car je me rend compte que malgrés tout ce que je connais, ce n'est qu'une goutte d'eau.

En tout cas bon courage à toi! Dit toi que tu en connais plus qu'hier, et bien moins que demain. Faut juste rester ouvert. Suis la formation de grafikart à fond. Même si ça pique le cul, fait quelques projets avec cette base. Moi c'est ce que l'on m'a toujours dit "Pratiques et tu comprendras". Et effectivement c'est comme ça que j'ai appris à aller plus en profondeur dans le framework Laravel, et de comprendre petit à petit comment fonctionnent d'autres framework comme Yii sur lequel je bosse en se moment dans mon nouveau boulot.

Peace!

Claw69
Auteur

@Kaelyscius:

Merci à toi aussi pour ton retour.

Intéressant d'avoir l'avis de quelqu'un qui ne vient pas du tout du Monde du développement et qui s'y est mis relativement récemment.

Pour le côté "persévérance et pratique, ça va rentrer", j'en suis convaincu, comme le reste, il n'y a pas d'autres solutions. Cela dit, vous avez tous compris que mon message était axé sur le fait que, pour ceux qui ont été baignés dans du procédural pdt des années, c'est + compliqué je pense d'apprendre la POO que quelqu'un qui va découvrir le développement directement par la POO. Tu en es un exemple visiblement: tu es parti de zéro et tu as découvert direct la POO en même temps que le procédural. Dans ce cas, j'imagine que c'est un peu moins "confusant", ce qui ne veut pas dire que c'est simple!

Et encore une fois, loin de moi de critiquer la POO et tous ses avantages, c'est juste que pour l'instant, mon cerveau n'a pas encore choppé la logique. C'est vrai que Grafikart, dans sa formation POO, ça traîne pas !! Comme je le disais, 'faudrait que je reprenne ça depuis le début tranquillement.

Après je suis pas un expert en développement avec mes deux petites années

Oui sans doute mais juste une remarque: j'ai fini mes études d'Informatique de Gestion en 1997, auto-formé au dev depuis 2010.... Et bien, dis-toi bien qu'avec tes 2 années d'expérience, sur un aspect purement technique (je ne parle pas d'autres "valeurs"), ton profil est sans doute + intéressant que le mien sur le marché, en tout cas, tu es sans aucun doute + en "phase" avec l'époque, justement par rapport à la POO, NodeJs, etc....
C'est un peu comme en Musique ou dans la Peinture, tout le monde s'en fout de savoir s'il y a eu diplômes, depuis combien de temps tu pratiques, etc, en revanche ce qui va intéresser les gens c'est de savoir si tu joues ou si tu peints bien, si ça leur plait ou non, etc...
Ce que je veux dire c'est que perso, j'ai 18 ans d'expérience dans l'Informatique de Gestion (hors études), et bien selon moi ça veut absolument tout et rien dire ...Ca prouve juste que j'ai quelques années d'expérience du Monde professionnel (ça ça compte c'est sûr) mais sur un aspect "techno" , mes années passées ne sont absolument pas synonyme de légitimité.... C'est d'ailleurs un phénomène de société... les nouvelles générations en savent davantage sur le Monde actuel que la génération précédente.... . Vous en connaissez bcp des néo-cuisiniers de 15ans qui, seuls dans leur chambre de collégien, font de la meilleure cuisine qu'un Chef de Cuisine de 30-40ans d'expérience...??! A part des Mozart de la Cuisine, perso j'en connais pas..... et pourtant avec le Monde numérique c'est ce qui se passe tous les jours.... autrement dit, et de façon métaphorique, à l'âge de 15ans, désormais, tu peux apprendre la vie à ton Père ... (je parle sur un aspect "technique").... Bon j'me calme là, car je suis en train de partir sur un débat sociologique là ... ;)

Tu peux essayer une transition entre les 2 par contre. Si tu pars dans l'idée de faire ton FW, tu commences par les bases en les maitrisant à fond, et en faisant du procédural dans tes méthodes. Tu sépares juste le controller, t'y mets tout dedans, tu mets tes appelles de données dans une autre classe (modèle) et tu envois le tout à une dernière méthode qui va gérer l'affichage. Sans en faire plus. Petit à petit, tu vas te dire que ton controller se répète par endroit, et tu vas vouloir diviser, puis ajouter un router pour avoir plus de souplesse etc. etc.

Bref, tu n'es pas obligé de faire la total dès le début, mais tu peux prendre ton temps. Personnelement c'est un peu comme ça que j'ai fais, en ajoutant une couche supplémentaire à chaque fois. J'ai également lu la doc des gros FW pour voir si mes idées étaient bonnes, et si ils en avaient d'autres sur lesquels je pouvais m'inspirer etc.

En gros, faire à ton rythme.

Salut,
J'ai commencé à écrire des programme en Basic à l'age de 14 ans et c'était en 1984 ... ça remonte hein ...

j'ai fait comme toi, procédural, procédural ... et puis il y'a bientôt 2 ans je me suis mis à mon compte. Et au début je n'avais qu'un seul client, j'ai donc utilisé mon temps libre à apprendre diverses technologie du web. Je faisais du PHP en procédural aussi. Et puis je suis tombé sur cette formation POO de grafikart, je l'ai regardé en entier, j'ai pas essayé tout de suite de m'y mettre. Mais le mal était fait, ça m'a travaillé quelques semaines, et du coup tout ce que je faisais me semblais sale et mal fait. Je m'y suis mis, j'ai commencé à l'integrer dans mon travail, par ci parl là. Aujourd'hui après seulement une année, j'ai du mal à concevoir que j'ai pu travailler autrement qu'en programmation Objet.

Au depart je t'avoue avoir fait beaucoup de classes avec des methodes statiques, un peu comme si je remplaçais mes fonctions par des classes. Mais ensuite tout est est devenu plus clair et surtout indispensable, simplement et je n'ai pas eu l'impression de me prendre la tête.
Je te conseille de faire pareil, te prends pas la tête, fait la transition doucement, un jour tu ne pourras plus reflechir autrement tellement c'est clair et bien organisé, beaucoup plus propre, beaucoup plus lisible ...

A bientôt ...

Claw69
Auteur

@ADessi:

Merci bcp Alain pour ton témoignage, d'autant + que tu as commencé à l'ère du Basic ... ! ;)

Merci pour tes encouragements, en effet va falloir y aller "progressif", prendre son temps et pratiquer....
Même si dans ma situation perso, je suis dans une forme d'urgence, étant donné qu'un projet web perso (sur lequel j'étais à 100%) vient de s'arrêter.... En gros c'est un peu comme si tu te retrouves sur le marché du travail sans connaître la POO.... et forcément sans indemnité (puisque entrepreneur/indépendant...) ... 'Faut donc que je trouve une solution pro alternative immédiate pour que je puisse "prendre mon temps" pour la POO.

J'ai été voir ton site, good job, joli, clair et pro et j'ai l'impression que c'est du fait maison, non ? Idem pour le blog ? :)

Claw69
Auteur

@Kenor:

Merci Kenor pour tes pistes...j'vais reprendre petit à petit les bases, et y aller progressif, plutôt que de vouloir traverser l'Océan d'un coup. On y croit.... ;)

Salut, Claw69, oui tout est fait maison ... vas-y a fond avec la POO tu vas te regaler ... A bientôt ...

Salut, je n'ai pas lu tout les commentaires mais je me doute qu'il y a encore une fois de plus le débat procédural VS POO, je ne reviendrais pas dessus car c'est totalement absurde.
Pour faire en bref sur mon parcours, j'ai 17 ans je suis tombé dans la programmation depuis l'âge de 14 ans.
J'ai commencé par du php procédural, et j'ai continué sur ça pendant assez longtemps (le temps de bien "maitriser").
Il y a de ça 2 ans je suis parti sur de la POO, et je peux te dire que ça a été l'enfer... Je n'arrivais vraiment pas à comprendre les principes ect.
Puis le problème, c'est que je suis arrivé dans cette génération où il y a des tonnes et des tonnes de technologies.. Je m'y suis totalement perdu et je me suis démotivé. Ensuite j'ai repris après un petit break, et j'ai décidé de ne plus du tout regarder les technologies et de continuer mon apprentissage POO, j'ai commencé à comprendre petit à petit. Ce qui m'a vraiment vraiment aider, c'est les petits framework tel que slim (lumen ect) pour comprendre la partie MVC.
Pour conclure :
Ne te prends pas la tête, prends ton temps.
Ne regardes pas toutes les technologies, concentre toi sur la POO.

J'ai évité de faire les même erreurs lors de mon apprentissage du JS :
-JS procédural
Quand il y a nécessité : -POO (certaines personnes vont crier! Non la POO en JS n'existe pas, bref lol)
Et ensuite j'ai utilisé des librairies externe :)

La POO t'ouvrira les portes à beaucoup de technologies vraiment sympa, pour moi c'est devenu nécessaire de la connaître ;)

Aujourd'hui j'ai réussi à franchir le cap de la POO et je ne peux plus m'en passer, je travail avec Laravel et Symfony ^^

[EDIT]
Ah oui!! J'allais oublier aussi, les design pattern !
Mon erreur ça a été de vouloir les intégrer bien trop vite! Un conseil, regardes et note à quoi ils servent. Et si un jour tu as un problème, tu regardes si ils peuvent pas le résoudre... Exemple typique de la structure MVC qui m'a totalement fait galérer car je ne connaissais pas encore bien la POO... Et au final, quand je suis revenu dessus quelques mois plus tard, je l'ai compris sans aucune galère ^^

Claw69
Auteur

@ADessi :

Merci Alain! ;) ... pour l'instant j'en suis pas au stade du "régalage"... mais sûrement un jour ! :p

Claw69
Auteur

@Emix:

Merci pour ton retour. :) Ces derniers jours j'ai "survolé" les nouvelles technos (NodeJS, Angular, etc), pas dans l'optique de les maîtriser ou de les pratiquer à fond, mais juste pour savoir au moins ce qu'il en retournait, à quoi ça servait et globalement paraître moins c.n si on me parle de ces technos! :p Bilan: le même que le tien (comme quoi il n'y a pas d'âge) : totale démotivation !! :( .... Après la formation POO c'était déjà pas triste (enfin si en fait!) mais là j'ai vraiment eu l'impression de ne + savoir rien faire, de ne même plus savoir comment aborder la création d'un site internet, impression de retourner à la case débutant,....aaaargh.... mais bon du coup comme j'ai une problématique d'urgence je vais essayer de trouver une solution genre plan B, qui me permettra de prendre du temps pour me mettre sans pression à la POO (+mvc). J'ai bien noté tes conseils, je crois qu'il faut en effet que je me concentre sur la POO et le reste viendra naturellement ...enfin j'imagine... ;) ..

Pour le côté "procédurale VS POO", en fait mon titre est trompeur, j'aurais du le tourner autrement car ça n'est pas du tout l'idée du sujet et les gens l'ont d'ailleurs bien compris. J'aurais pu mettre : "Le passage à la POO, balèse aussi pour vous?" ;)

Claw69
Auteur

@Matdosi:

Merci pour ton témoignage également. :)

Oui je vais essayer de voir CodeIgniter ou Slim comme Emix m'y invitait... Le truc c'est que je ne sais pas où sont les limites de ces FW, leurs avantages, ce qui est possible de faire, pas faire, etc....

D'ailleurs je ne sais pas si tu peux répondre à cette question ou si qqn peut y répondre mais qu'est-ce qui fait la différence entre un petit Framework et un gros Framework ? Est-ce qu'on peut dire "petit" projet = "petit" FW (genre inutile d'avoir une Ferrari pour aller chercher son pain) ou ça n'a rien à voir ? Est-ce que c'est la différence de fonctionnalités ?

"qu'est-ce qui fait la différence entre un petit Framework et un gros Framework"
Comme tu l'as dit, il faut adapter les frameworks en fonction du projet.
Tu peux utiliser un petit framework pour créer un gros projet, mais tu devras utiliser beaucoup de code maison, en terme d'efficacité ce n'est pas terrible(mais tu peux préférer de faire comme ça pour utiliser ton propre code, avoir le controlle sur plus de chose). En revanche, sortir une usine à gaz telle que Symfony sur un petit projet , par exemple un simple blog c'est illogique. Déjà en terme de performances un gros framework sera toujours plus gourmand en ressources qu'un "petit" (on peut toujours utiliser le cache ect mais ça restera moins performant) et en plus le temps de travail sera le même ou presque.. L'exemple de Symfony, le temps de tout configurer le framework ect..
Pour faire bref, il faut savoir adapter ses outils et bien sûr faire comme tu aimes!
Certaines personnes ne seront pas d'accord avec ce que je dis, mais c'est ce qu'on m'a apprit et c'est ce que je trouve LOGIQUE.

Je rajouterai qu'un FW tel que Symfony impose beaucoup de chose/norme et donc d'apprentissage, codeigniter est plutôt une library avec un léger cadre, et donc très rapidement utilisable.

Il ne faut pas oublier d'utiliser un FW pour gagner du temps et gagner en robustesse, mais que pour ça, il faut le maitriser. Si ce n'est pas le cas, vous ne gagnerez absolument pas de temps (voir vous en perdrez certainement), ni ne gagnerez en robustesse car mal utilisé. Vous trouverez d'ailleurs de nombreux témoignages de déçu de Symfony en terme de temps de dev, notamment du fait de la difficulté à former les dev déjà présents, et en cas de changement de version majeur du FW pour les adapter les projets existants (et donc profiter des nouvelles méthodes du FW).

Claw69
Auteur

Merci à vous 3 pour vos retours.

OK donc est-ce qu'on peut résumer les choses comme ceci:

1) Gros Frameworks (type Symfony, CakePhp, etc) :

  • pour ceux qui maîtrisent le FW
  • pour aller au + vite grâce aux nombreux outils/fonctionnalités déjà dispo
  • sur des projets assez balèses
  • et collaboratifs

Points négatifs/contraintes:

  • longs à apprendre/maîtriser,
  • pas top en terme de performances,
  • usine à gaz potentielle,
  • forte dépendance au FW, etc...

2) Petits Frameworks (type CodeIgniter, Slim, etc):

  • prise en main + rapide et facile qu'un gros FW
  • permet davantage de liberté dans le code (= davantage orienté code maison)
  • pour des projets davantage "personnels" et "solos" et "petits" projets
  • pas de restrictions (permet de tout faire)
  • moins gourmand qu'un gros FW (meilleur en terme de performance)
  • moins de dépendance qu'avec un gros FW

Points négatifs/contraintes:

  • davantage de développement "maison" potentiel, donc potentiellement + de temps à coder (même si au final bien configurer un gros FW est très chronophage donc au final l'un dans l'autre ....)

Du coup en faisant ce petit résumé, je me dis quel intérêt de choisir un gros FW si on n'est pas un pro sur Symfony et qu'on n'est pas hyper-speedé par une échéance professionnelle type projet client en SSII?! Si on peut tout faire avec un petit FW, certes avec davantage de code maison (ce qui est au final un avantage + qu'une contrainte selon moi), qu'on a donc + de liberté, qu'au niveau performances c'est meilleur et qu'au final pour le même projet le temps de dev/config serait kif-kif, le choix d'un petit FW parait presque évident non ?

En revanche un point sur lequel j'aimerais aussi avoir votre avis svp c'est au sujet de la dépendance à un Framework (qu'il soit petit ou gros) et plus exactement par rapport aux nouvelles versions ? J'ai lu à droite à gauche que d'une version à l'autre, ça peut être un peu le jour et la nuit (Symfony 2, CakePhp 3...), qu'il fallait revoir plein de choses pour que notre code puisse être compatible avec la nouvelle version, etc. Est-ce que vous avez de l'expérience sur ce point ? Est-ce que c'est davantage une contrainte pour les gros FW plutôt que les petits ? Car s'il faut perdre 6 mois à chaque montée de version pour faire des réglages........

Merci.

Difficile de faire une généralité, mais les changements de version majeur sont là pour marquer une cassure de compatibilité, donc fatalement, petit ou gros, il faudra faire de grosses modifications, pouvant prendre beaucoup de temps.

Quand c'est juste syntaxique, un "replace all" fera l'affaire, par contre, quand c'est un changement de philosophie, là c'est tout autre chose. (AngularJs 1 et Angular 2 en est un bel exemple, il faut véritablement tout réapprendre ou presque).

Tu oublies l'avantage majeur des gros FW, c'est leur robustesse et leur contrainte. C'est un avantage dans le monde de l'entreprise, qui contraint les devs à respecter des normes et permet aux entreprises de s'assurer que le code qu'ils produisent soit théoriquement fiable. Et donc, c'est une ligne qui se vend sur un CV (qui semble de plus en plus obligatoire d'ailleurs).

Claw69
Auteur

Merci Kenor pour ton retour.

OK donc pour les changements de versions, même avec les "petits" FW, on n'est potentiellement pas épargné par des grosses mises à jour à faire...pfff... (pour ça que je préfère en général le code maison)

Pour l'aspect "avantages" des gros FW, oui je comprends tout à fait pourquoi les entreprises font le choix d'un Symfony ou équivalent (codage + rapide, travail collaboratif, cadre imposé, évite que chaque dev parte dans des délires persos, etc...) !

Pour le point "ligne sur le CV", je suis "malheureusement" bien d'accord avec toi, c'est ce que je disais au début du sujet, dans mon cas, ne maîtrisant même pas la POO et donc encore moins un FW, c'est du coup la double peine si je veux revenir sur le marché de l'emploi du salariat ... et ce malgré "n" années d'expérience dans le web... :(

Mais perso je me plaçais plutôt dans une vision d'indépendant (que je suis) voire start-up ... D'ailleurs pour une start-up je me demande si le choix d'un FW est pertinent : si ton équipe est constituée de geeks, n'est-il pas + judicieux de partir sur du code maison (pour être totalement indépendant) ? Le seul inconvénient c'est que tu mettras p-e en ligne un peu moins rapidement et les nouveaux arrivants devront prendre le temps de se former à "ton" FW maison. Pas de solution miracle encore une fois...

Pour en revenir à CodeIgniter, du coup ça a l'air pas mal comme solution "compromis" dans mon cas. Est-ce que qqn ici aurait connaissance d'un gros "bémol" sur ce FW ?

Hello !

Je vois que le sujet s'est décallé sur les frameworks. Qui viennent naturellement après un apprentissage avancée de la POO (ou aide à comprendre la POO).

En fait coder une grosse appli de façon indépendante rend la compréhention du code de plus en plus obscure. Dans le temps tu perds la logique, si tu as X personnes qui viennent coder avec leurs propres normes ou logique, le codeur qui viendra après auras de plus en plus de mal à le maintenir et à le comprendre. C'est la que tu te retrouve avec du legacy code de plus en plus dégueulasse qu'on laisse mourrir et auquel on ne peut plus toucher car personne ne se souvient de comment ça a été codé etc.

D'ailleurs je trouve qu'un pro du web qui sert à un client une solution totalement produit indépendamentpeut nuire à sa réputation à terme. En effet, si un moment tu perds ton client. Qu'il va voir tartampion. Qui lui dit "non mais la votre site il est fait n'importe comment, il est plus au goût du jour etc".

Après utilisé un framework récent (Surtout Symfony ou Laravel qui sont les plus utilisés en se moment) permet d'avoir une sécurité supplémentaire sur les failles de sécurités récurente. C'est aussi un groupe de personne expérimenté qui réfléchissent à la résolution des problèmes rencontrés. D'avoir une communauté active qui pourra t'aider en cas de merde dans ton code. (Essaye de taper sur google un problème quelconque avec Symfony / laravel, et un framework moins utilisés comme codeigniter ou cake aujourd'hui tu verras que tu aura au moins une personne qui a déjà eu le souci que tu as rencontré).

Après oui c'est un investissement de temps pour la compréhention. Mais ça rendre dans une logique de productivité, de compréhention et d'industrialisation. Car dans le cadre d'une start up, entre un dev qui va devoir comprendre comment ta solution fonctionne, ou un dev qui sait utiliser le framework que tu utilise, le deuxième sera opérationnel plus vite. Car il saura utiliser les outils que le framework utilise, là ou sur une solution interne, tu as intérêt à lui fournir une doc qui répertorie toutes les fonctions / helpers / comment utiliser ton système de requêtage etc.

Quand tu vois la documentation de Laravel, le truc est claire, te prend relativement en main pour pouvoir faire une petite appli rapidement. Symfony est plus normé plus fermé, mais permet de resté cohérent sur les grosses applications.

Je dirais pour conclure qu'il ne faut pas se fermer, je dis pas que tu es pas capable dans le fond de faire mieux que Symfony / laravel etc. Juste qu'à un moment entre prendre le temps de monter un vrai framework utile et réutilisable pour ton activité, ou t'investir dans un framework. Je choisirai de prendre un framework. Comme ça je me concentre sur mes projets, et pas de mettre à jour mon outil dès qu'il y a une optimisation du langage, des nouvelles failles de sécurités à régler etc etc. Des mecs avec un meilleurs niveau que moi, plus d'expérience que moi, iront plus vite que moi homme "seul" pour mettre à jour un outil + produire du contenu pour mes clients.

Aujourd'hui si tu veux être pro et carré et que les développeurs ne souhaitent pas ta mort quand ils reprennent un de tes anciens clients, adoptes les bonnes pratiques.

D'ailleurs si tu ne connais pas ! http://www.phptherightway.com/ c'est une bonne base pour comprendre ce qui a changé depuis des années ;-)

Je ne peux que valider, dans le monde de l'entreprise, c'est devenu obligatoire.

J'ai la chance (ou pas, à voir), de bosser pour moi et uniquement pour moi (ni client "dev", ni autre dev), donc je me permet encore d'avoir le choix et de m'amuser dans ce que je fais, tout en sachant que je ne gagne pas toujours du temps, mais je m'amuse (et moi, c'est ce qui compte, en plus du fait de gagner ma vie évidemment).

Il est clair que si j'avais à dev pour d'autres, ou si je voulais devenir salarié, Symfony / Laravel serait mon quotidien ...

Du coup, ça va dépendre de ton objectif ...

Claw69
Auteur

@Kaelyscius:

Merci pour ton retour. Oui ça s'est un peu orienté FW mais POO, MVC et FW sont quand même des sujets assez "imbriqués" finalement... ;)

En tout cas, salarié ou indépendant, ça s'confirme qu'il est quasi indispensable désormais de maîtriser POO et au moins un FrameWork, et notamment un gros quand on est dans le salariat.

Merci pour le lien, je ne connaissais pas! :) ... Du coup le même en version française: [http://eilgin.github.io/php-the-right-way/] ;)

@Kenor:

Donc j'imagine que tu as développé un site avec lequel tu gagnes de l'argent c'est ça ?

C'était mon gagne pain de ces 3 dernières années également, jusqu'à il y a quelques mois .... Du coup, urgence à trouver une autre solution....

Le problème c'est que même si j'me suis un peu démerdé en attendant.... :
1 - si l'objectif est de retourner dans le salariat/SSII (aaarrghh....), c'est mort car je ne maîtrise pas la POO et encore moins un FW, ni même un petit...
2 - si l'objectif est de rester dans une optique "entrepreunariale" (qui me correspond bien +), je me sens également coincé et ce, pour les mêmes raisons. J'vais pas repartir sur un projet web en "procédurale" ou avec Wordpress comme j'avais tenté de le faire il y a quelques mois pour un nouveau projet! :/

Du coup je me sens un peu coincé car dans tous les cas il me faut du temps et étant un peu dans l'urgence....

Salut ! Bon je n'ai pas lu l'entiereté de la conversation donc j'e ne sais pas si ce que je vais dire a déjà été dit...
Concernant mon passage du procédural à l'orienté objet, j'ai été perdu, comme tout le monde je pense.
Ce qui m'a aidé à comprendre la logique : ne pas se perdre dans les différentes syntaxes, en choisir une et s'y former. Pour comprendre l'objet, j'ai pas arreté de faire des var_dump pour comprendre quel symbole représentait quoi... et j'ai compris...
Bien sûr, nous avons tous notre propre logique de compréhension, mais c'est ce qui a marché pour moi. Apres, pas de secret, la doc'. Par exemple, pour comprendre que la syntaxe

__construct()

permettait de lancer automatiquement la fonction à l'instanciation de la class... sans la doc' je ne l'aurais jamais compris ^^. Si tu as l'occasion de mettre le nez dans des codes sources écris en POO, y'a pas mieux pour apprendre ;).

Bon courage

@Claw69

Donc j'imagine que tu as développé un site avec lequel tu gagnes de l'argent c'est ça ?

C'est ça oui, j'ai plus ou moins toujours fait ça, et la boite a 12 ans, donc si ça peut te rassurer, ça peut tenir dans le temps (pourtant, j'en suis au 3eme site qui me fait vivre, et ça sent la fin pour ce 3eme également). D'où le fait que je me tienne au courant pour être toujours à la page et repartir sur autre chose dès que le vent tourne. Imaginer garder le même site 30 ans, me parait un peu illusoire :)

Ceci étant, en 3ans, après je ne connais pas ton site ni son succès, j'imagine que tu as tout de même du démontrer un certain niveau de connaissance, pas nécessairement dans le dev, mais au moins en tant que commercial, monétisation ou dans le domaine de ton site. Ça peut être une piste pour commencer une activité sans lien direct avec le dev.

Personnelement, même si je travaille très peu mon réseau pro, je pense avoir assez de contact pour palier à un gros coup dure (ce qui est déjà arrivé dans le passé d'ailleurs). Si ça peut être piste pour toi :)

Enfin là, on dévie fortement du sujet par contre :D

Bonjour,
je vais aussi mettre ma touche dans ce debat :)

Personnelement je viens du monde de l'electronique ou j'ai apris l'assembleur en cour (niveau OO on est loin...), quand je suis arrive dans le web en 2007, et apres m'etre auto forme, j'ai utiliser du procedural et il m'en a ete tres difficile de m'en sortir jusqu'a ya deux ans. En faite mes problemes on commence a sortir quand on m'a mis, dans l'entreprise ou je travail, 3 nouveau programmer, et pour expliquer un code totalement procedural et ou trouver chaque element de code c'est extremement complique.

Pour faire cette transition j'ai tous simplement creer des class contenant que des fonction static et donc je ne m'y suis pas trop perdu car honetement n'avoir que du static c'est quasi equivalent a du procedural :) . Mais par contre ca m'a fait comprendre l'interet enorme de l'objet et la facon de travailler avec (de decouper son code, d'avoir des nom de fonction plus parlant, de separer chaque controller du code, l'interet du public/protected/private, la simplicite a modifier le coeur d'un systeme sans pour autant changer tous son code...) et de la j'ai pu passer a de l'objet reel, et clairement aujourd'hui je ne travaille plus sans car ca permet une gestion beaucoup plus dynamique de son code.

Je trouve qu'il est primordial de passer a de l'OO et je t'invite vraiment a le faire, par contre l'utilisation d'un FW je ne te l'a conseille pas tant que tu n'as pas encore saisie l'idee qu'il y a derriere l'OO car ca peut etre tres deroutant

@claw69

Il existe en français mais si tu est à l'aise avec l'anglais, tu verras qu'il manque quelques rubriques non traduite (enfin j'ai regardé la version française il y a un moment déjà ça a peut être changé depuis.)

Claw69
Auteur

Merci à vous 3 pour vos retours :)

Globalement, à lire tous vos témoignages, le passage "procédurale à la POO" laisse des souvenirs à tout le monde! ;) On se sent moins seul.

@Semeen:
Merci pour ton témoignage et la "méthode" d'approche. :)

@Kenor:
Oui on flirte dangeureusement avec le hors-sujet ... ;) ;)
Mais pas tant que ça en fait, car dans mon sujet je faisais allusion à toutes ces nouvelles technos et comment pouvoir rester sur la vague.

Pour mon site, comme dans ton cas, je faisais au quotidien pleins de choses bien au delà du dev.
Du coup c'est enrichissant et j'espère que ça pourra en effet me faire rebondir d'une façon ou d'une autre, mais c'est "chaud" quand on est au four et au moulin, comme à l'époque, de pouvoir se garder du temps pour rester à la page, du coup je faisais du "au coup par coup" à chaque problématique que je rencontrais. Du coup là le site (qui marche pas trop mal en +) est en stand-by en terme d'évolution car il faudrait beaucoup de temps (+argent!) pour le revoir de A à Z et repartir sur de bonnes bases (donc c'est une fin annoncée à moyen terme). Et en + le site commençait à me dominer, quotidien de + en + lourd pour un seul homme mais pas suffisamment de revenu pour embaucher...
( Non, non je ne suis pas du tout hors sujet! :p )
Pour le nouveau projet web que j'avais en tête, j'ai bien vu "dans l'esprit" que l'expérience de l'ancien site (au delà du dev) m'aiderait....mais comme je le disais pour ce nouveau projet il me faudrait partir sur des bonnes bases aussi : pack "POO, MVC, FW" et sans doute au moins 1 ou 2 collègues/dev pour absorber dev et quotidien + facilement, donc du coup pas gagné....et comme je suis un peu dans l'urgence là...c'est pas le moment... Dommage car je suis assez convaincu que mon projet a du potentiel.

Affaire à suivre donc...

Question subsidiaire: tu utilises un FW en particulier pour tes sites web ?

@E-Bismuth:

Merci pour ton retour d'expérience. En tout cas, un point commun à tous ceux qui ont franchi le mur de la POO, c'est que comme pour toi, ils ne peuvent désormais plus s'en passer. ;) Dans mon cas 'faut juste que j'arrive à franchir le mur ! ;)

Claw69
Auteur

@Kaelyscius:
Ok, merci, c'est noté... I like Shakespeare language ! ;)

@Claw69
Question subsidiaire: tu utilises un FW en particulier pour tes sites web ?

Non, comme je le disais, j'aime me faire plaisir en bossant, c'est une des raisons qui me motive à ne pas bosser pour un autre. Et du coup, je trouve plus enrichissant et plus plaisant au quotidien de m'amuser à créer tout de zéro plutôt que de suivre une doc et me sentir frustrer quand je dois faire des choses particulièrement farfelu pour arriver à quelque chose de simple car ça n'a pas été prévu à l'origine.

J'ai donc préféré dev mes propres outils, mon propre "bootstrap" (qui est 100 fois mieux, fort objectivement ... ou pas), mon propre FW PHP (idem), mes propres plugin jQuery (j'en utilise qu'un seul externe, tout le reste, je n'ai jamais trouvé quelque chose qui me plaisait vraiment, charger un fichier de 120ko pour utiliser 2 options au quotidien, non merci), mon fichier Vagrant entièrement maison, mon fichier Gulp avec quelques plugins maisons etc. etc.

Ça me prend beaucoup de temps, certes, mais je pense avoir un code vraiment qualitatif, propre, organisé, très performant (mon site ayant des pointes de traff très impressionnante par moment, la perf était indispensable) et surtout, qui me permet d'être vraiment rapide à dev les projets définitifs (de là à dire que ça compense le fait que je dev tout, j'en doute :)).

Claw69
Auteur

@Kenor:

OK good job alors! :)
J'avoue avoir le même état d'esprit que toi, la même approche: j'ai toujours préféré tout développer de A à Z, maîtriser mon truc, être totalement libre, pouvoir développer ce que je veux sans être pollué ou limité par un plugin ou autre. Et question performances, c'est clair que c'est le jour et la nuit entre un developpement "maison" pensé aux ptits oignons et un site ralenti par 450 milles trucs chargés en amont et qui ne servent à rien. Donc à part pour des trucs hypers spécifiques et hyper chiants, perso le "home made" est ma façon de voir les choses aussi.

Mais bon a priori il y a débat dans la communauté "FW or not FW, that is the question" ...sachant qu'il n'y a pas de réponse absolue à ce dernier.

Dans mon cas, il n'y a aucun débat, s'il faut que je parte de ZERO pour mon "nouveau" projet, coder mon propre FW alors que j'ai seulement survolé la POO et le MVC, et ben c'est pas gagné!!! :p :p :p

Je suis aussi un peu comme vous et c'est pour ça que j'ai fais mon propre framework maison. A la base c'était surtout pour m'améliorer en POO mais c'est devenu ma base de travail pour des projets perso et des fois pro (seulons les besoins réel).

Ceci étant certains framework peuvent être bien et c'est comme toujours. C'est au besoin par rapport au projet.

Claw69
Auteur

@quenti77:
Merci pour ton retour. C'est vrai que le framework "maison" c'est l'idéal ! :)