Auteur |
Message |
gotcha
Newbiiiie
Sexe:
Messages: 3
|
Posté le:
Jeu 24 Nov 2005 - 16:36 |
|
Salut
une fois on commence a programer sous des envirennement de dev avec des interfaces graphiques ca s'avèere difficile d'avoir des idées de programes procedurale qui servent a kelkechose,
kelk'un a une idées ou (des si c possible ) sur des programmes sous le C ??! |
|
|
|
|
N'oubliez pas de vous inscrire à la communauté pour participer. Si vous êtes déjà membre, connectez-vous pour faire disparaître ce bandeau publicitaire. |
arkos
Résident du forum
Sexe:
Messages: 329
Localisation: Caen
|
Posté le:
Jeu 24 Nov 2005 - 16:45 |
|
Salut
Du peu que je connaisse, le C n'interdit pas l'utilisation d'interface graphique .
Sous linux il y a kdevellope/QT et Anjuta/GTk, qui permettent de faire ce type de travail .
a+ |
|
|
|
|
Machjaghjolu
Expert du forum
Sexe:
Messages: 627
Localisation: Aiacciu
|
Posté le:
Jeu 24 Nov 2005 - 16:50 |
|
arkos a écrit: |
Salut
Du peu que je connaisse, le C n'interdit pas l'utilisation d'interface graphique .
Sous linux il y a kdevellope/QT et Anjuta/GTk, qui permettent de faire ce type de travail .
a+ |
Je ne pense pas qu'il disait que c'était difficile de faire avec un environnement graphique mais plutôt que c'était difficile de trouver des idées. |
_________________ Un populu ùn hè vintu finch'ellu lotterà |
|
|
|
telynor
Résident du forum
Sexe:
Messages: 345
Localisation: IDF
|
Posté le:
Jeu 24 Nov 2005 - 18:36 |
|
Moi j'avais zapper la compétance procédurale.
Dans le referentiel il ya marquer "une couverture large des competences", et les examinateurs ne n'en ont pas tennu rigueur |
|
|
|
|
frix
Modérateur
Sexe:
Messages: 1189
Localisation: paris
|
Posté le:
Jeu 24 Nov 2005 - 18:41 |
|
Si tu veux couvrir un maximum de chose je te conseille de faire un petit jeu en mode Client-Serveur ( style puissance 4) avec une jolie petite IA
Et d'une tu couvre un maximum de chose ( réseau, IA,...) et de deux lorsque tu feras de l'objet tu te rendra compte que le C peut être très utile pour optimiser les programmes dévellopper en C#,java ou autres. |
_________________ Pourqoi remettre à demain ce que l'on peut remettre au sur-lendemain???
Dernière édition par frix le Jeu 24 Nov 2005 - 20:18; édité 1 fois |
|
|
|
Yipyip
Modérateur
Sexe:
Messages: 1163
Localisation: Ici, là, pas loin ...
|
Posté le:
Jeu 24 Nov 2005 - 19:47 |
|
telynor a écrit: |
Moi j'avais zapper la compétance procédurale.
Dans le referentiel il ya marquer "une couverture large des competences", et les examinateurs ne n'en ont pas tennu rigueur |
Si tu dis que les langages à objets incluent du procédural (à l'interieur de chacun des objets), tous va bien |
_________________
|
|
|
|
ikeaboy
Résident du forum
Sexe:
Messages: 367
Localisation: Longwy-Luxembourg
|
Posté le:
Jeu 24 Nov 2005 - 23:03 |
|
frix a écrit: |
Et d'une tu couvre un maximum de chose ( réseau, IA,...) et de deux lorsque tu feras de l'objet tu te rendra compte que le C peut être très utile pour optimiser les programmes dévellopper en C#,java ou autres. |
Comment le C peut il optimiser la prog objet ? je vois pas la tu peux nous expliquer stp.
Merci d'avance |
|
|
|
|
findwin
Forumeur occasionnel
Messages: 29
|
Posté le:
Ven 25 Nov 2005 - 12:49 |
|
en fait initialement la programmation objet est par essence faite pour travailler avec des instances de classes (original non!!!). Chaque fois qu'un objet est instancé, il y a une allocation de mémoire pour chacun des attributs de l'objet et pour le z-index, qui correspond à un tableau de pointeur de fonction représentant en fait les méthodes de la classe.
Travaillant donc sur des structures de données (les instances de classe) beaucoup plus volumineuse chaque opération impliquant une copie de ses instances ou une allocation, enfin bref tout travail sur la mémoire est plus gourmand en terme de temp d'écriture.
Ensuite, le C++ fournit un système de gestion d'erreur, les exceptions qui impose forcement un traitement de vérification à un moment donné.
Le C++ est donc théoriquement plus lent et plus volumineux que le C.
Ensuite, le java et le C# sont des langages objets pseudo compilés, donc ce n'est pas le hardware qui effectue le bytecode mais une couche d'abstraction logiciel qui est elle même executée par la machine. Les temps de calcul pour une opération simple par la machine virtuelle impose donc plusieurs opération par le procésseur. On a donc une vitesse moindre par rapport au a un langage compilé, donc a fortiori par rapport au C.
Pour revenir au C++, l'optimisation des processeurs tend à rendre de plus en plus insignifants les écarts de performance avec le C. |
|
|
|
|
frix
Modérateur
Sexe:
Messages: 1189
Localisation: paris
|
Posté le:
Ven 25 Nov 2005 - 15:01 |
|
Voilà rien à rajouter
Pour être un peu plus concret, pour la boite ou je bosse, j'ai dévelloppé un système client/serveur en C#. Les classes réseau était tellement bien foutu que lors de monté en charge, soit la CPU pété un cable soit le réseau planté :s Résultat j'ai dévelloppé une petite dll en C pour gérer mes connections réseau et depuis aucun soucis
En java on retrouve pas mal de problème avec le garbage collector. En général les langages objet gère très mal les allocations mémoires ( cf windows )
Maintenant faut pas jeter la pière non plus, j'adore les langages objet pour leur simplicité à créer des IHM, etc... mais ils faut bien se rendre compte que leur efficacité en ai diminué.
Tiens pendant que j'y pense, findwin, sais tu si les langages objet sont capables de gérer le MPI ( programmation multi-processeur) je me suis jamais penché dessus |
_________________ Pourqoi remettre à demain ce que l'on peut remettre au sur-lendemain??? |
|
|
|
findwin
Forumeur occasionnel
Messages: 29
|
Posté le:
Ven 25 Nov 2005 - 19:57 |
|
Pour windows, je sais que l'api win32 gere en natif le multi processeur (à partir de NT 4 il me semble). En fait, c'est dans la partie de gestion de la priorité des threads et processus. En fait il faut choisir les processeur prioritaire pour l'execution du thread ou du processus (SetThreadIdealProcessor). Comme c'est une primitive systeme, théoriquement c'est accessible par tous les langages qui ont accès à cette foction (C, C++, C#...)
Pour ce quiest des systèmes unix, je pense que la aussi il faaut chercher du coté des primitives système, ou du coté des bibliothèque de programmation concurente genre t_thread, mais je ne suis pas un expert linux. de toute façon ce qui peut ête fait en C peut l'être en C++ dans la grande majorité des cas. Et tout ce qui fait partie des couches basses est géré par le système d'exploitation, et est donc indépendant du language.
voili voilou |
|
|
|
|
jun
Accro à Web-IG
Sexe:
Messages: 111
Localisation: lyon
|
Posté le:
Ven 24 Fév 2006 - 10:29 |
|
Je suis en reseau et j ai developpé en TP un client serveur avec generation d'un nombre aleatoire que le client doit trouver en se connectant sur le serveur, et le serveur genere automatiquement un autre nombre si le client trouve le bon.
J ai trouvé ça interressant, c est un programme en C interressant et assez complexe (enfin pour moi car je suis pas un developpeur chevronné) |
|
|
|
|
|