Qu'est-ce qui te permet de juger qu'ils ne devraient pas être en C ? Tu es sans doute un des rares à pouvoir choisir au début d'un développement qu'elle sera la complexité du logiciel au final
Le meilleur langage est celui que tu connais, mais il y a des limites.
Les exemples auxquels je pense, c'est par exemple des applis essentiellement basées sur des GUI. Imagine par exemple un truc qui édite des fichiers de config. Tu crées un clicodrome, il n'y a pas de calcul ou d'algorithme particulier. Dans ce cas, tu te vois gérer la mémoire, détuire les pointeurs vers les widgets au fur et à mesure de leur fermeture, etc? Tu n'as aucune contrainte de temps d'exécution, 99% du temps cpu va être consacré à l'affichage des éléments qui sont appelés par une bibliothèque (qui elle pourra être en C).
Un autre exemple (celui auquel je pensais, en fait) sont tous ces jeux de stratégie, type implémentation de jeux de plateaux ou jeux de rôle. Au niveau algo et calcul, il y a que dalle, c'est juste de l'interface autour d'un moteur de jeu. J'ai contribué parfois à ces trucs, en plus, souvent, c'est "Dédé apprend à programmer", c'est plein de segfaults et de pointeurs tout nus qui se balladent partout, les tableaux sont initialisés avec des dimensions constantes (souvent plusieurs millions de cases, hein, faut voir grand), etc.
De toute façon, la langage ne fait pas l'optimisation. C'est l'algorithme qui fait ça.
Justement, raison de plus pour ne pas s'emm* avec ces langages proches de la machine, qui n'ont d'utilité réelle que dans une minorité de cas. Et surtout si on n'est pas développeur de formation et de profession. Personnellement, je vois C comme un outil spécialisé, pour des développeurs système ou embarqué, ou réservés à des cas très particuliers. Pour coder un truc avec une GUI et trois algos triviaux, il me parait beaucoup plus censé de démarrer sur un langage de script (python? ruby?) plutôt que de se demander si on ne va pas avoir un jour besoin de faire de la logique bitwise.
[^] # Re: suckless !! More is less !
Posté par arnaudus . En réponse au journal Pourquoi un PC ralentit-il ?. Évalué à 6.
Le meilleur langage est celui que tu connais, mais il y a des limites.
Les exemples auxquels je pense, c'est par exemple des applis essentiellement basées sur des GUI. Imagine par exemple un truc qui édite des fichiers de config. Tu crées un clicodrome, il n'y a pas de calcul ou d'algorithme particulier. Dans ce cas, tu te vois gérer la mémoire, détuire les pointeurs vers les widgets au fur et à mesure de leur fermeture, etc? Tu n'as aucune contrainte de temps d'exécution, 99% du temps cpu va être consacré à l'affichage des éléments qui sont appelés par une bibliothèque (qui elle pourra être en C).
Un autre exemple (celui auquel je pensais, en fait) sont tous ces jeux de stratégie, type implémentation de jeux de plateaux ou jeux de rôle. Au niveau algo et calcul, il y a que dalle, c'est juste de l'interface autour d'un moteur de jeu. J'ai contribué parfois à ces trucs, en plus, souvent, c'est "Dédé apprend à programmer", c'est plein de segfaults et de pointeurs tout nus qui se balladent partout, les tableaux sont initialisés avec des dimensions constantes (souvent plusieurs millions de cases, hein, faut voir grand), etc.
Justement, raison de plus pour ne pas s'emm* avec ces langages proches de la machine, qui n'ont d'utilité réelle que dans une minorité de cas. Et surtout si on n'est pas développeur de formation et de profession. Personnellement, je vois C comme un outil spécialisé, pour des développeurs système ou embarqué, ou réservés à des cas très particuliers. Pour coder un truc avec une GUI et trois algos triviaux, il me parait beaucoup plus censé de démarrer sur un langage de script (python? ruby?) plutôt que de se demander si on ne va pas avoir un jour besoin de faire de la logique bitwise.