begin process at 2012 05 30 00:49:24
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Divers

 > 

Débutant(e)

 > 

optimisation et conseil


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

optimisation et conseil

samedi 5 décembre 2009 à 15:14:28 | optimisation et conseil

s2pawn

Bonjour
J'aurais souhaiter, avoir des conseils pour améliorer mon code
je développe un jeu d'échec variante alice pour apprendre le c++
voici mon source avec un petit manuel d'utilisation
je souhaiterai aussi savoir comment fermer l'application
merci d'avance

source
samedi 5 décembre 2009 à 15:38:24 | Re : optimisation et conseil

lural

Membre Club
onjour,

choix 1 :
pas miS en place
idem pour le choix 4 et 5

Pour quitter :
case 6:
cout << "BYE"<<endl;
return 0;
break;// unreachable

On ne sait pas comment différencier les joueurs blancs des noirs au début.
Pat/Echec/Echec et mat/Roque non implémenter.
Lors d'une attaque, l'échiquier est réafficher deux fois.
Lors d'une partie, si je fais nouvelle partie, le plateau n'est pas vidé.
Pour améliorer grandement l'affichage, fait un system("clean"); et un affichage de l'échiquier avant d'afficher ton menu.
Tu peux enlever les parties de ton menu qui ne sont pas implémenter.

Si tu veux plus de conseil, n'hésites pas ;)
Et bon courage pour terminer ça ce WE :P

Bye
samedi 5 décembre 2009 à 16:48:43 | Re : optimisation et conseil

lural

Membre Club
Ah et un autre conseil, évites de diffuser les sources d'un projet quand il s'agit d'un devoir noté...
On sait jamais, je pourrais en tirer quelques bonnes idées :P
dimanche 6 décembre 2009 à 13:25:37 | Re : optimisation et conseil

CptPingu

Administrateur CodeS-SourceS
C'est très bien d'avoir la démarche de demander un avis critique. Le projet documenté en doxygen, ça fait plaisir :).

Après les points positifs, les points négatifs:

Je n'ai pas regardé en détails, mais il y a beaucoup d'inélégance.
En voici une liste non exhaustive:
* using namespace std; => Beurk, à bannir. La raison t'a déjà été évoquée dans d'autre post.
* Plus d'une classe par fichier => Pas top. Une classe = un fichier
*
Code C/C++ :
if (compteur>= 1)
{
   return false;
}
 else
{
  return true;
}


Aisément remplacable par:

Code C/C++ :
return compteur < 1;


* D'une manière générale:
Code C/C++ :
if (...)
{
  return false;
}
else
{
  // Code
}

Le return étant débranchant, peut être remplacé par:
Code C/C++ :
if (...)
{
  return false;
}
// Code


*
Dangereux:
Code C/C++ :
delete q,f,c,t;

Tu ne supprimes pas tout, mais juste le dernier !!!
En effet, la virgule en C/C++ veut dire: tout évaluer mais ne retourner que le dernier. Ex: int a = 1,2,3,4; // A vaut 4

A remplacer par:
Code C/C++ :
delete q;
delete f
delete c;
delete t;


* m_white == true => m_white
* m_white == false => !m_white

* Utilise le mot clé const, lorsque quelque chose n'a pas beson d'être modifié.
* #include <stdio.h> => Tu est en C++, donc à bannir.

* D'un point de vue modélisation, j'aurais différencié Case et Piece.

* Quand tu diffuses un projet dans une tarball, nettoie le projet avant. C'est-à-dire efface les fichier temporaires (*~), les fichiers objet (*.o) et les binaires (exécutables main). Pense à faire un "make distclean" (make distclean = make clean + rm executable), ou mieux encore: crée toi une règle "make dist" ou "make tar" qui crée nettoie le projet (donc dépend de make distclean) et crée ta tarball.

Je n'ai pas tout tout regardé, j'ai juste noté toutes les inélégances que j'ai trouvé après un rapide coup d'oeil.
dimanche 6 décembre 2009 à 13:30:50 | Re : optimisation et conseil

CptPingu

Administrateur CodeS-SourceS
@lural

system


Pitié, non !
Ne jamais utiliser la commande system. Tu perds la portabilité de ton application pour une fonctionnalité très discutable.

system("clean");


Une application console a été conçu pour afficher des informations à la suite. Si tu cherches à rafraichir l'écran, mieux vaut se tourner vers des bibliothèques prévues à cet effet (ncurse) ou carrément passer en mode graphique.

Ce n'est en tout cas pas un bon conseil à donner à un débutant ;)
dimanche 6 décembre 2009 à 17:47:51 | Re : optimisation et conseil

lural

Membre Club
Un débutant en 3ème année de Licence Informatique ...
Et le projet étant à rendre pour ce soir minuit ...
Là je crois qu'il a d'autres soucis que la portabilité d'un jeux en mode console. Je suis tout à fait d'accord pour le fond avec toi CptPingu, mais vu les circonstances ...
dimanche 6 décembre 2009 à 19:42:01 | Re : optimisation et conseil

CptPingu

Administrateur CodeS-SourceS

Un débutant en 3ème année de Licence Informatique ...


Je ne connait pas le niveau d'étude de la personne ayant postée, mais le code est effectivement de niveau débutant (ce qui n'est pas une critique, tous le monde passe par là).

Et le projet étant à rendre pour ce soir minuit ...


Je ne connaissait pas les tenants et les aboutissants, mais c'est vrai qu'il y a des points plus primordiaux :p


Cette discussion est classée dans : source, url, conseil, optimisation


Répondre à ce message

Sujets en rapport avec ce message

code source ADN ? [ par ludoviccivodul ] Salut, je lisais un [url=http://fr.wikipedia.org/wiki/Formicidae]article sur les fourmis dans wikipédia[/url] et je suis tombé sur cette phrase : [qu demade du code source [ par yosf14 ] Je suis à la recherche d'un code en C concernant la gestion de stock , travaille avec les structure, fichiere et les piles . et merci YOUKES[^^amour c java uml [ par steve25cent ] Bonsoir, j'ai un projet(code source) en c. et mon travail c'est de générer un modèle UML(différents diagramme possibles) à partir su code source exis relative url et base url [ par vercd7am ] bonjour a tous. J'aurais aime savoir s'il est possible a partir d'une url de recuperer les adresses relatives qui lui sont liees. Pour bien etre sur logiciel pour le language c++ [ par godbois49 ] J ai téléchargé un codeur décodeur, et j arrive pas a l ouvrir, windows7 me dit qu il ne peut pas ouvrir, et de chercher sur le web le programme CODE Demande de tutorial et de code source... [ par MaTHieU ] Salut,Tout d'abord, merci pour ce superbe site !Je cherche des cours pour apprendre à faire des tunnel et du plasma en Visual C++ ou des codes sources imprimer et image en c++ [ par naney ] je voudre un code source qui me montre comment imprimer et un autre qui me montre comment inserais une image en c++ (n'importe quel format d'image) ex code source de la visionneuse microsoft en C++ [ par tompouce ] j' ai un projet à faire en C++ et je n'y connaît strictement rien AU SECOURS!!Jai fait une fenetre avec un simple menu Fichier** Ouvrir** QuitterQuand


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 4,633 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales