Дистрибутив Linux спрямований на розробників [закрито]


49

Я шукаю найкращий аромат Linux, який би подобався стороні розробника мене. Я любитель відкритого коду та використовую кілька різних мов.

Чи існує таке поняття, як Linux, орієнтований на розробників?


1
Відкриті дискусії не доречно розміщувати тут.
Ігнасіо Васкес-Абрамс

12
Ви повинні трохи вказати, що ви маєте на увазі - Розробники мають дуже сильні (і часто протилежні) погляди на те, що є сприятливим для розробників дистрибутивом.
l0b0

1
@ l0b0: Розробникам потрібен великий вибір сучасних пакетів. Оновлення пакетів вручну, оскільки вони занадто старі, недостатньо ванільні або просто відсутні у сховищі дистрибутива - це марна трата часу. Кінцевим користувачам зазвичай не байдуже, чи актуальний пакет libxyz-dev знаходиться у сховищі.
Філіп

подивіться на FreeBSD
Rui F Ribeiro

Відповіді:


44

На практиці всі дистрибутори використовують майже один і той же ланцюг інструментів розробки, тому вони насправді не сильно відрізняються як платформа для загальної роботи з розробки. Однак деякі мають певні переваги, які можуть мати відношення до певних видів розробки:

  • Комерційні дистрибутиви (RHEL, SLES) мають найкращу підтримку від сторонніх постачальників закритих джерел. Якщо ви хочете працювати з (скажімо) Oracle, вам може бути краще з одним із них, хоча Oracle може бути змушений працювати з більшістю дистрибутивів, якщо встановити потрібні бібліотеки. CentOS складено з джерел RHEL і буде чудово грати з більшістю, якщо не всім комерційним програмним забезпеченням, створеним для RHEL.

  • Якщо ви хочете повозитися, ви можете спробувати Linux From Scratch. Це досить непоганий підручник щодо того, як висить дистрибутив Linux.

  • Якщо ви хочете чогось, для чого майже все, що є або коли-небудь з відкритим кодом, було доступне з сховищ, то дистрибутив, заснований на Debian (Debian або Ubuntu), може бути виграшним. Є причина, яку Canonical вибрав .deb використовувати як систему управління пакетами для Ubuntu.

  • Якщо ви хочете налаштувати все на n-й ступінь, то Gentoo дозволяє відновити всю вашу систему під вашу конкретну архітектуру процесора.

  • Якщо ви хочете отримати традиційний досвід Unix, ви можете спробувати Slackware або FreeBSD (які не є дистрибутивом Linux, але можуть зацікавити ОП). Також сім'я 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, якщо ви працюєте з цим.


Звичайно FreeBSD не є системою Linux. Це може не мати значення для цілей ОП. Зауважте, що існує кілька інших дистрибутивів BSD (OpenBSD, NetBSD, і я, певно, пропустив деякі). Також є безкоштовна версія Solaris, якщо ви займаєтесь подібними речами.
Кіт Томпсон

Ні, це не так, і я здогадуюсь, що це може бути, а може і не мати значення з тих самих причин. Я вибрав цю, оскільки більшість інших дистрибутивів BSD досить спеціалізовані, можливо, за винятком Dragonfly або PC-BSD. FreeBSD - це найпопулярніший з BSD, я думаю.
ЗанепокоєнийOfTunbridgeWells

3
Для розробників стосуються лише пунктів першої та трьох позицій IMHO. Налаштування або досвід Unix цікаві лише для користувачів енергетики та системних адміністраторів. Вони призводять до несумісності (Unix) та непередбачуваної нестабільності (Tuning), що є отрутою для розробників.
Філіп

1
BSD і Solaris дуже бракує апаратної підтримки, і після того, як мали переваги у роботі в мережі, BSD також втратили і на цьому.
vonbrand

12

Чи існує таке поняття, як Linux, орієнтований на розробників?

Так. Це називається Linux.

Fedora (або будь-яка похідна Red Hat) настільки ж хороша, як і будь-які Debian, Slackware, Gentoo або будь-що інше. Серйозно, ви можете розвиватись із будь-яким великим розповсюдженням, це дурне запитання про "орієнтований на розробників" Linux.

Також нерозумно говорити, що будь-який з цих дистрибутивів кращий за інші для розробників. Це просто несерйозно.

Це питання справді просить аргументів.


15
Нерозумно говорити, що це дурне запитання про "орієнтований на розробник" Linux, якщо ви не надасте хороших аргументів, чому це нерозумно.
NN

4
Чесно кажучи, джуко має рацію. Linux хороший для розробників, період.
Sirex

7
Вам дійсно потрібно кваліфікувати "Fedora настільки ж хороший, як і будь-який Debian, Slackware ...". Звичайно, повинні бути причини, чому існують різні дистрибутиви, а це означає, що вони не можуть бути однаково хорошими в будь-якому завданні для різних людей.
tshepang

