Найдено результатов: 2

Тестовые утверждение против утверждения

В моем самом C++ проекте я активно использовал оператор ASSERTION следующим образом:

int doWonderfulThings(const int* fantasticData)
{
    ASSERT(fantasticData);
    if(!fantasticData)
        return -1;
    // ,,,
    return WOW_VALUE;
}

Но сообщество TDD, похоже, любит делать что-то подобное:

int doMoreWonderfulThings(const int* fantasticData)
{
    if(!fantasticData)
        return ERROR_VALUE;
    // ...
    return AHA_VALUE;
}

TEST(TDD_Enjoy)
{
    ASSERT_EQ(ERROR_VALUE, doMoreWonderfulThings(0L));
    ASSERT_EQ(AHA_VALUE, doMoreWonderfulThings("Foo"));
}

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

"Google"-они сравнивают "FIRST METHOD" с "ходить по берегу со спасательным жилетом, плавать по океану без всякого безопасного охранника".

Какой из них лучше? Какой из них делает программное обеспечение надежным?

c++   tdd   defensive-programming    

461   5   03:25, 1st August, 2020


Контрольный список уязвимостей программирования веб-сайтов

Смотрите SO пришел онлайн был для меня достаточно образования. Я хотел бы сделать контрольный список различных возможностей и эксплойтов, используемых против веб-сайтов, и какие методы программирования можно использовать для защиты от них.

  • Какие категории vunerabilities?
  • Какие методы защитного программирования?
  • и т.д...

security   defensive-programming    

422   9   06:55, 24th August, 2020