Я ищу лучший вариант Linux, который бы понравился разработчикам. Я любитель открытого исходного кода и использую несколько разных языков.
Есть ли такая вещь, как Linux, ориентированная на разработчиков?
Я ищу лучший вариант Linux, который бы понравился разработчикам. Я любитель открытого исходного кода и использую несколько разных языков.
Есть ли такая вещь, как Linux, ориентированная на разработчиков?
Ответы:
На практике все дистрибутивы используют одну и ту же цепочку инструментов разработки, поэтому они не сильно отличаются в качестве платформы для общей разработки. У некоторых, однако, есть определенные преимущества, которые могут иметь отношение к определенным типам работ по разработке:
Коммерческие дистрибутивы (RHEL, SLES) имеют лучшую поддержку от сторонних поставщиков закрытых источников. Если вы хотите работать с (скажем) Oracle, вам лучше использовать один из них, хотя Oracle можно настроить для работы с большинством дистрибутивов, если вы установите правильные библиотеки. CentOS скомпилирован из исходных текстов RHEL и будет прекрасно работать с большинством, если не со всем коммерческим программным обеспечением, созданным для RHEL.
Если вы хотите повозиться, вы можете попробовать Linux From Scratch. Это довольно хороший урок о том, как дистрибутив Linux висит вместе.
Если вы хотите что-то, для чего практически все, что есть или когда-либо было с открытым исходным кодом, доступно из репозиториев, тогда дистрибутив на основе Debian (либо Debian, либо Ubuntu) может быть выигрышным. Canonical выбрала .deb для использования в качестве системы управления пакетами для Ubuntu.
Если вы хотите настроить все на n-й уровень, то Gentoo позволит вам перестроить всю вашу систему под конкретную архитектуру вашего процессора.
Если вам нужен опыт «традиционного Unix», вы можете попробовать Slackware или FreeBSD (который не является дистрибутивом Linux, но может представлять интерес для OP). Кроме того, семейство BSD особенно хорошо работает в сети, поэтому может предложить преимущества перед Linux разработчикам, работающим в этой области.
Из них в прошлом я неоднократно использовал CentOS, Debian, Fedora, Ubuntu, Slackware и FreeBSD, а также несколько других (Vector, SLS, Yggdrasil и различные версии Redhat начиная с версии 4.0). В качестве среды разработки «unix» все они предлагали инструменты той эпохи и могли быть использованы для разработки с помощью комплектного инструментария или для загрузки и сборки всего, что вам нужно.
Unix был когда-то описан как IDE, маскирующийся под операционную систему, или слова на этот счет. Любой вариант Unix или Linux может дать вам опыт разработчика Unix, если вы этого хотите. В какой-то момент я не особо заботился об окружающей среде. Я действительно использовал оконный менеджер, чтобы открыть окна xterm и запустить несколько приложений; все остальное в значительной степени было сделано из командной строки. Большинство разновидностей Unix или Linux могут это сделать.
Если вы в C, то vim или emacs с ctags, make и gcc работают довольно хорошо; Вы можете использовать GDB с или без интерфейса. Эта цепочка инструментов также обеспечивает хорошую поддержку таких языков, как perl или python, и поставляется с богатой экосистемой поддержки сторонних инструментов.
Для более ориентированного на GUI рабочего процесса все сводится к личному выбору оконного менеджера, среды рабочего стола и средств разработки. Если вы в Java, то Eclipse и NetBeans основаны на большинстве основных дистрибутивов. Существуют различные традиционные IDE с поддержкой C / C ++, Perl, Python и других языков сценариев. Они могут работать на большинстве, если не на всех дистрибутивах Linux. Java поддерживается только на BSD через сторонние порты, поэтому вам лучше использовать Linux, если вы работаете с этим.
Есть ли такая вещь, как Linux, ориентированная на разработчиков?
Да. Это называется Linux.
Fedora (или любая производная от Red Hat) так же хороша, как любой Debian, Slackware, Gentoo или любой другой. Серьезно, вы можете разрабатывать с любым крупным дистрибутивом, глупо задавать вопрос о «ориентированной на разработчика» Linux.
Также глупо говорить, что любой из этих дистрибутивов лучше других для разработчиков. Это просто несерьезно.
Этот вопрос действительно требует аргументов.
Я попробовал довольно много дистрибутивов, потому что мне действительно нравится это делать.
Я разработчик, и я также удивлялся хорошему Linux для разработчиков, и, по моему опыту, нет никаких дистрибутивов Linux, предназначенных специально для разработчиков.
Причина в том, что как разработчик вы не только сможете настроить любой дистрибутив в соответствии с вашими потребностями, но вам определенно нужно будет знать, как выполнить такую настройку.
В общем, если вы не знакомы с Linux:
1) Debian, потому что многие производственные веб-серверы работают под управлением Debian, поэтому, возможно, стоит узнать, как организованы машины Debian. Хорошая вещь о Debian состоит в том, что, поскольку он определенно является наиболее широко используемым Linux (включая его производные, такие как Ubuntu), поддержка, сообщество и количество доступных предварительно скомпилированных пакетов чрезвычайно обширны. Плохая вещь в Debian заключается в том, что он нацелен на то, чтобы быть стабильной производственной средой, и поэтому редко предлагает вам самые последние новинки, которые вы, возможно, захотите попробовать в качестве разработчика.
2) Arch-Linux (на самом деле ArchBang) - мой любимый в настоящее время по трем причинам: - Он не дает много простых способов установки и настройки одним щелчком, но имеет отличный учебник, который поможет вам настроить все как вы Если хотите, этот подход позволяет вам многое узнать о том, как все работает в фоновом режиме, и означает, что к тому времени, когда вы все настроите правильно, вы будете чувствовать себя чертовски комфортно, используя систему Linux / Unix. - Это релиз, который означает, что вам никогда не придется загружать новую версию и все переустанавливать, вы просто обновляете систему и вуаля! - Он пытается реализовать все самые последние новинки, так что вы всегда будете в курсе новых улучшений программного обеспечения, и как разработчик, это действительно заметно. -О, и у него тоже отличное сообщество.
Но в любом случае, в принципе, вам нужно попробовать несколько вещей и решить, что лучше для вас работает, и я могу гарантировать, что независимо от того, с какой Linux вы в итоге завязываете, всегда есть способ настроить / настроить материал по своему вкусу, поэтому главное - научиться делать эту настройку, а затем выбрать то, что уже сконфигурировано, как можно ближе к тому, что вы хотите получить в итоге.
В дистрибутивах Linux появляется все больше и больше разных вариантов - например, есть такие дистрибутивы, как Qimo или DoudouLinux, которые ориентированы на детей.
Конечно, вы можете изменить их в соответствии со своими потребностями (мы говорим о Linux, верно:]), но, тем не менее, вы потратите огромное количество времени.
Некоторые утверждают, что это отличный способ узнать что-то новое. Тем не менее, вам все равно потребуется время, чтобы покопаться в дистрибутиве и настроить материал, это неизбежно в любом дистрибутиве.
Но самое главное это пакеты.
Некоторые приносят вам свежие (например, Arch), а другие - очень стабильные (например, Debian).
Документация также сильно различается, что касается аппаратной поддержки (драйверы, драйверы, драйверы!).
Учитывая эти 3 пункта (пакеты, документация, драйверы) и ваши собственные навыки, вам нужно некоторое время, чтобы открыть для себя некоторые основные дистрибутивы.
Хорошее начало может быть здесь: http://distrowatch.com/
Fedora является одним из первых пользователей новых технологий, позволяющих вам экспериментировать и разрабатывать их за месяцы до того, как они появятся в большинстве других дистрибутивов. Он поддерживает множество языков программирования и библиотек "из коробки" и позволяет относительно легко добавлять в вашу систему любые файлы, которые могут отсутствовать. Он имеет чистую философию с открытым исходным кодом, позволяя третьим сторонам предоставлять пакеты для функций, которые противоречат этому. Только не называйте это «Fedora Core» (он потерял «Core» после слияния Core и Extras для Fedora 7).
Я думаю, основываясь на моем собственном опыте и ответах здесь, вы ищете больше набор приложений и инструментов, которые сделают разработку проще и практичнее.
Крутая вещь в Linux заключается в том, что любой дистрибутив очень легко настроить. Я бы порекомендовал вам найти список программного обеспечения, которое вы чаще всего используете при разработке, и создать большой архив, который вы можете переносить с компьютера на компьютер (если вы часто переключаете рабочие пространства).
Для разработки Java / Eclipse рассмотрим Debian поверх Ubuntu / Linux Mint (и, возможно, даже 32-битные над 64-битными).
Предыстория: Я занимался разработкой Java / Eclipse RCP * и использовал Ubuntu и более позднюю версию Linux Mint, но столкнулся со всеми видами досадных ошибок, связанных с нестабильностью в среде рабочего стола (Cinnamon в Linux Mint), или несколько сложная процедура установки Sun Java6 JDK (которая используется нашим проектом ... Ubuntu / Linux Mint поставляется только с OpenJDK в их репозиториях).
Недавно я запустил Debian 6 Squeeze на виртуальной машине и понял, как эти вещи работают намного лучше. Установка Sun Java требует только добавления ключевого слова «non-free» после основной строки репозитория в /etc/apt/sources.list, а затем установки через apt-get, и рабочий стол (Gnome2), поставляемый с ним, также намного более стабилен чем альтернативы Gnome3 / Unity / Cinnamon в Ubuntu / LinuxMint.
[*] Eclipse RCP означает, что вы используете Eclipse не только как графический интерфейс, но и как библиотеку для создания своего собственного графического интерфейса.
Ubuntu отлично, серьезно.
У них есть все пакеты, современные и простые в установке. Используйте конфигурацию по умолчанию (= Gnome), и вы будете тратить большую часть своего времени на программирование, а не на настройку.
Установка пакета компилятора gcc, make, autoconf и т. Д. Занимает 5 минут с приличным подключением к Интернету. Еще тридцать минут, и вы готовы к запуску Ruby, Python, Sun JVM и Eclipse.
Изменить: Ubuntu поставляет дополнительные пакеты с символами отладки для многих библиотек. Приятно иметь для разработчиков C / C ++.
Ответ в том, что нет хорошего Linux для разработки, если только вы не создадите один, и никакие другие linux на самом деле не предоставляют столько возможностей в этой области, как gentoo. Вы компилируете все из исходного кода (то, с чем вы должны быть хитрым, чтобы быть разработчиком. Процесс установки учит вас больше о системе, чем любой другой дистрибутив, отвечая на многие вопросы, которые у вас возникнут при создании приложений).
Самое приятное, что вы можете выбрать, какие программы вы хотите разработать. Если вы хотите java, установите javac или gcj или оба. Поддержка сообщества не отличается от других, поэтому, если у вас есть вопросы, на них будут даны ответы или они помогут вам найти ответ.
Каждая IDE, о которой вы можете подумать, доступна для "появления" / установки в gentoo. Хотя это не невероятно легко установить или «просто» понять, ни программирование, и если вы не можете установить копию gentoo, я бы не хотел запускать ваши программы на моей машине. Большинство трудностей, с которыми люди сталкиваются при его установке, связаны с отсутствием фундаментальных знаний о Linux. Я обещаю, вам понравится после того, как вы все настроите так, как вам нравится.
После того, как вы установите его, вы можете создать резервную копию tar и поместить его на любой компьютер, для которого у вас есть время, чтобы перенастроить ядро или использовать его для восстановления, когда ситуация выходит из-под контроля.