Ruby. Объектно-ориентированное проектирование - Сэнди Метц


Мировой бестселлер по программированию на языке Ruby. Книга уже стала классической — с ювелирной точностью она описывает огранку профессионального кода на Ruby. Внимательно изучив это незаменимое руководство, вы сможете:


  • Понять, как писать на Ruby качественный код в духе ООП
  • Решать, что должно входить в состав класса Ruby
  • Не допускать тесной связи между объектами в тех случаях, когда требуется разграничить функциональность
  • Определять гибкие интерфейсы между объектами
  • Освоить утиную типизацию
  • Эффективно задействовать наследование, композицию и полиморфизм
  • Разрабатывать экономные тесты
  • Доводить до совершенства любой legacy-код Ruby
Go to >

Ruby Programming for Beginners - Nathan Metzler


 Take the guesswork out of mastering Ruby Programming language and learn how to build powerful, real-world, and modern applications for the web!

 Are you completely new to coding and are looking for a great, easy-to-understand language to learn as your first? Do you want to become a more productive programmer and skip all the extra keywords, declaration, and compilation steps that are rife in other languages?

 If your answer is yes to any of the questions above, then this book is for you.

 Ruby is used in some of the world's most popular and user-heavy web applications, for good reason. It's easy to maintain and is designed to be concurrent. In this guide, Nathan Metzler skips the fluff and shows you how easy it is to get started with Ruby as a beginner and code your own applications with practical examples and exercises.

 Here's a snippet of what you're going to discover in Ruby Programming for Beginners:

  • How to install Ruby on your preferred operating system, from Windows and MacOS to Linux
  • Step-by-step instructions to write your very first piece of Ruby script and execute on your preferred operating system
  • A comprehensive guide to help you understand core Ruby programming concepts, from statements and code blocks to identifiers and variable data types
  • A proven framework to get started with object-oriented programming and coding modular, reusable code you can apply across your projects
  • Everything you need to know about control structures in Ruby programming language
  • ...and tons more!

 Ruby is an insanely powerful and multi-purpose language that can be used to develop massive web applications. Whether you're completely new to programming or are an experienced developer in other programming languages but are looking to add Ruby to your skillset, this guide has you covered.

 Scroll to the top of the page and click the "Buy Now" button to start your journey to mastering the Ruby programming language today!

Go to >

Ruby для романтиков - Роман Пушкин


 Дружественная книга по языку Руби, которая написана простым и понятным языком. Более 400 страниц последовательного материала позволит ученику освоить тонкости языка в удобной игровой форме.

Язык Руби (Ruby — англ.) и веб-программирование — это нечто среднее между «поскорее найти работу», «выучить что-нибудь несложное и интересное» и «чтобы также пригодилось в будущем». Руби не только позволяет составлять скучные программы, работая на кого-то в офисе, но также может быть полезен дома, в быту (одна из моих последних программ — обучение игре на гитаре).

Go to >

Selenium WebDriver Recipes in Ruby. 4 ed - Zhimin Zhan


 The Selenium WebDriver Recipes book is a quick problem-solving guide to automated testing web applications with Selenium WebDriver. It contains hundreds of solutions to real-world problems, with clear explanations and ready-to-run test scripts you can use in your own projects.

 Selenium WebDriver is a popular browser automation framework, testers or developers with Selenium skills are in high demand. It is easy to get started with Selenium, but do you use effectively for testing real-world test scenarios? Such as data driving test from an Excel spreadsheet and handling pop up dialogs.

 Selenium WebDriver Recipes will show you solutions to your problems from the experts who have already solved them. All recipe test scripts (~200 in Ruby language) are ready-to-run, i.e., I created the target web pages and test sites, so that you can simply find the recipes and run, in a matter of seconds. Owning this book is like having a test automation coach sitting next to you.

Go to >

