2010-04-14 4 views
4

J'ai quelques années d'expérience en programmation C++ et un peu moins qu'en utilisant Qt. J'ai construit un logiciel de data mining en utilisant Qt et je veux le rendre disponible en ligne. Malheureusement, je ne connais presque rien à la programmation web. Premièrement, à quel point cela est-il facile ou difficile et quelle est la meilleure façon de s'y prendre? En supposant que je cherche à embaucher quelqu'un pour faire de moi un site Web sécurisé, à long terme et extensible, pour un service logiciel en ligne, quel ensemble de compétences devrais-je rechercher?Comment un port C++ fonctionne-t-il sur Internet?

Edit:

Je veux faire ma question un peu plus précis:

  1. Comment puis-je prendre un tas de travail C++ fonctions et le port le code je peux donc l'exécuter côté serveur sur un site internet?
  2. Une fois cela fait, serait-il facile d'apporter des modifications au code C++ et de mettre l'algorithme à jour automatiquement sur le site?
  3. Quelles technologies seraient impliquées? Y a-t-il des plates-formes de cloud computing qui seraient bonnes pour quelque chose comme ça?
  4. @ Niklaos-qu'est-ce que cela signifie de construire une bibliothèque et comment fait-on cela?
+0

double possible de http://stackoverflow.com/questions/112351/recommendations-for-starting-web-programming –

+0

Demandez-vous comment « port » de votre application à une webapp, ou comment le rendre disponible en ligne personnes à télécharger/exécuter? – nos

+0

Je préférerais porter. – Amichai

Répondre

1
  1. Portez les fonctions vers Java, facilement à partir de C++, vous pouvez même trouver des outils pour vous aider - ne les faites pas confiance implicitement mais ils pourraient donner un coup de pouce.
  2. Voir la réponse plus longue ci-dessous. Enveloppez-les dans une application Web et déployez-les sur le Google App-Engine.
  3. La version Java d'une bibliothèque serait un fichier jar.

Si vous voulez vraiment être en mesure de mettre à jour l'implémentation de l'algorithme dynamique, vous pouvez les mettre en œuvre Groovy, et télécharger les modifications par un formulaire sur votre webapp, que ce soit sous forme de fichiers ou comme un grand bloc de texte, besoin envisager le contrôle de version.

5

Vous voudrez peut-être jeter un coup d'œil à Wt [1]. C'est un framework web C++ qui est programmé plus ou moins comme une application graphique de bureau. L'un des cas d'utilisation cités consiste à intégrer des applications héritées sur le Web.

[1] http://www.webtoolkit.eu

1

L'effort/impliqué pour effectuer Skillset la tâche dépend de la façon dont votre écrit votre code. Si elle se trouve dans une bibliothèque autonome et qu'elle possède une API propre (réentrante, sans thread), vous pouvez probablement engager un développeur Web (html/php/asp etc) pour écrire l'interface de l'interface utilisateur dans la bibliothèque. petit coût. Les compétences requises dépendraient des technologies que vous vouliez utiliser. Pour le développement de Windows, je suggère C#/ASP. Le candidat aurait besoin de connaître l'interface avec les bibliothèques natives à partir d'une langue gérée. Cela suppose que vous ne vous occupez pas des coûts de déploiement de Windows pour votre application. D'autre part, si la bibliothèque est complexe ou doit être réécrite pour prendre en charge l'extensibilité que vous recherchez, demander ici ne vous apportera pas grand-chose.

BTW: voici un grand article sur Marshalling si vous avez choisi de mettre en œuvre en utilisant C#/ASP http://msdn.microsoft.com/en-us/magazine/cc164193.aspx

1

D'abord, NE PAS UTILISER PHP: D

Je l'ai utilisé pour certains projets (le dernier avec un cadre symphonique) et je tire presque sur moi-même!

Si vous êtes très familier avec C++, ASP .NET pourrait être une bonne solution, car si vous aimez le C++, vous allez adorer C#.

De toute façon, j'utilise personnellement Ruby on Rails depuis 6 mois maintenant et je l'adore. Je ne t'écrirai pas un livre ici mais le cadre est en or pur! Le seul problème est que Ruby est une langue très spéciale. Vous serez probablement un peu perdu au début. Mais comme tout le monde, vous apprendrez à l'aimer.

Mais c'était seulement pour le côté serveur.En effet, il y a 3 technologies que vous ne pourrez pas éviter si vous voulez commencer à développer des applications web. HTML, CSS et JavaScript sont présents partout. C'est pourquoi je pense que vous devriez commencer par HTML et CSS puis JavaScript (avec jQuery). Lorsque vous avez quelques bases avec ces 3 technologies, vous devriez être capable de choisir la langue côté serveur.

Mais vous devez vous dire une chose, ça ne va pas être facile! PS: Ruby on Rails utilise HAML et SASS. Ces deux langues remplacent HTML et CSS, vous devriez les voir rapidement car elles sont géniales.