Contenu | Rechercher | Menus

Annonce

DVD, clés USB et t-shirts Ubuntu-fr disponibles sur la boutique En Vente Libre

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 26/08/2021, à 21:54

caranille

[Avis] NodeJS ou PHP

Bonjour à toutes et à tous,

Pour faire simple j'ai commencé à apprendre le PHP il y a 17 ans quand j'avais 15 ans (Je me revois dans le RER avec un livre PHP sous le bras, nostalgie...)

J'ai fait un petit programme pour créer un RPG textuelle en PHP et je suis totalement perdu sur deux directions à suivre pour le refaire un peu plus aux normes de 2021 à savoir en MVC avec FrameWork.

Au début j'ai pensé à Symfony car j'ai bien aimé l'apprendre au temps ou j'ai fait une formation de 6 mois dessus.

Mais de l'autre côté je vois beaucoup NodeJS avec Express pour le côté MVC (Plus View et Controller mais bon ^^).

Et j'avoue je suis perdu car je vois que PHP est toujours à jour sur Ubuntu mais NodeJS est disponible dans sa version 12 alors que la 16 est déjà sortie et est la futur LTS dans 2 mois...

Donc je ne sais pas surtout que NodeJS a été fork en DENO fin bref je suis pas sur le la pérennité de mon projet avec car NPM à déjà mauvaise réputation à cause de tellement de failles de sécurité trouvée mais bon Composer avec Symfony c'est un peu la même ^^

Donc je ne sais pas trop quoi penser et j'espère qu'une personne expérimenté puisse me donner son avis de façon objective.

Voici mon projet que j'ai fait en BTS et que j'aimerai refaire plus à jour ^^
Adresse : https://github.com/Caranille/Caranille

Bien cordialement,

Hors ligne

#2 Le 26/08/2021, à 23:52

Vobul

Re : [Avis] NodeJS ou PHP

Salut,

Déjà ton lien est 404. tongue

Ensuite je vais te dire un truc qui va te simplifier beaucoup la vie : "le meilleur langage de programmation est souvent celui que tu maîtrises le mieux".

Si t'es à l'aise avec PHP, continue avec, même si je dois dire que pour un truc en mode texte cela n'a pas beaucoup de sens car PHP est vraiment fait pour gérer des requêtes web. Mais il est vrai que le language est suffisamment complet pour faire ce que tu veux avec. Autant je te recommande chaudement symfony (ou juste certains de ses composants) pour un projet web, autant pour un projet TUI ce ne sera peut-être pas super utile et va t'apporter un max de complexité pour pas grand chose. À part peut-être certains composants comme "Console" qui peuvent être très utiles.

Ensuite, utilise Docker pour ton projet et affranchis-toi des versions packagées pour le système. Docker c'est vraiment top pour le dev, pas seulement pour les micro services web toussah.

Oui si tu démarres un projet, Deno peut être très intéressant, en effet.

Perso je ferai le truc en python ou rust, mais comme je te l'ai dit, cela n'a aucune importance. Il y a aussi plein d'autres langages qui peuvent être sympas, comme zig, go, haskell, ruby.... take your pick!

Pour finir, le pattern MVC c'est pas forcément la panacée. Ce qui est important c'est que ton code soit SOLID. Après tu verras comment ton code évolue et quel pattern semble le meilleur pour ton projet.

Aussi, tu parles des problèmes de sécurité sur npm mais bon t'es pas obligé non plus d'installer tout et n'importe quoi, même si j'avoue qu'assez rapidement on se retrouve avec des "is-odd" dans ses dépendences... Et beaucoup de "failles de sécurité" n'ont que peu de sens pour une application texte exécutée en local. Voir : https://overreacted.io/npm-audit-broken-by-design/

Après ce qui peut être cool avec node/deno/rust c'est un export en webassembly et pouvoir faire tourner ton truc dans un navigateur ou un terminal ! Bref, plein de choses à explorer ! wink


Vobul

Utilisez le retour utilisable de commandes !!!
J'aime la langue française, mais je parle franglais, deal with it.

Hors ligne

#3 Le 26/08/2021, à 23:59

caranille

Re : [Avis] NodeJS ou PHP

Bonjour,

Merci de votre retour et désolé mon repository était en private ?

Je viens de le corriger

Sumfony me fait beaucoup de l’œil mais entre nodejs et deno je veux que dans 10 ans mon projet tourne encore et nodejs et deno deprecated rapidement des choses

Bien cordialement

Hors ligne

#4 Le 27/08/2021, à 00:19

Vobul

Re : [Avis] NodeJS ou PHP

Ok j'ai jeté un œil à ton repo. Bon on part de loin tongue

Ton projet tournera toujours si les dépendences sont facilement installables avec une version donnée (yarn.lock/package-lock.json/composer.lock, etc...). Ce n'est donc pas vraiment un argument à prendre en compte à mon avis.


Vobul

Utilisez le retour utilisable de commandes !!!
J'aime la langue française, mais je parle franglais, deal with it.

Hors ligne

#5 Le 27/08/2021, à 08:59

caranille

Re : [Avis] NodeJS ou PHP

Bonjour,

Oui c’est un projet où j’ai passé des milliers d’heures dessus ?

Et pour ce type de project ce serait mieux du node où symfony à votre avis ?

Merci encore d’avoir prit le temps de regarder ☺️

Bien cordialement

Hors ligne

#6 Le 27/08/2021, à 16:06

Vobul

Re : [Avis] NodeJS ou PHP

caranille a écrit :

Oui c’est un projet où j’ai passé des milliers d’heures dessus ?

Ça fait deux fois que tu mets des "?" à la place des ".". T'es au courant que ça n'a pas le même sens ? tongue

J'vais juste te faire un petit reality check avec tendresse et bienveillance : ton code est un exemple parfait de tout ce qu'il ne faut pas faire (après 2001 en tout cas) :

- php mélangé au html
- répétitions partout
- des if/else à tiroirs
- aucune classe, exception, trait, interface ou n'importe quoi de plus moderne que PHP 3
- pas de dépendences gérées avec composer
- les libs vendored dans le repo et pas gérées avec npm/yarn
- commentaires en français (bon ça, ça peut se discuter bien sûr)
- aucune fonction !!!

On en parle du dernier point ? Je n'ai trouvé aucune fonction ! Je ne sais même pas comment c'est possible d'écrire autant de ligne php sans le mot clé "function" à un moment. Donc oui forcément il n'y a pas de classes....

Bref, si t'as fait ça il y a 15 ans je veux bien, mais je me demande ce que tu as appris dans ton BTS (c'était quoi le nom du BTS ?). Mais aujourd'hui un projet comme ça, il faut le faire évoluer vers un truc un peu plus moderne. Regarde ce qu'est une app symfony, c'est beaucoup plus structuré que ton spaghetti, il y a un moteur de templating (twig), des classes, des dependency injection, de l'autowiring, bref, plein de trucs. Je te parlais de SOLID plus haut, mais maintenant je réalise que tu en es encore bien loin.

Voilà, prends ça comme une critique constructive wink Moi aussi j'ai écrit du spaghetti copié/collé à mes débuts, mais j'ai bien évolué depuis. Il faut continuer à apprendre et faire évoluer son projet avec ses nouvelles connaissances. Et ça nécessite de regarder ce qui se fait ailleurs et ne pas rester avec des œillères.


Vobul

Utilisez le retour utilisable de commandes !!!
J'aime la langue française, mais je parle franglais, deal with it.

Hors ligne

#7 Le 27/08/2021, à 16:19

caranille

Re : [Avis] NodeJS ou PHP

Bonjour,

Désolé c’est mon iPhone qui ajoute les ? ?

En BTS j’ai pas fait option développement je l’ai fait sur mon temps libre.

C’est pour ça que j’avais commencé à apprendre Symfony que je trouvais justement bien pour ce côté MVC.

Tu me conseilles donc de partir dessus ? Car sur node avec Express j’ai peur de faire la même erreur

Bien cordialement

Hors ligne

#8 Le 27/08/2021, à 16:40

Vobul

Re : [Avis] NodeJS ou PHP

Ben moi j'aime bien Symfony, donc je ne peux que le recommander.


Vobul

Utilisez le retour utilisable de commandes !!!
J'aime la langue française, mais je parle franglais, deal with it.

Hors ligne

#9 Le 27/08/2021, à 22:20

caranille

Re : [Avis] NodeJS ou PHP

Bonjour,

Merci beaucoup d'avoir prit le temps de me répondre et de m'avoir donné de bonnes indication wink

Je vais partir sur ASP.NET smile Non je rigole Symfony car ça sera un peu faire du PHP de façon professionnel smile

Plus qu'à entrer dans la documentation et ne plus faire les mêmes erreurs ^^

Merci encore et bonne soirée à toi

Je met le sujet en résolu

Bien cordialement,

Hors ligne