Monday, February 1, 2016

Разработка через тестирование. Нужно ли это.

Я попробую тезисно ответить на вопросы

Нужно ли TDD?
Когда его стоит внедрять?
Замедляет ли работу написание тестов?
Какие подводные камни вы можете встретить?

Нужно ли TDD. 


Очень трудно ответить на этот вопрос, для начала нужно внести ясность. 

TDD - это методология, достаточно не сложная, но из-за этого очень трудно понять важность всех мелочей которые в ней пропагандируются. 

Написание тестов - всего лишь написание тестов. Простой пример, если вы научились писать тесты, они вам помогают в работе, вы оценили всю мощь такого подхода, работаете ли вы по TDD? Может быть да, может быть нет. Если вы не проводите рефакторинг после каждого успешного теста - то это уже не TDD ( я могу ошибаться, но к понимаю важности этого момента я шел очень долгое время), более того, если вы не проводите рефакторинг тестов, это тоже не TDD. 

Еще сложный технический момент, само по себе написание тестов не такая простая задача, если вы учитесь писать тесты, то по сути вы учитесь заново программировать ( при условии что вы все делаете правильно) 

Или например вы пишите тесты, но высокого уровня. Например тесты на views для django. Или любые другие высокоуровневые или приемочные тесты  и только их. Это уже не TDD. Вы покрываете систему требованиями, но не контролируете архитектуру. Это разработка через приемочные тесты. 

Вот эта тонкая грань между псевдо-TDD и TDD сильно размыта и большая часть негатива или непонимания TDD идут именно из-за нее. 

Ну и финальный ответ на поставленный вопрос - прост. Обладая опытом разработки через TDD уже после пары проектов вы начнете видеть нужно ли TDD для каждой конкретной задачи. Поэтому как "идеальный программист" вы должны освоить эту методологию. 

Когда его стоит внедрять?

Wednesday, January 27, 2016

Как стать веб разработчиком?

Искал курсы для самообразования, гугл мне выдал дикое количество подобных вопросов. И меня расстроили ответы которые там давали. 

Сам вопрос достаточно популярен. Кто то меняет работу, у кого то возникла грандиозная идея по созданию своего сайта. Кому то нужен интернет магазин или вы просто хотите работать фрилансером из дома. 

 Так как же стать веб разработчиком? 

Tuesday, January 12, 2016

Ссылка на статью с объяснением statsd, graphite, и на объяснение upper_90, mean_90 метрик

Долго не понимал как точно все это работает. Спасибо коллеге дал мне хорошую ссылку.

https://blog.pkhamre.com/understanding-statsd-and-graphite/

Вдогонку, понятное объяснения метрик upper_90 и т.п.

https://gist.github.com/ageron/5212412
 
Каталог сайтов, Добавить сайт