Programmer une application windows avec base de données...

Programmer une application windows avec base de données... - Divers - Programmation

Marsh Posté le 02-11-2004 à 17:51:37    

Bonjour,
 
Je dois programmer une application windows qui sera principalement constituée d'une interface graphique permettant la saisie des données, et d'une base de données qui les stockera.
 
Sachant que l'applicatif ne doit pas dépendre d'une tierce partie pour fonctionner, quel langage dois je utiliser??
 
Access + VB??
Visual C++?
Delphi??
 
Peut on travailler avec une base de données SQL dans une application sans devoir installer de serveur tierce ou alors en le comprenant dans l'installation?
Avec quel langage peut on faire des applications sous forme de packages??
 
Merci pour votre aide...

Reply

Marsh Posté le 02-11-2004 à 17:51:37   

Reply

Marsh Posté le 02-11-2004 à 17:58:11    

Tu peux faire avec n'importe quel langage avec Access comme SGBD : Si MDAC est installé (gratuit, et installé de base avec IE 4.01 et +) tu peux utiliser une base access sans pocéder le produit. Le lien vers la base est très simple et ne nécessite pas de paramètre en dehors du programme.
 
Ensuite, le langage, tu utilises celui que tu veux, je te conseille celui que tu maîtrise le mieu ;)
 
PS: Access, c'est pas obligé hein ;) Y'a plein d'autres SGBD portables (notamment des versions lite de MySQL qui ne tournent pas en tant que serveur) ou simplement un fichier XML. Tout dépends ensuite du niveau de complexité des requêtes utilisées et le volume des données. Il y a aussi MSDE qui est gratuit, mais c'est assez chaud d'automatiser son installation dans un package (ceci-dit, c'est tout à fait possible. Avec MSDE t'es sûr de n'avoir aucun souci en terme de perfs et fonctionnalités)

Reply

Marsh Posté le 02-11-2004 à 17:58:44    

Sinon, juste comme ça... Chaque poste à sa propre base de données ??? T'es sûr que t'as pas besoin d'un serveur pour regrouper les données de tous les postes ?


Message édité par Arjuna le 02-11-2004 à 17:58:50
Reply

Marsh Posté le 02-11-2004 à 18:22:08    

super efficace Arjuna...merci bcp.
mais je pensais que c'etait impossible d'utiliser une base sql sans serveur...? donc ca veut dire que je peux inclure une base SQL dans mon package??

Reply

Marsh Posté le 02-11-2004 à 18:28:42    

sinon en ce qui concerne le langage...j'aimerais bien aussi quelques conseils...parce que dans tous ceux que j'ai cité je n'en maitrise pas vraiment...
Je connais surtout les langages orientés web comme PHP...
Lequel serait le moins opaque a apprendre, et le plus efficace  et rapide pour le developpememnt???
 
merci

Reply

Marsh Posté le 02-11-2004 à 19:22:50    

up....qqun un ptit coup de main peut etre???

Reply

Marsh Posté le 02-11-2004 à 19:53:22    

up

Reply

Marsh Posté le 02-11-2004 à 19:53:26    

up

Reply

Marsh Posté le 02-11-2004 à 19:53:33    

up

Reply

Marsh Posté le 02-11-2004 à 20:10:02    

Si tu connais rien, moi je peux te conseiller VB puisque c'est le language avec lequel je bosse principalement.
C'est loin d'être le meilleur, mais au moins, quand tu connais le VB, tu connais aussi l'ASP et le VBS, qui te permettent de faire des sites autrement qu'en PHP, faire des macros pour Office ou simplement des scripts directement éxécutables sous Windows afin de gérer des trucs récurents, tels que des montages de répertoire au démarrage, le flush des fichiers temporaires, la génération automatique de documents etc.
Sinon, dans le même style que VB, mais en un peu mieu et en Pascal, il y a Delphi. Le seul problème de Delphi, c'est que c'est du Pascal, et à cause de ça tu auras au mal à te resservir de tes connaissances de Pascal pour faire autrechose.
Sinon, le C/C++, sans un très gros bouquin et énormément de patience, t'arriveras à rien. C'est pourtant certainement le meilleur langague que tu pourras trouver pour la plupart des tâches.
Reste le C# et le Java parmis les acteurs principaux. Ils sont aussi chiants à apprendre que le C ou C++ (un peu moins quand même) et on l'avantage d'être multi-plateforme (aujourd'hui, seulement Java l'est réellement) et pourront te servir aussi pour faire des sites web par exemple.
 