Modern Front-End Development for Rails - Noel Rappin


 Improve the user experience for your Rails app with rich, engaging client-side interactions. Learn to use the Rails 7 tools and simplify the complex JavaScript ecosystem. It's easier than ever to build user interactions with Hotwire, Turbo, and Stimulus. You can add great front-end flair without much extra complication. Use React to build a more complex set of client-side features. Structure your code for different levels of client-side needs with these powerful options. Add to your toolkit today!

 It's hard to have a Rails application without integrating some client-side logic. But client-side coding tools, and the Rails tools for integrating with them, all change continuously. Rails 7 simplifies client-side integration with the Hotwire gem. It's a great way to build client interaction with server-side HTML and a small amount of JavaScript.

 In the latest edition of this book, learn how to use Rails 7 and its front-end bundling tools to build rich front-end logic into your Rails applications. The job is even easier with Stimulus, a library that brings Rails conventions to JavaScript tools. And you can also add in React, a larger framework that automatically updates the browser when your data changes.

 Learn the basics of Turbo, Stimulus, and TypeScript, and add pizazz to your application. Structure your web application to best manage your state. Learn how to interact with data on the server while still keeping the user experience interactive. Use the type system in TypeScript to expand on JavaScript and help prevent error conditions. Debug and test your front-end application with tools specific to each framework.

 There are a lot of ways to do client-side coding, and Rails is here to help.

Go to >

99 Bottles of OOP. 2 ed - Sandi Metz


 It turns out that everything you need to know about Object-Oriented Design (OOD) can be learned from the "99 Bottles of Beer" song.

 Well, perhaps not everything, but quite certainly a great many things.

 The song is simultaneously easy to understand and full of hidden complexity, which makes it the perfect skeleton upon which to hang lessons in OOD. The lessons embedded within the song are so useful, and so broad, that over the last three years it has become a core part of the curriculum of Sandi Metz’s Practical Object-Oriented Design course.

 The thoughts in this book reflect countless hours of discussion and collaboration between Sandi, Katrina Owen, and TJ Stankus. These ideas have been battle-tested by hundreds of students, and refined by a series of deeply thoughtful co-instructors, beginning with Katrina. While none of the authors have the hubris to claim perfect understanding, all have learned a great deal about Object-Oriented Design from teaching this song, and feel compelled to write it all down.

 Therefore, this book, now in its second edition. We hope that you find it both useful and enjoyable.

Go to >

Practical Object-Oriented Design. 2 ed - Sandi Metz


 This book assumes that you have at least tried to write object-oriented software. It is not necessary that you feel you succeeded, just that you made the attempt in any object-oriented (OO) language. Chapter 1, “Object-Oriented Design,” contains a brief overview of object-oriented programming (OOP), but its goal is to define common terms, not to teach programming.

 If you want to learn OO design (OOD) but have not yet done any object-oriented programming, at least take a tutorial before reading this book. OOD solves problems; suffering from those problems is very nearly a prerequisite for comprehending these solutions. Experienced programmers may be able to skip this step, but most readers will be happier if they write some OO code before starting this book.

 This book uses Ruby to teach OOD but you do not need to know Ruby to understand the concepts herein. There are many code examples but all are quite straightforward. If you have programmed in any OO language you will find Ruby easy to understand.

 If you come from a statically typed OO language like Java or C++ you have the background necessary to benefit from reading this book. The fact that Ruby is dynamically typed simplifies the syntax of the examples and distills the design ideas to their essence, but every concept in this book can be directly translated to a statically typed OO language.

Go to >

Selenium WebDriver Recipes in Ruby - Zhimin Zhan


 This book is for testers or programmers who write (or want to learn) automated tests with Selenium WebDriver. In order to get the most of this book, basic Ruby coding skill is required.

 How to read this book

 Usually, a ‘recipe’ book is a reference book. Readers can go directly to the part that interests them. For example, if you are testing a multiple select list and don’t know how, you can look up in the Table of Contents, then go to chapter 8. This book supports this style of reading.

 If you are new to Selenium WebDriver, I recommend you to try out the recipes from the front to back. The recipes in the first half of the book are arranged according to their levels of complexity, I believe readers can get the pattern of testing with Selenium and gain confidence after going through them.

Go to >

Comprehensive Ruby Programming - Jordan Hudgens


 Coding has become one of the most critical skills you can have for furthering your career. Whether you are an experienced developer who wants to learn a new language or you are new to programming, this course can be your comprehensive Ruby coding guide. Starting with foundational principles, such as syntax and scaling up, to advanced topics, such as metaprogramming and big data analysis, I wanted to create a curriculum that will give you all the tools you need to be a professional Ruby developer. With over a decade of real-world development experience, I have engineered this book to ensure it focuses on the skills you will need to be a professional Ruby developer.

 This is a complete course written from the ground up for beginners wanting to gain a solid understanding of the Ruby language. It starts at the beginning with how to install Ruby and work with it on multiple machines, so simply have a computer that's connected to the Internet and you'll be ready.

Go to >

