Comprar novo:
R$ 335,07
Produto sob encomenda.
Temporariamente fora de estoque. Encomende agora e enviaremos um e-mail quando a compra for concluída de acordo com a disponibilidade do item. Nós enviaremos atualizações por e-mail.
Quer começar a ler agora? O eBook Kindle já está disponível e você pode iniciar sua leitura com os Apps gratuitos de leitura Kindle.
R$ R$ 335,07 () Inclui opções selecionadas. Inclui parcela mensal inicial e opções selecionadas. Detalhes
Preço
Subtotal
R$ R$ 335,07
Subtotal
Detalhamento do pagamento inicial
Custo do frete, data de entrega e total do pedido (incluindo impostos) mostrados na finalização da compra.
Refactoring: Improving th... foi adicionado ao seu carrinho
Imagem do logotipo do app Kindle

Baixe o app Kindle gratuito e comece a ler livros do Kindle instantaneamente em seu smartphone, tablet ou computador - sem a necessidade de um dispositivo Kindle.

Leia instantaneamente em seu navegador com o Kindle para internet.

Usando a câmera do seu celular, digitalize o código abaixo e baixe o app Kindle.

Código QR para baixar o aplicativo Kindle

Seguir o autor

Algo deu errado. Tente fazer sua solicitação novamente mais tarde.

Refactoring: Improving the Design of Existing Code Capa dura – Ilustrado, 19 novembro 2018

4,7 4,7 de 5 estrelas 971 avaliações de clientes

{"desktop_buybox_group_1":[{"displayPrice":"R$ 335,07","priceAmount":335.07,"currencySymbol":"R$","integerValue":"335","decimalSeparator":",","fractionalValue":"07","symbolPosition":"left","hasSpace":true,"showFractionalPartIfEmpty":true,"offerListingId":"l3rWsBxtw8c4i%2Br8zs3owyBy3NUk67Gtzwnyy6QbDcJ39sYQaZ2OeUJIkmCTahZsTeR%2FqRWQOaMAXD0tpbIbZ9UbgXmCFs9VJb2nDMfkgyd4g553oqgxY7u6csmmVmkFBIIIDqdQQ83T4M%2FcOCQKyIOmHE3PeYSP","locale":"pt-BR","buyingOptionType":"NEW","aapiBuyingOptionIndex":0}]}

Opções de compra e produtos complementares

Frequentemente comprados juntos

R$335,07
Produto sob encomenda.
Temporariamente fora de estoque. Encomende agora e enviaremos um e-mail quando a compra for concluída de acordo com a disponibilidade do item. Nós enviaremos atualizações por e-mail.
Enviado de e vendido por Amazon.com.br.
+
R$235,59
Enviado de e vendido por Amazon.com.br.
+
R$376,58
Em estoque
Enviado de e vendido por Amazon.com.br.
Preço total:
Para ver nosso preço, adicione este item ao seu carrinho.
Detalhes
Adicionado ao carrinho
Alguns destes itens são enviados mais rapidamente que os outros.
Escolha itens para compra conjunta.

Descrição do produto

Sobre o Autor

Martin Fowler is Chief Scientist at ThoughtWorks. He describes himself as "an author, speaker, consultant and general loud-mouth on software development." Fowler concentrates on designing enterprise software: exploring what makes a good design and what practices are needed to create one.

Detalhes do produto

  • Editora ‏ : ‎ Addison-Wesley Professional; 2nd ed. edição (19 novembro 2018)
  • Idioma ‏ : ‎ Inglês
  • Capa dura ‏ : ‎ 448 páginas
  • ISBN-10 ‏ : ‎ 0134757599
  • ISBN-13 ‏ : ‎ 978-0134757599
  • Dimensões ‏ : ‎ 2.03 x 18.8 x 23.37 cm
  • Avaliações dos clientes:
    4,7 4,7 de 5 estrelas 971 avaliações de clientes

Sobre o autor

Siga autores para obter atualizações de novos lançamentos e recomendações aprimoradas.
Brief content visible, double tap to read full content.
Full content visible, double tap to read brief content.

Descubra mais livros do autor, veja autores semelhantes, leia blogs de autores e muito mais

Avaliações de clientes

4,7 de 5 estrelas
4,7 de 5
971 avaliações globais

Principais avaliações do Brasil

