Blog de Norore

Bioinformaticienne passionnée de biologie, de programmation, de libre et de jeux-vidéo

Projet suivi sous Symfony 4

Rédigé par Norore 5 commentaires
Un carnet, un stylo et une tasse de cappucino, posés sur un bureau en bois, rien de tel pour se lancer !

Depuis quelques mois je me suis mise à Symfony 3.4. Il s'agit d'un framework PHP assez connu et que je n'avais pas pris la peine de découvrir au moment où je bidouillais dans ce langage. C'est chose faite grâce à mon nouvel emploi.

Depuis le mois de Novembre dernier, la version 4 est sortie. S'agissant d'une version majeure, et le projet que j'ai repris étant déjà assez avancé, il serait probablement complexe de mettre à jour toute l'application dans un premier temps.

J'ai envie de coder et de découvrir ce que Symfony 4 me réserve pour de futurs projets, ou même comment je peux planifier la mise à jour de l'application actuelle, aussi, le meilleur moyen que je connaisse, est de faire un projet. Je vous propose donc, au travers de différents billets qui seront rédigés au fur et à mesure de ma progression et de ma motivation, de découvrir ensemble comment travailler avec le framework :-) !

Présentation du projet

Depuis quelques années, j'ai remarqué que je prends plus de plaisir à lire qu'avant. Du coup, je lis davantage ! Ma bibliothèque commence à se remplir peu à peu et certains de mes livres sont toujours chez mes parents. Sans parler des livres que j'aimerai lire et que j'emprunterai vraisemblablement à la médiathèque de mon quartier.

Seulement voilà :

  • Quels sont les livres que j'ai lu ?
  • Ceux que j'ai et ceux que je n'ai pas ?
  • Combien de fois ai-je lu les mémoires d'Hubert Reeves ?
  • Quelles sont les œuvres que j'aimerai lire mais ne sont pas encore dans ma bibliothèque ?
  • Combien ai-je de BD, de mangas, de livres de vulgarisation, de romans ?
  • Est-ce qu'il y a un auteur en particulier qui est plus représenté que les autres ?
  • Et est-ce que j'ai bien toutes les œuvres écrites par cette auteure ?

Bref, vous l'aurez compris, j'aimerai avoir un suivi de mes différentes lectures, savoir où sont les livres que j'ai lu peut aussi s'avérer utile. Et puis, ça peut aussi me permettre de faire joujou avec les statistiques plus tard. Oui, je suis une grande gosse :-) !

Organisation du bousin

Pour pouvoir concrétiser ce projet il faudra donc que je mette en place différentes choses.

Les tests unitaires

Un des incontournable en programmation. Malgré le fait d'en avoir entendu parler, je ne sais toujours pas comment m'y prendre pour faire ça, honte sur moi. C'est l'occasion d'apprendre et de sortir de ma zone de confort !

La gestion des erreurs

Un des trucs intéressants avec Symfony, c'est qu'il est possible de jouer avec l'affichage des erreurs ainsi qu'avec la création de log personnalisé. J'ai hâte de voir comment ça marche sous la version 4 !

La base de données

Sans doute la partie qui va me demander le plus d'effort. Concevoir une base de données n'est pas forcément immédiat, il faut parfois du temps et des essais pour vérifier que tout coïncide. De plus, c'est souvent en testant que l'on se rend compte qu'il manque, ou va manquer, des informations qui n'ont pas encore été prévues !

L'architecture des pages

Là je vais m'amuser avec le framework et son moteur de template Twig :-) ! La question sera de savoir comment je vais organiser toutes les pages. Est-ce que je vais répartir les différentes pages dans différents modules ? Je verrai ça au fur et à mesure que le projet sera en cours de maturation.

La documentation

Je vais tâcher de documenter mon code et, pourquoi pas, d'avoir des fichiers README dans les différents répertoires. Il se pourrait aussi que monter un wiki dédié au projet pourrait être une meilleure option. Je ne sais pas encore trop comment je vais m'y prendre, mais on devrait s'en sortir !

Et il y a sûrement encore plein de petits détails et autres fioritures que j'ai oublié. Je verrai bien au cours du temps et de la progression du projet, mais également au fil de vos réactions et commentaires :) !

À la question « mais ça n'existe pas déjà ? » ma réponse est « probablement » ! L'objectif pour moi est vraiment d'apprendre et de repousser mes limites et compétences en terme de gestion de projet. C'est comme ça que je progresse et évolue.

Vous êtes prêts ? À nos neurones ! 


Source de l'image d'accroche : un carnet, un stylo et une tasse de cappucino, posés sur un bureau en bois. Photographié par Engin Akyurt, sous licence CC0 sur Pixabay

5 commentaires

#1  - helje a dit :

Alors, ce projet, il avance ? ;)

Répondre
#2  - Norore a dit :

Pas vraiment non… Mais je vais m'y remettre un jour ! Ou pas :-p !
Oui, non, en vrai ce serait mieux x) !

Répondre
#3  - Seboss666 a dit :

Pour la base de données, tes besoins seront assez simples à définir, et si tu exploites l'ORM de Symfony, je pense que tu pourras aisément créer quelque chose d'exploitable rapidement sans trop de complexité et avec assez de souplesse pour ajouter des infos dans le futur.

Pour l'interface, si t'es moyennement douée en CSS/JS, ou que t'as la flemme comme je peux l'avoir (surtout quand il s'agit de JavaScript), les mecs de NativeDroid font un truc sympa en jQuery Mobile ;) http://nativedroid.godesign.ch/material/

Répondre
#4  - Emmanuel a dit :

Je regarderais ce qui existe avant de me lancer, que ça soit sur le web (bedetheque.com) ou un client lourd (gcstar).

Répondre
#5  - Norore a dit :

Merci. Je vais regarder ça dès que possible. Ça pourrait me donner des pistes et des idées à explorer :-) !

Répondre

Écrire un commentaire

Quelle est la première lettre du mot tjjmf ?

Fil RSS des commentaires de cet article