Fork me on GitHub

Keep Learning Conhecimento nunca é o bastante

Posts com a tag Ruby

Postado em
10 April 2012 @ 14:15

Tag(s)
Deploy, Rails, Ruby

Capistrano and whenever: updating the crontab of the runner user

When deploying Rails applications with Capistrano it’s a common practice to use two separated users: a deployer (the user who actually does the deploy process, copying files and all that) and a runner (the user that runs the application on the server). If you need cronjobs you probably use the whenever gem. It’s an awesome […]


Gems “locais”, irb e Bundler

Gosto de algumas gems como o wirble, que adicionam algumas funcionalidades ao irb (e, por consequência, ao console do Rails). O problema é que, em projetos que utilizam o Bundler, fica complicado adicionar esse tipo de gem ao Gemfile, pois elas não são realmente dependências do projeto e nem todos gostariam de utilizá-las. Como programadores […]


SOLID Ruby: Liskov Substitution Principle e Interface Segregation Principle

Para fechar os cinco princípios do SOLID, vamos falar sobre os dois princípios restantes: Liskov Substitution Principle (LSP) e Interface Segregation Principle (ISP). Como já foi falado anteriormente, esses princípios foram formulados com linguagens estáticas em mente e, por essa razão, precisam ser “adaptados” para que sejam aplicados em linguagens dinâmicas. Note que, em suas […]


SOLID Ruby: Open-Closed Principle

Muitos dos princípios da programação orientada a objetos foram criados com linguagens estáticas em mente. Esse é o caso do Open-Closed Principle, enunciado da seguinte maneira: Software entities (classes, modules, functions, etc) should be open for extension, but closed for modification. Originalmente, a ideia é que, uma fez finalizada, uma entidade só poderia ser modificada […]


SOLID Ruby: Dependency Inversion Principle

Continuando os artigos sobre SOLID, vamos falar um pouco sobre o Dependency Inversion Principle. Em resumo, esse princípio diz que os componentes devem depender de abstrações ao invés de implementações. Bom, isso faz muito sentido em linguagens estáticas como Java, onde há estruturas como Interfaces, classes abstratas e outras parafernalhas. No final, na minha modesta […]


← Anterior