Автор оригинала: Maxi Contieri.
Каждое учебное пособие, которое я прочитал за последние 30 лет, начинается с печально известного примера «Hello World». Это может быть одна из причин, по которой мы пишем дерьмовое программное обеспечение.
«Hello World» – это Первая программа Мы делаем на каждом языке.
Мы можем измерить сложность языка, подсчитав линии, необходимые для получения желаемого выхода.
Мы также можем время, сколько нужно, чтобы Новичок Чтобы выяснить решение (это также известно как «Время Hello World» (TTHW)) Отказ
Эти две метрики не связаны с производительностью.
Многие сайты компилируют разные Здравствуйте, мир Программы в большом количестве языков.
Здравствуйте, World Collection
Проблемы
Привет слово Пример имеет множество проблем, представленных рано, когда разработчики делают свои первые шаги в программировании.
1- это использует глобал на многих языках. Глобальные функции являются кодовым запахом. Обучение их новичкам в их первом примере противоречит.
Alt Text.
2- Здравствуйте, мир Урожайность побочные эффекты (На консоли, файловой системе, принтерах и т. Д.).
3- Мы пишем код, и мы не можем проверить, если оно работает. Мы можем вручную проверить на наличие вывода, но наше программное обеспечение не может утверждать, что наш результат был прав.
4- Если наше HellowOrld Работает сегодня Мы не можем гарантировать, что он будет продолжать работать завтра.
Решение
Все разработчики должны начать с:
function testFalse() { Assert(1==2) }
Преимущества
1- Начнем с сломанного теста. Это первый шаг для начала разработки программного обеспечения в соответствии с Тестовое развитие техника.
Сжимать
2- Мы представляем разработчиков к Непрерывная интеграция/непрерывное развитие Трубопровод с их первой инструкцией.
3- Мы используем нет Глобал или побочные эффекты.
4- Мы показываем важность раннего тестирования.
5- Мы подчеркиваем, насколько важно иметь рабочий код и Автоматизированные тесты С самого первого секунда.
Заключение
Нам нужно перестать писать HellowOrld как первое предложение языка.
В следующий раз вы столкнетесь с новым модулем, пожалуйста, начните с сломанного теста.