17.03.2023
10 хвилин перегляду

Сергій Немчинський: Яку операційну систему вибрати програмісту? Linux, Windows або Mac OS

Сергій Немчинський: Яку операційну систему вибрати програмісту? Linux, Windows або Mac OS

Настав час обговорити, яку операційну систему краще вибрати для програмування. Однак необхідно враховувати, що є певні ситуації, коли ви не можете вибирати операційну систему. Наприклад, якщо ви програміст мовою Swift, то вашою операційною системою має бути Mac OS, тому що інших варіантів просто немає. Так, ви можете помучитися з хакінтошем або придумати щось ще, але це буде нестабільно і незручно, тому давайте розберемося, яка ОС краща для програмування.

У разі використання мови C# я рекомендую використовувати Windows. Ця мова добре працює на Windows, і всі IDE під неї добре структуровані. Хоча ви можете спробувати програмувати на іншій операційній системі, але це буде незручно і трохи криво. І вже точно не потрібно писати на C # на Mac OS.

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

Обговорення має сенс лише для мов та напрямів розробки, які не дуже прив’язані до конкретної операційної системи. Наприклад, PHP, Python, Java, Ruby та багато інших мов нормально працюють на всіх трьох найпоширеніших ОС. На деяких з них ці мови можуть працювати краще, на інших гірше, але в цілому ви можете працювати з будь-якою з них.

Найпоширеніші ОС

Розглянемо, що ми маємо в асортименті. Якщо не брати якісь дуже рідкісні варіанти, то бачимо, що ринок досить якісно поділений між трьома гравцями. Велику частку ринку займає Windows. Причини досить зрозумілі: він продавався набагато більше і дозволяє встановлювати себе взагалі на будь-яке залізо, що є великою перевагою. Детальніше про переваги та недоліки ми поговоримо пізніше. Далі йде Mac OS, а потім Linux. Linux серед програмістів навіть популярніший, ніж Mac OS, тому що саме для програміста його недоліки нівелюються, а переваги стають доступнішими.

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

Windows

Переваги Windows:

  • Надійність

Головною перевагою Windows я назвав би надійність. Зараз ви, звичайно, почнете сміятися, але насправді найсучасніші версії Windows дуже надійні. Наприклад, нові збірки Mac OS і Linux я не дуже рекомендую оновлюватися, а ось з Windows у цьому плані все досить непогано. Тобто виходять цілком осудні оновлення, які не порушують вашу роботу. Я, наприклад, свою Вінду постійно оновлюю на всіх своїх комп’ютерах і дуже рідко виникають якісь проблеми. Якщо ваша операційна система є тим інструментом, за допомогою якого ви заробляєте гроші, звичайно, вам не хочеться, щоб вона регулярно крашилася і щось не працювало. Але минули ті часи, коли ви часто бачили синій екран смерті ☺

  • Доступність

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

  • Програмна підтримка

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

  • Оновлення

Оновлення легкі, прості та зрозумілі, без будь-яких проблем. Різноманітний софт. Це величезна перевага, яка перекриває більшість вад цієї операційної системи. Фактично немає софту, який не встановлюється на Windows або не має якісного аналога. Практично будь-який виробник софту випускає «віндові» програми. Як мінімум, пакет Microsoft Office, який є де-факто стандартом для роботи з документами та повсюдно використовується у корпоративному світі. Наприклад, щоб працювати з офісом на Linux, вам доведеться якісно помучитися. А якщо говорити про якісь складніші і хитріші софтини, включаючи програмістські інструменти, то в більшості випадків для Windows вони точно існують, а ось чи є якісні аналоги для інших операційних систем — треба шукати.

Недоліки Windows

Недоліки, звісно, теж є. Якщо ви встановлюєте якесь криве залізо, воно може мати криві драйвера, що призводитиме до нестабільності вашої операційної системи. Це, до речі, важливий аспект. Саме тому багато хто думає, що Windows нестабільна. Але давайте будемо чесні, на аналогічному кривому залозі підняти Mac OS взагалі не вийшло б. Та й з Linux теж, швидше за все, не вийшло б.

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

