Série de problèmes A
1
.
Recherchez comment les langages de haut niveau ont des restrictions de portabilité et comment certains langages gèrent la portabilité. Par exemple, comparez C# et Java sur les plateformes Linux.
2
.
Quel est le compromis entre C# étant entièrement compilé et Java s'exécutant sur la JVM ?
3
.
Recherchez les boucles for. Écrivez une boucle for qui correspond à la fonctionnalité de la boucle while suivante :
int main ()
{
int iter = 0;
while(iter < 10)
{
iter++;
printf("%d", iter);
}
}
4
.
En C/C++, les types de données peuvent être retournés par une fonction ou utilisés comme paramètre de sortie en passant l'objet par référence à l'aide d'un pointeur. Écrivez un morceau de code qui démontre deux fonctions avec la même performance, mais l'une qui retourne un type de données et l'autre qui utilise un paramètre de sortie.
5
.
Recherchez ce que sont un guide de style et une norme de codage. Examinez un exemple de norme de codage pour au moins trois langages différents. Les guides de style et les normes de codage sont-ils les mêmes pour chaque langage ? Comment les guides de style et les normes de codage pourraient-ils conduire à un code bien structuré ?
6
.
Décrivez comment l'héritage peut simplifier la conception d'une application logicielle. L'héritage peut-il ajouter à la complexité du logiciel ?
7
.
Vous concevez une application logicielle en temps réel, donc le timing des calculs est critique. Comment pourriez-vous développer une solution qui prend moins de temps à exécuter ? Quelles considérations de sécurité devez-vous prendre en compte lors de la conception ?
8
.
Recherchez les utilisations des définitions de préprocesseur. Comment une organisation peut-elle avoir une base de code commune mais ne livrer que certains modules de code lors d'une livraison ?