Upgrade to Pro — share decks privately, control downloads, hide ads and more …

[Women Dev Summit 2017] Introdução ao framework Phoenix

[Women Dev Summit 2017] Introdução ao framework Phoenix

Nessa palestra vamos conhecer sobre o framework Phoenix, quais são suas dependências - , desde Elixir, Hex package manager, até outras bibliotecas usadas por padrão como o Plug e o Ecto. Vamos subir uma aplicação utilizando os generators disponíveis e conhecer a anatomia de um pequeno projeto em Phoenix. E, por último, discutir quais são os cenários mais indicados para escolher essa tecnologia para desenvolver um produto ou um serviço.

78feb03b0e2d133b3a53de62fde6d055?s=128

Flavia Fortes

November 11, 2017
Tweet

Transcript

  1. Flavia Fortes @flafortes

  2. None
  3. 0 que é Phoenix?

  4. Framework web, server side, escrito em ...

  5. None
  6. Vamos recapitular o que é Elixir...

  7. Criada em 2012 por José Valim

  8. None
  9. Por que criar uma nova linguagem?

  10. Poucas ferramentas focadas em concorrência.

  11. Resumindo …

  12. Linguagem de programação moderna

  13. Paradigma funcional

  14. Sintaxe simples

  15. Foco em concorrência, escalabilidade e tolerância a falhas

  16. Erlang Virtual Machine (BEAM)

  17. https://devinus.io/the-excitement-of-elixir/ https://devinus.io/elixir-its-not-about-syntax/

  18. Versão 1.0.0 foi lançada em Setembro de 2014

  19. Quero aprender mais sobre Elixir!

  20. http://theerlangelist.com/

  21. None
  22. None
  23. None
  24. http://plataformatec.com.br/elixir-radar/weekly-newsletter

  25. Phoenix: História

  26. Criado em 2014 por Chris McCord

  27. Versão 1.0.0 foi lançada em Agosto de 2015

  28. Proposta: >Alta produtividade >Alta performance

  29. Arquitetura MVC Model View Controller

  30. Familiaridade com Rails, Django...

  31. Model separado de Repositório

  32. Cowboy, Plug, Ecto

  33. Utiliza ferramentas em node.js para gerenciar CSS/JS

  34. O que precisamos para criar um projeto ?

  35. 1. Instalar o Elixir https://elixir-lang.org/install.html

  36. 2. Instalar o Hex package manager https://hexdocs.pm/phoenix/installation.html

  37. 3. Instalar o Erlang https://hexdocs.pm/phoenix/installation.html

  38. 4. Instalar o Phoenix mix archive https://hexdocs.pm/phoenix/installation.html

  39. 5. Instalar o node.js (opcional) https://hexdocs.pm/phoenix/installation.html

  40. 6. Instalar o postgresql https://hexdocs.pm/phoenix/installation.html

  41. $ elixir -v

  42. Vamos criar um app! https://hexdocs.pm/phoenix/up_and_running.html

  43. $ mix phx.new call_for_papers

  44. Instalando dependências...

  45. None
  46. None
  47. None
  48. None
  49. None
  50. None
  51. # criando o banco de dados $ mix ecto.create

  52. # subindo o servidor $ mix phx.server

  53. None
  54. $ git init $ git commit -m "Initial commit"

  55. Scaffold com Mix Tasks https://hexdocs.pm/phoenix/Mix.Tasks.Phx.Gen.Html.html

  56. $ mix phx.gen.html talks speaker:string title:string description:string Date:utc_datetime

  57. EITA

  58. $ mix phx.gen.html WomenDevSummit Talk talks speaker:string title:string description:string date:utc_datetime

  59. Quais arquivos esse generator criou?

  60. $ git status

  61. Vamos criar nossas rotas...

  62. resources "/talks", TalkController

  63. $ mix phx.routes

  64. Vamos rodar nossas migrations...

  65. $ mix ecto.migrate

  66. A hora da verdade… http://localhost:4000

  67. Se tudo deu certo...

  68. None
  69. Quero aprender mais sobre Phoenix!

  70. None
  71. https://github.com/sger/ElixirBooks

  72. Phoenix GUIDES https://hexdocs.pm/phoenix/overview.html

  73. https://dockyard.com/blog/2015/11/18/phoenix -is-not-rails https://blog.carbonfive.com/2016/04/19/elixir-a nd-phoenix-the-future-of-web-apis-and-apps/

  74. None
  75. Agora, aproveitando que estamos no Women Dev Summit, vamos falar

    sobre empoderamento...
  76. None
  77. None
  78. Obrigada!