Tiens, un petit exemple de ce que tu peux faire avec du VBS :
 


dim excel
Set excel = CreateObject("Excel.Application" )
excel.visible = false
excel.Workbooks.Open("c:\documents and settings\sylvain devidal\mes documents\test.xls" )
excel.Workbooks("test.xls" ).worksheets(1).cells(1,1).value = "Arjuna est une véritable déesse, normale, elle a été enfantée par MagicBuzz le grand Shaman"
excel.Workbooks("test.xls" ).SaveAs("c:\documents and settings\sylvain devidal\mes documents\archives\" & replace(replace(now, "/", "-" ), ":", "" ) & ".xls" )
excel.Workbooks.Close()
excel.Quit()
Set excel = Nothing


 
Fait un copier/coller de ça dans un fichier texte sur ton bureau. Renomme en arjuna.vbs et double-clique dessus : admire le résultat ;)
Ca nécessite Excel pour fonctionner.


Message édité par Arjuna le 02-11-2004 à 20:14:07
Reply

Marsh Posté le 02-11-2004 à 20:10:02   

Reply

Marsh Posté le 02-11-2004 à 20:15:14    

Faut juste que tu changes mon nom "sylvain devidal" par ton nom sous Windows, et que tu crées un fichier Excel nommé "text.xls" que tu mets dans "Mes documents".
Dans "mes documents" tu crées aussi un répertoire nommé "archives"


Message édité par Arjuna le 02-11-2004 à 20:15:56
Reply

Marsh Posté le 02-11-2004 à 20:19:49    

Sinon, pour ce qui est de la base de données...
 
Une base Access peut fonctionner en stand alone à partir du moment où tu as MDAC installé et que tu utilises les fonction Microsoft Jet (ou OLE DB) pour y accéder depuis ton programme (supporté par la plupart des langages, peut-être pas le C, je sais pas)
 
