Salut à tous,
Tout d'abord je vais me présenter un petit peu :
Je suis chef de projet depuis 5 ans sur des gros projets Uniface. Nous utilisions essentiellement la méthode Merise avec MCD/MPD et MOT pour l'analyse et une méthodologie d'analyse et des outils de developpement très stricts pour avoir du code assez générique (ce qui n'est pas évident avec Uniface pour ceux qui connaissent).
Nous sommes sur le point d'effectuer un virage important en passant entièrement à C#/.Net pour tout nos nouveaux developpement. Je n'ai pas eu de formation pour le moment mais d'après ce que j'ai lu, c'est très proche du java que je connais assez bien.
Voila c'est tout pour ma présentation
1 - Dans pas mal d'articles que j'ai lu, il y a une opposition entre UML et Merise alors qu'à mon avis ces deux méthodes peuvent être complémentaires. Un modèle UML va donner la réprésentation objet mais ne sera pas assez précis pour donner un représentation précise des futures table (type de champ, indexes, ...). Par contre l'énorme avantage de la modélisation UML est qu'on peut inclure l'interface utilisateur ce qui était un peu flou dans Merise. Qu'en pensez vous ?
2 - D'après ce que j'ai commencé à voir de .Net le framework de base pour rapprocher objet / base de données (ADO.Net) est très faible. J'ai commencé à me renseigner sur IBatis.net et Gentle.net qui permettent, à mon sens, d'avoir le niveau d'abstraction nécessaire entre les objets et la base. Y en a-t-il d'autres ? Auriez vous des retours d'expériences au sujet de ces framework ?
3 - Dans le point 2 j'ai parlé du mapping qui se fait entre objet / BDD mais il manque encore un mapping celui entre les attributs des objets et les champs à l'écran et c'est là que j'ai le plus peur. La base de données porte par exemple la taille d'un champ, sa précision (dans le cas d'un montant à virgule) et il faut que ces limites soient aussi présentes dans l'interface graphique pour éviter d'essayer de sauver une chaine de 150 caractères dans un champ de 100 caractères. J'ai vu qu'il existe par exemple MaskedTextBox pour effectivement mettre en place des masques de saisie et le code serait modifiable pour mettre en place un limite en taille mais reste le problème de centraliser le type complet des données.
Et je ne vois pas de moyen propre (générique) de faire ce lien et étrangement je n'ai pas vu de messages à ce sujet sur ce forum. Uniface de ce coté est nettement plus pratique.
4 - Dans le même style que le cas précédent, de la méme manière que nous avons un format de stockage, nous pouvons aussi avoir un format d'affichage : par exemple un montant de 1254,3 doit d'afficher 1 254,30. Ces formats d'affichage doivent aussi être centralisés pour quelque soit l'écran dans lequel un attribut est utilisé, le même format soit utilisé.
Merci d'avance pour le courage que vous aurez pour lire ce long (je sais) message et pour vos réponses.
A bientôt.
Sébastien
Partager