Сама по собі система Windows за рахунок того, що вона містить величезну кількість драйверів та рівнів абстракції, на однаковому залізі працюватиме значно повільніше, ніж Linux. Порівняти за швидкістю роботи з Mac OS дуже складно, тому що Mac OS працює тільки на своєму рідному залізі. Навряд чи хтось намагатиметься ставити Windows на Apple-техніку заради перевірки продуктивності.

Linux

Переваги Linux

  • Відкритий вихідний код

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

  • Безпека

Якщо ви дуже сильно б’єтеся над безпекою, то Linux вам добре підійде. Відкритий вихідний код перевіряється величезною кількістю розробників, що робить малоймовірним наявність бекдорів, через які випливають знання у компанії Microsoft або Apple.

  • Висока продуктивність

По архітектурі Linux не дуже відрізняється від Windows – це теж операційна система з монолітним ядром, а не мікроядром, як у Mac OS, тому зависання в драйверах цілком може призвести до зависання всього комп’ютера (на відміну від Mac OS). Однак у Linux безумовно більш висока продуктивність, на тому ж самому залізі він працюватиме істотно швидше, ніж Windows, і буде менш ненажерливий по пам’яті. З іншого боку, всі ці переваги легко нівелювати, встановивши величезну кількість різного софту, що запускається, який буде все гальмувати.

  • Висока варіативність налаштування

Ви можете настроїти практично все. Ви навіть можете зробити Linux схожим на Windows або Mac OS або не схожим ні на що. Ви абсолютно все можете налаштувати під себе. Linux – єдина операційна система, яка дає такі можливості.

  • Просте встановлення модулів

Сучасні версії Linux досить легко дозволяють встановлювати модулі, додаткове ПЗ або ще щось. Як у Apple і Windows, тут є каталог, з якого можна встановлювати модулі. Їх там досить багато, причому багато різного саме для програмістів: компілятори, інтерпретатори всіх відомих та невідомих науці мов програмування та купа іншого програмістського інструментарію. Якщо ви використовуєте Linux не для програмування, можуть виникнути проблеми, тому що в каталозі ви знайдете мало чого корисного. Тому Linux зручний саме для розробників.

Недоліки Linux

Помилки. Зрештою це Open Source, тобто некомерційна розробка, і там бувають ситуації, коли трохи накосячили в розробці, після чого програма може працювати з помилками. І оскільки ніхто не відповідає грішми, помилки можуть виправлятися дуже довго.

Програмне забезпечення, що не підтримується. Наприклад, якийсь Microsoft Office ви просто не поставите. А альтернативи офісу під Linux мені здаються абсолютно незручними. Я використовую офіс дуже активно, причому весь пакет, тому мені з Linux зовсім не зручно цього моменту. Але вам може бути нормально.

Обмежена технічна підтримка. Це із серії, якщо у вас щось не виходить, то проблема у вас. Вирішити будь-які питання з безкоштовною версією Linux просто неможливо. Є комерційні версії Linux, але це зовсім інша історія.

Mac OS

Переваги Mac OS

  • Проста установка

Приблизно така сама, як на Windows, але в більшості випадків Mac OS вже встановлена на комп’ютері і потрібна лише інсталяція оновлень. Я навіть не чув про ситуації, коли користувачеві потрібно встановлювати Mac OS на чистий Macbook.

  • Зовнішній вигляд

Візуальна складова – ще одна перевага техніки Apple. Проте ми розуміємо, що це чиста смакота.

  • Висока багатозадачність

Багатозадачність у Mac OS набагато краща, ніж у Linux і, тим більше, ніж у Windows. Система побудована на мікроядрі, що значно скорочує можливість зависання операційної системи, якщо який-небудь софт впаде. Загалом різні завдання не впливають одне на одного. Це дуже круто.

  • Дуже хороша технічна підтримка

Якщо у вас щось не працює, то вам усе пояснять та розкажуть. Я сам не є користувачем Apple, тому говорю зі слів тих, хто користувався.

  • Ємна батарея

