Il existe deux philosophies de conception principales derrière le développement de logiciels, à source fermée et à source ouverte. Ces termes font référence au code source du logiciel et aux restrictions qui lui sont imposées, ou à son absence.
Astuce : le code source est le code dans lequel le programme est écrit. En règle générale, le logiciel est compilé dans un code machine plus efficace avant d'être distribué, ce qui rend difficile le retour au code source d'origine. Avec le code source, cependant, vous pouvez voir tout ce pour quoi le logiciel est conçu, comment il le fait et le reproduire parfaitement.
Qu'est-ce que le code source fermé ?
Dans les logiciels à code source fermé, le code source du logiciel propriétaire et privé. Bien qu'il puisse être gratuit ou payant, vous ne pouvez obtenir qu'une licence pour utiliser le logiciel. Cette licence inclura des restrictions sur des choses telles que l'édition du logiciel.
En comparaison, les logiciels open source publient librement leur code source et encouragent généralement les gens à y contribuer afin d'ajouter des fonctionnalités ou de corriger des bogues. Les logiciels libres sont généralement mais pas toujours gratuits.
Avantages des logiciels à code source fermé
Le principal avantage des logiciels à code source fermé est la facilité avec laquelle le développeur peut appliquer sa politique de licence et ses droits d'auteur. Si le code source est fermé, personne d'autre ne peut l'utiliser pour copier facilement votre logiciel. En gardant un contrôle direct sur le projet, il est plus facile d'avoir une vision unique et coordonnée pour le développement futur que dans un environnement open source.
Être le seul développeur avec le logiciel signifie que vous pouvez facturer plus d'argent car il y a moins de concurrence. Cet argent supplémentaire peut contribuer à la fois au développement du logiciel et à l'assistance aux utilisateurs qui l'ont acheté.
Avantages des logiciels libres
Avec un logiciel open source, n'importe qui peut contribuer son temps et ses efforts au projet s'il le souhaite. Cela peut entraîner une communauté de développement beaucoup plus grande qu'un projet similaire à code source fermé, ce qui signifie plus d'yeux pour découvrir les problèmes de sécurité.
Astuce : Ce n'est pas parce qu'il y a plus de personnes qui pourraient rechercher des vulnérabilités de sécurité qu'elles le sont. Il existe de nombreux cas de bogues vieux de plusieurs décennies trouvés dans des logiciels ouverts, que personne n'avait remarqué auparavant.
Les projets open source sont souvent maintenus par des passionnés qui sont plus susceptibles d'essayer d'inclure de nouvelles normes, etc. le plus rapidement possible.
Même si un logiciel open source est publié gratuitement, il est possible d'offrir un service d'assistance payant ou d'avoir d'autres méthodes pour fournir une source de financement.
Ni l'open-source ni le closed-source n'est nécessairement une meilleure philosophie de conception que l'autre. Ils ont tous deux des avantages et des inconvénients et sont utiles comme compétition entre eux.