Любая причина не писать свой собственный HTML?

В Seaside во всех этих renderContentOn: методах я могу использовать объект холста HTML для сборки своего дерева DOM.

В настоящее время я пишу кучу помощников для своих компонентов, потому что я использую Twitter Bootstrap для стиля и не хочу постоянно писать весь этот шаблонный код (<div>s en mas).

Для того, как это настроено, самый простой способ для меня — просто (я хочу избежать использования with: aBlock в этих помощниках) написать HTML для обертки DIV следующим образом:

html html: '<div class="control-group">'.

Есть ли у меня причины этого не делать? Есть недостатки?


person Franz    schedule 24.05.2012    source источник


Ответы (3)


Использование холста HTML имеет различные преимущества:

  • HTML-канвас обеспечивает допустимые теги, допустимую структуру тегов, правильное закрытие всех тегов (во время компиляции) и правильное экранирование содержимого.
  • HTML-канвас гарантирует допустимость атрибутов, правильное закрытие всех атрибутов и правильное экранирование содержимого.
  • Как следствие двух вышеупомянутых, HTML-канвас автоматически избегает возможности уязвимостей межсайтового скриптинга (XSS).
  • HTML-холст обеспечивает лучшее повторное использование за счет включения композиции тегов (простые вызовы функций), презентаторов (renderOn: в объектах) и компонентов (renderContentOn: компонентов).
  • Холст HTML позволяет избежать создания ненужных пробелов.
  • Использование холста HTML позволяет использовать стандартные инструменты, предоставляемые IDE Smalltalk для HTML-кода: отправители, средства реализации, механизм рефакторинга (извлечение в метод, извлечение в компонент, встроенный метод, автоматическая перезапись и т. д.).

Я согласен, что в некоторых редких случаях не стоит использовать холст HTML: например, когда большие статические ненужные файлы, поступающие из внешнего источника, должны быть встроены в страницу.

person Lukas Renggli    schedule 24.05.2012
comment
Вполне ответ. Спасибо большое. - person Franz; 25.05.2012
comment
Однако я не могу согласиться с пробелами: я абсолютно ненавижу использовать инструменты разработчика моего браузера, чтобы иметь возможность читать исходный код HTML. - person Franz; 25.05.2012
comment
Однако то, к чему я стремился в своем вопросе, - возможно, вы можете помочь мне с реальной проблемой: stackoverflow.com/questions/10746673/ - person Franz; 25.05.2012

Я не думаю, что есть реальный недостаток в том, чтобы отображать такие статические фрагменты html.

Тем не менее, вы можете проверить интеграцию Seaside с загрузчиком Twitter: http://twitterbootstrap.seasidehosting.st/

person Johan B    schedule 24.05.2012

Перефразируя один из аргументов Лукаса: это в принципе не СУХОЕ. Если вы используете его только один раз, нет никаких проблем. Если вам нужно использовать это несколько раз, холст позволяет вам использовать все возможности чистого повторного использования, которые предлагает вам smalltalk.

person Stephan Eggermont    schedule 25.05.2012