Synthèse de la conception orientée objet et fonctionnelle pour promouvoir la réutilisation

2025-09-09

Cet article d'ECOOP de 1998 traite du défi consistant à étendre à la fois les outils et les types de données dans les programmes en évolution en combinant les forces de la programmation orientée objet et de la programmation fonctionnelle. Les approches traditionnelles ont du mal à prendre en charge les deux : la programmation fonctionnelle excelle dans l'ajout d'outils, tandis que la POO excelle dans l'ajout de nouveaux outils ou l'extension des ensembles de données, mais pas les deux simultanément. L'article propose un modèle de conception composite qui synthétise le meilleur des deux approches, suggérant de nouvelles fonctionnalités linguistiques pour les langages basés sur les classes afin de permettre l'extensibilité sans modifier le code existant.

Lire plus
Développement réutilisation du code

Le partage, c'est effrayant : le lien inattendu entre le partage de fichiers dans le cloud et la sémantique des langages de programmation

2025-09-03

Les utilisateurs rencontrent souvent des difficultés avec les applications de partage de fichiers dans le cloud. Cette étude soutient que ces difficultés ne proviennent pas seulement d’interfaces médiocres, mais aussi d’une incompréhension fondamentale de la sémantique sous-jacente à des actions telles que la liaison, la pièce jointe, le téléchargement et la modification, ce qui reflète les défis liés à la compréhension de concepts de programmation tels que l’aliasing, la copie et la mutation. Une étude utilisateur révèle des idées fausses généralisées en mappant les idées fausses connues de l’enseignement de la programmation à des tâches de partage de fichiers similaires. Les chercheurs ont également développé une sémantique formelle des opérations de partage de fichiers dans le cloud, fournissant une base pour des modèles mentaux améliorés, des outils pédagogiques et une assistance automatisée. Cette formalisation peut prendre en charge des applications telles que la vérification de traces et la synthèse de workflows.

Lire plus