IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PL/SQL Oracle Discussion :

Pattern de développement PL/SQL


Sujet :

PL/SQL Oracle

  1. #1
    Membre confirmé Avatar de Kihmé Xs
    Inscrit en
    Janvier 2007
    Messages
    549
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Janvier 2007
    Messages : 549
    Points : 491
    Points
    491
    Par défaut Pattern de développement PL/SQL
    Bonjour à tous,

    Je suis confronté à une réécriture de traitements PL/SQL. Ces traitements sont développés dans trois énormes packages (plusieurs dizaines de milliers de lignes chacun). Ils sont constitués de procédures et fonctions de plusieurs centaines à plusieurs milliers de lignes chacune.

    Je suis face à un constat, cette façon de développée ne permet pas une maintenance rapide et efficace. Il est compliqué de faire travailler plusieurs développeurs en même temps sur ces packages. Ces grosses procédures compliquent fortement la tâche de tests unitaires.

    Il y a peu de temps j'ai pu développer tout un package en y appliquant des bonnes pratiques de développement issues du développement objet : procédures et fonctions les plus petites possibles (un traitement ou une itération par procédure). Lors des développements, plusieurs développeurs pouvaient travailler sur le package sans se gêner. La phase de tests unitaires a été plus simple qu'à l'accoutumé puisqu'il était possible de tester par injection de données toutes les procédures.

    Je souhaite appliquer ceci à la nouvelle réécriture. Mais j'aimerai aller plus loin. Je cherche un pattern pour organiser toutes les procédures et fonctions par rapport à ce qu'elles réalisent.

    Par exemple : un package pour l'accès aux données, un package pour des traitements etc...

    Le but est de pouvoir utiliser les packages pour structurer un maximum le code. Quitte à utiliser un bon nombre de package.

    Avec un code bien structuré et développé le plus microscopiquement, je compte faire gagner en maintenabilité et permettre à un maximum de développeurs de travailler ensembles.

    J'ai fais des recherches sur d'éventuels patterns conseillés pour le développement en PL/SQL mais rien n'en est sorti. Ce qui me surprend, il doit quand même bien exister un grand nombre de traitements toujours réalisés en PL/SQL et donc des développeurs ont du déjà être confrontés aux mêmes problématiques que les miennes. Si vous même utilisez une structuration de vos packages (un pattern, un framework etc...) je serais curieux de vos retours.

    Si vous n'en utilisez pas et que vous n'en voyez pas le besoin je suis aussi preneur de retour.

    Cordialement,

  2. #2
    Membre chevronné Avatar de Garuda
    Homme Profil pro
    Chef de projet / Urbaniste SI
    Inscrit en
    Juin 2007
    Messages
    1 285
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet / Urbaniste SI
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 285
    Points : 2 071
    Points
    2 071
    Garuda गरूड
    Brahmâ la Guerre et Vishnu la Paix

    Oracle 12C R2 - Forms11GR2 - Toad 12 - sharePoint 2010

Discussions similaires

  1. Meilleur Design pattern pour développer la couche DAO
    Par clubist dans le forum Design Patterns
    Réponses: 1
    Dernier message: 04/11/2009, 22h09
  2. [SQL-Server] Développer sous SQL Server pour la 1re fois
    Par Ayor81 dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 19/09/2008, 13h26
  3. Développement PL-SQL : Erreur ORA-06502
    Par sperronn dans le forum PL/SQL
    Réponses: 4
    Dernier message: 04/09/2008, 14h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo