- Да - веб-приложения отличаются от веб-сайтов
Я бы отнесся к ним отдельно. Если у вас есть одна часть вашего сайта, представляющая собой просто набор документов (которые одинаково выглядят как для анонимных пользователей, так и для вошедших в систему пользователей), то лучший способ структурирования ее сильно отличается от веб-приложения, которое динамически обслуживает разные страницы. каждому пользователю. Разделите эти две части сайта на два приложения / компонента и по-разному займитесь каждой частью.
- Начните использовать контроль версий
Как только ваш код окажется под контролем версий, вы можете пройти и, уверенно, удалить весь ненужный код, который вы ранее хранили «на всякий случай» и т. Д. Я не знаю, как я выжил без контроля версий.
Если все четыре разные ссылки указывают на один и тот же ресурс, то проблема гораздо больше. Вы заканчиваете тем, что имеете дело с бесконечным количеством URL. Как можно скорее убедитесь, что у вас есть политика нормализации URL. Как только это будет сделано, вы можете начать добавлять семантические значения к URL-адресам и иметь возможность выполнять обратный поиск из ресурса в URL. Это позволяет отделить «веб-отпечаток» от «ресурсов» сайта.
Вы должны спросить себя: «Дали URL, какова его нормализованная форма?». Как только вы это поняли. Тогда 50 000+ URL-адресов на вашем сайте можно уменьшить до 2000. что намного легче понять и управлять в вашем уме.
см .: http://www.sugarrae.com/be-a-normalizer-a-c14n-exterminator/
- Начните с моделирования «что есть», а не «что вы хотите»
Если вы убираете устаревший сайт, который с самого начала не разрабатывался с учетом передового опыта, то возникает соблазн перейти от «беспорядка» к «идеальному дизайну». Я считаю, что вам нужно сделать это, по крайней мере, в два этапа: «беспорядок» -> «хорошо смоделированный устаревший код» -> «идеальный новый код с дополнительными функциями». Прекратите добавлять функции. Сконцентрируйтесь на том, чтобы исправить беспорядок или скрыть его за антикоррупционным уровнем. Только тогда вы сможете начать менять дизайн на что-то лучшее.
Смотрите: http://www.joelonsoftware.com/articles/fog0000000069.html
Смотрите: http://www.laputan.org/mud/
- Тестирование это хорошая идея.
Создайте набор тестов / фреймворк и начните добавлять тесты. Но довольно сложно протестировать какой-то устаревший код. Так что не зацикливайтесь на этом. Пока у вас есть фреймворк, вы можете постепенно добавлять тесты.
Смотрите: http://www.simpletest.org/en/web_tester_documentation.html
- Имейте смелость в своих убеждениях
Большая часть литературы о передовых практиках разработки программного обеспечения ориентирована на настольные системы и приложения для корпоративных приложений. Пока ваш сайт в беспорядке, вы читаете эти книги, и вы можете быть в восторге от мудрости, которая исходит от них. Но не забывайте, что большая часть этой передовой практики была накоплена за время до того, как веб / SEO стали важными. Вы много знаете о современной сети, больше, чем упомянуто в классических книгах, таких как POEA, Gof и т. Д. Из них можно многое извлечь, но не стоит полностью отбрасывать свой собственный опыт и знания.
Я мог бы продолжить. Но это те вещи, которые я выбрал, когда превратил старый унаследованный сайт в новый.