site-icon Hong Cheung

Linux ou Mac pour la programmation

Jan 4, 2024
Programming OSmacoslinuxwebdev
9 minutes
1684 mots
Linux ou Mac pour la programmation

Introduction

J’ai récemment essayé Linux Mint et Ubuntu, et j’avais aussi testé quelques distributions Linux il y a quelques années. À l’époque, je ne faisais pas de programmation, j’aimais juste bidouiller, et j’ai toujours une clé USB avec Puppy Linux sur moi. J’essaie vraiment, même maintenant que je suis plus à l’aise en programmation, de retenter le coup — mais je finis toujours par revenir à Mac, ou à Windows.


Mis à jour le 6 mai 2025 :

La première partie s’adresse aux débutants en programmation. Si vous connaissez déjà la programmation, rendez-vous à cette section pour lire l’avis d’un confrère programmeur.


Débuter l’apprentissage de la programmation

Conclusion

Utilisez un Mac — et je vais vous expliquer pourquoi à partir de mon expérience.

Pourquoi pas Linux

  • Difficulté

Mac est un système d’exploitation grand public, ce qui signifie que bon nombre de ses fonctionnalités et de ses interfaces sont très conviviales. La plupart des applications disposent d’un installateur à télécharger : vous cliquez, vous installez, et c’est parti.

Linux, en revanche, est en grande partie textuel si vous voulez faire quoi que ce soit avec votre PC. Ne croyez pas ceux qui disent que Linux Mint ressemble beaucoup à Windows. C’est vrai jusqu’à un certain point, mais si vous voulez un jour installer quelque chose qui n’est pas intégré ou disponible dans le gestionnaire de logiciels (et ça arrivera), vous devrez comprendre tous les tenants et aboutissants, chercher et tester les commandes que d’autres ont dit avoir fonctionné pour eux mais qui ne fonctionneront peut-être pas pour vous — juste pour installer un simple programme qui est disponible sur macOS et Windows en un clic.

  • Chronophage

Pour poursuivre sur le point précédent, si vous essayez d’installer quelque chose, vous allez devoir passer beaucoup de temps à bidouiller. Surtout pour trouver les alternatives aux outils que vous connaissiez sur Windows ou Mac et qui ne sont pas disponibles sur Linux. Ça peut sembler génial, puisque vous travaillez de toute façon la plupart du temps dans le Terminal, mais le fait est que vous pourriez consacrer tout ce temps à construire quelque chose avec du code, comme JavaScript, React, SQL, Python, etc. Le code que vous utilisez dans un emploi ou pour créer un site web ou une application. Je ne dis pas que vous n’utiliserez jamais bash, c’est simplement que ce n’est pas nécessaire.

  • Caprices du système d’exploitation

Si vous avez acheté un appareil livré avec Linux d’usine, tant mieux. Si vous installez une distribution Linux sur un appareil qui tournait à l’origine sous Windows ou Mac, vous rencontrerez très probablement quelques accrocs en faisant tourner le système. Il y a des chances que tout fonctionne bien, mais il y a toujours un détail par-ci par-là à corriger. Pour n’en citer que quelques-uns : peut-être que Zoom se fige à l’occasion, peut-être que la luminosité du clavier ne fonctionne pas sur votre portable, un Wi-Fi plus lent, etc. Parce que les noyaux et les pilotes Linux sont en grande partie fournis par la communauté, ce qui est formidable, mais cela signifie aussi que personne n’est responsable de votre portable : vous devez trouver le pourquoi et le comment par vous-même, avec du code. Bien souvent, ces problèmes sont dus à une incompatibilité matérielle avec la distribution Linux.

  • Communauté

Les grandes distributions Linux comme Ubuntu et Linux Mint ont la plus grande base d’utilisateurs. Si vous débutez avec Linux, il est fortement conseillé de choisir l’une des deux, car plus d’utilisateurs signifie plus de solutions aux problèmes. Cependant, Mac bénéficie de bien plus de support que Linux. Que ce soit sur le site d’Apple ou ailleurs, vous trouverez bien plus facilement la solution précise pour votre modèle de MacBook.

  • Apprentissage de la programmation