Изучаем Ruby - Макгаврен Дж.


 Вам интересно, почему буквально все вокруг заговорили о языке Ruby? Спросите себя прямо: вам нравится работать эффективно? Неужели многочисленные компиляторы, библиотеки, классы, которыми грузят вас другие языки программирования, приближают вас к решению конкретной задачи, восхищению коллег и толпе счастливых заказчиков? Вы хотите, чтобы язык программирования занимался техническими подробностями вместо вас? Тогда бросайте рутинную работу и приступайте к решению конкретных задач, а язык Ruby сделает за вас все остальное.

 Как и все книги серии Head First, книга «Изучаем Ruby» использует активный подход к обучению, выходя за рамки сухих, абстрактных объяснений и справочников. Вас не только научат языку Ruby, но и помогут вашей программистской звезде ярко воссиять на небосклоне. Вы освоите основы языка и продвинутые возможности Ruby, такие как блоки, объекты, методы, классы и регулярные выражения. С улучшением ваших навыков задачи будут усложняться, и вы перейдете к таким темам, как обработка исключений, модули, подмешанные классы и метапрограммирование.

Go to >

RUBY ON RAILS TUTORIAL. 3rd ed - Michael Hartl


 The Ruby on Rails Tutorial book and screencast series teach you how to develop and deploy real, industrial-strength web applications with Ruby on Rails, the open-source web framework that powers top websites such as Twitter, Hulu, GitHub, and the Yellow Pages. The Ruby on Rails Tutorial book is available for free online and is available for purchase as an ebook (PDF, EPUB, and MOBI formats). The companion screencast series includes 12 individual lessons, one for each chapter of the Ruby on Rails Tutorial book. All purchases also include a free copy of the Solutions Manual for Exercises, with solutions to every exercise in the book.

Go to >

Ruby Pocket Reference. 2nd ed - Michael Fitzgerald


 Updated for Ruby 2.2, this handy reference offers brief yet clear explanations of Ruby’s core elements—from operators to blocks to documentation creation—and highlights the key features you may work with every day. Need to know the correct syntax for a conditional? Forgot the name of that String method? This book is organized to help you find the facts fast.

 Ruby Pocket Reference, 2nd Edition is ideal for experienced programmers who are new to Ruby. Whether you’ve come to Ruby because of Rails, or you want to take advantage of this clean, powerful, and expressive language for other applications, this reference will help you easily pinpoint the information you need.

 You’ll find detailed reference material for:

  • Keywords, operators, comments, numbers, and symbols
  • Variables, pre-defined global variables, and regular expressions
  • Conditional statements, method use, classes, and exception handling
  • Methods for the BasicObject, Object, Kernel, String, Array, and Hash classes
  • Time formatting directives
  • New syntax since Ruby 1.9
Go to >

Test Driven Development in Ruby - Bala Paranj


 Learn the basics of test driven development (TDD) using Ruby. You will carry out problem domain analysis, solution domain analysis, designing test cases, and writing tests first. These fundamental concepts will give you a solid TDD foundation to build upon. Test Driven Development in Ruby is written by a developer for developers.

 The concepts are first explained, then a coding demo illustrates how to apply the theory in practice. At the end of each chapter an exercise is given to reinforce the material. Complete with working files and code samples, you'll be able to work alongside the author, a trainer, by following the material in this book.

 What You Will Learn

  • Carry out problem domain analysis, solution domain analysis, designing test cases, and writing tests first
  • Use assertions
  • Discover the structure of a test and the TDD cycle
  • Gain an understanding of minimal implementation, starter test, story test, and next test
  • Handle refactoring using Ruby
  • Hide implementation details
  • Test precisely and concretely
  • Make your code robust

Who This Book Is For

 Experienced Ruby programmers or web developers with some prior experience with Ruby.

Go to >

Ruby Recipes - Malay Mandal


 Solve your Ruby programming problems that occur during your day-to-day scripting work. This book contains a varied selection of practical and interesting code recipes designed to make your coding life easier. Ruby Recipes includes solutions to problems in working with data, handling exceptions, writing blocks, and using regular expressions.

 This book provides ready scripts for both simple complex scripting tasks, which you can use readily or with only minor modifications. These scripts cover areas such as collections, classes and structures, functional programming, and log handling. With these handy recipes at your fingertips, you will be able to solve those niggling problems and become even more efficient.

 What You Will Learn:

  • Install and run Ruby
  • Read and write data
  • Write functions
  • Work with arrays, ranges, hashes, and iterators
  • Handle dates and time
  • Process XML as text
  • Master OOP concepts such as classes, objects, subclassing, and inheritance
  • Connect to databases

