В одной из прошлых статей мы говорили о том, что в некоторых случаях Linux лучше для программирования по сравнению с Windows, потому что он имеет открытый исходный код, используется на серверах, где будут выполняться веб-приложения, многие инструменты были разработаны изначально для Linux, а также здесь есть полноценный терминал.
Однако открытым остаётся вопрос, какой дистрибутив Linux выбрать для программирования, ведь дистрибутивов очень много. В этой статье мы попытаемся ответить на этот вопрос.
Содержание статьи
Какой Linux выбрать для программирования
Давайте сначала разберемся с общими моментами. Как и в прошлой статье, я буду говорить больше про веб-программирование, но многое из этого будет актуально и для других сфер. Какие особенности дистрибутива важны для программирования?
- Простота использования и настройки - как бы то ни было, вы собрались программировать, и вам надо делать работу, а не тратить уйму времени на то, чтобы разобраться как установить нужный инструмент, настроить систему, обновить её или решить какую либо проблему в системе.
- Стабильность - система должна быть достаточно стабильной, с минимумом багов и ошибок.
- Доступность программного обеспечения - все инструменты необходимые для программирования должны быть доступны и легко устанавливаться.
Обычно, всеми описанными выше преимуществами обладают популярные дистрибутивы с большим сообществом пользователей. Производители инструментов для программирования тестируют в них свои программы, а также пишут инструкции как их установить в том или ином дистрибутиве.
Но фактически, вы можете использовать любой дистрибутив, который вам нравится, потому что большинство из них всё равно основаны на тройке лидеров: Debian, Fedora или Arch Linux. И скорее всего, то что работает в основном дистрибутиве, будет работать и в основанных на нём дистрибутивах. Однако, я всё же придерживаюсь идеи, что надо использовать более популярные дистрибутивы, за которыми стоит большое сообщество или компания, потому что они должны быть лучше протестированными и более стабильными, поскольку над ними работает больше людей. Давайте перейдем к списку.
1. Ubuntu
Ubuntu - это один из самых популярных дистрибутивов Linux, разрабатываемых компанией Canonical. Он подойдёт для программирования как новичкам, так и профессионалам. Возможно это лучший Linux для программирования. У большинства программ есть уже собранные Deb пакеты, которые будут работать в Debian и всех основанных на нём дистрибутивах, в том числе и в Ubuntu. Особенно интересны дистрибутивы с длительным сроком поддержки. Они поддерживаются минимум два года, а иногда и дольше, поэтому их не надо переустанавливать каждые шесть месяцев.
К тому же Ubuntu официально выбран для разработки Android. Сборка Android OpenSource Project регулярно тестируется на свежих версиях Ubuntu. Из за популярности Ubuntu, вы можете найти многие инструменты, необходимые для разработки в официальных репозиториях. Даже если их там нет, то есть множество репозиториев PPA, а также пакетный менеджер snap, установленный по умолчанию в системе.
А ещё у Ubuntu есть специальная утилита для разработчиков под названием ubuntu-make, которая позволяет устанавливать различные среды программирования.
2. Fedora
Ещё один довольно популярный среди разработчиков дистрибутив Linux для программирования, разрабатываемый при поддержке Red Hat. В этом дистрибутиве поставляются все самые новые технологии, которые в будущем попадут в Red Hat Enterprice Linux. Этот дистрибутив нравится создателю ядра Linux - Линусу Торвальдсу. На ряду с *.deb пакетами для Debian у большинства программ есть пакеты *.rpm, которые будут работать в Fedora.
В официальных репозиториях есть много инструментов для разработчиков. Конечно, программного обеспечения не так много как для Ubuntu, но его достаточно. Также существует менеджер пакетов flatpak, с помощью которого можно установить многие программы. Поддержка каждой версии Fedora длится около 13-ти месяцев.
Кроме того, у Fedora есть официальный портал для разработчиков на английском языке, На котором рассказано как устанавливать и настраивать многие инструменты для программирования.
3. OpenSUSE
Этот дистрибутив разрабатывается компанией Suse и, как и Fedora использует для установки программного обеспечения пакеты *.rpm. Он не так популярен, как Fedora и Ubuntu, однако предлагает неплохое окружение для разработчиков. У дистрибутива есть две редакции: Leap и Thumbleweed. Редакция Leap имеет фиксированный график релизов и срок поддержки от одного до двух лет. Что касается Thumbleweed, здесь в репозиториях доступны всегда самые новые версии пакетов.
Для настройки системы можно использовать приложение YaST. Кроме того, дистрибутив известен новаторским подходом. В OpenSUSE был одним из первых дистрибутивов, в котором предлагалось использовать файловую систему Btrfs для корня по умолчанию. Для установки разных инструментов программирования можно использовать *.rpm версии их пакетов. Кроме того, если каких либо пакетов не хватает, то можно использовать сервис Open Build System для их получения или установить пакетные менеджеры snap и flatpak.
4. Manjaro
Manjaro - это самый популярный на данный момент дистрибутив, из основанных на Arch Linux. Преимущество Arch Linux в том, что на основе него вы можете построить очень настраиваемую рабочую среду. Однако установка и настройка Arch Linux довольно сложная и занимает много времени. С помощью Manjaro вы можете пропустить установку сложную установку и получить уже готовую рабочую среду.
У дистрибутива есть несколько редакций с различными окружениями рабочего стола. Вы можете использовать KDE или Gnome в зависимости от ваших предпочтений. В Manjaro используется система rolling релизов, однако время от времени выходят обычные релизы, которые просто содержат текущий снимок состояния репозиториев. Для получения различных инструментов разработки можно использовать пакетный менеджер Manjaro или пользовательский репозиторий Arch Linux - AUR.
5. Raspbian OS
Мини компьютер Raspberry Pi был разработан как дешевый компьютер, который сделает программирование более доступным для всех. Чаще всего на этих устройствах используется Raspbian OS и это дистрибутив неплохо оптимизирован для программирования. Также всё это дополняет большое количество инструкций по программированию на Python на официальном сайте Raspberry Pi. Также дистрибутив содержит инструмент визуального программирования под названием Scratch, который поможет сделать первые шаги в программировании новичкам.
Сам дистрибутив основан на Debian, поэтому поддерживает такие же способы установки пакетов. Правда с некоторыми популярными инструментами для программирования могут возникнуть проблемы, потому что Raspberry Pi - это ARM компьютер и не которые программы с могут на нём не работать. Релизы Raspbian выходят довольно часто.
Выводы
В этой статье мы рассмотрели какой дистрибутив Linux выбрать для программирования. Конечно, это далеко не все дистрибутивы и в большинстве случаев вы можете просто пользоваться тем, дистрибутивом, который вам больше нравится или, если вы новичок - то тем, который используется в вашей компании. Тогда более старшим коллегам будет проще помочь возникающие проблемы. А какие дистрибутивы считаете лучшими для этой цели вы? Напишите в комментариях!
Разрабатываю на Ubuntu. Удобно, что все среды разработки легко устанавливаются в ОС и легко найти программу для Ubuntu.
Почему в выводе не написано какой же все таки дистр использовать для программирования?
Ал, рекомендую Ubuntu, LTS версию. Тобеж длительная поддержка. Подробней загугли, но в вкратце это четные версии 16, 18, 20 и т.д. Все просто, понятно, и приятно. Fedora тоже пойдет, но лично мне ближе к душе убунта. Но это уже субъективно. Вот точно не рекомендую для начала Arch. Разве что если по кайфу прям ковырять систему экспериментальным путем, и в душЕ ты мазахист. Сам познакомился с данным семейством как раз на Manjaro. Мне очень понравилось, но я более-менее опытный линуксовод, и знал на что шёл. Опять же ковырять и экспериментировать можно со всеми этими системами. Но проще будет начать с дебианподобной, как Ubuntu.
Тема странная. Наверно правильней было назвать "... для изучения программирования"
У меня была такая последовательность: Ubuntu -> Linux Mint -> Debian -> Arch Linux
Однако начинать с того, от чего уже через несколько минут захочется снести DE, сомнительно.
Слово "некоторые" пишется согласно правилам русского языка только слитно.