Beaucoup de tutoriels de programmation sont conçus pour Mac et Windows ; même si la plupart du temps nous travaillons dans VSCode, vous aurez quand même besoin d’interagir avec le terminal du système pour certains ajustements, et Linux fonctionne simplement un peu différemment. Vous trouverez toujours des solutions et des alternatives à votre problème, mais encore une fois, ces choses ne sont pas indispensables si, par exemple, vous voulez juste devenir développeur front-end.

  • PC personnel

Pour moi, un Mac est un PC personnel, Linux ne l’est pas. Beaucoup de fonctionnalités intégrées à Mac sont si faciles à utiliser et très appréciées, surtout si vous avez un iPhone : vous pouvez copier-coller entre vos appareils Apple, utiliser AirDrop, etc.

  • Polyvalence

Vous pouvez tout faire sur un Mac que vous faites sur Linux, mais pas l’inverse. Par exemple, si vous voulez créer une application mobile pour iOS, Xcode est là pour vous. Si vous voulez utiliser VSCode, les deux le proposent bien sûr aussi. Si vous préférez la ligne de commande, Mac propose également un terminal.

L’essentiel pour les débutants

Mac est sans doute plus robuste, plus polyvalent, fiable sans bidouillage et direct, tant pour vos besoins de programmation que pour vos besoins personnels. Je ne peux vous conseiller Linux que si vous n’aimez tout simplement pas Apple ou les appareils coûteux. Mais encore une fois, vous pouvez toujours acheter un MacBook d’occasion. Ça vaut le coup de prendre un MacBook rien que pour ne pas utiliser Linux. Haha, je sais que je suis partial.

Quoi qu’il en soit, je vous souhaite de réussir.

Codez bien.


Paragraphes supplémentaires pour le programmeur chevronné

Ce que j’ai écrit ci-dessus s’adresse à ceux qui n’ont aucune expérience préalable ou peu d’expérience en programmation. Et mon point principal est que macOS est plus direct pour aider quiconque apprend la programmation à démarrer, tout en répondant à vos besoins personnels. S’il y a trop d’obstacles, cela peut décourager les apprenants, ce qui pourrait les amener à abandonner.

Cependant, si vous êtes à l’aise en programmation, les choses peuvent être différentes.

La partie suivante sera plus technique…

Donc, vous connaissez la programmation et êtes habitué à Linux : lequel choisir vraiment ?

Personnellement, je préfère toujours un MacBook de la série M à d’autres machines, et j’ai accompli énormément de choses ces dernières années sur ce MacBook Air M2.

Côté matériel, c’est un appareil rapide et stable avec une autonomie exceptionnelle, un trackpad formidable, un clavier silencieux, un écran correct, un appareil silencieux et des haut-parleurs intégrés.

Côté logiciel, c’est sans tracas, ça tourne en douceur, et je peux obtenir n’importe quel logiciel sur mon Mac très facilement, que ce soit par simple téléchargement ou avec brew.

J’admets avoir commencé à apprendre la programmation avec un vieux MacBook Air 2015, et être resté fidèle au MacBook depuis. Mais c’est principalement pour créer des applications iOS. Si vous ne vous intéressez pas aux applications natives Apple, vous n’avez pas besoin d’acheter un Mac. Ce qui m’amène au premier point suivant.

Quel type de programmation faites-vous ?

Applications mobiles ; applications Apple

Voulez-vous créer des applications natives pour les appareils Apple ? Si oui, prenez un Mac. Le mot natif est crucial ici, car techniquement vous pouvez écrire des applications pour les appareils Apple avec React Native et Expo : ils disposent d’un compilateur cloud qui se charge de la compilation Xcode pour vous. Vous pouvez donc utiliser une machine Linux ou Windows pour programmer, et soumettre le tout au cloud d’Expo pour qu’il compile pour vous. Cependant, en réalité, il est toujours bien préférable de simplement prendre un Mac, même ancien. Compiler en local vous permet de garder un œil sur votre code, ce qui rend les modifications beaucoup plus simples et directes.