1
@Theheng: Ви праві, вони не однаково хороші "для будь-якого завдання", крім розвитку. Що стосується інших завдань, які вони виконують, вони іноді демонструють відмінності, але для розробки всі основні дистрибуції однаково хороші.
ata

6
Для своєї роботи мені потрібно стабільне середовище. Враховуючи це, наприклад. Fedora та Ubuntu далеко не стабільні, і я не рекомендую їх. Ви можете сказати, що "Linux добре для розробників" для користувача Windows, оскільки це загальний стан. Коли ви розмовляєте з користувачами Linux, вони, ймовірно, зацікавлені у більш конкретних речах, які б підвищили їх ефективність.
морські піхотинці

5

Я спробував досить багато дистрибуцій, тому що мені дуже подобається це робити.

Я розробник, і я також цікавився питанням гарного Linux для розробників, і, на моєму досвіді, немає жодних дистрибутивів Linux, орієнтованих саме на розробників.

Причина полягає в тому, що як розробник, ви не тільки зможете налаштувати будь-який дистрибутив відповідно до ваших потреб, але вам, безумовно, потрібно знати, як зробити таке налаштування.

Отже, якщо ви не знайомі з Linux:

1) Debian, оскільки на багатьох виробничих веб-серверах працює Debian, тому, ймовірно, гарна ідея дізнатись, як організовані машини Debian. Хороша річ у Debian в тому, що, безумовно, найбільш широко використовуваний Linux (включаючи його похідні, такі як Ubuntu), підтримка, спільнота та кількість попередньо складених пакетів доступні надзвичайно багато. Погано в Debian полягає в тому, що він орієнтований на стабільне виробниче середовище і як такий рідко пропонує вам найновіші кровоточиві речі, які ви, можливо, захочете спробувати як розробник.

2) Arch-Linux (насправді ArchBang) є моїм поточним фаворитом з 3 причин: - Це не забезпечує багато способів простого встановлення та налаштування матеріалів одним клацанням, але має чудовий підручник, який допоможе вам налаштувати все, як ви Хочете, такий підхід дозволяє вам дізнатися багато про те, як все працює у фоновому режимі і означає, що до того часу, як ви все налаштували належним чином, ви будете почувати себе досить чортово комфортно за допомогою системи Linux / Unix. - Це прокатний реліз, який означає, що вам ніколи не доведеться завантажувати нову версію та перевстановлювати все, ви просто оновите систему та Voila !. - Він намагається реалізувати всі найсвіжіші крайові речі, щоб ви завжди були в курсі нових удосконалень програмного забезпечення та як розробника, що справді помітно. -О, і у нього також є велика спільнота.

Але в будь-якому випадку від вас залежить спробувати кілька речей і вирішити, що найкраще підходить для вас. Я можу гарантувати те, що незалежно від того, з яким Linux ви закінчите зв’язувати, завжди є спосіб налаштувати / налаштувати речі на свій смак, так велика справа - навчитися робити це налаштування, а потім ви вибираєте те, що вже попередньо налаштовано як можна ближче до того, що ви хочете в кінцевому підсумку.


4

У дистрибутивах Linux все більше і більше різноманітних ароматів - наприклад, такі дистрибутиви, як Qimo або DoudouLinux, орієнтовані на дітей.

Звичайно, ви можете змінити їх відповідно до ваших потреб (ми говоримо про Linux, правильно:]), але все-таки ви витратите велику кількість часу.

Деякі будуть стверджувати, що це прекрасний спосіб дізнатися нове. Однак вам доведеться зайняти деякий час, щоб копатись у дистрибутиві та налаштовувати речі все одно, це неминуче з будь-яким дистрибутивом.

Але найголовніше - це пакунки.

Деякі приносять вам свіжі (наприклад: Arch), а інші дуже стійкі (наприклад, Debian).

Документація також сильно відрізняється, як щодо апаратної підтримки (драйвери, драйвери, драйвери!).

Враховуючи ці 3 пункти (пакети, документація, драйвери) та ваші власні навички, вам знадобиться трохи часу, щоб виявити деякі основні дистрибутиви.

Гарний початок може бути тут: http://distrowatch.com/


Я сказав, що основні дистрибуції, тобто. головне, щоб посилатися на той факт, що між ними немає великих відмінностей, коли мова йде про розвиток. Я не маю на увазі нішевих дистрибутивів.
ата

3

