58 lines
2.1 KiB
Markdown
58 lines
2.1 KiB
Markdown
---
|
|
title: Documentation
|
|
localeTitle: Documentação
|
|
---
|
|
## Documentação
|
|
|
|
Um dos melhores avançados do Elixir, em comparação com outras linguagens de programação, é o seu sistema de documentação. A documentação do Elixir é criada pelos comentários do seu código e transformada em um bonito site HTML para você navegar com facilidade e entender como o aplicativo funciona. Depois de entender como comentar corretamente seu código no Elixir, você poderá explicar como o seu aplicativo funciona para outros programadores com facilidade. Nos exemplos abaixo mostramos o uso das funções de documentação do Elixir em um módulo de servidor web fictício.
|
|
|
|
### Documentação Inline
|
|
|
|
A documentação inline usa um `#` na frente do texto que descreve algo sobre o código.
|
|
|
|
```elixir
|
|
def get(path) do
|
|
# This is an inline comment for documentation purposes.
|
|
"http get request response"
|
|
end
|
|
```
|
|
|
|
### Documentação do Módulo
|
|
|
|
Documento de módulo descreve o propósito de um módulo. Moduledocs são semelhantes aos comentários multilinhas que você encontraria em outras linguagens de programação.
|
|
|
|
```elixir
|
|
defmodule WebServer do
|
|
@moduledoc """
|
|
Provides a set of functions to accept and respond to HTTP requests.
|
|
This module provides the @get/1, @post/1, and @put/1 functions.
|
|
"""
|
|
end
|
|
```
|
|
|
|
### Função Documentação
|
|
|
|
Documentação de função descreve o propósito e uso de uma única função. Functiondocs são semelhantes aos comentários multilinha que você encontraria em outras linguagens de programação. Também mostra exemplos da função para que outro programador saiba o que esperar.
|
|
|
|
```elixir
|
|
@doc """
|
|
Responds to a get request
|
|
|
|
## Parameters
|
|
- path: A path to the desired resource
|
|
|
|
## Examples
|
|
- iex> WebServer.get(/documentation.pdf)
|
|
"Returning documentation.pdf
|
|
- iex> WebServer.get(/downloads.html)
|
|
"Returning downloads.html"
|
|
"""
|
|
def get(path) do
|
|
"http get request response"
|
|
end
|
|
```
|
|
|
|
#### Mais Informações:
|
|
|
|
* [ElixirSchool - Documentação](https://elixirschool.com/en/lessons/basics/documentation/)
|
|
* [ExDoc](https://github.com/elixir-lang/ex_doc) |