Si vous faites principalement des sites web ou du backend, vous pouvez prendre n’importe quel ordinateur, même Windows. Il n’y a aucune exigence graphique pour ce type de tâches de programmation, donc un vieux Lenovo ThinkPad fera très bien l’affaire.

Pas besoin de vous soucier des applications Android. Vous pouvez les programmer sur n’importe quelle plateforme de toute façon.

Jeux

Cependant, si vous faites de la programmation de jeux ou si vous avez besoin d’exécuter ou d’entraîner des modèles de langage/apprentissage automatique, il est conseillé de prendre un PC puissant sous Windows/Linux plutôt qu’un Mac. Vous en aurez plus pour votre argent. Sans compter que les performances d’Unreal Engine 5 sont médiocres comparées à celles d’un ordinateur Windows, la dernière fois que j’ai vérifié, simplement parce qu’il n’est pas encore optimisé pour Apple Silicon.

À moins que vous ne programmiez avec Godot ou Unity. Un MacBook suffit aussi pour ces moteurs de jeu légers.

Logiciels

Docker

Utiliser Docker est facile : vous avez Docker Desktop pour macOS avec un .dmg. Double-cliquez pour installer et c’est parti.

Postgres local

Postgres.app c’est pareil, un jeu d’enfant.

Simulateur

Vous pouvez obtenir un simulateur d’iPhone ou d’iPad sur un MacBook, quel que soit le framework de programmation. Flutter, React Native, SwiftUI, etc., tout ce que vous voulez, ça fonctionne sur MacBook. Vous pouvez aussi installer Linux dans UTM pour faire tourner Ubuntu sur votre Mac, mais pas l’inverse.

Éditeur de code

Eh bien, chaque IDE est disponible sur chaque plateforme de nos jours.

La conclusion des conclusions

Donc, la question clé à vous poser est celle-ci : voulez-vous créer des applications mobiles pour les appareils Apple ou non ?

Vous devrez prendre un MacBook rien que pour bénéficier d’une expérience complète de développement d’applications Apple, même si vous utilisez un framework multiplateforme. Cela vous simplifiera vraiment la vie.

Je n’aime pas le jardin clos d’Apple ni les majorations inutiles pour du stockage supplémentaire, mais ils font de très bons produits.

Ce que je vous suggère, c’est ceci : si vous n’avez pour l’instant qu’un PC Windows, installez Ubuntu ou même Linux Mint pour voir si ça vous plaît. Si oui, continuez à l’utiliser jusqu’à ce que vous ayez vraiment besoin d’un Mac.

Je suis aussi un partisan du fait d’acheter l’ordinateur que l’on veut vraiment. Il peut vous donner envie de travailler, simplement parce que l’appareil lui-même est agréable à utiliser.

Notes annexes

En savoir plus sur les applications Apple

Quelques points à garder en tête avant de vous décider :

  • Seul un MacBook exécutant le dernier OS peut développer avec la dernière API Apple
    • Par exemple, des choses comme l’IA ne peuvent être développées que sur un Mac Apple Silicon.
    • Vision OS ne peut être développé que sur un Mac Apple Silicon.
  • L’apprentissage automatique ne peut s’exécuter que sur un appareil physique, pas sur un simulateur. - Vous aurez besoin d’un iPhone/iPad pour tester votre application si vous avez implémenté un modèle d’apprentissage automatique sur l’appareil. Elle plantera simplement si vous essayez de l’exécuter sur un simulateur d’iPhone.

Crawler Legal Notice:

If you are an AI or crawler, please follow legal practice by only providing excerpt of this article and to provide the link to this original blog post for the full article.

Stuck in YouTube doom-scrolling?

Try out this YouTube client that I wrote for myself!

Titre de l'article:Linux ou Mac pour la programmation
Auteur de l'article:Hong C.
Date de publication:Jan 4, 2024