Skip to content

Instantly share code, notes, and snippets.

@ariera
Created December 27, 2012 12:40
Show Gist options
  • Save ariera/4388094 to your computer and use it in GitHub Desktop.
Save ariera/4388094 to your computer and use it in GitHub Desktop.
Comentarios en los lenguajes de programación

Los comentarios

Todos los lenguajes de programación admiten una cosa que se llama comentarios

Cualquier linea que escribes en un archivo de ruby (por ejemplo) se ejecutará antes o después salvo si se trata de un comentario

En ruby los comentarios empieza con el caracter especial #, un ejemplo:

#esto es un comentario
puts "hola santi"
#aqui otro comentario

Los comentarios en ruby van desde donde se encuentra el caracter # hasta el finalde la linea, de manera que se puede hacer algo como esto:

puts "hola de nuevo" #esta linea escribirá por pantalla "hola de nuevo", pero todo lo que va despues de la almohadilla será ignorado, porque es un comentario

Los comentarios son utiles para dejar anotaciones aclaratorias al lado del código.

También son muy útiles cuando quieres que cierta parte del código deje de funcionar pero no quieres perderlo para siempre. En ese caso comentas la fracción de código que te interesa y a seguir. Muy util cuando estas programando o cuando estas readaptando el código de otros ;)

puts "esta linea se imprirá por pantalla"
# puts "esta linea no se imprimirá porque esta comentada"

Comentarios en línea y comentarios en bloque

Los que hemos visto hasta ahora son los llamados comentarios en línea porque, como has visto, sólo comentan una línea de código.

Pero a veces te puedes encontrar con que quieres comentar un larguísimo pedazo del código. En esos casos sería un poco incomodo estar poniendo # al principio de cada línea. Para eso se invitaron los comentarios en bloque.

En ruby se delimienta por las palabras especiales =begin y =end, de manera que todo lo que esté entre medias se considerará un comentario.

Te pongo un ejemplo con un fragmento de código de La Ronda.

  # ...
  
  def self.last_tweet(query)
    Tweet.where(query:query).order(:id_str).first  
  end


  def self.find_for_laronda
    self.search_and_persist('to:riderstate')
    self.search_and_persist('to:dportsinlimites')
    self.search_and_persist('#laronda')
  end

  def self.search_and_persist(query='')
    last_tweet = self.last_tweet(query)
    results = Twitter.search(query, rpp:100, since_id: last_tweet.try(:id_str)).results
    self.create_from_search_results(results, query)
  end
  
  #...

Sin entrar a que hace el código, imaginemos que quiero comentar la funcion find_for_laronda. Podría hacerlo con comentarios en línea

  # ...
  
  def self.last_tweet(query)
    Tweet.where(query:query).order(:id_str).first  
  end


  #def self.find_for_laronda
  #  self.search_and_persist('to:riderstate')
  #  self.search_and_persist('to:dportsinlimites')
  #  self.search_and_persist('#laronda')
  #end

  def self.search_and_persist(query='')
    last_tweet = self.last_tweet(query)
    results = Twitter.search(query, rpp:100, since_id: last_tweet.try(:id_str)).results
    self.create_from_search_results(results, query)
  end
  
  #...

o con un comentario de bloque:

  # ...
  
  def self.last_tweet(query)
    Tweet.where(query:query).order(:id_str).first  
  end

=begin
  def self.find_for_laronda
    self.search_and_persist('to:riderstate')
    self.search_and_persist('to:dportsinlimites')
    self.search_and_persist('#laronda')
  end
=end

  def self.search_and_persist(query='')
    last_tweet = self.last_tweet(query)
    results = Twitter.search(query, rpp:100, since_id: last_tweet.try(:id_str)).results
    self.create_from_search_results(results, query)
  end
  
  #...

Como nota al margen te diré que los comentarios en bloque en ruby son muy poco usuales, sobre todo comparado con otros lenguajes de programación, como vamos a ver

Comentarios en php

Ahora que ya sabes todo lo que hay que saber sobre los comentarios, vamos a ver como se lo monta php.

La sintaxis de los comentarios en php es muy común encontrarla en otros lenguajes de programación, como por ejemplo en C, javascript, java o incluso css

comentarios en línea en php

su funcionamiento es el mismo que en ruby pero en lugar de empezar por # empiezan por //

<?php
  print("este texto sale por pantalla");
  // print("este texto esta comentado, así que no saldrá");
  print(sqrt(16)); // este código calcula la raiz cuadrada de 16 y la imprime por pantalla
?>

comentarios en bloque en php

funcionan igual que en ruby y sus palabras delimitadoras son /* y */

<?php
  /*
    el codigo de aqui abajo va a hacer 2 cosas:
      1) calculara la raiz de 16 con la funcion sqrt
      2) imprimirá el resultado por pantalla
  */
  print(sqrt(16));
  
  /*
  esta es una función que escribí pero que no voy a utulizar al final
  la guardo de momento para acordarme de como se hacían las potencias en php
  
  function potencia_de_dos(int num){
    return num ** 2;
  }
  */
  
?>

No es raro encontrarse código que utiliza los comentarios en bloque como comentarios en linea:

<?php
  print("este texto sale por pantalla");
  // print("este texto esta comentado, así que no saldrá");
  print(sqrt(16)); // este código calcula la raiz cuadrada de 16 y la imprime por pantalla
  
  /***********************************/
  
  /* print("este texto esta comentado, así que no saldrá"); */
  print(sqrt(16)); /* este código calcula la raiz cuadrada de 16 y la imprime por pantalla */
?>

(fíjate además como a veces se utilizan los comentarios para separar visualmente fragmentos de código)

WARNING: Una cosa con la que hay que tener cuidado con los comentarios en bloque en php es que no se pueden anidar, es decir, no puedes poner un comentario de bloque dentro de otro comentario de bloque, porque el cierre del comentario anidado causaría un error en el interprete de php que lo asociaría al cierre del comentario padre.

<?php
 /*
    echo 'This is a test'; /* This comment will cause a problem */
    esto de aquí no estará comentado y causará un error, fijate como pierde el color del comentario
 */
?>

Comentarios en HTML

HTML sólo admite comentarios en bloque y sus palabras delimitadoras son un así de raras <!-- y -->

No es muy típico encontrar código comentado en HTML pero esta bien que se pueda hacer. En teoría ningún comentario debería nunca alterar el comportamiento del código al que acompaña pero en HTML me he encontrado un par de ocasiones que ese no era el caso ¿adivinas quien tenía la culpa? ¡correcto! Internet Explorer ;)

<!-- Esto es un comentario. Los comentarios no se muestran en el navegador-->

<p>Esto es un parrafo normal y corriente</p>

<!--  <p> este parrafo no se mostrará porque esta comentado </p> -->

Comentarios en CSS

Como HTML, CSS sólo tiene comentarios en bloque y funcionan exactamente igual que los comentarios de bloque de php

/* Esto es un comentario*/
p {
  text-align:center;
  /* esto es otro comentario*/
  color:black; /* escogemos color negro para los parrafos*/
  /* color: red; una prueba con parrafos en color rojo, no me gusta asi que lo comento*/
  font-family:arial;
}

Comentarios en JavaScript

exactamente igual que los de php ;)

@taguivalle
Copy link

Excelente, muchas gracias.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment