Maison >interface Web >js tutoriel >Éthique du code JavaScript : rédiger un code propre et éthique
Dans le monde de développement actuel en évolution rapide, il est essentiel de fournir des solutions rapidement. Cependant, réduire la qualité du code conduit souvent à des bogues, des vulnérabilités de sécurité et un code non maintenable. L'éthique du code joue un rôle central dans la production d'un code non seulement fonctionnel, mais également maintenable, efficace et sécurisé. Explorons les principes éthiques clés du développement JavaScript et comment ils peuvent améliorer la qualité de votre code avec des exemples.
Exemple : évitez d'utiliser des constructions laconiques ou complexes lorsqu'il existe des alternatives plus claires.
Mauvais exemple
![Description de l'image](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zkyc8dla0ty0kgpn5vcu.png)
Bon exemple
const doubleArray = arr => arr.map(x => x * 2); // Clair et facile à comprendre
Dans cet exemple, l'opérateur au niveau du bit << fonctionne mais est moins lisible que l’utilisation d’une simple multiplication. Choisir la clarté garantit que votre équipe ou votre futur moi-même pourra facilement comprendre et maintenir le code.
Mauvais exemple
laissons compter = 0 ; // Déclaré en portée globale
fonction incrément() {
compte ;
>
Bon exemple
(() => {
laissez compter = 0 ; // Encapsulé dans une fermeture
fonction incrément() {
compte ;
>
})();
En encapsulant le code dans une IIFE (Immediately Invoked Function Expression), la variable count est étendue localement, évitant ainsi les conflits potentiels avec d'autres parties du code.
Mauvais exemple
fonction getUser(id) {
return fetch(/user/${id}).then(res => res.json()); // Pas de gestion des erreurs
>
Bon exemple
fonction asynchrone getUser(id) {
essayez {
const res = wait fetch(/user/${id});
si (!res.ok) {
lancer une nouvelle erreur (Échec de la récupération de l'utilisateur : ${res.statusText});
>
return wait res.json();
} attraper (erreur) {
console.error('Erreur lors de la récupération de l'utilisateur :', erreur);
renvoie null ;
>
>
En ajoutant la gestion des erreurs, vous empêchez non seulement votre application d'échouer silencieusement, mais vous fournissez également des informations significatives sur ce qui n'a pas fonctionné.
Mauvais exemple
fonction processOrder(order) {
// Code de validation de commande
// Code de calcul du total
// Code de traitement du paiement
// Code de génération du reçu
>
Bon exemple
`function validateOrder(order) { /* ... / }
function calculateTotal(order) { / ... / }
function processPayment(paymentInfo) { / ... / }
function generateReceipt(order) { / ... */ }
fonction processOrder(order) {
if (!validateOrder(order)) return;
const total = calculerTotal(commande);
processPayment(order.paymentInfo);
generateReceipt(commande);
}`
Cette approche modulaire rend votre code plus facile à comprendre, à tester et à maintenir. Chaque fonction a une responsabilité unique, adhérant au principe de responsabilité unique (SRP).
Mauvais exemple
fonction processUser(user) {
console.log(Utilisateur de traitement : ${JSON.stringify(user)}); // Exposer des données sensibles
// ...
>
Bon exemple
fonction processUser(user) {
console.log (utilisateur de traitement : ${user.id}); // Enregistrer uniquement les détails nécessaires
// ...
>
Dans ce cas, le mauvais exemple expose des informations utilisateur potentiellement sensibles dans la console. Le bon exemple enregistre uniquement ce qui est nécessaire, en suivant les meilleures pratiques en matière de confidentialité des données.
Mauvais exemple
`function createAdmin(nom, rôle) {
return { nom, rôle, autorisations : ['créer', 'lire', 'mettre à jour', 'supprimer'] };
>
fonction createEditor(nom, rôle) {
return { nom, rôle, autorisations : ['create', 'read'] };
}`
Bon exemple
`function createUser(nom, rôle, autorisations) {
return { nom, rôle, autorisations };
>
const admin = createUser('Alice', 'Admin', ['create', 'read', 'update', 'delete']);
const editor = createUser('Bob', 'Editor', ['create', 'read']);`
En suivant le principe DRY, vous éliminez la duplication de code, réduisant ainsi les risques d'incohérences ou d'erreurs dans les futures mises à jour.
Mauvais exemple
fonction calculerAPR(montant, taux) {
montant du retour * taux / 100 / 12 ; // Aucune explication de ce que représente la formule
>
Bon exemple
`/**
Mauvais exemple
// Aucune couverture de test
Bon exemple
// Utilisation d'un framework de test comme Jest ou Mocha
test('calculateAPR devrait renvoyer un APR correct', () => {
attendre(calculerAPR(1000, 12)).toBe(10);
});
En écrivant des tests, vous vous assurez que votre code est fiable, vérifiable et facile à refactoriser en toute confiance.
Envisagez d'utiliser des outils comme ESLint ou Prettier pour assurer la cohérence de votre code.
Exemple de configuration ESLint
{
"extends": "eslint:recommandé",
"env": {
"navigateur": vrai,
"es6" : vrai
},
"règles": {
"indent": ["erreur", 2],
"quotes": ["erreur", "single"],
"semi": ["erreur", "toujours"]
>
>
En adhérant à un guide de style, votre base de code conservera une structure cohérente, permettant aux autres de contribuer et de réviser plus facilement le code.
Conclusion
Des pratiques de codage JavaScript éthiques garantissent que votre code est non seulement fonctionnel, mais également maintenable, sécurisé et évolutif. En vous concentrant sur la clarté, la modularité, la gestion des erreurs et la confidentialité des données, vous créez une base de code qui respecte à la fois vos collègues développeurs et les utilisateurs finaux. L'intégration de ces pratiques dans votre flux de travail vous aidera à écrire un code plus propre et plus fiable et à favoriser un environnement de développement plus sain.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!