Meilleure dissortingbution pour la programmation

Duplicata possible:
Dissortingbution Linux orientée vers les développeurs

Je ne sais pas si cette question est une question à poser ici. Mais quelqu'un peut-il me dire quelle est la meilleure dissortingbution (linux) là-bas pour les programmeurs? Je programme dans plusieurs langues, y compris java et lisp. Je serais heureux de connaître une dissortingbution qui est assez bonne pour les programmeurs tout en restant assez petite pour un téléchargement rapide + installer. Toutes suggestions et critiques constructives sont les bienvenues. C'est ma première question ici, s'il vous plaît, aidez-moi.

IDEs I use: Eclipse/Emacs/KDevelop Languages : C, C++, Java, Python, Perl, Lisp 

La meilleure chose à propos de linux, c'est que c'est à vous de voir comment vous allez l'utiliser, et à quelque fin que ce soit, et c'est gratuit: p Je vous suggère de commencer avec debian, c'est assez poilu pour rencontrer le Linux les programmeurs ont besoin du côté logiciel et pourtant c'est assez minimalist et assez flexible pour les "users" Ne suggérerait pas d'utiliser ubuntu puisque ce n'est pas assez gratuit: P

Il n'y a absolument pas de "meilleure" dissortingbution pour la programmation. On peut soutenir qu'Unix en général est plus convivial pour les programmeurs (et même cela est discutable), mais comparer les dissortingbutions à ce niveau est tout simplement absurde.

En d'autres termes, un user Unix expérimenté saura transformer n'importe quelle dissortingbution en son environnement de programmation favori avec peu d'efforts. Cependant, en fonction de votre niveau de compétences actuel et de la quantité d'effort que vous voulez mettre en personnalisation de votre système, voici quelques vérifications préliminaires que vous pourriez faire:

  • Notez les versions des exécutables qui vous intéressent et vérifiez s'ils sont présents dans les référentiels de vos dissortingbutions. Par exemple, certaines dissortingbutions seront notoirement lentes à adopter la nouvelle version de Python / Ruby / autre. Vous mentionnez Lisp, sachez que Debian 64 bits n'inclut pas de package pour le schéma GNU / MIT . En revanche, Java est retiré de toutes les opérations de reprise de la dissortingbution en raison d'une licence plus forte depuis la reprise d'Oracle. La seule version packagée de Java offerte par Oracle est une RPM (Red Hat based, les dissortingbutions basées sur SuSE vont gérer cela).

  • Si vous faites C / C ++, assurez-vous que la dissortingbution que vous choisissez prend en charge l'architecture sur laquelle vous travaillez.

  • Si vous avez besoin d'options de compilation spéciales sur vos exécutables, il est peut-être préférable d'adopter une dissortingbution qui fait tout de la source comme Gentoo , même si ce n'est pas nécessaire.

Remarque : Le fait qu'une dissortingbution ne présente pas votre application préférée dans son référentiel de gestionnaire de packages n'est pas si mauvaise. Vous pouvez toujours get la source et comstackr vous-même.

À propos de Java: Si vous n'adoptez pas une dissortingbution basée sur RPM, dites Debian, vous avez deux options pour exécuter Java:

  • Oracle présente un tarball "Java" générique qui devrait fonctionner sur n'importe quelle dissortingbution, mais pas à travers le gestionnaire de packages.

  • Vous pouvez adopter des implémentations alternatives de la langue, comme Open-JDK .

Bottom Line

Il n'y a pas de meilleure dissortingbution. Essayez-en un, de preference le même que celui que vous connaissez, de sorte que vous avez une vraie personne pour répondre à vos questions. Si ça ne va pas, essayez-en un autre, jusqu'à ce que vous soyez bien.

Pour en savoir plus:

Y a-t-il une différence de stabilité entre les dissortingbutions Linux?

MISE À JOUR 2015

La situation a radicalement changé ces dernières années.

Aujourd'hui, la réponse est: "Courez tous – EN MÊME TEMPS!"

Tant que vous pouvez exécuter Docker sur votre distro ( et il y a de fortes chances que vous le puissiez ), vous pouvez exécuter des programmes dans n'importe quelle dissortingbution Linux à volonté. Par exemple, voir mes expériences Docker et vous y findez des scripts shell qui exécutent plus de 20 (sic!) Dissortingbutions Linux différentes sur chaque invocation de script. Aujourd'hui, il importe encore less quelle dissortingbution j'utilise, si chaque command que je cours peut être exécutée dans n'importe quelle autre dissortingbution si cela a du sens.

Voici ma réponse originale de 2012:

Meilleure dissortingbution Linux

La meilleure dissortingbution Linux pour la programmation est … tous. Il n'y a vraiment aucune dissortingbution que je sache qui serait mauvaise pour la programmation. Les outils et les langages que vous utilisez sont disponibles sur toutes les dissortingbutions Linux. Les différences ne concernent pas les outils ni les langues, mais les systèmes de gestion des packages, le contrôle des versions, la philosophie, les calendars de diffusion, les bureaux par défaut ou les logiciels installés par défaut, peuvent généralement être modifiés facilement.

Debian

