J'ai lu le code lisible Écrivons un moyen de rendre le flux de contrôle plus facile à lire
if(length >= 10)
if(10 <= length)
Les deux ont le même sens, mais le premier est plus facile à lire
Dans l'exemple précédent, la constante de 10 est déplacée vers la droite. Amener une variable appelée longueur sur le côté gauche facilite la lecture.
Même en japonais "Si j'ai plus de 20 ans" "Si 20 ans a moins de mon âge" En y réfléchissant, le premier est plus facile à comprendre.
Mon âge change, mais 20 ans est une constante. En plaçant les valeurs qui changent sur le côté gauche et les valeurs qui ne changent pas sur le côté droit dans le même ordre qu'en langage naturel. Il s'avère que cela peut être facilement compris.
L'opérateur ternaire est très pratique. Vous pouvez raccourcir l'instruction if-else de facilitation en utilisant les éléments suivants
if(hour >= 12) {
time_str += "pm";
} else {
time_str += "am";
}
//Utiliser l'opérateur ternaire
time_str += (hour >= 12) ? "pm" : "am";
Mais si vous l'utilisez à l'aveuglette, cela peut être difficile à comprendre.
return exponent >= 0 ? mantissa * (1<<exponent) : mantissa/(1<< -exponent);
Répondez lorsque le résultat de l'utilisateur est réussi et que l'autorisation est obtenue. Si le résultat de l'utilisateur réussit et que l'autorisation n'est pas donnée, une erreur vide est renvoyée. Si le résultat de l'utilisateur échoue, une erreur est renvoyée. En traitement.
Ça devient un peu compliqué.
if(user_result == SUCCESS) {
if(permission_result != SUCCESS) {
reply.WriteErrors("error reading permissions");
reply.Done();
return;
}
reply.WriteErrors("");
} else {
reply.WriteErrors(user_result);
}
reply.Done();
//L'utilisateur d'abord_result !=Il renvoie le résultat de SUCCESS.
if (user_result != SUCCESS) {
reply.WriteErrors(user_result);
reply.Done();
return;
}
//Le reste est utilisateur_result ==Uniquement pour le SUCCÈS
if(permission_result != SUCCESS) {
reply.WriteErrors(permission_result);
reply.Done();
return;
}
reply.WriteErrors("");
reply.Done();
Cela a rendu le nid moins profond. Le flux de contrôle pourrait être simplifié en retournant tôt avec retour.
Recommended Posts