Java Developer
6.46K subscribers
235 photos
8 videos
12 files
279 links
MAKE JAVA GREAT AGAIN

Мемы: @java_memes
Download Telegram
October 2, 2018
October 2, 2018
​​Test Last Development

Чтобы избежать ошибок при новых доработках разработчики пишут модульные тесты. Они позволяют изолированно проверить работу публичных методов классов.

TLD – подход, когда тесты пишутся в последнюю очередь - после написания кода, сборки и проверки приложения на работоспособность. То есть разработчик сначала проверяет вручную, что приложение работает как надо и не ломает существующие тесты. А потом пишет модульные тесты, которые защищают код от поломки из-за будущих доработок.

Минусы TLD. Если время на разработку ограничено, то модульные тесты могут быть и не написаны. Разработчик проверил, что приложение работает и запушил. Таким образом не развивается дисциплина написания тестов. Плюс когда тесты пишутся в конце, дизайн кода может стать таким, что код будет неудобно покрывать модульными тестами. А это приводит к рефакторингу и дополнительным затратам времени.
October 3, 2018
October 4, 2018
October 4, 2018
October 4, 2018
​​Test Driven Development

TDD – подход разработки ПО, который основывается на повторении коротких циклов. Изначально пишется тест, который покрывает желаемое изменение, далее пишется сам код, который позволяет пройти данный тест, и в конце проводится рефакторинг нового кода к соответствующим стандартам.

Коротко, TDD-процесс состоит из элементов, которые повторяются в цикле: написание теста, написание кода и рефакторинг.

Такой подход заставляет писать код мысля иначе. Мы знаем постановку задачи. Заранее придумали общий верхнеуровневый алгоритм решения задачи и выделили список требований к функционалу. Но над алгоритмами низкого уровня пока ещё не думали. Итак, наши требования группируются по некоторым признакам. Эти группы являются будущими компонентами программы.

Мы берём первую группу требований и проектируем интерфейс. Берём требование, пишем тест, в тесте определяем несуществующий метод несуществующего класса. Далее с помощью среды разработки устраняем очевидные проблемы, создаём интерфейс, метод и реализующий его класс. Запускаем тест. Тест падает, поскольку вызываемый метод не делает пока ничего. Если тест прошёл, значит он написан неверно. Дорабатываем тест пока он не будет падать при запуске. Такой тест называется красным.

Далее наша задача написать минимум кода, чтобы красный тест стал зелёным. Пишем код, проверяем тест и запускаем остальные тесты. Если он зелёный, то переходим к следующей стадии – рефакторингу и редизайну кода. Потом снова запускаем тесты. Упало – исправляем. Далее переходим к следующему требованию – снова красный тест, минимум кода чтобы он стал зелёным, рефакторинг, проверка. И так далее.
October 4, 2018
October 5, 2018
October 5, 2018
October 6, 2018
October 7, 2018
October 7, 2018
​​Comments

Комментарии — это строки в коде, которые не влияют на выполнении программы.

Однострочный комментарий
// single line comment

Многострочный комментарий
/*
  /*not compile*/
  comment
*/

JavaDoc
/**
* JavaDoc comment
* @author zybkin
*/

Попробуйте напечатать и запустить код с картинки
October 8, 2018
​​Зарплаты в IT

Средние зарплаты в IT из октябрьского номера журнала Зарплатомер
October 8, 2018
​​Keywords

— ключевые слова нельзя использовать в качестве имён переменных, методов или классов
const и goto зарезервированы, но не используются
— на скрине все ключевые слова, которые есть в Джаве
October 9, 2018
October 9, 2018
October 10, 2018
October 10, 2018
October 12, 2018