Par exemple, si vous utilisez Debian Stable, votre système sera solide, mais il ne recevra pas de nouvelles fonctionnalités après la sortie, seulement des corrections de bugs et vous ne saurez jamais quand la nouvelle version de Debian Stable sortira.

Si vous utilisez Debian Unstable, vous aurez une version en cours d'exécution qui est toujours à la pointe, mais vous payez le prix que tout n'est pas testé aussi bien que sur Stable.

Ubuntu

Ubuntu est basé sur Debian mais les versions sont plus récentes que sur Debian Stable et il a un calendar de sortie prévisible pour que vous puissiez planifier vos mises à jour à l'avance et vous pouvez utiliser la version Long Term Support et être sûr de corriger les bugs pendant 5 ans .

L'autre différence est qu'Ubuntu ne supporte pas autant d'architectures que Debian, de sorte qu'un logiciel disponible uniquement sur les architectures Intel peut être utilisé par défaut alors qu'il ne peut pas être utilisé par défaut sur Debian.

La différence la plus importante d'Ubuntu autre que les cosmétiques est AppArmour et Upstart mais si c'est un avantage ou désavantage est entièrement à vous. Debian et Ubuntu sont très favorables aux développeurs dans mon expérience.

Arch Linux, CentOS, Fedora, Gentoo, OpenSUSE, Slackware …

Vous pouvez également voir quelles dissortingbutions proposent un support commercial ou si elles sont disponibles dans des sociétés d'hébergement qui proposent un hébergement mutualisé, des servers dédiés, des VPS, etc.

Par exemple Linode offre actuellement ces dissortingbutions: Arch Linux 2012.10, CentOS 6.2, Debian 6, Fedora 17, Gentoo, openSUSE 12.1, Slackware 13.37, Ubuntu 10.04 LTS et Ubuntu 12.04 LTS et vous ne pouvez pas vous tromper en choisissant d'eux. C'est bien d'avoir le même système sur votre ordinateur portable que sur votre server, mais encore une fois vous ne vous en souciez peut-être pas. Cela peut vous donner une idée de la façon dont ils sont testés et largement utilisés.

Collectivités

Une autre façon de vous faire une idée serait de jeter un coup d'oeil aux communautés en ligne des dissortingbutions auxquelles vous pensez. Par exemple Ubuntu a Ask Ubuntu ici sur Stack Exchange afin que vous puissiez le vérifier.

Documentation

La documentation est également quelque chose qui peut être important pour vous. Il y a une belle documentation et un wiki pour Ubuntu. Il existe diverses ressources et documentations Debian .

Ce ne sont que des exemples. Chaque dissortingbution a une communauté et de la documentation, alors cherchez-la et voyez si elle vous satisfait. Gardez à l'esprit que la communauté la plus importante ne doit pas toujours être la meilleure pour vous, vous pouvez vous sentir plus à l'aise avec une dissortingbution plus petite, peut-être même très spéciale, avec une communauté qui appréciera grandement votre intérêt et vos consortingbutions possibles.

Live CDs

Je suggère d'essayer autant de dissortingbutions différentes que vous pouvez raisonnablement essayer sur Live CDs et choisissez ce qui vous convient le mieux.

Vous pouvez commencer à partir de la list des CD live basés sur Linux sur Wikipedia et lire les articles de Wikipédia sur ceux qui vous intéressent pour un bon début.

Bonne chance.

Je vais aller de l'avant et donner mon opinion biaisée. J'ai commencé mon périple Unix avec OpenBSD. Après que je suis vraiment entré dans les choses .Net au travail, j'ai commencé à jouer avec Mono. Le port mono de OpenBSD est assez ancien et ne fonctionne généralement pas bien. Donc, je vais chercher quelque chose de mieux. Ce que j'ai trouvé était Arch Linux

Je pense qu'il y a quelques petites choses sur Arch Linux qui le rendent particulièrement adapté à la programmation:

  1. Extrêmement facile à créer manuellement vos propres packages
  2. Rolling Release, alors au lieu d'attendre un an avant que la prochaine version ne sorte pour que vous puissiez get le dernier logiciel, le dernier logiciel est généralement disponible et disponible. Il n'est généralement pas nécessaire de build à partir de la source pour get la version la plus récente (stable) des logiciels courants (compilateurs, interprètes, etc.)
  3. Toute la communauté semble avoir de l'expérience avec la programmation à un certain niveau. Ceci est un effet secondaire de tout ne pas être emballé dans une jolie interface graphique
  4. Minimalist dans la nature. Ne voulez pas un gestionnaire de window, n'en prenez pas un. Vous choisissez ce qui est initialement installé sur votre système.
  5. Immense référentiel de scripts de construction de packages "non supportés". Je n'ai jamais vu un logiciel qui n'avait pas de script de compilation pour Arch Linux. (bien sûr, certains peuvent être less qu'optimaux, mais il n'est pas pris en charge après tout)

Toute distro devrait faire; c'est à vous. Je suggère Ubuntu: grande communauté, les packages disponibles pour à peu près tout, beaucoup de choses à travailler hors de la boîte.

Si vous êtes prêt à consacrer plus de time à la mise en place de votre système et si vous souhaitez ou avez besoin d'un environnement plus complexe, pensez à Arch Linux.