Avaliado no Brasil em 30 de abril de 2019
17 pessoas acharam isso útil
Denunciar
Avaliado no Brasil em 4 de julho de 2020
Avaliado no Brasil em 4 de janeiro de 2021
Avaliado no Brasil em 3 de outubro de 2019
2 pessoas acharam isso útil
Denunciar
Avaliado no Brasil em 28 de março de 2019
2 pessoas acharam isso útil
Denunciar

Principais avaliações de outros países

Traduzir todas as avaliações para português
Nilendu Misra
4,0 de 5 estrelas If you have the right 'why', you can bear almost any 'how'
Avaliado nos Estados Unidos em 27 de outubro de 2023
Imagem do cliente
Nilendu Misra
4,0 de 5 estrelas If you have the right 'why', you can bear almost any 'how'
Avaliado nos Estados Unidos em 27 de outubro de 2023
Code is written by humans, executed by machines. Live code is also read by (other) humans for about 10x more than the time it took to write it. This is where "refactoring" comes to play. It is sort of making continuous improvement to code so it is more readable. It is cleaning up cobwebs from the corners.

One of the most popular CS papers ever ("Hints for Computer System Design", 1983) suggests 3-step process about writing code - first, make it work; second, make it right; finally, make it fast". This book, a succinct second edition of a very popular first, is an excellent "show and tell" for the second part.

It has a catalog of "code smells" and an inventory of "refactoring tricks" mapped to each. The first edition had working Java examples. The present one shows JavaScript ones. The examples are real-life but simple enough to not distract from the core - how to simplify the "first version" of code. Apart from the content, the insights that pops out can only be gleaned from years of deep experience. One example, say, most developers encode a "phone number" attribute as string in the first attempt of modeling. Soon enough, one needs to add "spam rules", "blocking number", "area code" etc. That necessitates phone number to be 'refactored' from string (i.e., a primitive type) to its own object model (say, a class called PhoneNumber). The author cheekily refers to the former type of behavior as "stringly typed" variables. Word play is a hallmark of many good engineers I'd worked with, but it is also a phenomenal way to remember things. Humor shortens the retrieval curve.

What I liked most about the book is a broad adoption of "Paracelsus' Maxim" - the difference between a poison and something benign is the dose. Most of the refactoring pattens come in pairs. You can "extract function" from a big one, or "inline function code" if it is short, obvious and singularly used, say. You can "replace parameter with query" or "replace query with a parameter". The only unpaired pattern shows up with large/complex conditionals (say, a switch, or a multiway nested conditional with 'guard clause) - most/all of them are pain to read and should ideally be refactored, say, with "replace conditional with polymorphism". Live book site has 4 more patterns beyond the book.

I found the refactoring patterns could be of three principal dimensions - one, structure -- variable, method, class, conditional; two, usage and locality -- depending on how much they're used and if they are used within/outside the module (class); three, data and mutation -- there is a clear separation between refactoring a data (or, value) object/data passed as value- or reference; separating data (query) from command etc. On top of that, some of the refactoring could be thought of as "helping the original developer" (say, to modularize or DRY better) vs. "helping others who may read the code later".

When I read the first edition years ago, IDEs were not as robust nor opinionated enough about refactoring. These days, majority if not all the refactoring is done by default - one just needs to click to accept, say, extracting a method. It has been a huge time saving and long-term benefit for collaborative work and fits very well within the philosophy of "continuous integration"/Kaizen etc. One could argue that lowers the importance of such book. While the IDE may do the grunt work, key decisioning remains with humans, for now. Especially since most refactoring could appear in polar opposites it is therefore even more important to understand the context - the "why" - which this book brilliantly lays out.
Imagens nesta avaliação
Imagem do cliente Imagem do cliente
Imagem do clienteImagem do cliente
Pete
3,0 de 5 estrelas Not as good as 1st edition
Avaliado no Reino Unido em 8 de setembro de 2023
Amazon Customer
5,0 de 5 estrelas Refactoring right is important
Avaliado no Canadá em 10 de agosto de 2023
Client d'Amazon
5,0 de 5 estrelas Excellent
Avaliado na França em 13 de outubro de 2023
Amazon Customer
5,0 de 5 estrelas Refactoring Software
Avaliado nos Estados Unidos em 17 de setembro de 2023