{"id":229333,"date":"2022-10-30T16:08:00","date_gmt":"2022-10-30T13:08:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=229333"},"modified":"2022-11-09T06:32:19","modified_gmt":"2022-11-09T03:32:19","slug":"herdando-projetos-do-wordpress-dicas-para-desenvolvimento","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/pt-pt\/herdando-projetos-do-wordpress-dicas-para-desenvolvimento\/","title":{"rendered":"Herdando projetos do WordPress: dicas para desenvolvimento"},"content":{"rendered":"\n<p>Se voc\u00ea est\u00e1 administrando um neg\u00f3cio que se concentra tanto no desenvolvimento de solu\u00e7\u00f5es desde o in\u00edcio ou na implementa\u00e7\u00e3o de uma solu\u00e7\u00e3o personalizada no contexto de projetos pr\u00e9-existentes (ou talvez ambos), ent\u00e3o voc\u00ea provavelmente \u2013 em algum momento \u2013 esteve na situa\u00e7\u00e3o de herdar projetos WordPress.<\/p>\n<p>Lidar com projetos de qualquer uma das al\u00e7as traz seu conjunto de desafios \u2013 a maioria deles bem-vindos \u2013 mas parece ser muito mais comum as pessoas reclamarem de trabalhar com uma base de c\u00f3digo pr\u00e9-existente.<\/p>\n<p>N\u00e3o \u00e9 que eu n\u00e3o tenha esse sentimento, mas acho que h\u00e1 um n\u00edvel de imaturidade em fazer isso. Por um lado, sim, algumas bases de c\u00f3digo s\u00e3o terr\u00edveis. Mas algumas bases de c\u00f3digo n\u00e3o s\u00e3o t\u00e3o ruins. Na verdade, eu diria que eles s\u00e3o um pouco diferentes de como voc\u00ea o desenvolveria.<\/p>\n<p>Este \u00e9 um caso em que os padr\u00f5es entram em jogo, mas vou me desviar disso por enquanto.<\/p>\n<p>Ent\u00e3o, digamos que voc\u00ea est\u00e1 herdando projetos do WordPress e n\u00e3o est\u00e1 particularmente empolgado com a base de c\u00f3digo com a qual est\u00e1 trabalhando. Como \u00e9 que voc\u00ea ainda pode desfrutar do trabalho que est\u00e1 fazendo sem sentir que precisa criticar todos os aspectos do que quer que seja com o qual esteja lidando?<\/p>\n<h2>Herdando projetos do WordPress<\/h2>\n<p>Primeiro, essa no\u00e7\u00e3o de reclamar do trabalho alheio \u00e9 a proverbial \u00e1gua em que n\u00e3o gosto de pisar.<\/p>\n<ul>\n<li>N\u00e3o conhe\u00e7o os antecedentes que levaram a base de c\u00f3digo a estar em seu estado,<\/li>\n<li>N\u00e3o sei por que certas coisas foram desenvolvidas do jeito que foram (restri\u00e7\u00f5es de tempo, falta de familiaridade com um projeto, etc.),<\/li>\n<li>Estou encarregado de fazer algo dentro do contexto do projeto, ent\u00e3o por que gastar tempo focado em coisas que n\u00e3o fazem parte da minha responsabilidade?<\/li>\n<\/ul>\n<p>Entendo: h\u00e1 momentos em que codificamos, escrevemos e nos comunicamos com um c\u00f3digo que j\u00e1 existe. E isso pode ser dif\u00edcil. Existem padr\u00f5es de design que n\u00e3o s\u00e3o especificamente para essa situa\u00e7\u00e3o.<\/p>\n<p>Mas, em vez de cobrir isso, pensei em compartilhar tr\u00eas coisas que acho que mostram maturidade quando se trata de desenvolvimento ao herdar projetos do WordPress que podem nos irritar.<\/p>\n<h3>1 N\u00e3o refatore tudo<\/h3>\n<p>Como <a href=\"https:\/\/martinfowler.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Martin Fowler<\/a> afirmou:<\/p>\n<blockquote>\n<p>Essa refatora\u00e7\u00e3o oportunista \u00e9 referida pelo tio Bob como seguindo a regra dos escoteiros \u2013 sempre deixe o c\u00f3digo para tr\u00e1s em um estado melhor do que o encontrado.<\/p>\n<\/blockquote>\n<p>De um modo geral, eu gosto desta regra, mas dependendo dos requisitos do projeto isso pode estar al\u00e9m do alcance de nossas responsabilidades.<\/p>\n<p>Ent\u00e3o, sempre que nos deparamos com algo que sabemos que precisa de refatora\u00e7\u00e3o, <strong>mas<\/strong> o projeto est\u00e1 funcionando sem problemas. Se voc\u00ea fizer uma mudan\u00e7a em algo porque acha que precisa ser feito, voc\u00ea n\u00e3o sabe como isso se espalhar\u00e1 por todo o projeto.<\/p>\n<p>Se voc\u00ea tiver tempo para fazer uma auditoria completa do c\u00f3digo, isso \u00e9 uma coisa, mas se n\u00e3o, sua tarefa \u00e9 apresentar o que voc\u00ea concordou em fazer.<\/p>\n<h3>2 Concentre-se no que voc\u00ea concordou em fazer<\/h3>\n<p>E isso leva a este ponto: ao herdar projetos do WordPress, voc\u00ea recebe uma certa quantidade de trabalho e nada mais (\u00e9 por isso que temos uma declara\u00e7\u00e3o de trabalho, certo?).<\/p>\n<p>Ent\u00e3o, por mais que voc\u00ea queira mudar o ambiente em que est\u00e1, n\u00e3o o fa\u00e7a. Concentre-se no que voc\u00ea pode fazer, no que s\u00f3 voc\u00ea pode fazer e no que voc\u00ea concordou em fazer.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-167152-61e7a08bc4f0e.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-167152-61e7a08bc4f0e.png\" alt=\"Herdando projetos do WordPress: dicas para desenvolvimento\" ><\/a><\/p>\n<p>Acho legal anotar os problemas, e acho que isso pode at\u00e9 ser ben\u00e9fico (e falarei sobre isso momentaneamente), mas n\u00e3o perca o foco no que voc\u00ea concordou em fazer. Fazer qualquer coisa, mas n\u00e3o \u00e9 profissional.<\/p>\n<h3>3 N\u00e3o julgue o desenvolvedor anterior<\/h3>\n<p>Outra coisa comum \u2013 especialmente em c\u00f3digo aberto \u2013 \u00e9 julgar o desenvolvedor que escreveu o conjunto inicial de c\u00f3digo com o qual voc\u00ea est\u00e1 trabalhando.<\/p>\n<blockquote>\n<p>O que \u00e9 isto? Eu nunca escreveria assim.<\/p>\n<\/blockquote>\n<p>Quero dizer, quantas vezes pensamos isso para n\u00f3s mesmos? Mas n\u00e3o sabemos o tempo, as restri\u00e7\u00f5es, a experi\u00eancia ou o contexto em que o desenvolvedor estava trabalhando.<\/p>\n<p>O c\u00f3digo que lan\u00e7amos n\u00e3o \u00e9 necessariamente representativo do nosso n\u00edvel de habilidade. Muitas vezes, \u00e9 ditado por vari\u00e1veis \u200b\u200bde terceiros que influenciam a maneira como implementamos uma solu\u00e7\u00e3o.<\/p>\n<p>E n\u00f3s sabemos como \u00e9 isso, certo? Quantas vezes quisemos fazer algo de uma maneira, mas as restri\u00e7\u00f5es e o cronograma em que estamos trabalhando ditam o que estamos fazendo?<\/p>\n<p>Ent\u00e3o, por que esperar\u00edamos que esses desenvolvedores fossem diferentes?<\/p>\n<h3>Opcional: oferecer suporte futuro<\/h3>\n<p>Como mencionado anteriormente, se voc\u00ea encontrar \u00e1reas problem\u00e1ticas na base de c\u00f3digo, isso n\u00e3o significa que \u00e9 uma causa perdida.<\/p>\n<p>Em vez disso, quando voc\u00ea se deparar com esses tipos de problemas, acho que \u00e9 uma boa ideia:<\/p>\n<ul>\n<li>fazer anota\u00e7\u00f5es sobre as coisas que voc\u00ea viu,<\/li>\n<li>anote o que voc\u00ea faria para corrigi-lo e por qu\u00ea,<\/li>\n<li>converse com o cliente sobre o que viu e as vantagens de atualiz\u00e1-lo.<\/li>\n<\/ul>\n<p>Isso obviamente leva a trabalhos futuros, mas, talvez acima disso, permite oferecer solu\u00e7\u00f5es para criar softwares melhores e mais bem arquitetados e garantir que voc\u00ea esteja tornando a Internet um lugar melhor para um CMS t\u00e3o popular.<\/p>\n<p>N\u00e3o, este trabalho nunca \u00e9 garantido, mas \u00e9 \u00fatil.<\/p>\n<h2>Tenho certeza que h\u00e1 mais<\/h2>\n<p>Essas s\u00e3o apenas tr\u00eas dicas com as quais ofere\u00e7o com base na experi\u00eancia que tenho ao herdar projetos do WordPress. N\u00e3o \u00e9 para ser abrangente.<\/p>\n<p>Em vez disso, o objetivo \u00e9 fornecer algumas dicas que permitem que voc\u00ea seja mais atencioso com o trabalho de outras pessoas em rela\u00e7\u00e3o ao seu trabalho, pense com mais clareza sobre o que pode fazer quando se deparar com situa\u00e7\u00f5es semelhantes e obtenha mais trabalho aprimorando o existente solu\u00e7\u00e3o potencialmente.<\/p>\n<p>Mas sei que as coisas que mencionei s\u00e3o apenas algumas das minhas observa\u00e7\u00f5es. Tem o seu? Mencione-os nos coment\u00e1rios.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Fonte de grava\u00e7\u00e3o:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/tommcfarlin.com\" class=\"external external_icon\">tommcfarlin.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Digamos que voc\u00ea est\u00e1 herdando projetos do WordPress e n\u00e3o est\u00e1 empolgado com a base de c\u00f3digo. Como voc\u00ea ainda pode desfrutar do trabalho que est\u00e1 fazendo?<\/p>\n","protected":false},"author":1,"featured_media":220946,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[722,920,867],"tags":[1170],"class_list":["post-229333","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-desenvolvedor","category-outro","category-wordpress-8","tag-affiai-pt-pt"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/posts\/229333","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/comments?post=229333"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/posts\/229333\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/media\/220946"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/media?parent=229333"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/categories?post=229333"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/tags?post=229333"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}