max(int(x) for x in page_links): goto_page(cur_page + 1) total_pages = max(int(x) for x in page_links) if cur_page < total_pages: goto_page(cur_page + 1)
page_links): goto_page(cur_page + 1) def get_total_pages(): return max(int(x) for x in page_links) if cur_page < get_total_pages(): goto_page(cur_page + 1)
x in page_links): goto_page(cur_page + 1) def get_total_pages(all_pages): return max(int(x) for x in all_pages) if cur_page < get_total_pages(page_links): goto_page(cur_page + 1)
max(int(x) for x in page_links): goto_page(cur_page + 1) def get_total_pages(all_pages): return max(int(x) for x in all_pages) if cur_page < get_total_pages(page_links): goto_page(cur_page + 1)
• “You Aren’t Gonna Need It”: princípio que preza pela simplicidade, não olhando muito para o futuro, evitando complexidade desnecessária • Você precisa refatorar para obter simplicidade • Refatore para os casos de uso conhecidos
profundamente a linguagem ◦ Quanto mais coisas você souber fazer de cabeça, mais fácil fica • Escrever testes ◦ É uma necessidade básica • Obter boas ferramentas • Educar-se e praticar ◦ Ler livros, ler código dos outros, tentar refactor grande num branch
mais (jump to definition) • Plugins para VIM/Emacs/Sublime: ◦ UI espartana ◦ Poucas pessoas conhecem & usam • Pessoalmente, uso pouco, a UI me assusta ◦ Tenho mappings no VIM para as refatorações mais simples Rope -- is there hope?
workflowsOfRefactoring • https://www.infoq.com/br/articles /is-design-dead • https://pythonhelp.wordpress.co m/2016/10/01/usando-comando- with-para-evitar-acoplamento-te mporal/ • Livro do Martin Fowler • Livro The Pragmatic Programmer