2008-12-20 9 views

Répondre

9

Vous devez écrire toutes vos applications avec la logique dans un calque distinct afin de pouvoir facilement écrire une interface Web ou une interface WinForms en fonction de l'évolution des décisions de l'entreprise.

Sur une note plus sérieuse. Vous devez créer une application Web lorsque vous avez besoin d'un grand nombre d'utilisateurs pour accéder et modifier de nombreuses données partagées. Vous devez créer des applications de bureau lorsqu'il y a très peu de données partagées ou lorsque le partage des données est assez simple pour que l'envoi de fichiers par e-mail soit suffisant. Les applications Web sont généralement beaucoup plus difficiles à obtenir, donc vous ne devriez faire que du travail supplémentaire si nécessaire. C'est beaucoup plus de travail pour la bonne programmation, et c'est beaucoup plus de travail pour maintenir le serveur d'application et la base de données. Cependant, les applications Web peuvent être mises à jour instantanément, vous pouvez donc commencer avec quelque chose de petit, et tout le monde qui utilise l'application peut obtenir de nouvelles fonctionnalités et corrections à mesure qu'elles sont terminées. Vous devez donc décider lequel est le plus important. Il y a quelques compromis, peu importe ce que vous choisissez.

+1

Alors que votre deuxième paragraphe est très bon, votre premier paragraphe est où la sagesse réside. Prenez garde! J'aimerais pouvoir voter 100 fois! –

+0

La première moitié de votre second paragraphe sape en quelque sorte le premier paragraphe. En outre, les applications Windows peuvent être très modifiables. – BobbyShaftoe

+0

Les applications Web ne doivent pas non plus être exécutées sur vos serveurs.En fait, les clients peuvent les installer sur leurs propres ordinateurs si le fournisseur distribue la source ou les binaires (par exemple, fogbugz, sugarcrm, etc.) –

0

Avez-vous envisagé la possibilité de créer un Smart Client

2

Il est comme tout - il y a un temps et un lieu. Vous choisissez l'architecture en fonction des exigences du projet. Il n'y a pas de bonne solution à tous les scénarios.

J'ai tendance à écrire une application web si j'ai besoin de beaucoup d'utilisateurs avec des machines de faible puissance pour accéder à un magasin de données haute performance. Si j'écris des applications utilitaires pour interagir avec des fichiers et autres, alors j'écrirais une application WinForms. Donc, cela dépend vraiment ...

De plus, si vous écrivez une application hautement interactive qui nécessite beaucoup de retour immédiat à l'utilisateur, il est généralement plus facile/plus rapide de coder une application WinForms et il est plus simple à maintenir. Cependant, le compromis est qu'il est plus difficile de passer à une grande entreprise où de nombreuses machines nécessitent l'accès à ce logiciel ... alors vous devez commencer à réfléchir à la façon dont vous pourriez réaliser cette fonctionnalité dans une application Web.

Il n'y a pas de «bonne» façon de le faire et pas de «mauvais» moyen - il s'agit d'examiner les exigences du projet et d'évaluer la technologie disponible et prendre la meilleure décision à ce moment.

-1

Regardez WPF/Silverlight. Cela résout le problème. Et si vous devez accéder à quelque chose sur un PC client, bien sûr, des règles autonomes sur le client léger (au moins pour l'instant)

0

J'avais travaillé dans des projets où les deux types d'applications sont nécessaires, tout cela doit faire avec vos besoins si vous ne voulez pas vous inquiéter de l'installation et/ou de la configuration du client, une application web est ce que vous cherchez, mais si l'application nécessite une grande réactivité et beaucoup de calculs, pensez à une application WinForm, Comme mentionné précédemment, la superposition de votre application vous aidera à réutiliser votre code. Est-ce que cela va être une application commerciale, vous devriez penser sur les restrictions de licence

+0

En supposant que vous avez une plate-forme homogène (tout le monde est sur Linux, ou tout le monde est sur Mac, ou tout le monde est sur Windows) alors l'avènement des produits de déploiement, comme Sparkle et ClickOnce, a effectivement éliminé à propos de l'installation "argument. –

Questions connexes