Bonjour à tous
Je dois réaliser une application dans le domaine social. Seulement j'hésite entre une appli swing et une appli web. Quels sont les caractéristiques que je dois prendre en compte pour faire mon choix?
Thanks.
Pruderic
Bonjour à tous
Je dois réaliser une application dans le domaine social. Seulement j'hésite entre une appli swing et une appli web. Quels sont les caractéristiques que je dois prendre en compte pour faire mon choix?
Thanks.
Pruderic
Entre autre :
1. tes connaissances,
2. le mode de déploiement sur les postes clients,
3. la maintenabilité (comment mettre à jour si c'est du swing),
4. le temps disponible,
5. les difficultés techniques (périphérique exotique sur les postes client ?)
N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
Que la force de la puissance soit avec le courage de ta sagesse.
1. Mes connaissances
Je débute en Java. Je pense me faire aider par le livre de Goncalves
2. le mode de déploiement sur les postes clients,
Je ne maitrise pas tres bien le deploiement.
Et si je t'ai compris, l'organisme a les moyens de de s'offrir un hébergement (si appli web) sinon je pense qu'il faudra miser sur un serveur qui peut prendre une charge de 20 à 100 postes clients.
3. la maintenabilité (comment mettre à jour si c'est du swing),
J'avoue que je n'ai pas pensé à ça mais il pourrait avoir des versions
4. le temps : j'ai pas de deadline. mais je me donne fin septembre si je commence en Juillet
je saisis pas le sens de périphérique exotique.5. les difficultés techniques (périphérique exotique sur les postes client ?)
si vous avez d'autres propositions pour les livres n'hesitez pas.
Je ne pensais pas à ça. De toute façon, il va te falloir un serveur, quelque soit le choix pour la partie cliente. Pour moi, le mode de déploiement, c'est plutôt côté client, anticiper les questions genres : comment le client va faire pour installer une appli Swing ? Si c'est un maxi débutant, il faut faire un déploiement simple pour une version Swing.
Ca rejoint le mode de déploiement. Il faut avoir une idée dès le départ si l'utilisateur est ultra débutant.3. la maintenabilité (comment mettre à jour si c'est du swing),
J'avoue que je n'ai pas pensé à ça mais il pourrait avoir des versions
Je pense aux périphériques connectés au PC. Il est toujours plus difficile d'utiliser un périphérique via une appli Web.4. le temps : j'ai pas de deadline. mais je me donne fin septembre si je commence en Juillet
je saisis pas le sens de périphérique exotique.
Je pense également à la complexité des traitements. Si c'est du Swing, la capacité de calcul du poste client sera utilisable, et allègera d'autant le serveur. Et s'il faut que les clients communiquent entre eux, ils utiliseront moins la bande passante client-serveur car ils ne passeront pas par le serveur.
N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
Que la force de la puissance soit avec le courage de ta sagesse.
Il y a quelques années de ça, la richesse de l'interface était en faveur des API du genre de Swing, mais c'est moins vrai aujourd'hui avec des frameworks web comme ExtJs et autres...
Justement je me dis qu'on pouvait installer le jar sur le poste client ( chaque employé a un poste client leger). Mais je me demande si c'est pas risqué. En plus on a toutes les classes qui sont à la porté de l'utilisateur. Pareille pour l'appli web à mon avis. Comment protéger mes sources ? T'as pas une idée dinoboganJe ne pensais pas à ça. De toute façon, il va te falloir un serveur, quelque soit le choix pour la partie cliente. Pour moi, le mode de déploiement, c'est plutôt côté client, anticiper les questions genres : comment le client va faire pour installer une appli Swing ? Si c'est un maxi débutant, il faut faire un déploiement simple pour une version Swing.![]()
Mon appli doit causer avec une base de donnée. Un exemple de communication entre clients ( je comprend pas en fait), peut-etre que j'en aurai besoin.Je pense également à la complexité des traitements. Si c'est du Swing, la capacité de calcul du poste client sera utilisable, et allègera d'autant le serveur. Et s'il faut que les clients communiquent entre eux, ils utiliseront moins la bande passante client-serveur car ils ne passeront pas par le serveur.
Pour la protection des sources, une première chose est d'utiliser l'obfuscation. C'est un outil qui lit les sources et rend la lisibilité très difficile. Il peut aussi lire le code précompilé et ajouter du code mort pour rendre très difficile l'usage d'outil de décompilation.
Tu peux ensuite faire des trucs plus ou moins compliqué. Par exemple, crypter le bytecode et faire ton propre ClassLoader pour le décryptage. Reste à protéger le code du ClassLoader.
C'est un tout petit aperçu de ce qu'il est possible de faire.
Mais avant de te lancer dans cette aventure, es-tu vraiment sûr de vouloir protéger ton code source ? Car ça peut prendre beaucoup de temps en recherche et développement en fonction du degré de sécurité souhaité. Enfin, il faut bien avoir à l'esprit qu'une protection ne sera jamais sûr à 100%.
Je ne sais pas du tout ce que tu cherches à faire, c'est pour cela que j'évoquais une communication inter-client. Un exemple simpliste tout bête : une messagerie instantanée ou un partage de documents entre les clients.Mon appli doit causer avec une base de donnée. Un exemple de communication entre clients ( je comprend pas en fait), peut-etre que j'en aurai besoin.
N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
Que la force de la puissance soit avec le courage de ta sagesse.
Partager