7 March 2023
Ruby. Частина 2

According to Wikipedia, Ruby is an interpreted, fully object-oriented programming language with strong dynamic typing. The language is distinguished by the high efficiency of program development and has absorbed the best features of Perl, Java, Python, Smalltalk, Eiffel, Ada and Lisp. Odesa IT Family together with the company DataArt prepared a list of literature.

Першу частину читайте за посиланням: https://it-family.od.ua/it_lit/ruby/

  1. Design Patterns in Ruby (Russ Olsen)
  2. Refactoring: Ruby Edition (Jay Fields, Shane Harvie, Martin Fowler, Kent Beck)
  3. 99 Bottles of OOP (Sandi Metz)

Design Patterns in Ruby (Russ Olsen)

Most design pattern books are based on C++ and Java. But Ruby is different―and the language’s unique qualities make design patterns easier to implement and use. In this book, Russ Olsen demonstrates how to combine Ruby’s power and elegance with patterns, and write more sophisticated, effective software with far fewer lines of code.

After reviewing the history, concepts, and goals of design patterns, Olsen offers a quick tour of the Ruby language―enough to allow any experienced software developer to immediately utilize patterns with Ruby. The book especially calls attention to Ruby features that simplify the use of patterns, including dynamic typing, code closures, and “mixins” for easier code reuse.

Fourteen of the classic “Gang of Four” patterns are considered from the Ruby point of view, explaining what problems each pattern solves, discussing whether traditional implementations make sense in the Ruby environment, and introducing Ruby-specific improvements. You’ll discover opportunities to implement patterns in just one or two lines of code, instead of the endlessly repeated boilerplate that conventional languages often require.

Design Patterns in Ruby also identifies innovative new patterns that have emerged from the Ruby community. These include ways to create custom objects with metaprogramming, as well as the ambitious Rails-based “Convention Over Configuration” pattern, designed to help integrate entire applications and frameworks.

 

Refactoring: Ruby Edition (Jay Fields, Shane Harvie, Martin Fowler, Kent Beck)

With refactoring, programmers can transform even the most chaotic software into well-designed systems that are far easier to evolve and maintain. What’s more, they can do it one step at a time, through a series of simple, proven steps. Now, there’s an authoritative and extensively updated version of Martin Fowler’s classic refactoring book that utilizes Ruby examples and idioms throughout–not code adapted from Java or any other environment.

 The authors introduce a detailed catalog of more than 70 proven Ruby refactorings, with specific guidance on when to apply each of them, step-by-step instructions for using them, and example code illustrating how they work. Many of the authors’ refactorings use powerful Ruby-specific features, and all code samples are available for download.

Leveraging Fowler’s original concepts, the authors show how to perform refactoring in a controlled, efficient, incremental manner, so you methodically improve your code’s structure without introducing new bugs. Whatever your role in writing or maintaining Ruby code, this book will be an indispensable resource.

 

99 Bottles of OOP (Sandi Metz)

99 Bottles of OOP is a practical guide to writing cost-effective, maintainable, and pleasing object-oriented code. 

It explores: 

  • Recognizing when code is “good enough”
  • Getting the best value from Test-Driven Development (TDD)
  • Doing proper refactoring, not random “rehacktoring”
  • Locating concepts buried in code
  • Finding names that convey deeper meaning
  • Safely altering code by following the “Flocking Rules”
  • Simplifying new additions with the Open/Closed Principle
  • Avoiding conditionals by obeying the Liskov Substitution Principle
  • Making targeted improvements by reducing Code Smells
  • Improving changeability with polymorphism
  • Manufacturing role-playing objects using Factories
  • Hedging against uncertainty by loosening coupling
  • Developing a programming aesthetic.

 

Також дивись
Angular & Typescript

Useful literature from Odesa IT Family and DataArt company. Today we will talk about Angular & Typescript.

PHP

We are back with a column of useful literature for IT workers, prepared by Odesa IT Family together with DataArt. Today we are sharing with you a list on the topic of PHP.

Literature on the topic of cyber security

Vadym Chakryan, DataArt’s Information Security Officer, shared a useful selection in his lecture, and we decided to tell you more about each of the book.

.NET

.NET Framework is a software technology offered by Microsoft as a platform for creating both regular programs and web applications. In many ways, it is a continuation of the ideas and principles laid down in Java technology.

Subscribe to community news