• Нужны доводы против последовательных целочисленных индексов

    @Romanych
    Вообще говоря использовать uniqueidentifier'а в качестве Primary Key плохая затея. Говорю это из своего опыта. Когда проект только начинался мы бездумно сделали все PK c типом uniqueidentifier, и через год, когда количество записей стало исчисляться миллионами, база данных начал непонятно тупить. Тогда мы узнали что такое фрагментация индексов. Фрагментация кластерного индекса очень сильно замедляет вставку. Говоря о выборке, банальные join'ы 100 на 100 записей стали медленными, потому что серверу надо делать множество сиков на диске для перехода к нужной записи. И не говорите о плохих индексах, в данном случае мы выжали всё что могли, и именно сики стали головной болью. Перенос огромной базы на SSD тоже на самая безопасная операция. Так уже больше года мы потихоньку меняем старые Guid'ы на int/bigint и с болью вспоминаем то неосмотрительное решение.

    Я бы рекомендовал вам разработать архитектуру с хорошим слоем проверки безопасности. И тогда перебор id ничего не даст злоумышленнику. Также никто не мешает добавить ещё одну колонку SecureId и использовать её в местах, которые совсем-совсем не хочется показывать наружу.
    Ответ написан
    3 комментария
  • Как нарисовать конструкцию try-catch-finally на блок-схеме?

    denver
    @denver
    Сдается мне что try catch это обычно не часть алгоритма, а его имплементация на конкретном языке. В вашем алгоритме здесь скорее всего должен быть стандартный ромбик (который для if используется), и не должно быть деталей реализации (как то: ЯП, БД,… — все это не относится к алгоритму)
    Ответ написан
    4 комментария
  • Git или SVN, что?

    gricom
    @gricom
    Если в SVN вам не нравится только наличие лишних служебных файлов в каждой директории, то вы можете перейти на SVN 1.7, в котором этого уже нет
    Ответ написан
    1 комментарий