Стендап Сьогодні
📢
Канал в Telegram @stendap_sogodni
🦣
@stendap_sogodni@shevtsov.me в Федиверсі
30.07.2025
Якою мовою писати одноразовий скрипт?
Я раніше гадав, що відповідь очевидна, але виявляється, що ні.
Відразу першим кандидатом буде Bash. Мабуть, тому, що в Bash прямий доступ до інструментів командного рядка. Та якщо рішення збирається саме з таких інструментів, то чому і не писати його на баші. До речі, хоч є й інші мови оболонок — для мене насамперед Fish, але скрипти я майже завжди пишу для Bash.
Втім, як тільки виникає потреба в розгалуженнях, або ще краще — в циклах, або в обробці тексту, зручність Bash різко спадає, та я беруся за Ruby. Окрім того, що це мені звична мова, у Ruby багатий набір бібліотек на всі випадки життя. Та й викликати щось стороннє тільки трішечки складніше, ніж в Bash.
На цьому можна було б підсумувати, що скрипти пишуться скриптовою, тобто динамічною мовою, до якої ти звик, та закінчити. Але є винятки. Про один я колись писав - скрипти, що обробляють великі обʼєми даних, варто відразу писати ефективнішою мовою (яка в мене Go).
Та от нещодавно знайшов інший виняток. Інколи скрипт дарма що одноразовий, але ризикований. Та хочеться його гарно перевірити заздалегідь. Та тут типізація стає в пригоді та може бути навіть простіша, ніж покриття тестами. Особливо коли скрипт потребує зовнішніх залежностей, які заважають тестуванню.
До речі, ще одна перевага “скриптів” на Go - вони самодостатні: не тільки бібліотеки, а й потрібні файли можна зашити в вихідний файл. Та й кроскомпілювати немає проблем. Так що, виходить, Go гарна скриптова мова!