{"id":264,"date":"2009-09-30T18:56:22","date_gmt":"2009-09-30T21:56:22","guid":{"rendered":"http:\/\/www.andboom.com.br\/blog\/?p=264"},"modified":"2022-02-13T18:34:40","modified_gmt":"2022-02-13T21:34:40","slug":"programador-guimaraes-rosa","status":"publish","type":"post","link":"https:\/\/mushroomlabs.com.br\/blog\/2009\/09\/30\/programador-guimaraes-rosa\/","title":{"rendered":"Programador Guimar\u00e3es Rosa"},"content":{"rendered":"<p>A proposta deste texto n\u00e3o \u00e9 discutir os padr\u00f5es de codifica\u00e7\u00e3o. Na verdade \u00e9 fazer uma chacota sobre a criatividade ao dar nomes aos bois na hora de codificar.<\/p>\n<p>Por que programador Guimar\u00e3es Rosa? Chamo assim aquele que tem uma tremenda capacidade de criar voc\u00e1bulos para os objetos, classes, propriedades e etc em um sistema.<\/p>\n<p>Aquele exemplo cl\u00e1ssico para controle transacional: transfer\u00eancia de valores entre contas banc\u00e1rias&#8230; impratic\u00e1vel sem um m\u00e9todo que permita desfazer as opera\u00e7\u00f5es se em algum passo houver um erro, e um outro m\u00e9todo que confirme ao final das opera\u00e7\u00f5es que tudo est\u00e1 nos conformes e pode ser persistido no banco de dados a transa\u00e7\u00e3o. Da\u00ed que alguns desenvolvedores resolvem fazer um pseudo encapsulamento de API&#8217;s e eita, que desce Guimar\u00e3es Rosa, para renomear m\u00e9todos passando para o tal &#8220;<em>RollbackarTransacao<\/em>()&#8221; (sim! eu j\u00e1 vi isso) e o &#8220;<em>CommitarTransacao<\/em>()&#8221;. Mas tudo bem&#8230;<\/p>\n<p>O fato \u00e9 que toda empresa tem que ter seu sistema de controle de vers\u00f5es do c\u00f3digo das aplica\u00e7\u00f5es. Imprescind\u00ccvel essa ferramenta por motivos que todos n\u00f3s sabemos muito bem e seria redundante ficar enumerando-os. Mas \u00e9 importante se ater \u00e0s opera\u00e7\u00f5es di\u00e1rias com ele: &#8220;<em>checautar<\/em>&#8221; ou &#8220;<em>checar<\/em>&#8221; (&#8220;oh cara, vc checou a pasta inteira?&#8221;) a aplica\u00e7\u00e3o correta; sempre &#8220;<em>updeitar<\/em>&#8221; antes de &#8220;<em>commitar<\/em>&#8221; e se conflitar, o jeito \u00e9 &#8220;<em>mergear<\/em>&#8220;; triste \u00e9 se o cara &#8220;<em>lockou<\/em>&#8221; o arquivo&#8230; loucura!<\/p>\n<p>Codificando, tem momentos que precisamos &#8220;<em>castear<\/em>&#8221; (ai!) tipos de estruturas de dados; noutros, reparar se est\u00e1 &#8220;<em>sheidando<\/em>&#8221; direito o objeto na tela. Mas nunca, nunca se esque\u00e7a: depois de qualquer altera\u00e7\u00e3o, validar e depois &#8220;<em>comitar<\/em>&#8220;. Fechado!?.<\/p>\n<p>J\u00e1 que em alguns momentos se confunde o sentido do Globalization dando nomes a m\u00e9todos como &#8220;GetUltimoUsuario()&#8221; vejo que seria melhor algo assim: &#8220;<em><strong>GetBenutzerPorSeuNombre<\/strong><\/em>(string <strong>utilisateur<\/strong>)&#8221;. Usar\u00edamos este lindo m\u00e9todo para retornar usu\u00e1rios passando um nome como par\u00e2metro. O mais bizonho \u00e9 que possivelmente muitos alem\u00e3es, programadores de l\u00edngua inglesa, programadores de l\u00edngua portuguesa, de francesa e espanhola n\u00e3o entenderiam o que realmente este m\u00e9todo retornaria por uma olhada de imediato.<\/p>\n<p>Apesar de tudo sabemos, n\u00f3s, os caras da inform\u00e1tica, nossa incflu\u00eancia na sociedade moderna. Impondo maneiras de se trabalhar, agilizando processos e at\u00e9 criando novos voc\u00e1bulos. Afinal de contas at\u00e9 os imortais da academia brasileira de letras <strong>deletam<\/strong> hoje em dia sem o menor pudor.<\/p>\n<p>Quem sabe um dia as crian\u00e7as jogando bolinha de gude n\u00e3o dir\u00e3o: &#8220;n\u00e3o deixo &#8216;<em>rollbackar<\/em>&#8216;&#8221; querendo dizer &#8220;n\u00e3o dou disv\u00f3ltis&#8221;.<\/p>\n<p>\u00c9 tudo uma quest\u00e3o de populariza\u00e7\u00e3o e facilidade na comunica\u00e7\u00e3o. Quantas &#8220;<em>tuitadas<\/em>&#8221; os brasileiros n\u00e3o d\u00e3o todos os dias?<\/p>\n<p>Creio que seja uma quest\u00e3o de facilidade na comunica\u00e7\u00e3o aportuguesar, justapor, e etc, muitos termos. Mas para codificar, a id\u00e9ia n\u00e3o \u00e9 bem essa.<\/p>\n<p>Por\u00e9m, como disse que n\u00e3o \u00e9 meu prop\u00f3sito discutir padr\u00f5es de codifica\u00e7\u00e3o, fica a deixa: &#8220;gente, saladear nos nomes, n\u00e3o <strong>performa<\/strong> de jeito nenhum!&#8221; \ud83d\ude09<\/p>\n<p>\u00c9 isso aeee<\/p>\n<p>ps: poxa, fazia tempo que eu n\u00e3o <em>postava<\/em> aqui no blog \ud83d\ude00 hehe jaja tsc tsc<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A proposta deste texto n\u00e3o \u00e9 discutir os padr\u00f5es de codifica\u00e7\u00e3o. Na verdade \u00e9 fazer uma chacota sobre a criatividade ao dar nomes aos bois na hora de codificar. Por que programador Guimar\u00e3es Rosa? Chamo assim aquele que tem uma tremenda capacidade de criar voc\u00e1bulos para os objetos, classes, propriedades e etc em um sistema. [&hellip;]<\/p>\n","protected":false},"author":5,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[14,24],"tags":[],"class_list":["post-264","post","type-post","status-publish","format-standard","hentry","category-humor","category-programacao"],"_links":{"self":[{"href":"https:\/\/mushroomlabs.com.br\/blog\/wp-json\/wp\/v2\/posts\/264","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mushroomlabs.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mushroomlabs.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mushroomlabs.com.br\/blog\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/mushroomlabs.com.br\/blog\/wp-json\/wp\/v2\/comments?post=264"}],"version-history":[{"count":1,"href":"https:\/\/mushroomlabs.com.br\/blog\/wp-json\/wp\/v2\/posts\/264\/revisions"}],"predecessor-version":[{"id":1298,"href":"https:\/\/mushroomlabs.com.br\/blog\/wp-json\/wp\/v2\/posts\/264\/revisions\/1298"}],"wp:attachment":[{"href":"https:\/\/mushroomlabs.com.br\/blog\/wp-json\/wp\/v2\/media?parent=264"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mushroomlabs.com.br\/blog\/wp-json\/wp\/v2\/categories?post=264"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mushroomlabs.com.br\/blog\/wp-json\/wp\/v2\/tags?post=264"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}