07.09.2012
AndrewVK
В связи с переездом сайта на WebAPI и MVC4 возможны какие нибудь глюки. Если что заметите — пишите.
04.09.2012
AndrewVK
Эксперимент на предмет показа самых активных в последнее время топиков. Ссылка — http://rsdn.ru/stat/hot . Как обычно, предложения и пожелания приветствуются. Особо интересно, насколько удачно топики подбираются и не нужно ли критерии подкрутить.
13.08.2012
AndrewVK
Дабы не вызывать двусмысленных толкований, пункт "удалить сообщение"/"удалить тему" со странички автомодерирования убран. Реального удаления при этом не происходило и раньше, это трактовалось как сигнал модератору.
Вместо этого пункта над каждым сообщением появилась иконка желтого треугольника, нажав на которую вы можете сообщить о нарушенных, по вашему мнению, правилах форума. При этом нужно выбрать причину, по которой вы решили что правила нарушены, из списка готовых, либо ввести свою.

P.S. Не стоит писать хамские комментарии в поле причины и использовать сей механизм для троллинга модераторов. Это обязательно закончится баном.
07.12.2006
AndrewVK
Очень часто в программах встречаются сложные структуры, представляющие собой дерево или граф, состоящий из разнотипных узлов. И, конечно же, при этом имеется необходимость обрабатывать этот граф. Самое очевидное решение - добавить в базовый класс виртуальный метод, который перекрыть в наследниках для выполнения нужного действия и осуществления дальнейшей навигации по дереву. Однако у этого приема есть серьезный недостаток: в нем структура данных оказывается увязанной с обрабатывающими ее алгоритмами. Если нам понадобится алгоритм, отличный от реализованного, то придется добавлять еще один виртуальный метод. Еще хуже, если классы, составляющие дерево, содержатся в недоступном для модификации коде. Одним из вариантов решения проблемы высокой связности в данном случае является паттерн Посетитель.
18.11.2004
AndrewVK
Хочу рассказать про несколько мнений о рефакторинге, кои в ходе моей профессиональной деятельности оказались мифами.

Миф 1. Рефакторинг не нужен или нужен очень редко.
Любой код имеет определенный цикл жизни, который в итоге завершается тем, что из-за запутанности кода его проще оказывается полность переписать. Единственным известным мне способом продлить жизненный цикл существующего кода является его рефакторинг.

Миф 2. Тщательное проектирование позволяет избавится от рефакторинга.
Не существует идеальных архитекторов. Всегда будут ошибки проектирования. Следовательно — рефакторинг в ходе разработки это нормальный процесс, от которого не избавится. Но это еще не все — помимо ошибок проектирования всегда будет ситуация, когда структура кода не оптимальна из-за того что на момент проектирования существует некоторая неопределенность, от которой можно избавиться, только начав разработку.

Миф 3. Рефакторинг это упрощение кода.
На самом деле рефакторинг, как правило, не упрощает...
<  1  2  3  4   rss