• [^] # Re: Bof

    Posté par . En réponse au journal Mélanger les syntaxes de C# et de Qt. Évalué à 8.

    Je ne pense pas que cela fragmentera l'écosystème C#. C#/Qt sera un langage à part entière qui aura la particularité d'avoir la même syntaxe que le langage C#. Mais les binaires C# ne seront a priori pas compatible avec les binaires C#/Qt et vice-versa, pour des raisons de portabilité.

    Donc tu fragmente l'écosystème C# en deux, CQFD.

    Si jamais quelqu'un veut écrire une bibliothèque en C#, il va devoir choisir entre le C# normalisé et le C# avec une bibliothèque non standard, sachant que quelqu'un qui utilise le C# normalisé ne pourra pas utiliser du code qui viens de l'autre écosystème et inversement.

    Sur ce point, ce projet se différencie donc de Qt qui était une bibliothèque pour C++ utilisable avec d'autres bibiothèques C++. Là, il s'agit de créer un nouvel écosystème.

    Qt n'est pas qu'une bibliothèque, c'est aussi un générateur de code et un système de build. Mais même sur sa partie bibliothèque, il réimplémente toute la bibliothèque standard C++ en moins bien, et si tu veux utiliser une bibliothèque qui utilise Qt dans du code qui utilise majoritairement la bibliothèque standard (ou inversement), ce n'est certes pas impossible de mixer les deux, mais en pratique c'est beaucoup de glue chiante à écrire pour rien, qui peut casser facilement si tu ne prend pas en compte les différences qu'ont les deux environnements sur les namespaces, les exceptions et la gestion de la mémoire.

    C'est assez pour te dissuader de mixer les deux, et à la place, réimplémenter la fonctionnalité de la bibliothèque dans ton coin. D'ou une fragmentation entre du C++ standard et du C++/Qt.