Devenir membre club
Connectez vous
Aide & règlement
Votre 1ère visite
Le règlement
Contacter les admins
Contacter le webmaster
Questions & réponses
Comment soutenir CodeS-SourceS
Comment faire un lien vers CodeS-SourceS
Autres questions
A propos & don
A propos du réseau
Les modérateurs
Remerciements
Faire un don
Le livre d'or
Tous les livres
Les dernières parutions
Les plus consultés
Les critiques
Le top des ventes
Le top favoris des membres
Recevoir des livres blancs
Tous les thèmes
Les derniers messages
Les nouveaux messages
Poser une question
Le Chat - IRC
Tous les tutoriels
Ajouter un tutoriel
Les tutoriels en vidéo
Les formations vidéos
Tous les codes
Ajouter un code
Filtrer par catégorie
Filtrer par date
Les plus récents
Les mis à jour
Les codes par jour
Filtrer par niveau
Niveau débutant
Niveau initié
Niveau expert
Filtrer par type
Les codes avec capture
Les codes avec zip
Les codes .Net
Filtrer par qualité
Les plus populaires
Les plus populaires du mois
Les plus téléchargés
Les mieux notés
Top par catégorie
Top des favoris
Filtrer par auteur
Tous les auteurs
Le top des membres
Les snippets
Déposer votre CV
Consulter les offres d'emploi ou de stage
Consulter les CVs
Déposer une offre d'emploi ou de stage
Modèles de CV et lettres
Trouver une convention collective
Les écoles d'informatique
Toutes les écoles
Ajouter une école
Les outils
Outils pour développeurs
Trouver des ressources
Base de données de CodeS-SourceS
Télécharger les meilleurs logiciels
Comparer les prix
Envoyer des ecards
Création de bannières
Annuaire de la prog
Tous les sites
Ajouter votre site
Le dico de la prog
Toutes les définitions
Ajouter une définition
Les évènements
Tous les évènements
Les évènements à venir
Ajouter un évènement
Téléchargements
CodeS-SourceS Toolbox
CodeS-SourceS Toolbar
Toolbar pour FireFox
Fonds d'écran
Les compil's
Nos partenaires
Magazine Programmez
Frontier.fr
Xiti
ProgOnline
Winwise
Editions Eyrolles
Toute la liste
Les RFC
CS
VB, VB.NET
ASP.NET,ASP
C, C++
ColdFusion
PHP
Javascript
Delphi
Flash
Java
Graphisme
Irc
Assembleur
C#
Mobilité
SQL
Foxpro
Python
Regex
Flex
Windev
Ce site au démarrage
begin process at 2012 02 11 06:52:18
Accueil
Codes
Tutoriels
Forum
Livres
Emploi
Services
Connexion
Trouver un code source :
dans
Tout le site
Codes
Tutoriels
Forum
Blogs
Livres
RFC
Icones
News .NET
Boutique
[ Dernières recherches ]
Veuillez saisir votre recherche... Ex: smtp, lire un fichier, rs232
Options de recherche :
Tous les codes
Tous les codes en .Net
Tous les codes sauf .Net
Langages disponibles :
Tous les langages
ASP / ASP.NET
Assembleur
C / C++ / C++.NET
C# / C#.NET
ColdFusion
Delphi
Flash
Flex, Air, ActionScript
Foxpro
Graphisme
IRC
JAVA / J2EE
Javascript / Ajax / DHTML
PDA / PocketPC
PHP
Python
Regex, Regular Expression, Expression régulière
SQL
Visual Basic, VB6, VB.NET, VB 2005, VB
20 commentaire(s) de ctx_man
sur des sources sur tout
CodeS-SourceS
Déposé sur
Class matrice c++
Un peu sévère le CptPingu, mais il a pas tort du tout ^^'
Personnellement ca a tendance aussi a me titiller quand je vois une source relativement basique être publié en "expert".
Je compte même plus les caculettes a deux francs (oui, des francs, ca ne vaut même pas des euros) en mode console et qui sont notée expert alors qu'elle ne peuvent même pas résoudre une expression un chouilla complexe ( ex: "3*15+4-(12/3)"). Ou quand elle le peuvent, le code qui le fait est une atroce succession de if/while imbriqué.
Ca me titille tellement que je vais finir par en poster une qui avec un parseur d'expression, utilisant massivement la stl et les foncteurs, peut être même boost::spirit, boost::phoenix et capable de dessiner les courbes correspondantes à des équation, et je metterai ca en "débutant", juste histoire de faire complètement l'inverse.
M'enfin, au final je sais pas si j'aurais le courage de perdre mon temps a faire ca...
La source ici n'est clairement pas a destination des experts, rien de bien compliqué, des mélanges C et C++, etc...
Au passage, il manque le constructeur par copie et la surcharge de l'opérateur '=', la classe n'est pas fiable en l'état.
Sans constructeurs par copie, le compilo en met un qui fait une copie "brutale" de la mémoire. Et donc il copie les pointeurs plutôt que de ré-allouer.
exemple :
Matrix* m1 = new Matrix(2); // le constructeur fait m_matrix = new double*[2]; etc...
Matrix m2 = *m1; // il y a copie, ca ne refait pas l'allocation
delete m1; // m2::m_matrix pointe sur une zone dés allouée et donc invalide.
Il y a des fopen mais aucun close du fichier, la classe possède un membre m_log jamais utilisé (celui dans le constructeur est local au constructeur et non a la classe, de plus il n'est pas utilisé). Aucune vérification n'est faite sur la réussite de l'ouverture du fichier, des allocations, du respect des bornes des paramètres (par exemple, on peut écrire Matrix* m = new Matrix(-12); ce qui vaudra une belle exception non contrôlée), etc...
En prime, les opération allouent une nouvelle matrice qu'il retournent par pointeur, autrement dit ils transfèrent la propriété a l'appelant qui doit donc impérativement penser à détruire le résultat.
J'ai pas envie de prendre le temps de monter un code pour comparer la vitesse de la STL et de la libc, j'y crois pas une seconde, sauf en mode débug. Mais une fois compilé avec les flag d'optimisation qu'il faut, je veux bien croire qu'il y ai un écart, mais certainement pas un ratio de 1000.
Et ce n'est pas "des habitudes que certains jugent bien", c'est juste ce qu'il faut faire. Le fait est que stdio c'est du C, pas du C++, qu'il soit possible d'appeler du C en C++ n'est pas une raison pour utiliser le C plutôt que le C++. Dans ce cas autant tout faire en C. C'est comme en .Net, on peut appeler du C via du p/invoke, ca veut pas dire qu'on doit s'amuser à utiliser stdio plutôt que System.IO.File.
Posté le :
26/05/2011 19:30:46
Déposé sur
Course_moustakim
Bonjour,
Quelques remarques :
- Il faut éviter, pour une question de lisibilité, de nommer la moitié des fonctions en anglais et l'autre en français. En général on évite complètement le français à cause des accents.
- S'arranger pour que les fonctions soient déclarées en les ordonnant au dessus du main c'est assez moyen, on fait plutot un .h dans lequel on met toutes les signatures de méthodes et que l'on inclut.
- Faudrait préciser que le code est Windows Only.
- Utiliser les nombres ASCII plutôt que les lettres c'est pas lisible, tu peux fais printf("%c", 'a'), ca marche tout autant et on voit que qui va être affiché sans avoir a sortir la table ASCII.
- Quand ce sont des caractères non affichables ou qui ne donnent pas le rendu réel hors de la console (par exemple ton caractère 178), préfère un define au nom explicite, ainsi on aura dans le code le nom du define plutôt que "178" qui ne parle absolument pas.
- Faute d'orthographe : distance et non distence.
- L'appel à system(const char*) exécute une commande, ce qui signifie qu'il y a création d'un autre processus, c'est très lourd, donc à éviter si c'est juste pour faire une pause ou effacer l'écran. On peux faire une pause en demandant une saisie de l'utilisateur, effacer la console c'est plus chiant, mais ca se fait, exemple ici : http://www.dreamincode.net/code/snippet921.htm
- Il y a pleins de valeurs en dur dont on a aucune idée de l'origine (je pense notamment à tous les for)
- De ce que j'ai compris (je n'ai pas compilé pour tester), tu as une voiture controlée par le joueur, plus une ennemie et tu as un if avec 9 conditions à la ligne 194, qui gère les collisions. Il aurait été plus judicieux de faire un petit calcul mathématique qui calcule la distance qui sépare les deux voitures et ne faire ainsi qu'une seule condition : la distance est-elle inférieure à X ? (où X est la distance minimum pour éviter la collision). Parce que ca non plus, un if avec tout pleins de conditions, c'est pas très lisible.
- Plutôt que ca : char pres[18]={'M','O','U','S','T','A','K','I','M',' ','M','U','S','T','A','P','H','A'}; tu peux utiliser ca : char* pres = "MOUSTAKIM MUSTAPHA";, ca ne t'empêchera pas d'utilise la syntaxe pres[12] pour avoir le caractère en 13 ième position, tout comme un tableau.
Voila, c'est a peu près tout ^^
Posté le :
11/04/2011 14:53:52
Déposé sur
Evaluateur_expression_arithmetique
J'ai jeté un oeil aux autres codes sources de l'auteur, c'est toujours les mêmes problèmes : illisible, tout le code dans les headers, quasiment aucun commentaire utile.
Il faudrait effectivement ouvrir un livre de C. Ou même d'à peu près n'importe quel langage, car tous disent la même chose : il faut commenter et travailler la lisibilité du code. La seule chose que précisera en plus un livre de C ou C++ c'est qu'on ne met pas le code dans les headers (et deux/trois autres détails tels que ne pas utiliser de goto a moins que ca ne soit véritablement nécessaire, vérifier le retour des fonctions car elles peuvent échouer, éviter d'imbriquer 15 scopes, ...)
Posté le :
20/03/2011 23:36:46
Déposé sur
Evaluateur_expression_arithmetique
- Le code ne compile pas
- Tout le code est dans les headers
- Aucun commentaire ou presque
- Lisibilité quasi nulle, notamment a cause de l'absence de commentaire, il est très complexe de comprendre une expression telle que : "while((A[i]!=43)&&(A[i]!=45)&&(A[i]!=47)&&(A[i]!=42)&&(A[i]!=40)&&(A[i]!=41)&&(A[i]!='^')&&(A[i]!='E')&&(A[i]!='\0'))"
Posté le :
18/03/2011 18:10:55
Déposé sur
Casse brique [c] [sdl]
Hum, ouais, pourquoi pas.
Personnellement je n'ai pas le même vocabulaire.
a = 10; //Définition de variable, moi je dis valorisation
int max(int a,int b) { return (a > b)?a:b; } //Définition de fonction, moi j'appel ca "le code" ou "le corps" d'une fonction.
Et, toujours pour moi, une valorisation ca reste du code, ca n'a donc rien a faire dans un .h (encore une fois, y'a des cas où on y peut rien).
Mais bon voila, cette petite différence de vocabulaire n'est pas bien importante.
Posté le :
25/05/2010 09:36:40
Déposé sur
Casse brique [c] [sdl]
Oui je suis têtu, mais non je ne cherche pas a te convaincre.
D'autant que j'avais bien compris que tu étais en parti d'accord avec moi. Cependant j'ai préféré complété mon premier poste compte tenu de ta réponse, afin d'être plus clair au vu de tes remarques, sans compter que tu n'es pas le seul lecteur.
Moi je dis définition, déclaration ca me va aussi. Il n'y a pas grandes différences.
Enfin, je vois pas en quoi mon dernier paragraphe est complètement faux. Tu dis que tout mettre dans un .h n'est pas la bonne méthode, tu dis donc la même chose que moi. J'en conclut donc que tu n'es pas d'accord sur le fait que je dise qu'une mauvaise pratique ne se perd pas facilement. Mon expérience m'a toujours montré a quel point les habitudes, bonne ou mauvaise, sont dures à perdre, tu as tout à fait le droit de ne pas être d'accord, comme je l'ai dis, ce n'est que mon avis. Mais ca ne le rend pas faux pour autant. Bref, je vois vraiment pas en quoi c'est "complètement faux". Et puis je n'ai jamais dit que ce n'était pas compréhensible pour un débutant de faire ainsi, je dis juste qu'il ne faut pas faire comme ca et j'explique comment faire selon moi, j'oblige personne à adhérer, approuver ou je ne sais quoi d'autre.
Posté le :
24/05/2010 21:32:11
Déposé sur
Casse brique [c] [sdl]
Le prototype d'une fonction est un des types de définition/déclaration qu'on met dans un fichier .h.
Mais on met également les structures, les enums, les #define, les #typedef, ....
C'est pour ca que j'ai parlé de définitions et non pas de prototype.
Ce découpage n'est pas vraiment pour faire de la pseudo POO bien que faire de la pseudo POO passe par ce découpage.
Il s'applique toujours pour plusieurs raisons :
- beaucoup plus lisible. Puisque qu'un fichier C ne contient que le code d'une partie précise, il n'est pas pollué par le reste. C'est très proche de la notion d'objet, mais c'est pas pour autant que c'est de la POO.
- beaucoup plus facile a maintenir. Le code étant découpé il est plus facile d'opérer des mises à jour sur une portion sans attaquer le reste. Ça évite aussi les fichier .C qui font 250 000 lignes. Ce qui évite d'alourdir inutilement les IDE, les compilos et le cerveau qui doit s'y retrouver dans tout ce foutoir. 250 000 lignes peut paraître un chiffre énorme pour un débutant, mais non, ca vient très très vite. Par exemple, en ce moment au boulot je travail sur un petit utilitaire en C# (langage qui nécessite moins de code que le C ou C++ pour obtenir le même résultat). Ça fait 1 semaine que je bosse dessus, le truc fait déjà 6000 lignes de code. Je pense qu'une fois fini il devrait être dans les 10 000. Tout ca pour un tout petit utilitaire qui prend des données d'une base pour les injecter dans une autre (bon il fait un tout petit peu plus que ca, mais vraiment pas grand chose). Alors imagine un vrai gros projet sur lequel bossent une dizaine de personne.
- réutilisation. Si demain tu décides de séparer ton programme en un .exe et une .dll laquelle contient, par exemple, toute la gestion de l'affichage, ton code restera quasiment inchangé. De même, si tu décide de créer un nouveau programme qui utilise en grande partie ce que tu as déjà fait dans celui-la, tu pourra te contenter d'inclure les fichiers plutôt que de partir dans un copier/coller qui risque plus de tout casser qu'autre chose.
- Moins de problèmes "étranges". En mettant le code dans le .h tu dupliques le code à chaque fois qu'il est inclut, plutôt que de réutiliser le code en question. Dans la DLL tu met un code de gestion de l'affichage (dessins des barres/briques/...) et dans l'exe tu fais des appels à ces fonctions. Donc tu as inclut le fichier H dans les deux, or, le fichier H contient le code, donc ton exe ne fera pas appel à la DLL contrairement à ce que tu pouvais penser, puisqu'il dispose du code 'en local'. Résultat, non seulement tu as une DLL qui sert à rien, mais en plus tu peux être amené a te dire que tu peux mettre à jour le code d'affichage et redistribuer juste la DLL, ce qui aurait été vrai, mais vu que ton exe n'utilise pas la DLL, bah ca marchera pas. Et ce genre de truc, crois moi, tu va galérer comme pas permis pour comprendre d'où vient le problème, parce que le compilo te laissera faire, le debugger ne verra pas le problème et l'exe fonctionnera parfaitement.
- respect des standard. C'est comme ca qu'on doit faire (ca fait parti de la norme du C et du C++), ce n'est pas parce que le compilateur te permet de faire autrement qu'il faut en profiter. A moins de pas avoir le choix, mais vu l'age de la norme, le nombre de cas où on a pas le choix est proche de 0. A la limite, quand tu sais très bien ce que tu fais et que tu maitrise bien les impactes, tu peux te permettre de prendre des libertés sur la norme. Mais quand ca n'a aucun intérêt, je vois pas pourquoi le faire. La norme est la pour faire abstraction d'un paquet de problèmes potentiels.
Je ne suis absolument pas d'accord avec les mauvaises pratiques qui "sont plus simple pour un débutant". Une mauvaise pratique reste une mauvaise pratique, quand on s'y habitue ca devient très dur de s'en défaire. De plus, il a beau être débutant il dit aussi vouloir faire un bilan avant de se mettre au C++. Bah voilà, c'est un bilan, y'a du bon et du mauvais, lui montrer les mauvais points pour qu'il progresses est à mon sens plus utile que de les occulter. Et s'il conserve cette pratique pour se lancer dans le C++ il va droit dans le mur. Enfin ce n'est que mon avis.
Posté le :
24/05/2010 15:17:39
Déposé sur
Casse brique [c] [sdl]
Personnellement je trouve le C plus rigoureux dans la séparation des fichiers...
Petit rappel, le .h est un fichier d'entête, il est fait pour contenir les définitions et uniquement les définitions, pas le code.
Le code va toujours dans des fichier .C, .CPP, CXX, ... mais pas dans les fichiers .H (a quelques rares exceptions comme les templates en C++ où la on a guerre le choix, sauf qu'on nomme généralement ces fichiers .HPP).
Le compilateur dira rien si vous ne suivez pas cette règle, lui il s'en tamponne. Cependant, ne pas suivre ces règles ca signifie une maintenance bien galère et la quasi impossibilité de réutiliser le code.
Si tu met ton code dans un .h, à chaque fois que tu inclut le .h, tu inclus le code avec, ca devient donc une seconde instance du même code. Ca implique plein de limitations avec des choses vraiment pas simples a débugger.
Donc définitivement non, le code ne vas pas dans les fichiers .h mais dans les fichiers .c.
C'est pas dur du tout en plus.
Par exemple, ton fichier barre.h, fais-en une copie nommée barre.c, tu vires les gardiens (#ifndef BARRE_H_INCLUDED ...#endif), t fais un include de barre.h dedans. Maintenant tu vas dans ton barre.h, tu supprimes tout le code de la fonction (c'est a dire tout ce qu'il y a entre accolade, accolades incluse) et tu met un ';' à la place : SDL_Rect barre(SDL_Surface *ecran, int* boucle);
Tu ajoutes un include de SDL.h car sinon le fichier n'est pas viable seul (ca compilera peut être si SDL.h est inclut ailleurs, mais la compilation seule de barre.c ne peut fonctionner) et vola, le tour est joué, tu as maintenant un fichier .c contenant le code, compilable et linkable, accompagné d'un fichier .h contenant toutes les infos pour permettre d'utiliser ce code depuis n'importe où.
La séparation en .c/.h n'est pas faite pour séparer la GUI du reste ou je ne sais quoi, mais pour séparer le code des définitions afin de permettre la réutilisation du code.
Le C++ n'automatise absolument pas cette procédure, rien n'empêche de faire de même, c'est juste que les IDE proposent l'ajout de class plutôt que l'ajout de code, ce qui se traduit par l'ajout d'une class modèle pré-décomposée. Ça n'est pas fait en C pour la simple et bonne raison qu'il n'y a pas de classes et donc rien que l'on puisse pré-décomposer.
Posté le :
24/05/2010 10:02:14
Déposé sur
[c++] & sfml cryptographie
Bonjour,
Je n'ai pas regardé le code pour le moment mais je peux déjà donner une piste à ta question.
Ce que tu cherche à faire s'appelle la "Stéganographie". Il en existe des dizaines de formes selon ce qui doit être caché et dans quoi (cf. article de wikipédia http://fr.wikipedia.org/wiki/St%C3%A9ganographie).
Voici une méthode simple pour masquer une donnée dans une image 24 bpp (24 bits par pixel) :
Chaque pixel est composé de 3 octets, un pour le rouge, un pour le vert et un pour le bleu. Ça fait énormément de couleur, bien plus que nos yeux peuvent en distinguer. L'astuce consiste donc a prendre le bit de poids faible de chaque octet pour y stocker un bit de la donnée qu'on souhaite cacher. Ainsi, on dégrade l'image d'origine, mais c'est imperceptible a nos yeux. Attention toute fois, tous les formats ne sont pas compatibles avec cette méthode, par exemple le jpeg ne fonctionne pas car sa compression risque de faire perdre ce bit de données, en revanche, le bmp fonctionne très bien, tout comme le png, qui sont des formats sans pertes.
On remarque que l'inconvénient de la méthode est qu'on ne peut utilisé qu'1/8 du poids de l'image d'origine pour stocker la donnée (puisqu'on utilise un seul bit par pixel). Cependant, rien n'empêche de compresser la données avant de la cacher (même si ca ne fait que repousser le problème).
Il existe évidemment bien d'autres méthodes, je te laisse les chercher si le coeur t'en dit.
Posté le :
14/05/2010 10:05:54
Déposé sur
[dev-c++] calcul de la racine carrée d'un réel
En l'occurence sur ce genre d'opération, tous les compilos que j'ai testé détectent s'il va y avoir perte de donnée et te préviennent. Mais je suis d'accord sur le fait qu'il ne faut pas présumer de ce que va coder le compilo, je l'ai fais ainsi parce que j'ai vérifié ce que ca donnais avec le mien, mais comme je le disais également, pour en être véritablement certain, il faut caster, exactement comme tu le montres.
Posté le :
26/01/2010 14:19:25
1
2
Nos sponsors
Derniers Blogs
[SHAREPOINT] LES SESSIONS TECHDAYS 2012.
[SHAREPOINT] LES SESSIONS TECHDAYS 2012.
par Patrick Guimonet
Voici donc pour ceux qui n'ont pas pu venir, ou ceux qui n'ont pas pu toutes les suivre la liste des sessions SharePoint aux TechDays 2012, que je mettrais à jour dès que les liens des vidéo seront disponibles. Ou ici : http...
Cliquez pour lire la suite de l'article
par Patrick Guimonet
TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3
TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3
par ROMELARD Fabrice
Speaker: Bernard Ourghanlian Cette session est comme chaque jour transmise en live par BrainSonic, et j'ai donc suivi cette troisième pleinière par ce moyen sur mon iPad . Elle est dédiée comme chaque année à la mise en perspective de l'é...
Cliquez pour lire la suite de l'article
par ROMELARD Fabrice
MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE !
MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE !
par Vko
Hier durant une session dédiée aux Techdays 2012, j'ai eu le plaisir d'annoncer la sortie de la Béta 2 de Mishra Reader. C'est quoi ? Pour les utilisateurs, c'est une vraie expérience de lecture de flux RSS sur Windows. Rien à voir avec les produit...
Cliquez pour lire la suite de l'article
par Vko
[FRAMEWORK 4] LES TASKS ET LE THREAD UI
[FRAMEWORK 4] LES TASKS ET LE THREAD UI
par fathi
Je viens de passer quelques temps au TechDay's et j'ai pu voir pas mal de session intéressante. Par contre une chose m'a un peu étonné lors de certaines de ces sessions qui abordaient les améliorations du framework .NET (donc le 4.5) : en gros, bea...
Cliquez pour lire la suite de l'article
par fathi
WORKFLOW FOUNDATION 3 A UN PIED DANS LA TOMBE
WORKFLOW FOUNDATION 3 A UN PIED DANS LA TOMBE
par JeremyJeanson
Depuis déjà un an, je conseille vivement les utilisateurs de Workflow Foundation 3 à migrer vers la version 4. L'information qui va suivre ne devrait donc pas trop prendre au dépourvu les personnes qui m'ont suivi. Je profite de ce poste, pour faire le re...
Cliquez pour lire la suite de l'article
par JeremyJeanson
La suite
RSS
Côté IT
Utiliser Office 365 pour un projet d?équipe - PART 2
Utiliser Office 365 pour un projet d?équipe - PART 1
SharePoint 2007 : Installation du Service Pack 3 de MOSS
SharePoint 2007 : Installation du Service Pack 3 de WSS V3
Installation de SQL Server DENALI CTP3
Mise à jour de Windows 2003 R2 vers Windows 2008 R2
Upgrade de SQL Server 2005 vers SQL Server 2008 R2
La suite
RSS
Offres d'emploi
Recherche Recherche développeur web ASP et ASP.Net
Recherche Analyste Programmeur Adélia
Recherche Développeur eZ Publish confirmé
Recherche AP (H/F) ACCESS EXCEL VBA
Recherche SUPPORT INFORMATIQUE / DEVELOPPEUR
Recherche Developpeur web
Recherche développeur Web
Déposer une offre
La suite
RSS
Formations Video
Coffret : Ateliers sur la mode
Atelier sur la mode : Motifs et matières
Atelier sur la mode : La planche tendance
Atelier sur la mode : De retour de pige et repérage
Corel Painter 12 : Les fondamentaux
Coffret : Microsoft Office 2010 de A à Z
De Microsoft Office 2003 à 2007 et 2010
La suite
RSS
Appels d'offres
Passerelle Pericles sur site Joomla 17
Budget :
499€
Infogerance Serveur Debian Linux
Budget :
2 400€
Developpeur applications iphone - ipad - android
Budget :
800€
La suite
RSS
Logiciels
Academy System (17.2.1.0)
ACADEMY SYSTEM (17.2.1.0)
Logiciel de gestion des établissements. - élèves/étudiants (inscription, dossier, absence...) -...
Cliquez pour télécharger Academy System
Easy-Planning (1.0.0.1)
EASY-PLANNING (1.0.0.1)
Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ...
Cliquez pour télécharger Easy-Planning
COLLECTOR PLUS (3.00B)
COLLECTOR PLUS (3.00B)
COLLECTOR PLUS version 3.00B est un logiciel utilisant une base de données alimentée par : - L...
Cliquez pour télécharger COLLECTOR PLUS
PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)
PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)
PONAMEDIA TV DEVIENS HELLLOOO FLASH LA TV SUR VOTRE ORDINATEUR. Toute une plateforme Multi...
Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO
LettresFaciles 2011 (8.0.0.1)
LETTRESFACILES 2011 (8.0.0.1)
LettresFaciles est un logiciel facilitant la création et la rédaction de lettres types. Son inte...
Cliquez pour télécharger LettresFaciles 2011
+ de logiciels à télécharger
Vidéos drôles
Halloween Party
Terry Tate Office Linebacker Superbowl 2003
Jeu vidéo instructif
C'est un véritable vol !
Banana Song
Comment attraper la grippe A
Parodie Pub Window 7
La suite
RSS
Sondage...
Votre navigateur n'utilise pas le javascript, pour
voter aux sondages de ce site, cliquez ici
Statistiques
1 873 495
membres
29
nouveaux aujourd'hui
16 151
membres club
Comparez les prix
Samsung Galaxy Tab (GT-P1000) Tablet PC
Entre 699€ et 699€
Visiter le guide achat
CalendriCode
Février
2012
L
M
M
J
V
S
D
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Consulter la suite du CalendriCode
Photothèque
Visiter la photothèque
CS Tool Box