The Slope of Enlightenment

Publié par : Kapten

Le but de ce livre est de regrouper les bonnes pratiques que j’ai acquises au cours de mon stage de césure, ainsi qu’au cours de ma scolarité. À force de faire des erreurs, on apprend à les éviter. Ce livre est destiné aux développeurs novices qui ont déjà quelques connaissances de base dans les langages de programmation traités, ainsi qu’aux chefs de projet junior. Document sous licence CC.


Consulter un extrait ci-dessous

Arguments d'entrée et de sortie Après l'objet sur lequel opérer, on passe à la fonction les arguments d'entrée puis de sortie 2 (il peut y en avoir plus d'un de chaque). Les arguments de sortie peuvent être des pointeurs vers des pointeurs (comme ci-dessus) ou de simples pointeurs, à condition qu'aucune allocation supplémentaire de mémoire ne se fasse (ce qui n'est pas cohérent avec le modèle de gestion de la mémoire comme décrit ci-dessous).


Pourquoi doit-on utiliser un " allocateur " ? C'est utile si un jour on décide d'utiliser les fonctions d'une librairie dans un module Apache par exemple. Il est ainsi possible de connecter la librairie en question au système de gestion mémoire d'Apache, basé sur des pools de mémoire. Il est également possible d'utiliser le bon vieux malloc(3) à travers quelques wrappers.


Je vous déconseille d'allouer des objets sur la pile. Certains outils, comme valgrind(1), dont l'utilisation est recommandée en 2.5, n'arrivent pas à détecter les buffer overflows quand ils se produisent dans la pile. Par ailleurs, si vous lancez beaucoup de threads qui ont besoin de beaucoup d'espace sur la pile, vous ne pourrez pas réduire votre utilisation de mémoire virtuelle en utilisant le built-in de votre shell, ulimit. ulimit -s limite la taille de la pile des threads nouvellement créés.


Il se pourrait que vous soyez amené à intégrer du code dont le modèle de la mémoire est différent. Par exemple, on pourrait vous donner une librairie qui ne demande qu'une grosse plage de mémoire (la mémoire de travail) et qui gère sa mémoire à sa façon 5. Surtout, il faut résister à l'envie d'allouer statiquement la mémoire nécessaire dans l'espace de nommage global, car la librairie résultante ne serait pas thread-safe 6. Je vous recommande fortement d'allouer la mémoire de ces librairies sur le tas.


Il n'y a qu'une seule règle à suivre lors du choix d'un outil : Si ce n'est pas libre et Open Source, ça n'en vaut pas la peine. N'utilisez surtout pas un outil libre qui vous force à utiliser des logiciels propriétaires, comme Project.net qui vous force à utiliser une base de données Oracle [22]. Tout logiciel qui ne respecte pas votre liberté n'est pas digne d'être installé sur votre serveur.


Office 2010 C'est vrai que Office 2010 permet la collaboration en temps réel sur un même document. Mais cela vous force à installer des logiciels propriétaires sur votre ordinateur. Et qui a envie d'installer 1 Go de logiciels rien que pour pouvoir participer ? Personne. Trop gros, trop propriétaire. D'ailleurs, la mise en page n'est pas aussi bonne qu'en LATEX.


OpenOffice C'est une alternative à Microsoft Office. Cette suite n'offre pas de collaboration en temps réel, ce qui veut dire qu'il faut désigner une pauvre âme qui va regrouper le texte de chacun des collaborateurs la veille de la deadline, tout en vérifiant la cohérence du document produit.



Publier sur Facebook Publier sur Twitter
Informations
Date :

26/11/2010


Langue :

Français


Pages :

13


Consultations :

5026


Note :
Téléchargement Gratuit
  • Votre email n'est pas valide

    Vous devez valider les conditions d'utilisation

-->
Résumé

Auteur : Bahjat SALEM


Tags : Langage C, développement, informatique, bugs
Sur le même thème
Vues : 15936

Présentation d'un logiciel libre de détection du plagiat. Détecter automatiquement le plagiat dans un document informatique...

Vues : 8251

Utilisation de Celestia - Tutoriel. GNU

Vues : 4001

Tutoriel d'installation d'une boutique Prestashop.

Vues : 2570

Sommes Conditionnelles sous OpenOffice - Tutoriel. GNU/FDL

Vues : 2546

Créer un site web avec OpenOffice - Tutoriel. Licence de Documentation Publique

Vues : 2530

Découvrez plus de 30 platformes open source E-learning disponibles en ligne. Chaque plateforme est sommairement détaillée....

Du même contributeur
Vues : 24214

Calibre, logiciel de gestion de bibliothèque numérique. Calibre est un logiciel libre, gratuit et multiplateforme qui permet...

Vues : 11929

Ce guide a pour vocation d'apporter de premières pistes en matière de recherche sur Internet. Guide pratique sous licence...

Vues : 8180

Comment organiser un jeu concours ? Voici un petit guide qui vous permettra de tout savoir pour organiser un jeu concours.

Vues : 7732

I] Qu'est ce que la sécurité d'un système? II] Pourquoi sécuriser les systèmes informatiques III] Comment et avec quoi les...

Vues : 7693

Guide d'utilisation d'OpenOffice Calc. 26 fiches pour vous guider dans OpenOffice Calc. Lorsqu'un classeur a été enregistré...

Vues : 6811

Mettre ses photos en ligne avec Picassa. Tutoriel proposé par L'Espace Multimédi@. Document sous licence CC. 5Votre...

Commentaires
Aucun commentaire pour cette publication
Ajouter un commentaire
Envoyer
Pour envoyer la page de votre document, notez ici les emails destinataires de votre demande :
Séparez les emails par des virgules
Signaler un abus
Vous devez vous connecter ou vous inscrire pour noter un document.
Cliquez ici pour vous inscrire.
Vous devez vous connecter ou vous inscrire pour ajouter un commentaire.
Cliquez ici pour vous inscrire.
Vous devez vous connecter ou vous inscrire pour envoyer le document.
Cliquez ici pour vous inscrire.
Vous ne pouvez pas acheter de documents sur Needocs.
Vous pouvez vous référer aux conditions générales de vente et d'achat du portail pour connaître les modalités d'achat.