One place for hosting & domains

      comentarios

      Como escrever comentários em Go


      Introdução

      Comentários são linhas que existem em programas de computador que os programas de compilação e interpretação ignoram. A inclusão de comentários nos programas torna o código mais legível para humanos, uma vez que fornece informações ou explicações sobre o que cada parte de um programa está fazendo.

      Dependendo do objetivo do seu programa, os comentários podem servir como notas para si mesmo ou lembretes, ou podem ser escritos com a intenção de fazer com que outros programadores entendam o que o seu código está fazendo.

      De um modo geral, é uma boa ideia escrever comentários enquanto está escrevendo ou atualizando um programa, uma vez que é fácil esquecer seu processo de pensamento mais tarde. Além disso, os comentários escritos posteriormente podem ser menos úteis no longo prazo.

      Sintaxe do comentário

      Os comentários em Go começam com um conjunto de barras (//) e continuam até o final da linha. Ter um espaço em branco após o conjunto de barras refere-se a uma regra idiomática apenas.

      Geralmente, os comentários terão uma aparência como a deste:

      // This is a comment
      

      Os comentários não são executáveis. Assim, não haverá indicação de um comentário ao se executar um programa. Os comentários existem no código fonte para que os humanos os leiam e não para que os computadores os executem.

      Em um programa “Hello, World”! , um comentário pode se parecer com este:

      hello.go

      package main
      
      import (
          "fmt"
      )
      
      func main() {
          // Print “Hello, World!” to console
          fmt.Println("Hello, World!")
      }
      
      

      Num loop for que itera em uma fatia, os comentários podem se parecer com este:

      sharks.go

      package main
      
      import (
          "fmt"
      )
      
      func main() {
          // Define sharks variable as a slice of strings
          sharks := []string{"hammerhead", "great white", "dogfish", "frilled", "bullhead", "requiem"}
      
          // For loop that iterates over sharks list and prints each string item
          for _, shark := range sharks {
              fmt.Println(shark)
          }
      }
      

      Os comentários devem ser feitos no mesmo recuo do código sobre qual estiver falando. Ou seja, uma definição de função sem recuo teria um comentário sem recuo e cada nível de recuo seguinte teria comentários alinhados ao código que estivesse sendo comentando.

      Por exemplo, aqui está como a função main foi comentada. Os comentários seguem cada nível de recuo do código:

      color.go

      package main
      
      import "fmt"
      
      const favColor string = "blue"
      
      func main() {
          var guess string
          // Create an input loop
          for {
              // Ask the user to guess my favorite color
              fmt.Println("Guess my favorite color:")
              // Try to read a line of input from the user. Print out the error 0
              if _, err := fmt.Scanln(&guess); err != nil {
                  fmt.Printf("%sn", err)
                  return
              }
              // Did they guess the correct color?
              if favColor == guess {
                  // They guessed it!
                  fmt.Printf("%q is my favorite color!n", favColor)
                  return
              }
              // Wrong! Have them guess again.
              fmt.Printf("Sorry, %q is not my favorite color. Guess again.n", guess)
          }
      }
      

      Os comentários são feitos para ajudar os programadores, seja o programador original ou outra pessoa usando ou colaborando no projeto. Se os comentários não puderem ser mantidos e atualizados corretamente com a base de código, é melhor que não se incluam comentários, em vez de escrever um comentário que contradiga ou vá contradizer o código.

      Ao comentar o código, você deve procurar responder à pergunta por que por trás do código ao invés de o que ou como. A menos que o código seja particularmente complicado, de maneira geral, examinar o código basta para responder o o que ou como, motivo pelo pelo qual os comentários normalmente se concentram no por que.

      Comentários em bloco

      Os comentários em bloco podem ser usados para explicar códigos complicados ou códigos com os quais você não espera que o leitor esteja familiarizado.

      Você pode criar comentários em bloco de duas maneiras em Go. A primeira é usar um conjunto de barras duplas e repeti-las a cada linha.

      // First line of a block comment
      // Second line of a block comment
      

      A segunda é usar identificadores de abertura (/*) e identificadores de encerramento (*/). Para documentar o código, usar sempre a sintaxe de // é considerada como uma decisão idiomática. Você somente usará a sintaxe /* ... */ na depuração, sobre a qual valor falar mair adiante neste artigo.

      /*
      Everything here
      will be considered
      a block comment
      */
      

      Neste exemplo, o comentário em bloco define o que está acontecendo na função MustGet():

      function.go

      // MustGet will retrieve a url and return the body of the page.
      // If Get encounters any errors, it will panic.
      func MustGet(url string) string {
          resp, err := http.Get(url)
          if err != nil {
              panic(err)
          }
      
          // don't forget to close the body
          defer resp.Body.Close()
          var body []byte
          if body, err = ioutil.ReadAll(resp.Body); err != nil {
              panic(err)
          }
          return string(body)
      }
      

      É comum ver comentários em bloco no início das funções exportadas em Go; esses comentários também são o que gera a documentação do seu código. Os comentários em bloco também são usados quando as operações são menos objetivas e, portanto, exigem uma explicação mais detalhada. Com exceção da documentação sobre as funções, evite o excesso de comentários sobre o código e confie em que os demais programadores entenderão a linguagem Go, a menos que você esteja escrevendo para um público em particular.

      Comentários feitos na linha

      Os comentários são feitos na mesma linha de uma instrução, após o código, propriamente dito. Assim como outros comentários, eles começam com um conjunto de barras. Novamente, não é necessário ter um espaço em branco após as barras, mas é considerada uma regra idiomática usá-las.

      Geralmente, os comentários feitos na linha se parecem com este:

      [code]  // Inline comment about the code
      

      Os comentários na linha devem ser usados com moderação, mas podem ser eficazes para explicar partes do código complicadas ou não óbvias. Eles também podem ser úteis se você achar que, no futuro, poderá não se lembrar de uma linha do código que está escrevendo, ou se estiver colaborando com alguém que você sabe que talvez não esteja familiarizado com todos os aspectos do código.

      Por exemplo, caso não use muita matemática nos seus programas em Go, você ou seus colaboradores podem não saber que o seguinte cria um número complexo, então você pode querer incluir um comentário na linha sobre isso:

      z := x % 2  // Get the modulus of x
      

      Também é possível usar comentários na linha para explicar a razão para estar fazendo algo, ou fornecer algumas informações extras, como em:

      x := 8  // Initialize x with an arbitrary number
      

      Você somente deve usar os comentários na linha quando necessário e quando eles puderem proporcionar orientações úteis para a pessoa que lê o programa.

      Comentando o código para fins de teste

      Além de usar comentários como uma maneira de documentar o código, também é possível usar sinalizadores de abertura (/*) e sinalizadores de encerramento (*/) para criar um comentário em bloco. Isso permite que você faça um comentário sobre o código, dizendo que não deseja executar enquanto estiver testando ou depurando um programa que estiver criando no momento. Ou seja, quando aparecerem erros após implementar novas linhas do código, você pode querer fazer comentários em algumas delas para ver se pode resolver esse problema específico.

      Usar os sinalizadores /* e */ também pode permitir que você tente alternativas enquanto estiver determinando como configurar o seu código. Também é possível usar blocos de comentários para fazer comentários sobre um código que estiver apresentando falhas, enquanto você continua a trabalhar em outras partes do seu código.

      multiply.go

      // Function to add two numbers
      func addTwoNumbers(x, y int) int {
          sum := x + y
          return sum
      }
      
      // Function to multiply two numbers
      func multiplyTwoNumbers(x, y int) int {
          product := x * y
          return product
      }
      
      func main() {
          /*
              In this example, we're commenting out the addTwoNumbers
              function because it is failing, therefore preventing it from executing.
              Only the multiplyTwoNumbers function will run
      
              a := addTwoNumbers(3, 5)
              fmt.Println(a)
      
          */
      
          m := multiplyTwoNumbers(5, 9)
          fmt.Println(m)
      }
      

      Nota: fazer comentários no código é algo que só deve ser feito para fins de teste. Não deixe trechos do código com comentários em seu programa final.

      Fazer comentários no código usando os sinalizadores /* e */ pode permitir que você experimente outros métodos de programação, bem como pode ser útil para que você encontre a fonte de um erro através de comentários feitos sistematicamente e da execução de partes de um programa.

      Conclusão

      Usar comentários dentro dos seus programas em Go ajuda a tornar seus programas mais legíveis para os humanos, inclusive para você mesmo, no futuro. Adicionar comentários apropriados – que sejam relevantes e úteis – pode facilitar que outras pessoas colaborem com você em projetos de programação e pode tornar o valor do seu código mais óbvio.

      Comentar seu código corretamente em Go também permitirá que você use a ferramenta Godoc. Godoc é uma ferramenta que extrairá os comentários do seu código e gerará uma documentação para o seu programa em Go.



      Source link

      Cómo escribir comentarios en Go


      Introducción

      Los comentarios son líneas que existen en los programas informáticos y que los compiladores e intérpretes ignoran. Incluir comentarios en programas hace que el código sea más legible para los seres humanos, ya que proporciona información o explicaciones sobre lo que cada parte de un programa hace.

      Según el propósito de su programa, los comentarios pueden servir como notas o recordatorios, o pueden estar escritos con la intención de que otros programadores puedan comprender lo que su código hace.

      En general, es recomendable escribir comentarios mientras se escribe o se actualiza un programa, ya que se puede olvidar fácilmente el proceso de pensamiento y los comentarios que se introducen después pueden ser menos útiles a largo plazo.

      Sintaxis de los comentarios

      Los comentarios de Go comienzan con un conjunto de barras diagonales (//) y continúan hasta el final de la línea. Corresponde disponer de un espacio en blanco después del conjunto de barras diagonales.

      Generalmente, los comentarios tendrán un aspecto similar a este:

      // This is a comment
      

      Los comentarios no se ejecutan, por lo que no habrá indicaciones de comentarios al ejecutar un programa. Los comentarios se encuentran en el código fuente para que los seres humanos puedan leerlos, no para que las computadoras los ejecuten.

      En un programa “¡Hello, World!”, un comentario puede tener el siguiente aspecto:

      hello.go

      package main
      
      import (
          "fmt"
      )
      
      func main() {
          // Print “Hello, World!” to console
          fmt.Println("Hello, World!")
      }
      
      

      En un bucle for que itera un segmento, los comentarios pueden verse así:

      sharks.go

      package main
      
      import (
          "fmt"
      )
      
      func main() {
          // Define sharks variable as a slice of strings
          sharks := []string{"hammerhead", "great white", "dogfish", "frilled", "bullhead", "requiem"}
      
          // For loop that iterates over sharks list and prints each string item
          for _, shark := range sharks {
              fmt.Println(shark)
          }
      }
      

      Los comentarios deberían hacerse en la misma sangría que el código al que se aplican. Es decir, una definición de función sin sangría tendría un comentario sin guión, y cada nivel de sangría siguiente tendría comentarios en línea con el código al que se aplican.

      Por ejemplo, aquí se muestra la forma en que se comenta la función main, con comentarios después de cada nivel de sangría del código:

      color.go

      package main
      
      import "fmt"
      
      const favColor string = "blue"
      
      func main() {
          var guess string
          // Create an input loop
          for {
              // Ask the user to guess my favorite color
              fmt.Println("Guess my favorite color:")
              // Try to read a line of input from the user. Print out the error 0
              if _, err := fmt.Scanln(&guess); err != nil {
                  fmt.Printf("%sn", err)
                  return
              }
              // Did they guess the correct color?
              if favColor == guess {
                  // They guessed it!
                  fmt.Printf("%q is my favorite color!n", favColor)
                  return
              }
              // Wrong! Have them guess again.
              fmt.Printf("Sorry, %q is not my favorite color. Guess again.n", guess)
          }
      }
      

      Los comentarios se hacen para ayudar a los programadores, así se trate del programador original o de alguien que utilice el proyecto o colabore en él. Si los comentarios no pueden mantenerse ni actualizarse de forma adecuada con la base de código, es mejor no incluir un comentario en lugar de escribir uno que contradiga el código o pueda hacerlo en el futuro.

      Al ingresar comentarios en el código, debería intentar dilucidar el por qué del código en lugar del qué o el cómo. A menos que el código sea particularmente complicado, con mirarlo generalmente basta para responder interrogantes como qué o cómo, razón por la cual los comentarios generalmente se centran en el por qué.

      Comentarios de bloque

      Los comentarios de bloque pueden utilizarse para explicar código más complicado o del que no espera conocimiento de parte del lector.

      En Go, puede crear comentarios de bloques de dos formas. La primera consiste en usar un conjunto de dobles barras inclinadas y repetirlas para cada línea.

      // First line of a block comment
      // Second line of a block comment
      

      La segunda,en usar etiquetas de apertura (/*) y etiquetas de cierre (*/​​​). Para documentar el código, se considera adecuado usar siempre sintaxis de //. Sólo usarías la sintaxis /* ... */​​​ para depuración, tema que abarcaremos más adelante en este artículo.

      /*
      Everything here
      will be considered
      a block comment
      */
      

      En este ejemplo, el comentario de bloque define lo que sucede en la función MustGet():

      function.go

      // MustGet will retrieve a url and return the body of the page.
      // If Get encounters any errors, it will panic.
      func MustGet(url string) string {
          resp, err := http.Get(url)
          if err != nil {
              panic(err)
          }
      
          // don't forget to close the body
          defer resp.Body.Close()
          var body []byte
          if body, err = ioutil.ReadAll(resp.Body); err != nil {
              panic(err)
          }
          return string(body)
      }
      

      Es común ver comentarios de bloque al inicio de las funciones exportadas en Go: estos comentarios también son los que generan la documentación de su código. Los comentarios de bloque se utilizan también cuando las operaciones son menos sencillas y, por lo tanto, exigen una explicación completa. Salvo en el caso de la documentación de funciones, debería intentar evitar el exceso de comentarios sobre el código y confiar en la capacidad de otros programadores para comprender Go, a menos que escriba para un público en particular.

      Comentarios incorporados

      Los comentarios incorporados se producen en la misma línea de una instrucción, siguiendo el propio código. Al igual que otros comentarios, comienzan con una serie de barras diagonales. Una vez más, no es necesario incluir un espacio en blanco después de las barras, pero se considera apropiado hacerlo.

      Generalmente, los comentarios incorporados tienen el siguiente aspecto:

      [code]  // Inline comment about the code
      

      Los comentarios en línea deberían utilizarse de forma racional, pero pueden ser eficaces para explicar partes complicadas o no obvias del código. También pueden ser útiles si cree que en el futuro es posible que no recuerde una línea del código que escribe, o bien si colabora con alguien que sepa que no esté familiarizado con todos los aspectos del código.

      Por ejemplo, si no recurre mucho a la matemática en sus programas de Go, es posible que usted o sus colaboradores no sepan que con lo siguiente se crea un número complejo, por lo que posiblemente desee incluir un comentario incorporado sobre eso:

      z := x % 2  // Get the modulus of x
      

      También puede usar comentarios en línea para explicar los motivos de una acción o proporcionar información adicional, como en el siguiente caso:

      x := 8  // Initialize x with an arbitrary number
      

      Debería usar comentarios en línea solo cuando sea necesario y cuando puedan proporcionar orientación útil para la persona que lea el programa.

      Comentar código para pruebas

      Además de usar comentarios como una forma de documentar código, también puede usar etiquetas de apertura (/*) y cierre (*/) para crear un comentario de bloque. Esto le permite hacer comentarios sobre código que no desee ejecutar mientras pruebe o depure un programa en proceso de creación. Es decir, cuando experimente errores después de implementar nuevas líneas de código, es posible que quiera comentar algunas de ellas para ver si puede resolver el problema puntual.

      Las etiquetas /* y */ también pueden permitirle probar alternativas mientras determinan la manera de configurar su código. También puede usar comentarios de bloque para comentar código que produce errores mientras continúa trabajando en otras partes de su código.

      multiply.go

      // Function to add two numbers
      func addTwoNumbers(x, y int) int {
          sum := x + y
          return sum
      }
      
      // Function to multiply two numbers
      func multiplyTwoNumbers(x, y int) int {
          product := x * y
          return product
      }
      
      func main() {
          /*
              In this example, we're commenting out the addTwoNumbers
              function because it is failing, therefore preventing it from executing.
              Only the multiplyTwoNumbers function will run
      
              a := addTwoNumbers(3, 5)
              fmt.Println(a)
      
          */
      
          m := multiplyTwoNumbers(5, 9)
          fmt.Println(m)
      }
      

      Nota: Solo se deberían agregar comentarios al código para pruebas. No deje fragmentos de código con comentarios en la versión final de su programa.

      Comentar código con las etiquetas /* y */ puede permitirle probar diferentes métodos de programación, así como ayudarlo a encontrar el origen de un error comentando y ejecutando partes de un programa de forma sistemática.

      Conclusión

      El uso comentarios en sus programas de Go le permite hacer que estos últimos sean más legibles para los humanos, lo cual lo incluye a usted mismo en el futuro. Al añadir comentarios apropiados que sean pertinentes y útiles, puede hacer que resulte más sencillo para otros colaborar con usted en los proyectos de programación y hacer que el valor de su código sea más obvio.

      Al comentar su código de forma adecuada en Go, también podrá usar la herramienta Godoc. Godoc es una herramienta que extraerá comentarios de su código y generará documentación para su programa de Go.



      Source link