Application serveur/client en C, prog réseau?

Fermé
papillon_bleu - 17 févr. 2008 à 12:42
Mahmah Messages postés 496 Date d'inscription lundi 17 septembre 2007 Statut Membre Dernière intervention 22 juin 2010 - 17 févr. 2008 à 14:09
Bonjour,

Je fais en ce moment de la programmation réseau. J'ai un projet de fin d'études qui consiste à réaliser un logiciel de "Ventes aux enchères" composé d'un programme serveur et d'un programme client. C'est une application serveur/client en langage C.

Le serveur de "Vente aux enchères" tourne a l’écoute de connexions clients et gère la liste des objets proposés pour les enchères ainsi que le bon déroulement des enchères.

Lorsqu'un client se connecte au serveur, il doit s'identifier (pseudo), puis il a la possibilité d’effectuer les actions suivantes à tout instant :
– Lister la liste des objets à vendre aux enchères
– Renchérir sur une enchère en proposant un prix pour un objet
– Proposer un objet pour une enchère avec une mise à prix initiale
– Lister l'historique des objets qui ont déjà été vendus et à qui ils ont été attribués et à quel prix

Mais le soucis c'est que je suis un peu perdue, et je sais vraiment pas par où commencer! donc si vous pouvez m'aider, ce serait cool.
merci
A voir également:

2 réponses

Mahmah Messages postés 496 Date d'inscription lundi 17 septembre 2007 Statut Membre Dernière intervention 22 juin 2010 125
17 févr. 2008 à 14:09
Bonjour,

Un peu a chacun sa façon de prendre un programme... Personnellement je mettrais de côté la partie réseau pour m'attaquer au coeur du programme. Je ferais en premier la partie dédiée au serveur.

Ce que je viserais c'est une librairie, qui permet de gérer tout avec des protections contre le multi-thread. Après qu'il y ait un serveur qui la commande cela ne change plus rien.

Je ferais aussi un grand découpage !

- La partie métier pure, (définition d'un Enchérisseur, d'un Objet, d'une Enchère etc...) Et surtout définir une interface commune pour le client et le serveur.
- La partie serveur qui ouvre des connections pour des clients et interroge la partie métier pour renvoyer une réponse. (Un Socket d'où un thread par client)
- La partie client qui interroge le serveur.

Plus en détails je ferais
- la gestions complète du système d'enchère en définissant une interface. (1 projet librairie)
- Un serveur qui écoute, découpe les messages et utilise cette interface. (1 projet exécutable)
- Une couche client qui ré-implémente l'interface de la librairie pour rediriger les appels aux fonctions vers le réseau. (1 projet librairie)
- Un client qui utilise cette librairie. (1 projet exécutable)

L'avant dernier point impose une contrainte supplémentaire plutôt que de refaire une interface spécifique pour le client, on se force à prendre éxactement la même, mais cela permet de tester facilement le client sans la couche réseau, on branche directement sur la librairie supposée distante, juste en changeant ce petit morceau.

M.
1
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 844
17 févr. 2008 à 13:56
Salut,

Alors tout d'abord, tu pourrais commencer par juste créer l'application Client/Serveur : http://www.iprelax.fr/outils/c_prog1.php
Ensuite, une fois que cet aspect est maîtrisé. Tu peux passer à l'aspect "Ventes aux enchères", comme la demande du pseudo, etc.

En espérant t'avoir aidée.

Cordialement
0