2011-03-04 31 views
9

En varios foros y blogs, veo a algunas personas promocionando HAML y algunas promocionando HTML. ¿Cuáles son las ventajas y desventajas de usar HAML vs HTML?¿Por qué usar HTML y no HAML?

Solo quiero entender lo que me estoy perdiendo si uso HAML a favor de HTML (si corresponde).

+10

Tuve que Google qué HAML es, qué tipo de es una respuesta en sí misma. :) Sin embargo, tiendo a votar para cerrarlo como subjetivo y argumentativo, hay docenas de lenguajes de marcas y discutir las ventajas y desventajas de cada uno me parece algo sin sentido sin un enfoque específico. –

+1

Me gusta HAML, pero quiero saber si me pintaré en una esquina usándolo. No estoy buscando lo que sientes sobre HTML vs HAML. – Fossmo

Respuesta

4

Google HAML. Estoy seguro de que obtendrás material relevante para entenderlo.

Haml es:

  • fácil de leer y visualmente expresa la jerarquía de DOM
  • Fácil de aprender
  • portado a otros idiomas bien mantenido
  • y tiene una enorme comunidad
  • populares con los diseñadores porque toma prestada la sintaxis CSS
  • Casi tan rápido como el simple ERB
  • Hace muchos tipos de errores imposible (o muy difícil)

ve aquí:

+5

Estoy de acuerdo, pero me gustaría destacar que HAML es más para Desarrolladores y que mi Web Designer preferirá usar HTML. – Iain

3

La principal desventaja de usar HAML sobre HTML es simplemente que el HTML se trata sólo de universal entre los desarrolladores web, mientras que la comunidad HAML sigue siendo una comunidad relativamente pequeña. Sin duda, esto haría más difícil encontrar desarrolladores para trabajar en su proyecto en el futuro.

Pero si tiene los recursos, podría argumentar que es una ventaja. Asegurándote de que solo contrataste desarrolladores que tuvieran capacidad y experiencia en HAML.

El otro inconveniente importante que puedo ver es que si tiene gráficos/diseñadores web trabajando en sus plantillas, separados de su equipo de desarrollo, también tendrían que estar familiarizados con HAML. Como se puede imaginar, hay muy pocos diseñadores gráficos/web que sean capaces de hacerlo, y pocas herramientas para ayudarlos.

+0

disculpe cualquier ortografía/gramática deficiente, es tarde aquí – xzyfer

14

Está tratando de comparar manzanas con naranjas. Los navegadores solo entienden HTML. HAML es solo un lenguaje de plantillas que se transforma en HTML (por ejemplo, el mismo resultado final). Si encuentra que la sintaxis de HAML es más fácil que HTML, entonces vaya por ello. Sin embargo, en mi humilde opinión, abstraer los elementos reales que está generando hace que aplicar CSS y navegar por JavaScript sea mucho más difícil.

Personalmente si quería "recortar" mi HTML, me gustaría poner el contenido en las etiquetas (depende de su tecnología de Serverside)

<!doctype html> 
<html> 
<head>...</head> 
<body> 
    <x:awesomeListThing data="$foo"/> 

    <x:foreach data="$bar"> 
    <x:renderBazWidget/> 
    </x:foreach> 
    <div>random content that hasn't been "tagified" yet.</div> 
</body> 
</html> 

A continuación, en el interior plantilla de cualquier etiqueta que usted será capaz de ver el actual HTML estructura que se está generando.

+0

+1 para escribir HTML cuando desea escribir HTML. Aunque la sintaxis similar a XSLT de su ejemplo me hizo pensar dos veces; o) – roryf

+0

jeje, sí XSLT puede ser un poco abrumador a primera vista, pero la idea con etiquetas personalizadas es desglosar los "fragmentos" comunes de código en * re componentes utilizables *. Si se hace bien, el marcado de vistas está muy limpio, y el mantenimiento de las etiquetas hace que las correcciones/actualizaciones globales sean muy fáciles. Incluso si no usa ninguna etiqueta if/else/foreach, los "widgets" individuales se vuelven mucho más fáciles de mantener. – scunliffe

2

Cuando los principales IDEs (como Aptana) aprenden a analizar HAML, podemos volver a la pregunta. En este momento veo la superioridad de HTML en el hecho de que es ampliamente compatible y entendido por los analizadores comunes. Obtiene una coloración de sintaxis adecuada y cualquier error o problema de validación se marca al instante. Esto no es verdad de HAML.

Además, tenga en cuenta las plantillas web.Suelen ser (X) HTML + CSS, ya sean plantillas listas para alquilar o los diseños que su diseñador corta para usted. ¿Cuáles son sus probabilidades de obtener, por ejemplo, una plantilla HAML + SASS en lugar de la habitual XHTML + CSS?

HAML necesita ganar más campo y su comunidad necesita crecer mucho más antes de que sea una alternativa viable al HTML. Actualmente, la mayoría de los programadores web ni siquiera saben qué es HAML, por no mencionar que escriben algo en HAML.

4

En Stackoverflow - HTML tiene 65k seguidores. OBTENDRÁ una respuesta, probablemente muchas respuestas, en un tiempo muy corto. HAML tiene 157 seguidores. Matemática simple