Sinon, MSDE est en effet un véritable serveur de bases de données. Il a l'avantage d'être très puissant (c'est Microsoft SQL Server 2000) et gratuit. Il n'est que limité au niveau administration et nombre de connections, ce qui ne te concerne pas. Il s'install "tout seul", et rends donc l'automatisation de son installation très aisée (notamment avec un fichier de paramètres qui va répondre comme un grand aux questions de façon silencieuse). Il tourne depuis sur n'importe quel Windows à partir de 98.
 
Sorti de ça, tu as d'autres outils du même style que MSDE, généralement basés sur des noyaux MySQL. "SQL Lite" si mes souvenirs sont bon en est un bon exemple.

Reply

Marsh Posté le 02-11-2004 à 20:32:12    

Merci Arjuna pour ces réponses très précises...
Je pense comme tu le dis utiliser le Visual Basic pour effectuer mon projet.
 
Par contre pour la base de données je ne sais toujours pas???
est ce que VB me limitera dans mon choix???
 
sinon sachant que je devrais créer un module d'importation de données Excel vers ma base de données, cela oriente t il le choix de la base de données??
 
merci

Reply

Marsh Posté le 02-11-2004 à 20:49:15    

Non, l'un comme l'autre se base généralement sur MS ADO pour se connecter aux bases de données, via un lien OLE DB, MS Jet ou ODBC. Tout ça est fourni dans MDAC, et quasiment tous les SGBD (même ceux qui ne tournent pas sous Windows ont un drivers au moins ODBC - c'est d'ailleurs une techno souvent utilisée pour faire communiquer un serveur AS400 sous DB2 avec une base Oracle sous Unix, car à l'avantage d'être très souple : on change la version ou le SGBD de l'autre côté de façon complètement transparente)
 
Pour faire un accès à une base de données depuis Excel, il faut passer par une macro en VBA (fiston du VB) donc Vbme semble en effet très judicieux comme choix, car tu n'auras qu'à seul langage à apprendre.
 
Ceci-dit, je le répète avant de me faire taper sur les doigts : VB n'est pas un langage génial, la plupart des autres sont mieu (syntaxiquement, grammatiquement, etc.) Mais dans ton cas, je suis convaincu que tu gagneras énormément de temps à l'utiliser.


Message édité par Arjuna le 02-11-2004 à 20:52:36
Reply

Marsh Posté le 02-11-2004 à 21:19:24    

Bon et bein encore une fois merci bcp...tu me remets du baume au coeur ....je ne savais vraiment pas comment commencer cet applicatif.
Je vais donc des demain m'empresser d'acheter des livres de VB.
 
Par contre je ne saisie pas toutes les différences des termes que tu utilises (VBA, VBme, VB...) sachant qu il y a aussi le VB .net je crois...
 
quels bouquins dois je acheter??

Reply

Marsh Posté le 02-11-2004 à 21:27:59    

Je sais pas si un bouquin est vraiment incontournable. Il y a énormément de tutoriaux partout, et surtout l'aide intégrée est exceptionnellement riche.
 
Sinon, en gros :
-> VB : C'est le langage "original". C'est le plus "poussé" des VBx, et il se compile (plus rapide)
-> VBA : Visual Basic for Application. C'est un VB légèrement allégé qu'on utilise pour faire des macros dans les outils Office principalement (quelques autres softs le supportent aussi). Comme VB, il est typé, mais par contre il n'est pas compilable.
-> VBS : Visual Basic Scripting. C'est une version très "lite" de VB, qui n'est pas typé. Il a l'avantage d'être éxécutable tel quel sans quoique ce soit sur la machine. Il ne nécessite que Windows Scripting Host (WSH, qui est intégré avec Internet Explorer depuis la 4.0). C'est ce langage qui est utilisé pour faire des pages ASP notamment. On peut aussi coder en JScript (grossomodo, c'est JavaScript) qui est aussi interprété par le WSH.
 
Y'a pas d'autre "VB" à ma connaissance.
 
Le cas de VB.NET est un cas à part. En réalité, c'est le moteur .NET qui est derrière (celui du C#). Il s'agit en fait, à peu de choses près, du C#, mais avec un syntaxe "à la VB". Mais d'un point de vue fonctionnement, ça n'a rien à voir avec le VB. Ca, tu pourras jeter un coup d'oeil plus tard, quand tu maîtriseras bien VB et que tu voudras passer à quelquechose de plus poussé.

Reply

Marsh Posté le 02-11-2004 à 22:12:26    

Arjuna a écrit :


Sinon, dans le même style que VB, mais en un peu mieu et en Pascal, il y a Delphi. Le seul problème de Delphi, c'est que c'est du Pascal, et à cause de ça tu auras au mal à te resservir de tes connaissances de Pascal pour faire autrechose.


 
Une fois que t'y as goûté tu n'as de toute façon plus envie de faire autre chose, tu restes sur Delphi :D


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 02-11-2004 à 23:00:05    

antp a écrit :

Une fois que t'y as goûté tu n'as de toute façon plus envie de faire autre chose, tu restes sur Delphi :D


Vi m'enfin faire des sites en Pascal c'est pas terrible :D

Reply

Marsh Posté le 02-11-2004 à 23:24:40    

On peut faire des webservices et du CGI [:ddr555]
(puis tout le monde n'a pas besoin de faire des sites web [:kiki])


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 03-11-2004 à 01:04:50    

antp a écrit :

On peut faire des webservices et du CGI [:ddr555]
(puis tout le monde n'a pas besoin de faire des sites web [:kiki])


Vi, nan mais moi je parle de la "réutilisabilité de la connaissance du langage" ;)
 
Disons que sur ce point, VB est quasi en top1 : on peut, via ses différentes implémentations, couvrir un champ immense de domaines.
Donc pour un non-informaticien, si on doit connaître un langage, je pense que VB est vraiment recommandé (ne serait-ce que pour être capable d'écrire une macro Excel ;))

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed