Nous avons une application de bureau Windows mature écrite en C++. L'interface graphique de l'application se trouve au-dessus d'une DLL Windows qui fait la plupart du travail pour l'interface graphique (c'est en quelque sorte le moteur). C'est aussi écrit en C++. Nous envisageons de faire de l'application Windows une application Web pour diverses raisons.Transition d'une application de bureau écrite en C++ vers une application Web
Ce que je voudrais éviter est d'avoir à écrire le CGI pour cette application web en C++. Autrement dit, je préfère avoir la puissance d'un langage 4G comme Python ou un langage .NET pour créer la version web de cette application. Donc, la question est: étant donné que j'ai besoin d'utiliser une DLL C++ sur le backend pour faire le travail de l'application quelle pile de technologie recommanderiez-vous pour s'asseoir entre le navigateur de l'utilisateur et sont C++ dll? Nous pouvons supposer que le serveur web sera Windows.
Certaines options:
- Ecris une couche COM sur le dessus de la DLL de Windows qui peut alors être accès via .NET et utiliser ASP.NET pour l'interface utilisateur
- Accédez à l'interface DLL d'exportation directement à partir. NET et utiliser ASP.NET pour l'interface utilisateur.
- Ecrivez une bibliothèque Python personnalisée qui enveloppe la DLL Windows afin que le reste du code puisse être écrit.
- Écrivez le CGI en C++ et C++ - framework MVC base comme Wt
préoccupations:
- Je préfère ne pas utiliser C++ pour le framework web si elle peut être évitée - Je pense langues comme Python et C# sont simplement plus puissants et efficaces en termes de temps de développement.
- Je suis inquiet que mon mélange de code managé et non géré avec l'une des solutions .NET Je demande beaucoup de petits problèmes qui sont difficiles à déboguer (preuves purement anecdotiques pour cela)
- Idem pour l'utilisation une couche Python. Tout ce qui est légèrement hors des sentiers battus comme ça m'inquiète parce que je n'ai pas beaucoup de preuves dans un sens ou dans l'autre si c'est une solution viable à long terme.
Par "application web" je suppose que vous voulez dire HTML/CSS/Javascript, au lieu d'un RIA comme Flash ou Silverlight? –
Je le fais, oui. L'application finale peut contenir des éléments flash/sl mais ils ne devraient pas être la base. – Karim