Fedora - це ранній користувач нових технологій, що дозволяє експериментувати та розвиватися з ними місяцями, перш ніж вони будуть доступні у більшості інших дистрибутивів. Він підтримує безліч мов програмування та бібліотеки з вікна, і дозволяє порівняно легко додати до вашої системи все, що може бути відсутнім. Він має чисто філософію з відкритим кодом, що дозволяє третім сторонам надавати пакети для функцій, що суперечать цьому. Просто не називайте це "Fedora Core" (він втратив "Core" після об'єднання Core та Extras для Fedora 7).


1
Хто назвав це Fedora Core?
thepang

1
Багато людей. Протягом багатьох років.
Ігнасіо Васкес-Абрамс

1
@ IgnacioVazquez-Abrams, що робити з gentoo та
archlinux

Я не можу сказати вам про дистрибутиви, якими я не користуюся. Але звичайно не намагайтеся співвіднести "збірки з джерела" з "корисними для програмування".
Ігнасіо Васкес-Абрамс

3
@ IgnacioVazquez-Abrams: Вам також не слід співвідносити використання нових технологій з кращими розробками . У будь-якому разі, питання недостатньо конкретне ... це залежить від того, що ви розробляєте. Б'юсь у заклад, більша частина світового розвитку покладається на технологію, що не кровоточить. OTOH, Fedora - це дистрибутив, який я б запропонував, якби хтось хотів займатися розробкою GNOME , подібно до SuSE для розвитку Mono та KDE (це ґрунтується на тому, що SuSE є початковим фундатором проекту Mono і є одним з небагатьох основних дистрибутивів, що охоплюють. KDE як робочий стіл за замовчуванням.
tshepang

1

Думаю, виходячи з власного досвіду та відповідей тут, ви більше шукаєте набір додатків та інструментів, які полегшать розвиток та практичніше.

Класна річ у Linux полягає в тому, що будь-який дистрибутив дуже легко налаштувати. Я рекомендую вам знайти список програмного забезпечення, яке ви використовуєте найчастіше під час розробки, і скласти великий тарбол, який ви можете перенести з комп'ютера на комп'ютер (якщо ви багато перемикаєте робочі простори).


0

Для розробки Java / Eclipse розгляньте Debian через Ubuntu / Linux Mint (і, можливо, навіть 32-бітний понад 64-бітний).

Передумови: Я займався розробкою Java / Eclipse RCP * і використовував Ubuntu і пізніше Linux Mint, але зіткнувся з усіма роздратованими помилками, пов'язаними або з нестабільністю в робочому середовищі (Cinnamon на Linux Mint), або дещо складна процедура встановлення JDK Sun Java6 (яка використовується нашим проектом ... 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 не тільки як графічний інтерфейс, але й як бібліотеку для створення власного графічного інтерфейсу, як.


-2

Ubuntu чудовий, серйозно.

Вони мають усі пакети, сучасні та прості в установці. Використовуйте конфігурацію за замовчуванням (= Gnome), і ви витратите більшу частину свого часу на програмування, а не на налаштування.

Установка набору компіляторів gcc, make, autoconf тощо займає 5 хвилин з гідним підключенням до Інтернету. Ще тридцять хвилин, і у вас вже готові до запуску Ruby, Python, JVM Sun та Eclipse.

Редагувати: Ubuntu доставляє додаткові пакети із символами налагодження для багатьох бібліотек. Приємно мати розробників C / C ++.


1
Ваші коментарі стосуються майже всіх інших дистрибутивів Linux!
fpmurphy

1
Цікаво ... go2linux.org/debian-ubuntu-centos-fedora-compation та oswatershed.org (права колонка) Повірте мені, Ubuntu є другом розробника.
Філіп

-3

Відповідь полягає в тому, що не існує гарного Linux для розробки, якщо ви не створите одного, а жоден інший Linux справді не забезпечує стільки, скільки gentoo. Ви компілюєте все з джерела (те, з чим вам слід розібратися, щоб стати розробником. Процес встановлення навчає вас більше про систему, ніж будь-який інший дистрибутив, відповідаючи на багато питань, які ви матимете під час створення програм.

Найкраще - ви можете вибрати, які програми ви хочете розвивати. Якщо ви хочете, щоб java встановила javac або gcj або те і інше. Підтримка громади, як жодна інша, тому, якщо у вас є запитання, на них відповідуть або перекажуть, куди вам потрібно піти, щоб знайти відповідь.

Кожна IDE, яку ви можете придумати, доступна для "появи" / встановлення в gentoo. Хоча встановити це чи просто "зрозуміло", це не просто програмування, але це програмне забезпечення, і якщо ви не можете встановити копію gentoo, я б не хотів запускати ваші програми на моїй машині. Більшість труднощів, які виникають у людей при його встановленні, є наслідком недостатнього знання Linux. Я обіцяю, що вам сподобається після того, як ви все налаштуєте так, як вам подобається.

Після того, як ви встановите його, ви можете створити резервну копію тару та розмістити її на будь-якому комп’ютері, для якого ви встигнете перенастроїти ядро ​​або використовувати його для відновлення, коли речі вийдуть з-під руки.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.