• php

    TDD и ООП в PHP

    Из вопросов на форуме сайта www.phpworld.ru:

    > Хотелось узнать, применяете ли вы на практике - при разработке приложений TDD -?

    > если да, то с какой системой тестирования, если нет, то, как вы относитесь к TDD?

    > И еще вопросик о применении ООП в разработке на php, в частности, вы применяете или нет?

    Поскольку вопрос был адресован лично мне, отчечаю, здесь и там:

    Спасибо за очень интересный вопрос. Ответы таковы. Что касается TDD (Test-Driven Development), то лично я не использую этот подход на практике, хотя знаком с ним, в частности с PhpUnit.

    В самом начале мне показалось, что в TDD очень много надуманного, но вскоре я поменял свое мнение. TDD – это великолепный инструмент контроля качества. Однако, поскольку TDD однозначно приводит к росту объема кода, что, впрочем, не всегда является отрицательной характеристикой приложения, и в большинстве случаев значительно (!) увеличивает время работы по проекту – использование TDD всегда и везде мне кажется неоправданной роскошью. Все зависит от рамок проекта. Для того чтобы написать простенькую гостевую книгу для рядового сайта, применение TDD будет являться неоправданной роскошью. А вот если работа ведется над большим проектом, то все как раз наоборот – TDD спасет много времени, убережет от массы багов.

    А кроме этого, Вы уверены, что настолько хорошо владеете TDD, чтобы не убить на него массу времени впустую или не ограничены по времени и бюджету на разработку (очень частое явление)? Если уверены – используйте TDD и вы получите массу преимуществ.

    А на вопрос про ООП (объектно-ориентированное программирование) отвечу однозначно – использовать классы выгодно практически всегда, для приложений разного уровня от простых до самых сложных, где без ООП вообще что либо трубно сделать. А уж особенно в PHP5, где почти все основные улучшения языка были направлены на развитие ООП.

    И дело не только в том, что ООП позволяет с легкостью использовать однажды написанный код повторно или с минимальными изменениями. А в том, что классы позволяют писать максимально гибкий и надежный код, что даст вам возможность спасть спокойно и без TDD.

    Лично я без классов уже года 2 как ничего на PHP не пишу.

    Опубликовано: Категория: phpКомментарии: 3

    Комментарии (оставить комментарий)

    Комментарий
    Илья Семин

    Леонид, а можно подробнее про TDD. Или ссылочку. В яндексе выдает полную чушь.

    Ответить

    03.02.2006

    Комментарий
    Леонид Лукин

    Да Яндекс и будет находить всякий мусор, тема ведь пока новая не только для нас.
    Советую разбираться с TDD сразу на примерах - вот ссылка на бесплатную книгу по пакету TDD PHPUnit - http://www.phpunit.de/pocket_guide/index.en.php. Читайте в онлайне или скачайте книгу в CHM формате.
    Удачи, потом поделитесь впечатлениями.

    Ответить

    03.02.2006

    Комментарий
    Илья Семин

    Кстати недавно обсуждалось тут: http://phpclub.ru/talk/showthread.php?s=&threadid=79688&highlight=PHPUnit

    Ответить

    03.02.2006

    Оставьте свой комментарий

    Ваше имя: Email: Оставьте свой email, если хотите получать уведомления о комментариях на этой странице. Ваш email не будет опубликован на сайте.