Стендап Сьогодні
📢 Канал в Telegram @stendap_sogodni
🦣 @stendap_sogodni@shevtsov.me в Федиверсі

🤖🚫 AI-free content. This post is 100% written by a human, as is everything on my blog. Enjoy!

30.07.2025

Якою мовою писати одноразовий скрипт?

Я раніше гадав, що відповідь очевидна, але виявляється, що ні.

Відразу першим кандидатом буде Bash. Мабуть, тому, що в Bash прямий доступ до інструментів командного рядка. Та якщо рішення збирається саме з таких інструментів, то чому і не писати його на баші. До речі, хоч є й інші мови оболонок — для мене насамперед Fish, але скрипти я майже завжди пишу для Bash.

Втім, як тільки виникає потреба в розгалуженнях, або ще краще — в циклах, або в обробці тексту, зручність Bash різко спадає, та я беруся за Ruby. Окрім того, що це мені звична мова, у Ruby багатий набір бібліотек на всі випадки життя. Та й викликати щось стороннє тільки трішечки складніше, ніж в Bash.

На цьому можна було б підсумувати, що скрипти пишуться скриптовою, тобто динамічною мовою, до якої ти звик, та закінчити. Але є винятки. Про один я колись писав - скрипти, що обробляють великі обʼєми даних, варто відразу писати ефективнішою мовою (яка в мене Go).

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

До речі, ще одна перевага “скриптів” на Go - вони самодостатні: не тільки бібліотеки, а й потрібні файли можна зашити в вихідний файл. Та й кроскомпілювати немає проблем. Так що, виходить, Go гарна скриптова мова!