Я на ранніх етапах проектування системи, яка по суті буде розбита на дві частини. Одна частина - це послуга, а інша - інтерфейс із сервісом, що надає дані через щось на зразок OData або XML. Додаток буде базуватися на архітектурній схемі MVC. Для переглядів ми розглядаємо можливість використання XSLT або Razor під ASP.NET.
XSLT або Razor допоможуть забезпечити розділення проблем, коли оригінальний XML або відповідь представляє вашу модель, XSLT або "Перегляд бритви" представляє ваш погляд. Я залишу контролер поза цим прикладом. Початкова проектна пропозиція рекомендує XSLT, однак я запропонував використовувати Razor замість цього в якості більш доброзичливого вигляду двигуна.
Це причини, які я запропонував для Razor (C #):
- Простіше працювати і створювати складніші сторінки.
- Легко можна отримати не * * ML-вихід, наприклад, csv, txt, fdf
- Менш деталізовані шаблони
- Модель перегляду сильно набрана, де XSLT потрібно покластися на конвенцію, наприклад, булеві значення або значення дати
- Розмітка є більш доступною, наприклад, nbsp, нормалізація нового рядка, нормалізація значення атрибута, правила пробілів
- Вбудований HTML-помічник може генерувати код перевірки JS на основі атрибутів DTO
- Вбудований помічник HTML може створювати посилання на дії
А аргументи для XSLT над бритвою були:
- XSLT - це стандарт і буде існувати ще багато років у майбутньому.
- Важко випадково перенести логіку в погляд
- Простіший для непрограмістів (з чим я не згоден).
- Це було успішно в деяких наших минулих проектах.
- Значення даних за замовчуванням кодуються HTML
- Завжди добре сформований
Тож я шукаю суперечки з будь-якої сторони, рекомендації чи будь-який досвід щодо подібного вибору?