Час роботи на макбуку зазвичай значно більший, ніж на інших ноутбуках.

Недоліки Mac OS

Обмеження використання. Використання Mac OS можливе лише на залізі Apple.

Дорожнеча. Залізо від Apple коштує приблизно на 30%, а іноді навіть на 50+% дорожче за аналогічний за продуктивністю залізо, не від Apple. Навіть незважаючи на те, що сама операційна система Mac OS надається безкоштовно (тоді як Windows коштує грошей), сумарно це все одно найдорожчий варіант.

Не рекомендується для геймерів. Як і Linux, Mac OS практично не підходить для ігор. Якщо ви граєте, вам потрібно або завести окремий ігровий комп’ютер, або купити приставку, або просто не грати. Mac OS – це зовсім не про ігри. Є кілька ігор, які можна запустити, наприклад, World of Warcraft, але це скоріше виняток. Не розраховуйте, що ви можете пограти в якісь новинки. Mac OS – це операційна система виключно для роботи.

Чи не гнучкі оновлення. У принципі, у Apple все дуже чітко і жорстко. Якщо вони вважають, що ви повинні щось зробити, то ви це робите. Це не Windows, де, якщо не хочете, можна зробити потім, і не Linux, де всім начхати, що ви робите.

Складність підключення зовнішнього обладнання. Невелика кількість роз’ємів. Тому якщо ви хочете щось підключити, то маєте це робити через додаткові адаптери, які не завжди дружать із усім обладнанням. Адаптери повинні бути обов’язково фірмові та коштують чималих грошей. Мої знайомі примудрялися підключати до макбука навіть два монітори, але в багатьох випадках це пов’язано з певними проблемами. Знову ж таки, це не Windows, де, щоб щось підключити, потрібно просто встромити в HDMI-роз’єми, що вже є. Я маю на увазі саме залізо.

На якій операційній системі найкраще працювати програмісту

Підведемо підсумки. Якщо ви працюєте мовою, яка жорстко прив’язана до операційної системи, то природно, ви працюєте на цій операційній системі. Якщо ви пишете на Swift, у вас немає інших варіантів, крім Mac OS. Якщо ви працюєте на C#, я раджу працювати на Windows. Якщо ви пишете під Android, тоді використовувати Mac OS категорично не варто краще вибрати Windows або Linux. Для решти мов операційну систему вибираємо виходячи з власних переваг. Якщо у вас є гроші, і ви пристрасний шанувальник техніки Apple, то чому б і ні. Макбук – чудовий комп’ютер для роботи. Якщо ви плануєте не тільки працювати, але й грати, то краще вибрати Windows, тому що ігри на Windows набагато поширеніші, ніж на Mac OS або Linux.

Якщо ви програміст і не збираєтеся рости вище midle, то вам цілком підходить Linux. Але чим вище ви зростатимете, тим менше часу ви витрачатимете на користування IDE, і більше на роботу з програмами малювання UML, різними офісними пакетами та іншим софтом, пов’язаним із роботою в бізнес-сфері. Подібних програм набагато більше, і вони набагато зручніші саме під Windows. Як тимлід, я попрацював рік на Linux і із задоволенням перейшов на Windows. Просто програмувати під Linux ніяких проблем немає, і навіть багато в чому це зручніше. Проте що вищий рівень програміста, то менше його робота пов’язані з написанням коду, а більше — із роботою із замовником, документами, предметної областю тощо. І, я повторюся, все це набагато простіше робити під Windows чи Mac OS.

Якщо у вас зовсім немає грошей, то на слабшому комп’ютері Linux працюватиме набагато швидше. Наприклад, якщо у вас комп’ютер всього з 4 ГБ оперативної пам’яті, краще вибрати Linux.

Я розповів про основні плюси та мінуси кожної операційної системи, але те, що саме ви оберете, залежить тільки від вас.

Завжди ваш Сергій Немчинський

Додати коментар

Ваш імейл не буде опубліковано. Обов'язкові поля відзначені *

Зберегти моє ім'я, імейл та адресу сайту у цьому браузері для майбутніх коментарів