nombre de lignes de code pour un programme??

Répondre
Partager Rechercher
Bonjour,
je recherche a titre informatif le nombre de lignes de code approximatives pour divers programmes pc, tels qu'un traitement de texte (word) un systeme d'exploitation, un jeux tel que half life 2...
Si vous avez des sources fiables sa m'arrangerai beaucoup mais bon si vous etes dans le milieu sa sera tres bien
Citation :
Publié par barbe
Bonjour,
je recherche a titre informatif le nombre de lignes de code approximatives pour divers programmes pc, tels qu'un traitement de texte (word) un systeme d'exploitation, un jeux tel que half life 2...
Si vous avez des sources fiables sa m'arrangerai beaucoup mais bon si vous etes dans le milieu sa sera tres bien
Le code source de quake 2 (par exemple, je sais plus si pour le 3 c'est déjà fait) étant disponible, tu dois pouvoir compter
Pareil pour celui d'openoffice, par exemple, ou linux.

Ca me semble quand même pas très pertinent comme question
En fait, ta question n'a aucun sens xD
Tout dépend du langage utilisé...

Exemple tout bête, tu considère le langage de programmation Q qui n'a qu'une seule instruction :
Code:
quake3()
Cette instruction écrit l'intégralité du jeu quake3


Ok c'est un langage fictif, certes, mais l'idée c'est que : tu peux avoir des langages avec des instructions bas niveau, et la faudra tartiner, ou des langages avec des instructions tellement evoluée que tu peux faire des truc vachement bien en peu de lignes de code...

Autre exemple : tu veux utiliser des listes chainées en C, tu te les écris a la main... tu les veux en OCaml, tu les as directement.

Bref, ca veut pas dire grand chose le nb de lignes de code
non mais par exemple, HL² est il me semble codé en C++, donc de combien de lignes de codes est constitué le programme?? l'ordre de grandeur... de meme pour un traitement de texte genre openoffice ou word etc...
Plusieurs dizaines de milliers sans aucun doute.

Après, je doute que tu trouves beaucoup plus précis, il y a tellement de fichiers différents dans un programme que conter toutes les lignes de tous les fichiers est infaisable. Ou alors il ne faut vraiment avoir que ça à faire pendant un bon bout de temps.

Après, si tu veux une estimation un peu plus précise, tu prends le poids total du code source (et seulement du code, pas des ressources etc), et tu dvises par deux, ça te donne le nombre de caractères. Il ne te reste plus qu'à estimer combien de caractères il y a en moyenne par ligne, et tu obtiens ton nombre de lignes. Evidemment, faut pas s'attendre à avoir un résultat précis, mais pour un ordre de grandeur, ça doit suffire.
Vais te donner un exemple avec Gears of War :

GamePlay : ~250 000 lignes principalement de C++, le reste avec d'autres langages (Haskell, C..)
Moteur Unreal Engine 3 : ~250 000 lignes de C++
Citation :
un systeme d'exploitation
67 millions pour Vista, 35 millions pour Windows XP.

Citation :
divers programmes pc
Code:
#include <stdio.h>
   #include <conio.h>
   int main ()
   {
   	float L,l,s,p,ep;
   	int npL,npl;
   	printf("Longueur du terrain ? (en metre) : ");
   	scanf("%f",&L);
   	printf("Largeur du terrain ? (en metre) : ");
   	scanf("%f",&l);
   	s=(L*l);
   	printf("La surface de ton terrain  est de %.2f m2\n",s);
   	p=(L+l)*2;
   	printf("Le perimetre de ton terrain est de %.2f m\n",p);
   	printf("Espacement entre les piquets ? (en metre) : ");
   	scanf("%f",&ep);
   	npL=(int)(L/ep);
   	printf("Il faudra %d piquets sur la longueur\n",npL);
   	npl=(int)(l/ep);
   	printf("Il faudra %d piquets sur la largeur\n",npl);
   	printf("Les piquets seront espaces de %.0f cm sur la longueur\n",(L*100)/(npL+1));
   	printf("Les piquets seront espaces de %.0f cm sur la largeur\n",(L*100)/(npl+1));
   	printf("Il faudra acheter %d piquets",(npL+npl+2)*2);
   	getch();  
   }
26 lignes pour un programme a la con piquet.exe lol ^^
A une epoque j'avais fait un traitement de texte genre notepad.

En Pascal Objet (Delphi 5) j'avais moins de 100 lignes de code (Automatisé , j'ai du en tout et pour tout taper 20 lignes de code personel)

Quand avec ce meme language j'ai programmer un jeu qui s'appel le jeu de la vie j'en avais pour a peine 100 lignes.

Dans le cas d'un moteur de jeu video recent (Q3 engine, voir le Cry Engine (celui de FarCry) Ca peut se chiffrer a plusieur centaine de millier de ligne de code).

ftp://ftp.idsoftware.com/idstuff/source/quake2.zip <= Q2 Engine Source Code
La premiere cause de bug dans un programme c'est l'utilisateur :d

Tu veut lui faire des jolies menus ca fait tout planter.

J'avais jamais de bug dans mes programmes tant qu'il resté en mode fonctionement simple. Ultra Moche mais Efficace, des que tu veut le rendre User Friendly ca part en live et c'est le drame.
Y'a un truc comme (au moins) 400 000 lignes de code pour eBay J'ai les sources de 1999 (beta), j'ai pas ouvert chaque fichier *.cpp/*.h, mais fait une estimation rapide en fonction de leur taille (~15mo au total).

Donc en 2007 il doit bien y avoir largement plus

Après il faut se dire que y'a plein de commentaire useless dans les fichiers, et ca compte comme une ligne (du moins avec le soft que j'utilise).
c est pour du genie logiciel non?

bon sinon :

En 1995, le développement de Microsoft Exchange Server a coûté 1 000 années x hommes pour 7 millions de lignes.

En 1999, le développement de Windows 2000 a ressemblé 5 000 ingénieurs pendant 3 ans pour réécrire 70% des 35 M ISL de NT. Productivité = 4,8 lignes par homme jour.
Bon alors merci pour vos reponses...
Pour resituer un peu, etant donné qu'hier j'etais chez des amis je n'ai pas pu donner beaucoup de precisions...
Je suis en ecole d'ingénieur et nous commencons a voir quelques langages de programmation (C/C++ et java) et a elaborer des algorithmes simples. Le pourquoi de la question initiale est qu'un de mes amis me soutenait qu'un jeux ne faisait pas plus de quelques dizaines de milliers de lignes de codes, et qu'un programme avec des millions de lignes n'existait simplement pas ^^ bon maintenant je lui ai apporté la preuve du contraire grace a vous.
vous n'auriez d'ailleurs pas quelques precisions pour des jeux bien complexes genre supreme commander ^^
La question n'a pas beaucoup de sens, car entre un jeu qui va avoir son propre morteur graphique, et un autre qui utilise directx, il y a une grosse difference de nombre de ligne.

Ensuite, rien ne t empeche d'ecrire :

Code:
if (toto = truc)
{
tata=tut;
}
else
{
pouet = toto;
}

ou
Code:
if (toto = truc) { tata = tut;}
else {pouet=toto;}
Citation :
Publié par Grosbisou
Peut-être le bon sens quand même :|
C'est quoi pour toi le bon sens ?

Par habitude, j'ecris suivant le premier exemple, je trouve ca plus clair, surtout quand il y a beaucoup d'imbrication, et permet de mettre du commentaire facillement.

(et surtout parce que Madame N. prof d'info m'a torture avec cette methodologie )
Répondre

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés