{"id":106,"date":"2016-04-18T14:07:17","date_gmt":"2016-04-18T14:07:17","guid":{"rendered":"http:\/\/curioso.digital\/?p=106"},"modified":"2016-04-18T14:07:17","modified_gmt":"2016-04-18T14:07:17","slug":"desenvolvendo-uma-aplicacao-com-node-js-e-angularjs-parte-2","status":"publish","type":"post","link":"https:\/\/curiosodigital.com.br\/?p=106","title":{"rendered":"Desenvolvendo uma aplica\u00e7\u00e3o com Node.js e AngularJS \u2013 parte 2"},"content":{"rendered":"<p style=\"text-align:justify;\">Sauda\u00e7\u00f5es Leitores, dando continuidade ao meu aprendizado de de Node.js e AngulaJS vou come\u00e7ar o meu projeto. No <a href=\"https:\/\/curioso.digital\/2016\/04\/07\/desenvolvendo-uma-aplicacao-com-node-js-e-angularjs-parte-1\/\">\u00faltimo post<\/a> fiz a instala\u00e7\u00e3o do eclipse e seus plugins para a programa\u00e7\u00e3o nas duas tecnologias. Para iniciar eu decidi criar dos projetos, um que ser\u00e1 a interface em AngularJS e o outro que ser\u00e3o os servi\u00e7os que ficar\u00e3o no servidor em Node.js.<\/p>\n<p style=\"text-align:justify;\">Para iniciar a aplica\u00e7\u00e3o em Angular eu segui como refer\u00eancia este <a href=\"https:\/\/github.com\/angelozerr\/angularjs-eclipse\/wiki\/Getting-Started\">link<\/a>, depois para entender um pouco mais do seu funcionamento b\u00e1sico eu dei uma lida neste <a href=\"http:\/\/br.ccm.net\/faq\/18439-introducao-ao-angularjs\">link<\/a>. Ap\u00f3s ler o link sobre a introdu\u00e7\u00e3o ao AngularJS eu percebi que precisa entender um pouco mais da sua estrutura, resolvi comprar o e-book \u201cAngularJS na pr\u00e1tica\u201d por uns R$ 15,00 neste <a href=\"https:\/\/leanpub.com\/livro-angularJS\">link<\/a> e comecei a ler, assim que eu aprender um pouco mais vou voltar para a parte de interface com o AngularJS.<\/p>\n<p style=\"text-align:justify;\">O pr\u00f3ximo passo \u00e9 a parte que vai ficar no servidor, pensei em servi\u00e7os RESTFull utilizando o Node.js, mas igualmente n\u00e3o conhe\u00e7o nada e adquiri o livro \u201cNode.js \u2013 Aplica\u00e7\u00f5es web real-time com Node.js\u201d no <a href=\"https:\/\/www.casadocodigo.com.br\/products\/livro-nodejs\">link<\/a> por um valor de R$ 39,90 o e-book. Neste ponto voc\u00eas devem estar se perguntando, mas para que adquirir livros se h\u00e1 um vasto material na internet, o problema \u00e9 que a maioria do material est\u00e1 segmentado e tenho que ficar catando em mais de um lugar e nem todos possuem qualidade, prefiro come\u00e7ar o b\u00e1sico de um livro e logo em seguida procurar os detalhes mais espec\u00edficos na web.<\/p>\n<p style=\"text-align:justify;\">Mas existe algo que posso fazer, como tenho que criar <em>web services<\/em> em REST que ir\u00e3o compor a solu\u00e7\u00e3o, posso pelo menos pensar na lista deles com base na solu\u00e7\u00e3o:<\/p>\n<p style=\"text-align:justify;\">A) Os usu\u00e1rios far\u00e3o o cadastro do morador de rua e suas necessidades. Eu imagino que uma pessoa possa cadastrar anonimamente um morador de rua mas que n\u00e3o possa excluir e nem alterar seus dados, apenas ir acrescentando detalhes em forma de coment\u00e1rios, o mesmo ocorre com as necessidades. Caso o morador n\u00e3o esteja mais no local, um indicativo de remo\u00e7\u00e3o deve estar dispon\u00edvel;<\/p>\n<p style=\"padding-left:60px;text-align:justify;\">1\u00ba) cadastro de morador de rua \u2013 incluir, listar, consultar, incluir detalhes, incluir indicativo de remo\u00e7\u00e3o;<\/p>\n<p style=\"padding-left:60px;text-align:justify;\">2\u00ba) cadastro de necessidades \u2013 incluir, listar, consultar, incluir detalhes, incluir indicativo de que o morador n\u00e3o possui mais esta necessidade;<\/p>\n<p style=\"text-align:justify;\">B) Com base na localiza\u00e7\u00e3o o sistema listar\u00e1 as institui\u00e7\u00f5es mais pr\u00f3ximas. O cadastro de institui\u00e7\u00e3o n\u00e3o ser\u00e1 an\u00f4nimo mas ser\u00e1 feito pelos administradores da ferramenta, o p\u00fablico em geral poder\u00e1 indicar institui\u00e7\u00f5es que possam ser adicionadas no sistema e as necessidades que eles atendem.<\/p>\n<p style=\"padding-left:60px;text-align:justify;\">3\u00ba) Administra\u00e7\u00e3o de institui\u00e7\u00f5es \u2013 incluir, listar, consultar, alterar, excluir;<\/p>\n<p style=\"padding-left:60px;text-align:justify;\">4\u00ba) Administra\u00e7\u00e3o da lista de necessidades que estar\u00e3o associadas tanto ao morador de rua quanto as institui\u00e7\u00f5es &#8211; incluir, listar, consultar, alterar, excluir;<\/p>\n<p style=\"padding-left:60px;text-align:justify;\">5\u00ba) Cadastro de sugest\u00f5es de institui\u00e7\u00f5es \u2013 incluir;<\/p>\n<p style=\"padding-left:60px;text-align:justify;\">6\u00ba) Administrar sugest\u00f5es de institui\u00e7\u00f5es &#8211; listar, consultar, excluir, transferir para cadastro;<\/p>\n<p style=\"padding-left:60px;text-align:justify;\">7\u00ba) Listar institui\u00e7\u00f5es mais pr\u00f3ximas \u2013 listar, consultar;<\/p>\n<p style=\"text-align:justify;\">C) Ser\u00e1 necess\u00e1rio uma \u00e1rea de administra\u00e7\u00e3o da aplica\u00e7\u00e3o;<\/p>\n<p style=\"padding-left:60px;text-align:justify;\">8\u00ba) \u00c1rea de administra\u00e7\u00e3o \u2013 logar; incluir usu\u00e1rios, listar usu\u00e1rios, consultar usu\u00e1rios, alterar usu\u00e1rios, excluir usu\u00e1rios;<\/p>\n<p style=\"text-align:justify;\">Leitores, pelo visto terei que programar algo em torno de trinta e quatro <em>web services<\/em> e \u00e9 prov\u00e1vel que apare\u00e7am outros ao longo do desenvolvimento, sendo assim vou concluir as leituras dos livros e dar in\u00edcio ao desenvolvimento dos servi\u00e7os em Node.js para que possamos realizar os primeiros testes (ainda sem o uso da interface). No pr\u00f3ximo post vou continuar narrando a minha evolu\u00e7\u00e3o no processo de desenvolvimento da aplica\u00e7\u00e3o. At\u00e9 a pr\u00f3xima.<\/p>\n<p>Siga-me no Twitter: <a class=\"DashboardProfileCard-screennameLink u-linkComplex u-linkClean\" href=\"https:\/\/twitter.com\/curioso_dgtal\">@<span class=\"u-linkComplex-target\">curioso_dgtal<\/span><\/a><\/p>\n<p>Participe do nosso <a href=\"https:\/\/groups.google.com\/forum\/#%21forum\/curiosodigital\">grupo no Google<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Sauda\u00e7\u00f5es Leitores, dando continuidade ao meu aprendizado de de Node.js e AngulaJS vou come\u00e7ar o meu projeto. No \u00faltimo post fiz a instala\u00e7\u00e3o do eclipse e seus plugins para a programa\u00e7\u00e3o nas duas tecnologias. Para iniciar eu decidi criar dos projetos, um que ser\u00e1 a interface em AngularJS e o outro que ser\u00e3o os servi\u00e7os&hellip;<\/p>\n","protected":false},"author":2,"featured_media":127,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[8],"tags":[15,27,33,40],"_links":{"self":[{"href":"https:\/\/curiosodigital.com.br\/index.php?rest_route=\/wp\/v2\/posts\/106"}],"collection":[{"href":"https:\/\/curiosodigital.com.br\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/curiosodigital.com.br\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/curiosodigital.com.br\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/curiosodigital.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=106"}],"version-history":[{"count":0,"href":"https:\/\/curiosodigital.com.br\/index.php?rest_route=\/wp\/v2\/posts\/106\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/curiosodigital.com.br\/index.php?rest_route=\/"}],"wp:attachment":[{"href":"https:\/\/curiosodigital.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=106"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/curiosodigital.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=106"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/curiosodigital.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=106"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}