2011-02-02 36 views
5

He encontrado declaraciones como "la cláusula predeterminada" en el contexto de una instrucción switch o "la cláusula JOIN" en el contexto de SQL y sé lo que estas declaraciones significa, pero aún me gustaría ver una definición clara del término.El término "cláusula" en el contexto de la programación

+1

Es imposible definir la cláusula en términos independientes del idioma. ¿Tienes un lenguaje específico? –

+2

@Rafe - Estoy de acuerdo en que no se puede definir qué fragmentos constituyen una cláusula en un idioma particular sin hacer referencia al idioma, pero seguramente el concepto se puede definir sin referencia al idioma. – tvanfosson

Respuesta

6

Es prácticamente lo mismo que en inglés (u otro idioma). Una cláusula es un fragmento incompleto de una oración, o en este caso una declaración, que encapsula un actor y una acción. En su ejemplo de una cláusula join, la acción es la unión y el actor es la mesa a la que se une.

0

Al igual que muchos términos en la programación, simplemente significa lo que significa en el English language.

Cuando vi por primera vez COALESCE en SQL, pensé "¿Qué demonios?". ¿Pero sabes que? Se hace lo que dice en la lata:

En fonética y lingüística históricos, fusión o coalescencia, es la fusión de las características de dos segmento en una sola.

4

Creo que hay un paralelismo entre una frase y una cláusula dependiente en las lenguas naturales y entre una declaración y una cláusula en los lenguajes de programación.

Una cláusula no se sostiene por sí sola, pero solo tiene sentido en el contexto de una declaración.

Por ejemplo, las cláusulas

  • "a las 2:30" (cláusula adverbial)
  • DONDE A.ID = B.ID (cláusula JOIN)

no se coloca significativamente por su cuenta. Sin embargo, esas cláusulas tienen sentido en el contexto de una oración o declaración.

  • "Encuéntrame a las 2:30."
  • SELECT A.NAME, B.ADDRESS de A, B, donde A.ID = B.ID

Una cláusula de incumplimiento de una sentencia switch de Java se refiere a la rama que se toma si ninguna de las verificado los valores coinciden. La palabra "predeterminado" es algo problemático, ya que generalmente significa una falla de algún tipo (como en "Su hipoteca está en default"). Con los lenguajes de computadora, tiende a significar "la elección no elegida".

Es una "cláusula" porque tiene sentido solo en el contexto de otras opciones.

+0

¿Pero puede describirse cualquier parte de una oración (o una declaración) con el término "cláusula"? –

+0

No, una cláusula es una unidad de significado. Una teoría de la lingüística se llama gramática de estructura de frase dirigida por la cabeza (HPSG). Significa que una frase no es solo una secuencia de palabras, sino palabras unidas a una Cabeza.Por ejemplo, en la oración "Juan golpeó la pelota sobre la cerca", la cláusula "sobre la cerca" es una frase preposicional en la que las palabras se juntan alrededor de la Cabeza ("sobre"). No hay una cohesión o significado correspondiente para "pasar el balón" porque pertenecen a cláusulas diferentes. De forma similar, en la instrucción Select anterior, "WHERE A.ID = B.ID" tiene significado, pero "B WHERE" no. – rajah9

+0

Tiene sentido. Gracias por aclarar eso! –

Cuestiones relacionadas