ورود به حساب

نام کاربری گذرواژه

گذرواژه را فراموش کردید؟ کلیک کنید

حساب کاربری ندارید؟ ساخت حساب

ساخت حساب کاربری

نام نام کاربری ایمیل شماره موبایل گذرواژه

برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید


09117307688
09117179751

در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید

دسترسی نامحدود

برای کاربرانی که ثبت نام کرده اند

ضمانت بازگشت وجه

درصورت عدم همخوانی توضیحات با کتاب

پشتیبانی

از ساعت 7 صبح تا 10 شب

دانلود کتاب Refatoração - Aperfeiçoando o Design de Códigos Existentes

دانلود کتاب Refactoring - بهبود طراحی کد موجود

Refatoração - Aperfeiçoando o Design de Códigos Existentes

مشخصات کتاب

Refatoração - Aperfeiçoando o Design de Códigos Existentes

ویرایش:  
نویسندگان:   
سری:  
ISBN (شابک) : 9788575227251, 9788575227244 
ناشر: Novatec Editora 
سال نشر: 2019 
تعداد صفحات: 0 
زبان: Portuguese 
فرمت فایل : EPUB (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود) 
حجم فایل: 1 مگابایت 

قیمت کتاب (تومان) : 51,000



ثبت امتیاز به این کتاب

میانگین امتیاز به این کتاب :
       تعداد امتیاز دهندگان : 13


در صورت تبدیل فایل کتاب Refatoração - Aperfeiçoando o Design de Códigos Existentes به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.

توجه داشته باشید کتاب Refactoring - بهبود طراحی کد موجود نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.


توضیحاتی درمورد کتاب به خارجی



فهرست مطالب

Apresentação da primeira edição
Prefácio
capítulo 1
	Refatoração: primeiro exemplo
		Ponto de partida
		Comentários sobre o programa inicial
		Primeiro passo na refatoração
		Decompondo a função statement
		Status: muitas funções aninhadas
		Separando as fases de cálculo e de formatação
		Status: separado em dois arquivos (e fases)
		Reorganizando os cálculos por tipo
		Status: criando os dados com a calculadora polimórfica
		Considerações finais
capítulo 2
	Princípios da refatoração
		Definindo a refatoração
		Dois chapéus
		Por que devemos refatorar?
		Quando devemos refatorar?
		Problemas com a refatoração
		Refatoração, arquitetura e Yagni
		Refatoração e o processo mais amplo de desenvolvimento de software
		Refatoração e desempenho
		De onde veio a refatoração?
		Refatorações automatizadas
		Indo além
capítulo 3
	“Maus cheiros” no código
		Nome misterioso
		Código duplicado
		Função longa
		Lista longa de parâmetros
		Dados globais
		Dados mutáveis
		Alteração divergente
		Cirurgia com rifle
		Inveja de recursos
		Agrupamentos de dados
		Obsessão por primitivos
		Switches repetidos
		Laços
		Elemento ocioso
		Generalidade especulativa
		Campo temporário
		Cadeias de mensagens
		Intermediário
		Trocas escusas
		Classe grande
		Classes alternativas com interfaces diferentes
		Classe de dados
		Herança recusada
		Comentários
capítulo 4
	Escrevendo testes
		Importância de um código autotestável
		Código de exemplo para testar
		Um teste inicial
		Acrescente outro teste
		Modificando o fixture
		Sondando os limites
		Muito além disso
capítulo 5
	Apresentação do catálogo
		Formato das refatorações
		Escolha das refatorações
capítulo 6
	Primeiro conjunto de refatorações
		Extrair função (Extract Function)
		Internalizar função (Inline Function)
		Extrair variável (Extract Variable)
		Internalizar variável (Inline Variable)
		Mudar declaração de função (Change Function Declaration)
		Encapsular variável (Encapsulate Variable)
		Renomear variável (Rename Variable)
		Introduzir objeto de parâmetros (Introduce Parameter Object)
		Combinar funções em classe (Combine Functions into Class)
		Combinar funções em transformação (Combine Functions into Transform)
		Separar em fases (Split Phase)
capítulo 7
	Encapsulamento
		Encapsular registro (Encapsulate Record)
		Encapsular coleção (Encapsulate Collection)
		Substituir primitivo por objeto (Replace Primitive with Object)
		Substituir variável temporária por consulta (Replace Temp with Query)
		Extrair classe (Extract Class)
		Internalizar classe (Inline Class)
		Ocultar delegação (Hide Delegate)
		Remover intermediário (Remove Middle Man)
		Substituir algoritmo (Substitute Algorithm)
capítulo 8
	Movendo recursos
		Mover função (Move Function)
		Mover campo (Move Field)
		Mover instruções para uma função (Move Statements into Function)
		Mover instruções para os pontos de chamada (Move Statements to Callers)
		Substituir código internalizado por chamada de função (Replace Inline Code with Function Call)
		Deslocar instruções (Slide Statements)
		Dividir laço (Split Loop)
		Substituir laço por pipeline (Replace Loop with Pipeline)
		Remover código morto (Remove Dead Code)
capítulo 9
	Organizando dados
		Separar variável (Split Variable)
		Renomear campo (Rename Field)
		Substituir variável derivada por consulta (Replace Derived Variable with Query)
		Mudar referência para valor (Change Reference to Value)
		Mudar valor para referência (Change Value to Reference)
capítulo 10
	Simplificando lógicas condicionais
		Decompor condicional (Decompose Conditional)
		Consolidar expressão condicional (Consolidate Conditional Expression)
		Substituir condicional aninhada por cláusulas de guarda (Replace Nested Conditional with Guard Clauses)
		Substituir condicional por polimorfismo (Replace Conditional with Polymorphism)
		Introduzir caso especial (Introduce Special Case)
		Introduzir asserção (Introduce Assertion)
capítulo 11
	Refatorando APIs
		Separar consulta de modificador (Separate Query from Modifier)
		Parametrizar função (Parameterize Function)
		Remover argumento de flag (Remove Flag Argument)
		Preservar objeto inteiro (Preserve Whole Object)
		Substituir parâmetro por consulta (Replace Parameter with Query)
		Substituir consulta por parâmetro (Replace Query with Parameter)
		Remover método de escrita (Remove Setting Method)
		Substituir construtor por função de factory (Replace Constructor with Factory Function)
		Substituir função por comando (Replace Function with Command)
		Substituir comando por função (Replace Command with Function)
capítulo 12
	Lidando com herança
		Subir método (Pull Up Method)
		Subir campo (Pull Up Field)
		Subir corpo do construtor (Pull Up Constructor Body)
		Descer método (Push Down Method)
		Descer campo (Push Down Field)
		Substituir código de tipos por subclasses (Replace Type Code with Subclasses)
		Remover subclasse (Remove Subclass)
		Extrair superclasse (Extract Superclass)
		Condensar Hierarquia (Collapse Hierarchy)
		Substituir subclasse por delegação (Replace Subclass with Delegate)
		Substituir superclasse por delegação (Replace Superclass with Delegate)
Bibliografia




نظرات کاربران