Giter Site home page Giter Site logo

elixir-study's Introduction

📚 Repositório de Estudo Elixir

Este repositório contém vários módulos em Elixir, vou usar como um registro de estudo.

🏓 PingPongTask

O módulo PingPongTask simula um sistema de comunicação ping-pong entre dois processos.

Visão Geral

Este módulo inicializa dois processos, Ping e Pong, e envia uma mensagem de início para iniciar a comunicação entre eles. Os processos continuam a se comunicar até que ocorra um timeout.

Exemplo de Código

def start do
  pong_pid = spawn(PingPongTask, :send_process_pong, [])
  ping_pid = spawn(PingPongTask, :send_process_ping, [pong_pid])

  send(ping_pid, :start)
  process_ping_pong_handler()
end

Este trecho inicializa os processos Ping e Pong e envia a mensagem de início para o processo Ping.

📂 FileHandler

O módulo FileHandler é responsável pela leitura de arquivos.

Exemplo de Código

def read_file(file_path) do
  try do
    File.read!(file_path)
  rescue
    error in File.Error -> {:error, error.reason}
  end
end

Este trecho lê o conteúdo de um arquivo especificado pelo file_path e trata possíveis erros durante a leitura.

🌐 Request e Response

Os módulos Request e Response lidam com requisições HTTP e filtragem de respostas de APIs.

Exemplo de Código

def get(url) do
  case HTTPoison.get(url) do
    {:ok, %HTTPoison.Response{body: body}} ->
      {:ok, body}

    {:error, %HTTPoison.Error{reason: reason}} ->
      {:error, "Erro ao fazer a requisição: #{inspect(reason)}"}
  end
rescue
  error in HTTPoison.Error ->
    {:error, "Exceção ao fazer a requisição: #{error.message}"}
end

Este trecho realiza uma requisição HTTP GET para a URL especificada e trata possíveis erros durante a requisição.

elixir-study's People

Contributors

baku01 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.