Cours de Rémi JarjatCours de Rémi Jarjat
  • Liste des cours
  • Culture numérique
  • Git
    • Terminologie
    • Avant de commencer
    • Créer un dépôt (local)
    • Enregistrer des changements
    • Des branches
    • Mise en commun du travail
    • Annuler des changements
    • Réécrire l'historique
    • Des outils pour se simplifier Git
    • Exercices
    • Exemples pratiques
  • Linux
    • Installation
    • Historique
    • Rangement des fichiers
    • Les processus
    • Commandes de base
    • Commandes avancées
    • /linux/6-other-technologies.html
    • Exercices
    • Correction des exercices
  • PHP
    • Environnement de travail
    • Bases du PHP
    • Tests et boucles
    • Procédures et fonctions
    • Interagir avec l'utilisateur
    • La temporisation de sortie
    • PHP Doc et PSR
    • PHP Orienté objet
    • Héritage et objets
    • Factorisation
    • Manipuler la BdD avec PDO (PHP Data Object)
    • Architecture MVC
    • Webservices REST
    • Exercices - Bases
    • Exercices - Séparer en plusieurs fichiers
    • Exercices - POST et SESSION
    • Exercices - Panier et validation
    • Exercices - Objets
    • Exercices - BdD avec PDO
    • Projet - montage d'ordinateurs
    • Projet - Personnages de Jeux de Rôle
  • Symfony
    • Installer Symfony et son environnement de travail
    • Structure et utilisation d'un projet
    • Le routing
    • Les controllers
    • Twig
    • Les services et l'injection de dépendances
    • Doctrine et la BdD
    • Formulaires
    • Les traductions
    • Event listeners/subscribers
    • Connexion et sécurisation
    • Bundles
    • Easy Admin Bundle
    • API Platform
    • Pense-bêtes
    • Symfony au quotidien
    • Travailler avec Docker
    • Projet : annonces de SPA / éleveurs
    • Exercices
  • Javascript
    • Les bases du langage
    • Manipulation logique
    • Le DOM
    • JQuery
    • Ajax
    • Programmation orientée objet
    • Webpack
    • Outils utiles
    • Révisions
  • Serveur Lamp
  • Déploiement
    • Des outils et manières de faire
    • Déploiement par FTP
    • Wordpress
    • Intégrer Git dans le processus
    • GitHub Pages pour déployer facilement
    • Symfony et Angular
  • Docker
  • Intégration continue
  • Sécurité informatique

Historique

Principes fondateurs

En vidéo :

  • Liberté d'exécution
  • Liberté de lecture du code
  • Liberté de redistribution
  • Liberté de modification

En opposition au logiciel propriétaire, dont le fonctionnement est opaque et géré de manière privée (seul un petit groupe peut en connaitre le fonctionnement et le modifier), le logiciel libre est gratuit à exécuter, le code est visible de tous (nécessite quelques compétences pour le lire 😉 ), peut être modifié par tous et redistribué à tous. Ces logiciels doivent également avoir un périmètre fonctionnel simple, adapté au besoin, ne doivent pas dépendre d'un vendor (logiciel ou librairie sous licence non libre) et utilisable par le plus grand nombre (ce dernier point est éternellement sujet de débats).

En général, les logiciels libres utilisent des outils de gestion de version (comme Git), pour permettre ce travail collaboratif (via les Pull Requests, sur Github, par exemple).

Pour assurer la pérennité de ces projets, des licences ont été mises en place, comme les licences GPL, BSD, MIT, Apache, etc. Toutes garantissent la propriété et les valeurs fondamentales de ces logiciels. Par exemple, Symfony est distribué sous licence MIT.

Historique

  • Noyau développé en 1991 par Linus Torvalds
  • Nombreuses distributions basées dessus
    • Debian (maintenue depuis 1993 et que nous allons voir)
    • Red Hat
    • Arch Linux
    • Et bien d'autres...
  • 85% des smartphones et tablettes tactiles et de nombreux serveurs (LAMP)
Dernières mise à jour :
Prev
Installation
Next
Rangement des fichiers