{"id":706,"date":"2016-10-18T19:57:32","date_gmt":"2016-10-18T19:57:32","guid":{"rendered":"http:\/\/www.andrefelizardo.com.br\/blog\/?p=706"},"modified":"2016-10-18T19:57:32","modified_gmt":"2016-10-18T19:57:32","slug":"react-js-o-que-e-introducao-ao-react","status":"publish","type":"post","link":"https:\/\/www.andrefelizardo.com.br\/blog\/react-js-o-que-e-introducao-ao-react\/","title":{"rendered":"React.js, o que \u00e9? &#8211; Introdu\u00e7\u00e3o ao React"},"content":{"rendered":"<p>Se voc\u00ea tem acompanhado o <a href=\"http:\/\/www.andrefelizardo.com.br\/blog\/front-end-o-que-e\/\" target=\"_blank\">mundo do Front-end<\/a> nos \u00faltimos anos, com certeza voc\u00ea percebeu um boom em Frameworks e bibliotecas Javascript, como o <a href=\"http:\/\/www.andrefelizardo.com.br\/blog\/o-que-e-angularjs\/\" target=\"_blank\">AngularJS<\/a>, React.js e v\u00e1rios outros.<\/p>\n<h2>O que \u00e9 o React.js?<\/h2>\n<p>React.js \u00e9 uma biblioteca JavaScript, desenvolvida por engenheiros\u00a0do Facebook (s\u00f3 de colocar o nome do <em>Facebook <\/em>aqui voc\u00ea j\u00e1 se interessou n\u00e9?!).<\/p>\n<h2>Porque usar React.js?<\/h2>\n<p>Muitas s\u00e3o as raz\u00f5es poss\u00edveis pra voc\u00ea adotar o React.js em algum de seus projetos, abaixo alguns motivos:<!--more--><\/p>\n<ul>\n<li><strong>React \u00e9 popular.<\/strong> Sim, \u00e9 isso mesmo. Eu n\u00e3o sei se voc\u00ea costuma pesquisar suas d\u00favidas no Google (fa\u00e7a isso antes de postar nos grupos do Facebook por favor!), mas pesquisar qualquer coisa sobre uma tecnologia popular, j\u00e1 \u00e9 uma grande m\u00e3o na roda.<\/li>\n<li><strong>React \u00e9 r\u00e1pido.<\/strong> Aplica\u00e7\u00f5es feitas com\u00a0ele podem sofrer atualiza\u00e7\u00f5es complexas e ainda assim ser r\u00e1pido e responsivo.<\/li>\n<li><strong>React \u00e9 modular.<\/strong> E pra mim, esse \u00e9 a grande sacada. Ao inv\u00e9s de voc\u00ea escrever aqueles gigantescos arquivos, voc\u00ea\u00a0<del>deve<\/del> pode escrever v\u00e1rios arquivos menores, e reutiliz\u00e1veis. A modularidade, ajuda a resolver um grande problema do JavaScript: manuten\u00e7\u00e3o de c\u00f3digo.<\/li>\n<li><strong>React \u00e9 flex\u00edvel.<\/strong> Seu principal uso \u00e9 para criar aplica\u00e7\u00f5es web, mas nada impede que voc\u00ea o utilize em outros tipos de projetos.<\/li>\n<\/ul>\n<h2>Por onde come\u00e7ar?<\/h2>\n<p>Pois bem, como eu disse l\u00e1 em cima, React \u00e9 uma biblioteca JavaScript, ent\u00e3o obviamente, o primeiro passo \u00e9 saber um pouco de JS.<\/p>\n<h2>JSX<\/h2>\n<p>Bom, aqui talvez uma parte\u00a0<em>&#8216;estranha&#8217;\u00a0<\/em>quando voc\u00ea come\u00e7a com React. A sintaxe da biblioteca \u00e9 o JSX. Quando um arquivo JavaScript tem peda\u00e7os em JSX, esse arquivo tem que ser compilado (para JavaScript <em>normal<\/em>), para depois ser interpretado pelo navegador.<\/p>\n<p>Um c\u00f3digo JSX seria como :<br \/>\n<script async src=\"\/\/jsfiddle.net\/andrefelizardo\/xckvvczo\/1\/embed\/js\/dark\/\"><\/script><\/p>\n<p>Obs\u00b9: O uso de JSX \u00e9 opcional para o desenvolvimento com React.<\/p>\n<p>Obs\u00b2: JSX \u00e9 t\u00e3o extenso que precisa ser explicado separado.<\/p>\n<h2>Virtual DOM<\/h2>\n<p>Outro grande ganho do React \u00e9 o Virtual DOM. Para cada objeto <a href=\"http:\/\/tableless.com.br\/tenha-o-dom\/\" target=\"_blank\">DOM<\/a>, tem um <em>objeto DOM virtual<\/em> correspondente.<\/p>\n<p>Um objeto virtual tem as mesmas propriedades que um objeto DOM real, por\u00e9m ele n\u00e3o altera diretamente o que est\u00e1 sendo exibido na tela. E o motivo \u00e9 simples: performance. Manipular o DOM \u00e9 lento (eu n\u00e3o sei se voc\u00ea j\u00e1 teve problemas com isso, mas manipular muitos elementos, ficar escrevendo modificando objetos, faz a aplica\u00e7\u00e3o ficar bem lerda), mas manipular o Virtual DOM n\u00e3o, exatamente porque nada \u00e9\u00a0<em>desenhado\u00a0<\/em>na tela, diretamente.<\/p>\n<p><a href=\"http:\/\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2016\/10\/reactjs-virtual-dom.png\" target=\"_blank\"><img decoding=\"async\" class=\"aligncenter wp-image-715 lazyload\" data-src=\"http:\/\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2016\/10\/reactjs-virtual-dom.png\" alt=\"reactjs-virtual-dom\" width=\"378\" height=\"600\" data-srcset=\"https:\/\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2016\/10\/reactjs-virtual-dom.png 800w, https:\/\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2016\/10\/reactjs-virtual-dom-189x300.png 189w, https:\/\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2016\/10\/reactjs-virtual-dom-768x1220.png 768w, https:\/\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2016\/10\/reactjs-virtual-dom-645x1024.png 645w\" data-sizes=\"(max-width: 378px) 100vw, 378px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 378px; --smush-placeholder-aspect-ratio: 378\/600;\" \/><\/a><\/p>\n<p>Quando o Virtual DOM \u00e9 atualizado, React compara com a vers\u00e3o anterior do Virtual DOM. Depois ele faz um\u00a0<em>&#8216;diffing&#8217;<\/em> descobrindo exatamente quais objetos virtuais tiveram modifica\u00e7\u00f5es. Depois de saber exatamente quais objetos sofreram altera\u00e7\u00f5es, React atualiza esses objetos, e somente esses objetos, no DOM real. E pode ter certeza, atualizar apenas o que \u00e9 necess\u00e1rio torna as coisas, muito mais r\u00e1pidas!<\/p>\n<p>Gostou? Eu estou curtindo estudar React.js. Em breve, mais posts, pra colocar a m\u00e3o na massa.<br \/>\nQualquer coisa, deixa nos coment\u00e1rios!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Se voc\u00ea tem acompanhado o mundo do Front-end nos \u00faltimos anos, com certeza voc\u00ea percebeu um boom em Frameworks e bibliotecas Javascript, como o AngularJS, React.js e v\u00e1rios outros. O que \u00e9 o React.js? React.js \u00e9 uma biblioteca JavaScript, desenvolvida por engenheiros\u00a0do Facebook (s\u00f3 de colocar o nome do Facebook aqui voc\u00ea j\u00e1 se interessou [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":707,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[45,2,5],"tags":[55,116],"class_list":["post-706","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-curiosidades","category-dicas","category-tecnologia","tag-javascript","tag-react"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>React.js, o que \u00e9? - Introdu\u00e7\u00e3o ao React - Blog do Andr\u00e9 Felizardo<\/title>\n<meta name=\"description\" content=\"Que tal entender agora o que \u00e9 React.js e como come\u00e7ar a utiliz\u00e1-lo? Conhe\u00e7a uma das blibliotecas JavaScript mais usadas atualmente.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"http:\/\/www.andrefelizardo.com.br\/blog\/react-js-o-que-e-introducao-ao-react\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"React.js, o que \u00e9? - Introdu\u00e7\u00e3o ao React - Blog do Andr\u00e9 Felizardo\" \/>\n<meta property=\"og:description\" content=\"Que tal entender agora o que \u00e9 React.js e como come\u00e7ar a utiliz\u00e1-lo? Conhe\u00e7a uma das blibliotecas JavaScript mais usadas atualmente.\" \/>\n<meta property=\"og:url\" content=\"http:\/\/www.andrefelizardo.com.br\/blog\/react-js-o-que-e-introducao-ao-react\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog do Andr\u00e9 Felizardo\" \/>\n<meta property=\"article:published_time\" content=\"2016-10-18T19:57:32+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2016\/10\/react.js.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1920\" \/>\n\t<meta property=\"og:image:height\" content=\"1080\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Andr\u00e9 Felizardo\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Andr\u00e9 Felizardo\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. tempo de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"http:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/react-js-o-que-e-introducao-ao-react\\\/#article\",\"isPartOf\":{\"@id\":\"http:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/react-js-o-que-e-introducao-ao-react\\\/\"},\"author\":{\"name\":\"Andr\u00e9 Felizardo\",\"@id\":\"http:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/#\\\/schema\\\/person\\\/7ffba68b251851fb519600e2e387a02b\"},\"headline\":\"React.js, o que \u00e9? &#8211; Introdu\u00e7\u00e3o ao React\",\"datePublished\":\"2016-10-18T19:57:32+00:00\",\"mainEntityOfPage\":{\"@id\":\"http:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/react-js-o-que-e-introducao-ao-react\\\/\"},\"wordCount\":508,\"commentCount\":0,\"image\":{\"@id\":\"http:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/react-js-o-que-e-introducao-ao-react\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/wp-content\\\/uploads\\\/2016\\\/10\\\/react.js.png\",\"keywords\":[\"javascript\",\"react\"],\"articleSection\":[\"Curiosidades\",\"Dicas\",\"Tecnologia\"],\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"http:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/react-js-o-que-e-introducao-ao-react\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"http:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/react-js-o-que-e-introducao-ao-react\\\/\",\"url\":\"http:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/react-js-o-que-e-introducao-ao-react\\\/\",\"name\":\"React.js, o que \u00e9? - Introdu\u00e7\u00e3o ao React - Blog do Andr\u00e9 Felizardo\",\"isPartOf\":{\"@id\":\"http:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"http:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/react-js-o-que-e-introducao-ao-react\\\/#primaryimage\"},\"image\":{\"@id\":\"http:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/react-js-o-que-e-introducao-ao-react\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/wp-content\\\/uploads\\\/2016\\\/10\\\/react.js.png\",\"datePublished\":\"2016-10-18T19:57:32+00:00\",\"author\":{\"@id\":\"http:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/#\\\/schema\\\/person\\\/7ffba68b251851fb519600e2e387a02b\"},\"description\":\"Que tal entender agora o que \u00e9 React.js e como come\u00e7ar a utiliz\u00e1-lo? Conhe\u00e7a uma das blibliotecas JavaScript mais usadas atualmente.\",\"breadcrumb\":{\"@id\":\"http:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/react-js-o-que-e-introducao-ao-react\\\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"http:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/react-js-o-que-e-introducao-ao-react\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"http:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/react-js-o-que-e-introducao-ao-react\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/wp-content\\\/uploads\\\/2016\\\/10\\\/react.js.png\",\"contentUrl\":\"https:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/wp-content\\\/uploads\\\/2016\\\/10\\\/react.js.png\",\"width\":1920,\"height\":1080},{\"@type\":\"BreadcrumbList\",\"@id\":\"http:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/react-js-o-que-e-introducao-ao-react\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"In\u00edcio\",\"item\":\"http:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"React.js, o que \u00e9? &#8211; Introdu\u00e7\u00e3o ao React\"}]},{\"@type\":\"WebSite\",\"@id\":\"http:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/#website\",\"url\":\"http:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/\",\"name\":\"Blog do Andr\u00e9 Felizardo\",\"description\":\"Programa\u00e7\u00e3o de dev para dev\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"http:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-BR\"},{\"@type\":\"Person\",\"@id\":\"http:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/#\\\/schema\\\/person\\\/7ffba68b251851fb519600e2e387a02b\",\"name\":\"Andr\u00e9 Felizardo\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/wp-content\\\/wphb-cache\\\/gravatar\\\/9f9\\\/9f92d8b773ef5acf9b462d6dab41d783x96.jpg\",\"url\":\"https:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/wp-content\\\/wphb-cache\\\/gravatar\\\/9f9\\\/9f92d8b773ef5acf9b462d6dab41d783x96.jpg\",\"contentUrl\":\"https:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/wp-content\\\/wphb-cache\\\/gravatar\\\/9f9\\\/9f92d8b773ef5acf9b462d6dab41d783x96.jpg\",\"caption\":\"Andr\u00e9 Felizardo\"},\"sameAs\":[\"http:\\\/\\\/www.andrefelizardo.com.br\"],\"url\":\"https:\\\/\\\/www.andrefelizardo.com.br\\\/blog\\\/author\\\/andrefelizardo\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"React.js, o que \u00e9? - Introdu\u00e7\u00e3o ao React - Blog do Andr\u00e9 Felizardo","description":"Que tal entender agora o que \u00e9 React.js e como come\u00e7ar a utiliz\u00e1-lo? Conhe\u00e7a uma das blibliotecas JavaScript mais usadas atualmente.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"http:\/\/www.andrefelizardo.com.br\/blog\/react-js-o-que-e-introducao-ao-react\/","og_locale":"pt_BR","og_type":"article","og_title":"React.js, o que \u00e9? - Introdu\u00e7\u00e3o ao React - Blog do Andr\u00e9 Felizardo","og_description":"Que tal entender agora o que \u00e9 React.js e como come\u00e7ar a utiliz\u00e1-lo? Conhe\u00e7a uma das blibliotecas JavaScript mais usadas atualmente.","og_url":"http:\/\/www.andrefelizardo.com.br\/blog\/react-js-o-que-e-introducao-ao-react\/","og_site_name":"Blog do Andr\u00e9 Felizardo","article_published_time":"2016-10-18T19:57:32+00:00","og_image":[{"width":1920,"height":1080,"url":"http:\/\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2016\/10\/react.js.png","type":"image\/png"}],"author":"Andr\u00e9 Felizardo","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"Andr\u00e9 Felizardo","Est. tempo de leitura":"2 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"http:\/\/www.andrefelizardo.com.br\/blog\/react-js-o-que-e-introducao-ao-react\/#article","isPartOf":{"@id":"http:\/\/www.andrefelizardo.com.br\/blog\/react-js-o-que-e-introducao-ao-react\/"},"author":{"name":"Andr\u00e9 Felizardo","@id":"http:\/\/www.andrefelizardo.com.br\/blog\/#\/schema\/person\/7ffba68b251851fb519600e2e387a02b"},"headline":"React.js, o que \u00e9? &#8211; Introdu\u00e7\u00e3o ao React","datePublished":"2016-10-18T19:57:32+00:00","mainEntityOfPage":{"@id":"http:\/\/www.andrefelizardo.com.br\/blog\/react-js-o-que-e-introducao-ao-react\/"},"wordCount":508,"commentCount":0,"image":{"@id":"http:\/\/www.andrefelizardo.com.br\/blog\/react-js-o-que-e-introducao-ao-react\/#primaryimage"},"thumbnailUrl":"https:\/\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2016\/10\/react.js.png","keywords":["javascript","react"],"articleSection":["Curiosidades","Dicas","Tecnologia"],"inLanguage":"pt-BR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["http:\/\/www.andrefelizardo.com.br\/blog\/react-js-o-que-e-introducao-ao-react\/#respond"]}]},{"@type":"WebPage","@id":"http:\/\/www.andrefelizardo.com.br\/blog\/react-js-o-que-e-introducao-ao-react\/","url":"http:\/\/www.andrefelizardo.com.br\/blog\/react-js-o-que-e-introducao-ao-react\/","name":"React.js, o que \u00e9? - Introdu\u00e7\u00e3o ao React - Blog do Andr\u00e9 Felizardo","isPartOf":{"@id":"http:\/\/www.andrefelizardo.com.br\/blog\/#website"},"primaryImageOfPage":{"@id":"http:\/\/www.andrefelizardo.com.br\/blog\/react-js-o-que-e-introducao-ao-react\/#primaryimage"},"image":{"@id":"http:\/\/www.andrefelizardo.com.br\/blog\/react-js-o-que-e-introducao-ao-react\/#primaryimage"},"thumbnailUrl":"https:\/\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2016\/10\/react.js.png","datePublished":"2016-10-18T19:57:32+00:00","author":{"@id":"http:\/\/www.andrefelizardo.com.br\/blog\/#\/schema\/person\/7ffba68b251851fb519600e2e387a02b"},"description":"Que tal entender agora o que \u00e9 React.js e como come\u00e7ar a utiliz\u00e1-lo? Conhe\u00e7a uma das blibliotecas JavaScript mais usadas atualmente.","breadcrumb":{"@id":"http:\/\/www.andrefelizardo.com.br\/blog\/react-js-o-que-e-introducao-ao-react\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["http:\/\/www.andrefelizardo.com.br\/blog\/react-js-o-que-e-introducao-ao-react\/"]}]},{"@type":"ImageObject","inLanguage":"pt-BR","@id":"http:\/\/www.andrefelizardo.com.br\/blog\/react-js-o-que-e-introducao-ao-react\/#primaryimage","url":"https:\/\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2016\/10\/react.js.png","contentUrl":"https:\/\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2016\/10\/react.js.png","width":1920,"height":1080},{"@type":"BreadcrumbList","@id":"http:\/\/www.andrefelizardo.com.br\/blog\/react-js-o-que-e-introducao-ao-react\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"In\u00edcio","item":"http:\/\/www.andrefelizardo.com.br\/blog\/"},{"@type":"ListItem","position":2,"name":"React.js, o que \u00e9? &#8211; Introdu\u00e7\u00e3o ao React"}]},{"@type":"WebSite","@id":"http:\/\/www.andrefelizardo.com.br\/blog\/#website","url":"http:\/\/www.andrefelizardo.com.br\/blog\/","name":"Blog do Andr\u00e9 Felizardo","description":"Programa\u00e7\u00e3o de dev para dev","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"http:\/\/www.andrefelizardo.com.br\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-BR"},{"@type":"Person","@id":"http:\/\/www.andrefelizardo.com.br\/blog\/#\/schema\/person\/7ffba68b251851fb519600e2e387a02b","name":"Andr\u00e9 Felizardo","image":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.andrefelizardo.com.br\/blog\/wp-content\/wphb-cache\/gravatar\/9f9\/9f92d8b773ef5acf9b462d6dab41d783x96.jpg","url":"https:\/\/www.andrefelizardo.com.br\/blog\/wp-content\/wphb-cache\/gravatar\/9f9\/9f92d8b773ef5acf9b462d6dab41d783x96.jpg","contentUrl":"https:\/\/www.andrefelizardo.com.br\/blog\/wp-content\/wphb-cache\/gravatar\/9f9\/9f92d8b773ef5acf9b462d6dab41d783x96.jpg","caption":"Andr\u00e9 Felizardo"},"sameAs":["http:\/\/www.andrefelizardo.com.br"],"url":"https:\/\/www.andrefelizardo.com.br\/blog\/author\/andrefelizardo\/"}]}},"jetpack_featured_media_url":"https:\/\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2016\/10\/react.js.png","jetpack_shortlink":"https:\/\/wp.me\/p6EP66-bo","jetpack-related-posts":[{"id":717,"url":"https:\/\/www.andrefelizardo.com.br\/blog\/node-js-o-que-e-entenda-agora\/","url_meta":{"origin":706,"position":0},"title":"Node.js, o que \u00e9? Entenda agora","author":"Andr\u00e9 Felizardo","date":"24 de outubro de 2016","format":false,"excerpt":"As vezes eu digo que Node.js \u00e9 o futuro. Mas est\u00e1 errado. Node.js \u00e9 o presente. Se voc\u00ea quer fazer apps com Ionic, por exemplo, voc\u00ea precisa ter\u00a0Node\u00a0instalado.\u00a0At\u00e9 pra brincar com .NET Core, voc\u00ea pode utilizar\u00a0Node\u00a0pra criar sua Web API. E n\u00e3o sei voc\u00ea, mas, eu usei v\u00e1rias vezes o\u00a0npm,\u2026","rel":"","context":"Em &quot;Curiosidades&quot;","block_context":{"text":"Curiosidades","link":"https:\/\/www.andrefelizardo.com.br\/blog\/category\/curiosidades\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2016\/10\/node.js.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2016\/10\/node.js.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2016\/10\/node.js.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2016\/10\/node.js.png?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":799,"url":"https:\/\/www.andrefelizardo.com.br\/blog\/angular-2-nao-continuacao-do-angular-1\/","url_meta":{"origin":706,"position":1},"title":"Angular 2 &#8211; A n\u00e3o continua\u00e7\u00e3o do Angular 1","author":"Andr\u00e9 Felizardo","date":"15 de janeiro de 2017","format":false,"excerpt":"T\u00e1 estudando Angular 2? N\u00e3o? Fica ligado que a gente j\u00e1 est\u00e1 no Angular 4 beta 3! Angular 2 foi oficialmente lan\u00e7ado em setembro de 2016. Mas tamb\u00e9m n\u00e3o precisa ficar t\u00e3o preocupado. De qualquer forma vamos colocar os pingos nos is\u00a0pra voc\u00ea entender de uma vez por toda o\u2026","rel":"","context":"Em &quot;Dev&quot;","block_context":{"text":"Dev","link":"https:\/\/www.andrefelizardo.com.br\/blog\/category\/dev\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2017\/01\/angular2.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2017\/01\/angular2.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2017\/01\/angular2.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2017\/01\/angular2.png?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":809,"url":"https:\/\/www.andrefelizardo.com.br\/blog\/ionic-2-versao-final\/","url_meta":{"origin":706,"position":2},"title":"Ionic 2 &#8211; Vers\u00e3o Final","author":"Andr\u00e9 Felizardo","date":"26 de janeiro de 2017","format":false,"excerpt":"Vou repetir as palavras do Max: Hoje, eu estou incrivelmente animado\u00a0para anunciar o\u00a0Ionic 2. Depois de algumas releases candidates, hoje (25-01-17) foi anunciada a vers\u00e3o final do Ionic 2. Com o lan\u00e7amento da vers\u00e3o final do Angular 2\u00a0eu realmente estava ansioso por uma vers\u00e3o final do Ionic 2. Quando foi\u2026","rel":"","context":"Em &quot;Aplicativos&quot;","block_context":{"text":"Aplicativos","link":"https:\/\/www.andrefelizardo.com.br\/blog\/category\/aplicativos\/"},"img":{"alt_text":"Ionic 2","src":"https:\/\/i0.wp.com\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2017\/01\/ionic-2.jpg?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2017\/01\/ionic-2.jpg?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2017\/01\/ionic-2.jpg?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2017\/01\/ionic-2.jpg?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":963,"url":"https:\/\/www.andrefelizardo.com.br\/blog\/o-que-e-vue-js\/","url_meta":{"origin":706,"position":3},"title":"O que \u00e9 Vue.js","author":"Andr\u00e9 Felizardo","date":"10 de janeiro de 2018","format":false,"excerpt":"Vue.js \u00e9 uma biblioteca\u00a0JavaScript\u00a0acess\u00edvel, vers\u00e1til e perform\u00e1tica. E apesar do site oficial dizer que Vue.js \u00e9 um framework JavaScript Progressivo, eu j\u00e1 vou come\u00e7ar discordando :) Entendemos por framework, aquela solu\u00e7\u00e3o 'fechada' quando voc\u00ea j\u00e1 tem definido por exemplo a estrutura de diret\u00f3rios, ou a forma como voc\u00ea faz uma\u2026","rel":"","context":"Em &quot;Dev&quot;","block_context":{"text":"Dev","link":"https:\/\/www.andrefelizardo.com.br\/blog\/category\/dev\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2018\/01\/vuejs.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2018\/01\/vuejs.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2018\/01\/vuejs.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2018\/01\/vuejs.png?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":732,"url":"https:\/\/www.andrefelizardo.com.br\/blog\/primeiro-ano-serio-do-blog-balanco-2016\/","url_meta":{"origin":706,"position":4},"title":"Primeiro ano (s\u00e9rio) do blog &#8211; Balan\u00e7o 2016","author":"Andr\u00e9 Felizardo","date":"13 de dezembro de 2016","format":false,"excerpt":"Estamos na \u00e9poca de Retrospectivas n\u00e9, ent\u00e3o vou come\u00e7ar a minha. Esse ano foi o segundo ano do blog, mas na verdade foi o primeiro ano que eu levei o blog a s\u00e9rio, e os n\u00fameros foram impressionantes! Divulga\u00e7\u00e3o Bom, eu n\u00e3o utilizei nenhum m\u00e9todo pago este ano para conseguir\u2026","rel":"","context":"Em &quot;Curiosidades&quot;","block_context":{"text":"Curiosidades","link":"https:\/\/www.andrefelizardo.com.br\/blog\/category\/curiosidades\/"},"img":{"alt_text":"Splash Screen Ionic","src":"https:\/\/i0.wp.com\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2016\/07\/splash-andre-felizardo.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2016\/07\/splash-andre-felizardo.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2016\/07\/splash-andre-felizardo.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2016\/07\/splash-andre-felizardo.png?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2016\/07\/splash-andre-felizardo.png?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2016\/07\/splash-andre-felizardo.png?resize=1400%2C800&ssl=1 4x"},"classes":[]},{"id":926,"url":"https:\/\/www.andrefelizardo.com.br\/blog\/o-que-e-ember-js\/","url_meta":{"origin":706,"position":5},"title":"O que \u00e9 Ember.js","author":"Andr\u00e9 Felizardo","date":"30 de setembro de 2017","format":false,"excerpt":"Ember.js \u00e9 um framework Javascript (sim, mais um) para construir aplica\u00e7\u00f5es web ambiciosas. O objetivo dele \u00e9 aumentar a produtividade de desenvolvimento de aplica\u00e7\u00f5es web, mas focado no paradigma de que \u00e9 melhor gastar um pouco mais de tempo no desenvolvimento por\u00e9m facilitar a manuten\u00e7\u00e3o. Antes de detalhar mais o\u2026","rel":"","context":"Em &quot;Dev&quot;","block_context":{"text":"Dev","link":"https:\/\/www.andrefelizardo.com.br\/blog\/category\/dev\/"},"img":{"alt_text":"Logo Ember.js","src":"https:\/\/i0.wp.com\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2017\/09\/ember.js.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2017\/09\/ember.js.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2017\/09\/ember.js.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/www.andrefelizardo.com.br\/blog\/wp-content\/uploads\/2017\/09\/ember.js.png?resize=700%2C400&ssl=1 2x"},"classes":[]}],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.andrefelizardo.com.br\/blog\/wp-json\/wp\/v2\/posts\/706","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.andrefelizardo.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.andrefelizardo.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.andrefelizardo.com.br\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.andrefelizardo.com.br\/blog\/wp-json\/wp\/v2\/comments?post=706"}],"version-history":[{"count":0,"href":"https:\/\/www.andrefelizardo.com.br\/blog\/wp-json\/wp\/v2\/posts\/706\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.andrefelizardo.com.br\/blog\/wp-json\/wp\/v2\/media\/707"}],"wp:attachment":[{"href":"https:\/\/www.andrefelizardo.com.br\/blog\/wp-json\/wp\/v2\/media?parent=706"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.andrefelizardo.com.br\/blog\/wp-json\/wp\/v2\/categories?post=706"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.andrefelizardo.com.br\/blog\/wp-json\/wp\/v2\/tags?post=706"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}