Salut à tous.
Voici d'après moi la meilleure façon de procéder pour choisir un langage de programmation pour un projet.
Je pars des objectifs qui doivent être atteints lorsqu'on développe une application :
- Faisabilité : existe-t-il dans ce langage des ressources pour satisfaire aux spécifications fonctionnelles de l'application ? Existe-t-il des ressources pour faire déployer et fonctionner les applications écrites dans ce langage sur la (ou les) plateforme(s) cibles ?
- Fiabilité de l'application : existe-t-il dans ce langage des frameworks de test, des frameworks de logging, des véritables outils de debugging (comme findbugs dans java)?
- Maintenabilité, extensibilité, flexibilité : le langage est-il orienté objet ? Existe-t-il dans ce langage des frameworks qui implémentent les principaux design patterns ? Existe-t-il dans ce langage des outils pour effectuer des forward et reverse engineer entre le code source et le langage UML ? Existe-t-il des frameworks d'AOP ?
- Manageability : existe-t-il des frameworks pour effectuer l'instrumentation des ressources dans ce langage ? (comme JMX dans java ou WMI API pour les appli .Net ou Win32)
- Performance : existe-t-il dans ce langage des outils pour effectuer des "performance profilings" ? Existe-t-il des frameworks de pooling et de caching ?
- Productivité : existe-t-il des IDE qui intègrent et complètent les principaux outils et frameworks ci-dessus et qui pallient à certaines insuffissances du langage ? Existe-t-il déjà du code réutilisable pour l'application à developper ? Existe-t-il des frameworks de persistances ?
Peut être pouvez-vous compléter la liste...
Partager