Who This Book Is For

 Programmers new to Ruby, and web developers interested in knowing the foundations of the language.

Go to >

Computer Science Programming Basics in Ruby - David Grossman, Gideon Frieder, Ophir Frieder


 Computer science introductory texts are often unnecessarily long. Many exceed 500 pages, laboriously describing every nuance of whatever programming language they are using to introduce the concepts.

 There is a better way: a programming language that has a low entry barrier. Preferably, the language selected should be a real, widely used language with a subset that is powerful and useful, yet mercifully small. Such a choice should arm the readers with marketable tools. The esoteric details of the programming language, however, should be ignored but with pointers for future investigation provided.

 Ruby is a programming language well suited to this task. It is object-oriented, interpreted, and relatively straightforward. More so, instead of being purely educationally oriented, its popularity in industry is steadfastly growing.

 Our book should be covered in sequential fashion. Each chapter assumes that the material from the preceding chapters has been mastered. To focus the discussion, we ignore gory details, such as user interface design and development issues, that we believe are ancillary to the core of computer science. Such issues should be, and are, covered in depth in a variety of subsequent courses.

 Our target audience is students and practitioners who wish to learn computer science using Ruby rather than just how to program in a given language. This book consistently emphasizes why computer science is different from computer programming. Students and practitioners must understand what an algorithm is and what differentiates differing algorithms for the same task. Although we are living in an era of growing compu‐ tational resources, we are also living in a world of growing data sets. Data amass every day; thus, efficient algorithms are needed to process these data.

 Students and practitioners completing a course using this book possess foundational knowledge in the basics of computer science and are prepared to master abstract and advanced concepts. Second semester courses should rely on languages other than Ruby, furthering the understanding that programming languages are just interchangeable, expressive tools. We know, however, that many students and practitioners may not take another computer science course. If that is the case, this book provides them with an overview of the field and an understanding of at least one popular programming lan‐ guage that happens to be useful from both a practical and a pedagogical standpoint.

 Concepts taught in this book provide students and practitioners with a sufficient foundation to later learn more complex algorithms, advanced data structures, and new programming languages.

 Finally, we hope to instill a core appreciation for algorithms and problem solving so students and practitioners will solve problems with elegance and inspiration rather than simply plowing ahead with brute force.

Go to >

Самоучитель Ruby - Игорь Симдянов


 Язык Ruby излагается последовательно от простого к сложному. Описываются интерпретатор Ruby, утилиты, детально рассматривается современная Ruby-экосистема, работа со стандартной и сторонними библиотеками Дан разбор синтаксических конструкций: операторов, переменных, констант, конструкций ветвления и циклов, блоков и итераторов. Подробно описаны объектно-ориентированные возможности Ruby: классы, модули, объекты и методы. Показано практическое применение языка Ruby в веб-программировании и автоматическом тестировании. Для закрепления материала в конце глав приводятся задания. С помощью книги можно не только освоить язык Ruby, но и подготовиться к работе с профессиональными фреймворками: Ruby on Rails, Sinatra, RSpec, MiniTest и Cucumber. Опытных разработчиков может заинтересовать подробное описание нововведений версий от 2.0 до 2.6. Электронный архив с исходными кодами доступен на сайте издательства и GitHub.

Go to >

Ruby on Rails Tutorial - Michael Hartl


 My former company (CD Baby) was one of the first to loudly switch to Ruby on Rails, and then even more loudly switch back to PHP (Google me to read about the drama). This book by Michael Hartl came so highly recommended that I had to try it, and the Ruby on Rails Tutorial is what I used to switch back to Rails again.

 Though I’ve worked my way through many Rails books, this is the one that finally made me “get” it. Everything is done very much “the Rails way”—a way that felt very unnatural to me before, but now after doing this book finally feels natural. This is also the only Rails book that does test-driven development the entire time, an approach highly recommended by the experts but which has never been so clearly demonstrated before. Finally, by including Git, GitHub, and Heroku in the demo examples, the author really gives you a feel for what it’s like to do a real-world project. The tutorial’s code examples are not in isolation.

 The linear narrative is such a great format. Personally, I powered through the Rails Tutorial in three long days doing all the examples and challenges at the end of each chapter. [This is not typical! Most readers take much longer to finish the tutorial. —Michael] Do it from start to finish, without jumping around, and you’ll get the ultimate benefit.


Go to >