Aucun nouveau langage n'a les caractéristiques pour remplacer le vénérable C, voire le C++ : performance complexe à obtenir, machine virtuelle encombrante, complexité d'usage, absence d'accès bas niveau au matériel. Pour y arriver, les défis à relever sont nombreux : rapidité, productivité, capacité à trouver ses erreurs, facilité de prise en main et surtout, convaincre de nouveaux utilisateurs.
Un langage informatique n'est qu'un outil dans le cycle de vie d'un logiciel. C'est sans doute le plus important, car il nécessite un long apprentissage. Ainsi, il peut faire perdre ou gagner du temps aux différents moments de la conception.
Un développement logiciel se déroule en 4 étapes, qui se recouvrent la plupart du temps : la spécification/définition, le codage, le test, puis la maintenance.
La spécification est souvent écrite sous forme de papier. Il s'agit de se mettre d'accord avec les futurs utilisateurs du logiciel. Cela peut devenir complexe si les utilisateurs ont un besoin flou. Cela oblige souvent à des itérations dans le développement pour préciser les besoins. C'est le credo des méthodes dites agiles. Si l'utilisateur est le codeur, cette phase est simplifiée. C'est le cas habituel, dans l'open source, avec en corollaire, un manque de documentation et donc, un problème pour les tests. A moins que les tests ne deviennent eux-mêmes la...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première