Ruby / Rails Радослав Станков Varna Lab 14/07/2011
Кой съм аз? @rstankov http://rstankov.com http://blog.rstankov.com http://github.com/rstankov
Ruby Ruby е интерактивен, обектно-ориентиран език за програмиране. Неготово мото е: “Optimized for programmer happiness”
Ruby on Rails Ruby on Rails е framework за уеб приложения. Неготово мото е: “Web development doesn’t hurt”
Ruby Създаден от японеца Юкихиро Мацумото „Мац“. Първата публична версия излиза през 1995. Версия 2.0 се очакава да излезе за Коледа / не се казва коя /
class System { // ... code ... private $_categories = null; public function getVisibleCategories() { if ($this->_categories === null) { $this->_categories = $this->findCategories(array( 'visible' => true )); } return $this->_categories; } }
class System # ... code ... def visible_categories() return @categories ||= self.find_categories({:visible => t end end
class System # ... code ... def visible_categories() return @categories ||= self.find_categories({:visible => t end end
class System # ... code ... def visible_categories return @categories ||= self.find_categories({:visible => t end end
class System # ... code ... def visible_categories return @categories ||= self.find_categories({:visible => t end end
class System # ... code ... def visible_categories return @categories ||= self.find_categories({:visible => t end end
class System # ... code ... def visible_categories @categories ||= self.find_categories({:visible => true}) end end
class System # ... code ... def visible_categories @categories ||= self.find_categories({:visible => true}) end end
class System # ... code ... def visible_categories @categories ||= self.find_categories({:visible => true}) end end
class System # ... code ... def visible_categories @categories ||= self.find_categories({:visible => true}) end end
class System # ... code ... def visible_categories @categories ||= find_categories({:visible => true}) end end
class System # ... code ... def visible_categories @categories ||= find_categories({:visible => true}) end end
class System # ... code ... def visible_categories @categories ||= find_categories :visible => true end end
5.times { puts "Ruby is cool!" }
5.times do puts "Ruby is cool!" end
File.open("some_file.txt") do |file| file << "content" end
[1,2,3,4].each { |value| puts value } # => [1, 2, 3, 4] [1,2,3,4].map { |value| value * value } # => [1, 4, 9, 16] [1,2,3,4].reduce { |a, b| a + b } # => 10 [1,2] * 3 # => [1, 2, 1, 2, 1, 2]
def operate(value) yield value end value = operate(5) { |v| v + 4 } puts value # 9
class Person attr_accessor :fist_name, :last_name def initialize(first_name, last_name) @first_name = first_name @last_name = last_name end def full_name first_name + " " + last_name end end me = Person.new("Radoslav", "Stankov") puts me.full_name # Radoslav Stankov
class Person attr_accessor :fist_name, :last_name def initialize(first_name, last_name) @first_name = first_name @last_name = last_name end def full_name first_name + " " + last_name end end me = Person.new("Radoslav", "Stankov") puts me.full_name # Radoslav Stankov
class Person attr_accessor :fist_name, :last_name def initialize(first_name, last_name) @first_name = first_name @last_name = last_name end def full_name first_name + " " + last_name end end me = Person.new("Radoslav", "Stankov") puts me.full_name # Radoslav Stankov
class Person attr_accessor :fist_name, :last_name def initialize(first_name, last_name) @first_name = first_name @last_name = last_name end def full_name first_name + " " + last_name end end me = Person.new("Radoslav", "Stankov") puts me.full_name # Radoslav Stankov
class Person attr_accessor :fist_name, :last_name def initialize(first_name, last_name) @first_name = first_name @last_name = last_name end def full_name first_name + " " + last_name end end me = Person.new("Radoslav", "Stankov") puts me.full_name # Radoslav Stankov
class Person def +(other_person) # ... end end person1 + person2
class Array def first self[0] end def second self[1] end end array = [1, 2, 3, 4] array.first # 1 array.second # 2
class Numeric def plus(x) self + x end end y = 5.plus(6)
Time.now - 2.days == 2.days.ago 1.month.ago + 45.days - 1.year
Ruby • димично определяне на типа данните • модули • отворени класове • блокове • анонимни функции • всяка операция връща резултат • всичко е изпълним код • изчистен синтаксис • мета програмиране • промяна на обектите по време на изпълнение • вградени регулярни изрази
Ruby on Rails Разработен от David Heinemeier Hansson от 37 Signals. Първата публична версия е излиза през юли 2004. Вървим бавно, но сигурно към 3.1
37signals Милиони клиенти ... по-малко от 37 служителя
Основни принципи на Ruby on Rails • Convention over Configuration • DRY - Don’t Repeat Yourself • KISS - Keep it simple, Stupid! • Skinny Controller, Fat Model • Тest Driven Development / Behavior Driven Development • Less is More • Code Generation • REST
Основни принципи на Ruby on Rails • Convention over Configuration • DRY - Don’t Repeat Yourself • KISS - Keep it simple, Stupid! • Skinny Controller, Fat Model • Тest Driven Development / Behavior Driven Development • Less is More • Code Generation • REST N ! VE FU HA
MVC Архитектура
Начин на работа
REST Method Path Controller Action GET /tasks tasks index GET /tasks/new tasks new POST /tasks tasks create GET /tasks/:id tasks show GET /tasks/:id/edit tasks edit PUT /tasks/:id tasks update DELETE /tasks/:id tasks delete
Url формати Method Path Shows Action GET /tasks/1 html show GET /tasks/1.xml xml show GET /tasks/1.json json show GET /tasks/1.print html show PUT /tasks/1 redirect update PUT(xhr) /tasks/1 html/js update PUT /tasks/1.json json update
Model class Task < ActiveRecord::Base belongs_to :user has_many :comments validates_presence_of :user, :text validates_inclusion_of :status, :in => ["opened", "completed"] attr_readonly :user_id def editable? status == "opened" end end
Model class Task < ActiveRecord::Base belongs_to :user has_many :comments validates_presence_of :user, :text validates_inclusion_of :status, :in => ["opened", "completed"] attr_readonly :user_id def editable? status == "opened" end end
Model class Task < ActiveRecord::Base belongs_to :user has_many :comments validates_presence_of :user, :text validates_inclusion_of :status, :in => ["opened", "completed"] attr_readonly :user_id def editable? status == "opened" end end
Model class Task < ActiveRecord::Base belongs_to :user has_many :comments validates_presence_of :user, :text validates_inclusion_of :status, :in => ["opened", "completed"] attr_readonly :user_id def editable? status == "opened" end end
Model class Task < ActiveRecord::Base belongs_to :user has_many :comments validates_presence_of :user, :text validates_inclusion_of :status, :in => ["opened", "completed"] attr_readonly :user_id def editable? status == "opened" end end
Controller class TasksController < ApplicationController before_filter :require_user def index @tasks = Task.where(:status => "opened") end def show @task = Task.find(params[:id]) end def create @task = current_user.tasks.build(params[:task]) if @task.save redirect_to tasks_path else render :partial => "new" end end end
Controller class TasksController < ApplicationController before_filter :require_user def index @tasks = Task.where(:status => "opened") end def show @task = Task.find(params[:id]) end def create @task = current_user.tasks.build(params[:task]) if @task.save redirect_to tasks_path else render :partial => "new" end end end
Controller class TasksController < ApplicationController before_filter :require_user def index @tasks = Task.where(:status => "opened") end def show @task = Task.find(params[:id]) end def create @task = current_user.tasks.build(params[:task]) if @task.save redirect_to tasks_path else render :partial => "new" end end end
Controller class TasksController < ApplicationController before_filter :require_user def index @tasks = Task.where(:status => "opened") end def show @task = Task.find(params[:id]) end def create @task = current_user.tasks.build(params[:task]) if @task.save redirect_to tasks_path else render :partial => "new" end end end
Controller class TasksController < ApplicationController before_filter :require_user def index @tasks = Task.where(:status => "opened") end def show @task = Task.find(params[:id]) end def create @task = current_user.tasks.build(params[:task]) if @task.save redirect_to tasks_path else render :partial => "new" end end end
View <%= form_for task do |form| %> <%= render 'shared/error_messages', :target => form.object %> <p> <%= form.label :text %> <%= form.text_area :text %> </p> <p> <%= form.label :status %> <%= form.select :status, Task.statuses %> </p> <div class="buttons"> <%= form.submit %> | <% link_to "Cancel", tasks_path %> </div> <% end %>
View + simple_form / slim = simple_form_for task do |form| = form.error_banner = form.input :text = form.input :status, :collection => Task.statuses .buttons = form.submit = link_to 'Cancel', tasks_path
Test Driven Development
Test Driven Development 1 Добавя се тест ... за несъществуващ код
Test Driven Development 1 Добавя се тест ... за несъществуващ код 2 Пише се код ... колкото само тестът да мине
Test Driven Development 1 Добавя се тест ... за несъществуващ код 2 Пише се код ... колкото само тестът да мине 3 Правят се подобрения ... подобрява се качеството на кода
Test Driven Development 1 Добавя се тест ... за несъществуващ код 2 Пише се код ... колкото само тестът да мине 3 Правят се подобрения ... подобрява се качеството на кода
Cucumber feature Feature: Tasks In order to get more productive and organize As a user I want able to manage my tasks Scenario: Adding tasks Given I am on the tasks page When I follow "New task" And I fill in "Text" with "Present Ruby" And I select "opened" from "Status" And I press "Create task" Then I should have opened task "Present Ruby" Scenario: Completing tasks Given I am on the tasks page And I have opened task "Present Ruby" When I follow "Edit tasks" And I select "completed" from "Status" And I press "Update task" Then I should have completed task "Present Ruby"
Тесване на Controller describe TasksController do describe "GET 'show'" do before { Task.should_recive(:find).with("1").and_return task } before { get :show, :id => "1" } it { should assign_to(:task).with(task) } it { should render_temlate("show") } end end
describe Task do it { should belong_to(:user) } it { should have_many(:notes) } it { should validate_presence_of(:user) } it { should validate_presence_of(:text) } describe "#editable?" do it "returns true if task status is 'opened'" do Task.new(:status => "opened").should be_editable end it "returns false if task status is 'rejected'" do Task.new(:status => "rejected").should_not be_editable end it "returns false if task status is 'completed" do Task.new(:status => "completed").should_not be_editable end end end
Тестване на View describe "tasks/show.html.erb" do before do assign :task, mock_model(Task, { :id => 1, :text => "task text" }) render end it "renders task text" do rendered.should contain("task text") end it "renders link for editing task" do rendered.should have_selector('a[href="/tasks/1/edit"]') end end
... и още, и още • database migrations • gem dependency management • css/javascript management (from Rails 3.1) • nested forms • automatic deploys • Rack • generations • send/receive mails • caching • internalization (i18n) • Ruby language extentions • a LOT plugins, tools and services • ... и т.н.
Погрешни схващания • Rails CAN'T SCALE • Rails is SLOW!!!! • Hard to deploy • Too much magic • Hard to learn every thing • Impossible to extend rails! • No good IDE • Bad windows support • Documentation
Погрешни схващания • Rails CAN'T SCALE • Rails is SLOW!!!! • Hard to deploy • Too much magic • Hard to learn every thing • Impossible to extend rails! • No good IDE • Bad windows support • Documentation
Погрешни схващания • Rails CAN'T SCALE • Rails is SLOW!!!! • Hard to deploy • Too much magic • Hard to learn every thing • Impossible to extend rails! • No good IDE • Bad windows support • Documentation
Погрешни схващания • Rails CAN'T SCALE • Rails is SLOW!!!! • Hard to deploy • Too much magic • Hard to learn every thing • Impossible to extend rails! • No good IDE • Bad windows support • Documentation
Погрешни схващания • Rails CAN'T SCALE • Rails is SLOW!!!! • Hard to deploy • Too much magic • Hard to learn every thing • Impossible to extend rails! • No good IDE • Bad windows support • Documentation
Погрешни схващания • Rails CAN'T SCALE • Rails is SLOW!!!! • Hard to deploy • Too much magic • Hard to learn every thing • Impossible to extend rails! • No good IDE • Bad windows support • Documentation
Погрешни схващания • Rails CAN'T SCALE • Rails is SLOW!!!! • Hard to deploy • Too much magic • Hard to learn every thing • Impossible to extend rails! • No good IDE • Bad windows support • Documentation
Погрешни схващания • Rails CAN'T SCALE • Rails is SLOW!!!! • Hard to deploy • Too much magic • Hard to learn every thing • Impossible to extend rails! • No good IDE • Bad windows support • Documentation
Погрешни схващания • Rails CAN'T SCALE • Rails is SLOW!!!! • Hard to deploy • Too much magic • Hard to learn every thing • Impossible to extend rails! • No good IDE • Bad windows support • Documentation
Благодаря за вниманието @rstankov

Ruby/Rails

  • 1.
    Ruby / Rails РадославСтанков Varna Lab 14/07/2011
  • 2.
  • 6.
    Ruby Ruby е интерактивен, обектно-ориентиранезик за програмиране. Неготово мото е: “Optimized for programmer happiness”
  • 7.
    Ruby on Rails Ruby on Rails е framework за уеб приложения. Неготово мото е: “Web development doesn’t hurt”
  • 8.
    Ruby Създаден отяпонеца Юкихиро Мацумото „Мац“. Първата публична версия излиза през 1995. Версия 2.0 се очакава да излезе за Коледа / не се казва коя /
  • 10.
    class System { // ... code ... private $_categories = null; public function getVisibleCategories() { if ($this->_categories === null) { $this->_categories = $this->findCategories(array( 'visible' => true )); } return $this->_categories; } }
  • 11.
    class System #... code ... def visible_categories() return @categories ||= self.find_categories({:visible => t end end
  • 12.
    class System #... code ... def visible_categories() return @categories ||= self.find_categories({:visible => t end end
  • 13.
    class System #... code ... def visible_categories return @categories ||= self.find_categories({:visible => t end end
  • 14.
    class System #... code ... def visible_categories return @categories ||= self.find_categories({:visible => t end end
  • 15.
    class System #... code ... def visible_categories return @categories ||= self.find_categories({:visible => t end end
  • 16.
    class System #... code ... def visible_categories @categories ||= self.find_categories({:visible => true}) end end
  • 17.
    class System #... code ... def visible_categories @categories ||= self.find_categories({:visible => true}) end end
  • 18.
    class System #... code ... def visible_categories @categories ||= self.find_categories({:visible => true}) end end
  • 19.
    class System #... code ... def visible_categories @categories ||= self.find_categories({:visible => true}) end end
  • 20.
    class System #... code ... def visible_categories @categories ||= find_categories({:visible => true}) end end
  • 21.
    class System #... code ... def visible_categories @categories ||= find_categories({:visible => true}) end end
  • 22.
    class System #... code ... def visible_categories @categories ||= find_categories :visible => true end end
  • 23.
    5.times { puts"Ruby is cool!" }
  • 24.
    5.times do puts "Ruby is cool!" end
  • 25.
  • 26.
    [1,2,3,4].each { |value|puts value } # => [1, 2, 3, 4] [1,2,3,4].map { |value| value * value } # => [1, 4, 9, 16] [1,2,3,4].reduce { |a, b| a + b } # => 10 [1,2] * 3 # => [1, 2, 1, 2, 1, 2]
  • 27.
    def operate(value) yield value end value = operate(5) { |v| v + 4 } puts value # 9
  • 28.
    class Person attr_accessor :fist_name, :last_name def initialize(first_name, last_name) @first_name = first_name @last_name = last_name end def full_name first_name + " " + last_name end end me = Person.new("Radoslav", "Stankov") puts me.full_name # Radoslav Stankov
  • 29.
    class Person attr_accessor :fist_name, :last_name def initialize(first_name, last_name) @first_name = first_name @last_name = last_name end def full_name first_name + " " + last_name end end me = Person.new("Radoslav", "Stankov") puts me.full_name # Radoslav Stankov
  • 30.
    class Person attr_accessor :fist_name, :last_name def initialize(first_name, last_name) @first_name = first_name @last_name = last_name end def full_name first_name + " " + last_name end end me = Person.new("Radoslav", "Stankov") puts me.full_name # Radoslav Stankov
  • 31.
    class Person attr_accessor :fist_name, :last_name def initialize(first_name, last_name) @first_name = first_name @last_name = last_name end def full_name first_name + " " + last_name end end me = Person.new("Radoslav", "Stankov") puts me.full_name # Radoslav Stankov
  • 32.
    class Person attr_accessor :fist_name, :last_name def initialize(first_name, last_name) @first_name = first_name @last_name = last_name end def full_name first_name + " " + last_name end end me = Person.new("Radoslav", "Stankov") puts me.full_name # Radoslav Stankov
  • 33.
    class Person def +(other_person) # ... end end person1 + person2
  • 34.
    class Array def first self[0] end def second self[1] end end array = [1, 2, 3, 4] array.first # 1 array.second # 2
  • 35.
    class Numeric def plus(x) self + x end end y = 5.plus(6)
  • 36.
    Time.now - 2.days== 2.days.ago 1.month.ago + 45.days - 1.year
  • 37.
    Ruby • димично определяне на типа данните • модули • отворени класове • блокове • анонимни функции • всяка операция връща резултат • всичко е изпълним код • изчистен синтаксис • мета програмиране • промяна на обектите по време на изпълнение • вградени регулярни изрази
  • 44.
    Ruby on Rails Разработен от David Heinemeier Hansson от 37 Signals. Първата публична версия е излиза през юли 2004. Вървим бавно, но сигурно към 3.1
  • 50.
    37signals Милиониклиенти ... по-малко от 37 служителя
  • 56.
    Основни принципи на Ruby on Rails • Convention over Configuration • DRY - Don’t Repeat Yourself • KISS - Keep it simple, Stupid! • Skinny Controller, Fat Model • Тest Driven Development / Behavior Driven Development • Less is More • Code Generation • REST
  • 57.
    Основни принципи на Ruby on Rails • Convention over Configuration • DRY - Don’t Repeat Yourself • KISS - Keep it simple, Stupid! • Skinny Controller, Fat Model • Тest Driven Development / Behavior Driven Development • Less is More • Code Generation • REST N ! VE FU HA
  • 58.
  • 59.
  • 60.
    REST Method Path Controller Action GET /tasks tasks index GET /tasks/new tasks new POST /tasks tasks create GET /tasks/:id tasks show GET /tasks/:id/edit tasks edit PUT /tasks/:id tasks update DELETE /tasks/:id tasks delete
  • 61.
    Url формати Method Path Shows Action GET /tasks/1 html show GET /tasks/1.xml xml show GET /tasks/1.json json show GET /tasks/1.print html show PUT /tasks/1 redirect update PUT(xhr) /tasks/1 html/js update PUT /tasks/1.json json update
  • 81.
    Model class Task <ActiveRecord::Base belongs_to :user has_many :comments validates_presence_of :user, :text validates_inclusion_of :status, :in => ["opened", "completed"] attr_readonly :user_id def editable? status == "opened" end end
  • 82.
    Model class Task <ActiveRecord::Base belongs_to :user has_many :comments validates_presence_of :user, :text validates_inclusion_of :status, :in => ["opened", "completed"] attr_readonly :user_id def editable? status == "opened" end end
  • 83.
    Model class Task <ActiveRecord::Base belongs_to :user has_many :comments validates_presence_of :user, :text validates_inclusion_of :status, :in => ["opened", "completed"] attr_readonly :user_id def editable? status == "opened" end end
  • 84.
    Model class Task <ActiveRecord::Base belongs_to :user has_many :comments validates_presence_of :user, :text validates_inclusion_of :status, :in => ["opened", "completed"] attr_readonly :user_id def editable? status == "opened" end end
  • 85.
    Model class Task <ActiveRecord::Base belongs_to :user has_many :comments validates_presence_of :user, :text validates_inclusion_of :status, :in => ["opened", "completed"] attr_readonly :user_id def editable? status == "opened" end end
  • 86.
    Controller class TasksController <ApplicationController before_filter :require_user def index @tasks = Task.where(:status => "opened") end def show @task = Task.find(params[:id]) end def create @task = current_user.tasks.build(params[:task]) if @task.save redirect_to tasks_path else render :partial => "new" end end end
  • 87.
    Controller class TasksController <ApplicationController before_filter :require_user def index @tasks = Task.where(:status => "opened") end def show @task = Task.find(params[:id]) end def create @task = current_user.tasks.build(params[:task]) if @task.save redirect_to tasks_path else render :partial => "new" end end end
  • 88.
    Controller class TasksController <ApplicationController before_filter :require_user def index @tasks = Task.where(:status => "opened") end def show @task = Task.find(params[:id]) end def create @task = current_user.tasks.build(params[:task]) if @task.save redirect_to tasks_path else render :partial => "new" end end end
  • 89.
    Controller class TasksController <ApplicationController before_filter :require_user def index @tasks = Task.where(:status => "opened") end def show @task = Task.find(params[:id]) end def create @task = current_user.tasks.build(params[:task]) if @task.save redirect_to tasks_path else render :partial => "new" end end end
  • 90.
    Controller class TasksController <ApplicationController before_filter :require_user def index @tasks = Task.where(:status => "opened") end def show @task = Task.find(params[:id]) end def create @task = current_user.tasks.build(params[:task]) if @task.save redirect_to tasks_path else render :partial => "new" end end end
  • 91.
    View <%= form_for taskdo |form| %> <%= render 'shared/error_messages', :target => form.object %> <p> <%= form.label :text %> <%= form.text_area :text %> </p> <p> <%= form.label :status %> <%= form.select :status, Task.statuses %> </p> <div class="buttons"> <%= form.submit %> | <% link_to "Cancel", tasks_path %> </div> <% end %>
  • 92.
    View + simple_form/ slim = simple_form_for task do |form| = form.error_banner = form.input :text = form.input :status, :collection => Task.statuses .buttons = form.submit = link_to 'Cancel', tasks_path
  • 93.
  • 94.
    Test Driven Development 1 Добавя се тест ... за несъществуващ код
  • 95.
    Test Driven Development 1 Добавя се тест ... за несъществуващ код 2 Пише се код ... колкото само тестът да мине
  • 96.
    Test Driven Development 1 Добавя се тест ... за несъществуващ код 2 Пише се код ... колкото само тестът да мине 3 Правят се подобрения ... подобрява се качеството на кода
  • 97.
    Test Driven Development 1 Добавя се тест ... за несъществуващ код 2 Пише се код ... колкото само тестът да мине 3 Правят се подобрения ... подобрява се качеството на кода
  • 98.
    Cucumber feature Feature: Tasks In order to get more productive and organize As a user I want able to manage my tasks Scenario: Adding tasks Given I am on the tasks page When I follow "New task" And I fill in "Text" with "Present Ruby" And I select "opened" from "Status" And I press "Create task" Then I should have opened task "Present Ruby" Scenario: Completing tasks Given I am on the tasks page And I have opened task "Present Ruby" When I follow "Edit tasks" And I select "completed" from "Status" And I press "Update task" Then I should have completed task "Present Ruby"
  • 99.
    Тесване на Controller describeTasksController do describe "GET 'show'" do before { Task.should_recive(:find).with("1").and_return task } before { get :show, :id => "1" } it { should assign_to(:task).with(task) } it { should render_temlate("show") } end end
  • 100.
    describe Task do it { should belong_to(:user) } it { should have_many(:notes) } it { should validate_presence_of(:user) } it { should validate_presence_of(:text) } describe "#editable?" do it "returns true if task status is 'opened'" do Task.new(:status => "opened").should be_editable end it "returns false if task status is 'rejected'" do Task.new(:status => "rejected").should_not be_editable end it "returns false if task status is 'completed" do Task.new(:status => "completed").should_not be_editable end end end
  • 101.
    Тестване на View describe"tasks/show.html.erb" do before do assign :task, mock_model(Task, { :id => 1, :text => "task text" }) render end it "renders task text" do rendered.should contain("task text") end it "renders link for editing task" do rendered.should have_selector('a[href="/tasks/1/edit"]') end end
  • 102.
    ... и още,и още • database migrations • gem dependency management • css/javascript management (from Rails 3.1) • nested forms • automatic deploys • Rack • generations • send/receive mails • caching • internalization (i18n) • Ruby language extentions • a LOT plugins, tools and services • ... и т.н.
  • 103.
    Погрешни схващания • Rails CAN'T SCALE • Rails is SLOW!!!! • Hard to deploy • Too much magic • Hard to learn every thing • Impossible to extend rails! • No good IDE • Bad windows support • Documentation
  • 104.
    Погрешни схващания • Rails CAN'T SCALE • Rails is SLOW!!!! • Hard to deploy • Too much magic • Hard to learn every thing • Impossible to extend rails! • No good IDE • Bad windows support • Documentation
  • 105.
    Погрешни схващания • Rails CAN'T SCALE • Rails is SLOW!!!! • Hard to deploy • Too much magic • Hard to learn every thing • Impossible to extend rails! • No good IDE • Bad windows support • Documentation
  • 106.
    Погрешни схващания • Rails CAN'T SCALE • Rails is SLOW!!!! • Hard to deploy • Too much magic • Hard to learn every thing • Impossible to extend rails! • No good IDE • Bad windows support • Documentation
  • 107.
    Погрешни схващания • Rails CAN'T SCALE • Rails is SLOW!!!! • Hard to deploy • Too much magic • Hard to learn every thing • Impossible to extend rails! • No good IDE • Bad windows support • Documentation
  • 108.
    Погрешни схващания • Rails CAN'T SCALE • Rails is SLOW!!!! • Hard to deploy • Too much magic • Hard to learn every thing • Impossible to extend rails! • No good IDE • Bad windows support • Documentation
  • 109.
    Погрешни схващания • Rails CAN'T SCALE • Rails is SLOW!!!! • Hard to deploy • Too much magic • Hard to learn every thing • Impossible to extend rails! • No good IDE • Bad windows support • Documentation
  • 110.
    Погрешни схващания • Rails CAN'T SCALE • Rails is SLOW!!!! • Hard to deploy • Too much magic • Hard to learn every thing • Impossible to extend rails! • No good IDE • Bad windows support • Documentation
  • 111.
    Погрешни схващания • Rails CAN'T SCALE • Rails is SLOW!!!! • Hard to deploy • Too much magic • Hard to learn every thing • Impossible to extend rails! • No good IDE • Bad windows support • Documentation
  • 113.

Editor's Notes

  • #2 \n
  • #3 \n
  • #4 \n
  • #5 \n
  • #6 \n
  • #7 Ruby &amp;#x435; &amp;#x438;&amp;#x43D;&amp;#x442;&amp;#x435;&amp;#x440;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x442;&amp;#x438;&amp;#x440;&amp;#x443;&amp;#x435;&amp;#x43C;, &amp;#x438;&amp;#x43D;&amp;#x442;&amp;#x435;&amp;#x440;&amp;#x430;&amp;#x43A;&amp;#x442;&amp;#x438;&amp;#x432;&amp;#x435;&amp;#x43D;, &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;&amp;#x43D;&amp;#x43E;-&amp;#x43E;&amp;#x440;&amp;#x438;&amp;#x435;&amp;#x43D;&amp;#x442;&amp;#x438;&amp;#x440;&amp;#x430;&amp;#x43D; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x43A; &amp;#x437;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x438;&amp;#x440;&amp;#x430;&amp;#x43D;&amp;#x435;. &amp;#x422;&amp;#x43E;&amp;#x439; &amp;#x43A;&amp;#x43E;&amp;#x43C;&amp;#x431;&amp;#x438;&amp;#x43D;&amp;#x438;&amp;#x440;&amp;#x430; &amp;#x447;&amp;#x435;&amp;#x440;&amp;#x442;&amp;#x438; &amp;#x43E;&amp;#x442; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x433;&amp;#x43E; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x446;&amp;#x438;, &amp;#x441;&amp;#x440;&amp;#x435;&amp;#x434; &amp;#x43A;&amp;#x43E;&amp;#x438;&amp;#x442;&amp;#x43E; Smalltalk, Perl, Lisp &amp;#x438; Python.\n\n
  • #8 &amp;#x422;&amp;#x43E;&amp;#x439; &amp;#x435; framework &amp;#x437;&amp;#x430; &amp;#x443;&amp;#x435;&amp;#x431; &amp;#x43F;&amp;#x440;&amp;#x438;&amp;#x43B;&amp;#x43E;&amp;#x436;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x44F;. &amp;#x427;&amp;#x438;&amp;#x44F;&amp;#x442;&amp;#x43E; &amp;#x446;&amp;#x435;&amp;#x43B; &amp;#x435; &amp;#x434;&amp;#x430; &amp;#x443;&amp;#x43B;&amp;#x435;&amp;#x441;&amp;#x43D;&amp;#x438; &amp;#x438; &amp;#x443;&amp;#x441;&amp;#x43A;&amp;#x43E;&amp;#x440;&amp;#x438; &amp;#x43D;&amp;#x430;&amp;#x447;&amp;#x438;&amp;#x43D;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x440;&amp;#x430;&amp;#x437;&amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x432;&amp;#x430;&amp;#x43D;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x443;&amp;#x435;&amp;#x431; &amp;#x43F;&amp;#x440;&amp;#x438;&amp;#x43B;&amp;#x43E;&amp;#x436;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x44F;.\n\n
  • #9 &amp;#x422;&amp;#x43E;&amp;#x439; &amp;#x435; &amp;#x441;&amp;#x44A;&amp;#x437;&amp;#x434;&amp;#x430;&amp;#x434;&amp;#x435;&amp;#x43D; &amp;#x43E;&amp;#x442; &amp;#x44F;&amp;#x43F;&amp;#x43E;&amp;#x43D;&amp;#x435;&amp;#x446;&amp;#x430; &amp;#x42E;&amp;#x43A;&amp;#x438;&amp;#x445;&amp;#x438;&amp;#x440;&amp;#x43E; &amp;#x41C;&amp;#x430;&amp;#x446;&amp;#x443;&amp;#x43C;&amp;#x43E;&amp;#x442;&amp;#x43E; &amp;#x201E;&amp;#x41C;&amp;#x430;&amp;#x446;&amp;#x201C;. &amp;#x41A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x437; 1995 &amp;#x438;&amp;#x437;&amp;#x43B;&amp;#x438;&amp;#x437;&amp;#x430; &amp;#x43F;&amp;#x44A;&amp;#x440;&amp;#x432;&amp;#x430;&amp;#x442;&amp;#x430; &amp;#x432;&amp;#x435;&amp;#x440;&amp;#x441;&amp;#x438;&amp;#x44F; &amp;#x43D;&amp;#x430; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x43A;&amp;#x430;. &amp;#xA0;&amp;#x41C;&amp;#x43E;&amp;#x442;&amp;#x43E;&amp;#x442;&amp;#x43E; &amp;#x43D;&amp;#x430; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x43A;&amp;#x430; &amp;#x435; &amp;#xA0;&amp;#x201E;&amp;#x41E;&amp;#x43F;&amp;#x442;&amp;#x438;&amp;#x43C;&amp;#x438;&amp;#x437;&amp;#x438;&amp;#x440;&amp;#x430;&amp;#x43D; &amp;#x437;&amp;#x430; &amp;#x449;&amp;#x430;&amp;#x441;&amp;#x442;&amp;#x438;&amp;#x435;&amp;#x442;&amp;#x43E; &amp;#x43D;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x430;&amp;#x201D;\n\n
  • #10 \n
  • #11 \n
  • #12 \n
  • #13 \n
  • #14 \n
  • #15 \n
  • #16 \n
  • #17 \n
  • #18 \n
  • #19 \n
  • #20 \n
  • #21 \n
  • #22 \n
  • #23 \n
  • #24 \n
  • #25 \n
  • #26 \n
  • #27 \n
  • #28 \n
  • #29 \n
  • #30 \n
  • #31 \n
  • #32 \n
  • #33 \n
  • #34 \n
  • #35 \n
  • #36 \n
  • #37 \n
  • #38 &amp;#x421;&amp;#x442;&amp;#x440;&amp;#x435;&amp;#x43C;&amp;#x435;&amp;#x436;&amp;#x44A;&amp;#x442; &amp;#x43D;&amp;#x430; Ruby &amp;#x435; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x43B;&amp;#x435;&amp;#x434;&amp;#x432;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x438;&amp;#x43D;&amp;#x446;&amp;#x438;&amp;#x43F;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x43C;&amp;#x430;&amp;#x43B;&amp;#x43A;&amp;#x430; &amp;#x438;&amp;#x437;&amp;#x43D;&amp;#x435;&amp;#x43D;&amp;#x430;&amp;#x434;&amp;#x430;. &amp;#x422;&amp;#x43E;&amp;#x432;&amp;#x430; &amp;#x43E;&amp;#x437;&amp;#x43D;&amp;#x430;&amp;#x447;&amp;#x430;&amp;#x432;&amp;#x430;, &amp;#x447;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x432;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x435;&amp;#x442;&amp;#x43E; &amp;#x43D;&amp;#x430; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x43A;&amp;#x430; &amp;#x442;&amp;#x440;&amp;#x44F;&amp;#x431;&amp;#x432;&amp;#x430; &amp;#x434;&amp;#x430; &amp;#x435; &amp;#x438;&amp;#x43D;&amp;#x442;&amp;#x443;&amp;#x438;&amp;#x442;&amp;#x438;&amp;#x432;&amp;#x43D;&amp;#x43E; &amp;#x438; &amp;#x442;&amp;#x43E;&amp;#x439; &amp;#x434;&amp;#x430; &amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x438; &amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x430;, &amp;#x43A;&amp;#x430;&amp;#x43A;&amp;#x442;&amp;#x43E; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x44A;&amp;#x442; &amp;#x431;&amp;#x438; &amp;#x43E;&amp;#x447;&amp;#x430;&amp;#x43A;&amp;#x432;&amp;#x430;&amp;#x43B;.\nRuby &amp;#x435; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;&amp;#x43D;&amp;#x43E;-&amp;#x43E;&amp;#x440;&amp;#x438;&amp;#x435;&amp;#x43D;&amp;#x442;&amp;#x438;&amp;#x440;&amp;#x430;&amp;#x43D;: &amp;#x432;&amp;#x441;&amp;#x435;&amp;#x43A;&amp;#x438; &amp;#x442;&amp;#x438;&amp;#x43F; &amp;#x434;&amp;#x430;&amp;#x43D;&amp;#x43D;&amp;#x438; &amp;#x435; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;, &amp;#x432;&amp;#x43A;&amp;#x43B;&amp;#x44E;&amp;#x447;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;, &amp;#x447;&amp;#x438;&amp;#x441;&amp;#x43B;&amp;#x430;, &amp;#x431;&amp;#x443;&amp;#x43B;&amp;#x435;&amp;#x432;&amp;#x438; &amp;#x441;&amp;#x442;&amp;#x43E;&amp;#x439;&amp;#x43D;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x438;, &amp;#x43A;&amp;#x43E;&amp;#x438;&amp;#x442;&amp;#x43E; &amp;#x432; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x433;&amp;#x43E; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x446;&amp;#x438; &amp;#x43E;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43B;&amp;#x44F;&amp;#x442; &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x43F;&amp;#x440;&amp;#x438;&amp;#x43C;&amp;#x438;&amp;#x442;&amp;#x438;&amp;#x432;&amp;#x438;, &amp;#x430; &amp;#x43D;&amp;#x435; &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x440;&amp;#x435;&amp;#x430;&amp;#x43B;&amp;#x43D;&amp;#x438; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;&amp;#x438;.\n\n&amp;#x41D;&amp;#x44F;&amp;#x43A;&amp;#x43E;&amp;#x438; &amp;#x43E;&amp;#x442; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x432;&amp;#x430;&amp;#x436;&amp;#x43D;&amp;#x438;&amp;#x442;&amp;#x435; &amp;#x445;&amp;#x430;&amp;#x440;&amp;#x430;&amp;#x43A;&amp;#x442;&amp;#x435;&amp;#x440;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x438;&amp;#x43A;&amp;#x438; &amp;#x43D;&amp;#x430; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x43A;&amp;#x430; &amp;#x441;&amp;#x430;: \n&amp;#x434;&amp;#x438;&amp;#x43C;&amp;#x438;&amp;#x447;&amp;#x43D;&amp;#x43E; &amp;#x43E;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43B;&amp;#x44F;&amp;#x43D;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x442;&amp;#x438;&amp;#x43F;&amp;#x430; &amp;#x434;&amp;#x430;&amp;#x43D;&amp;#x43D;&amp;#x438;&amp;#x442;&amp;#x435;\n&amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x443;&amp;#x43B;&amp;#x438; - &amp;#x201C;&amp;#x432;&amp;#x44A;&amp;#x437;&amp;#x43C;&amp;#x43E;&amp;#x436;&amp;#x43D;&amp;#x43E;&amp;#x441;&amp;#x442; &amp;#x435;&amp;#x434;&amp;#x438;&amp;#x43D; &amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x443;&amp;#x43B; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x432;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x436;&amp;#x434;&amp;#x430; &amp;#x432; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x436;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x43E; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;, &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x438;&amp;#x433;&amp;#x430; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x436;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x435;&amp;#x43D;&amp;#x43E; &amp;#x43D;&amp;#x430;&amp;#x441;&amp;#x43B;&amp;#x435;&amp;#x434;&amp;#x44F;&amp;#x432;&amp;#x430;&amp;#x43D;&amp;#x435;&amp;#x201D;\n&amp;#x43E;&amp;#x442;&amp;#x432;&amp;#x43E;&amp;#x440;&amp;#x435;&amp;#x43D;&amp;#x438; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435; - &amp;#x201C;&amp;#x43A;&amp;#x44A;&amp;#x43C; &amp;#x432;&amp;#x441;&amp;#x435;&amp;#x43A;&amp;#x438; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441; &amp;#x43C;&amp;#x43E;&amp;#x433;&amp;#x430;&amp;#x442; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x434;&amp;#x43E;&amp;#x431;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x43D;&amp;#x43E;&amp;#x432;&amp;#x438; &amp;#x430;&amp;#x442;&amp;#x440;&amp;#x438;&amp;#x431;&amp;#x443;&amp;#x442;&amp;#x438; &amp;#x438; &amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x43E;&amp;#x434;&amp;#x438; &amp;#x43F;&amp;#x43E; &amp;#x432;&amp;#x440;&amp;#x435;&amp;#x43C;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x438;&amp;#x437;&amp;#x43F;&amp;#x44A;&amp;#x43B;&amp;#x43D;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x430;&amp;#x442;&amp;#x430;&amp;#x201D;\n&amp;#x431;&amp;#x43B;&amp;#x43E;&amp;#x43A;&amp;#x43E;&amp;#x432;&amp;#x435;\n&amp;#x430;&amp;#x43D;&amp;#x43E;&amp;#x43D;&amp;#x438;&amp;#x43C;&amp;#x43D;&amp;#x438; &amp;#x444;&amp;#x443;&amp;#x43D;&amp;#x43A;&amp;#x446;&amp;#x438;&amp;#x438;\n&amp;#x432;&amp;#x441;&amp;#x44F;&amp;#x43A;&amp;#x430; &amp;#x43E;&amp;#x43F;&amp;#x435;&amp;#x440;&amp;#x430;&amp;#x446;&amp;#x438;&amp;#x44F; &amp;#x432;&amp;#x440;&amp;#x44A;&amp;#x449;&amp;#x430; &amp;#x440;&amp;#x435;&amp;#x437;&amp;#x443;&amp;#x43B;&amp;#x442;&amp;#x430;&amp;#x442;\n&amp;#x432;&amp;#x441;&amp;#x438;&amp;#x447;&amp;#x43A;&amp;#x43E; &amp;#x435; &amp;#x438;&amp;#x437;&amp;#x43F;&amp;#x44A;&amp;#x43B;&amp;#x43D;&amp;#x438;&amp;#x43C; &amp;#x43A;&amp;#x43E;&amp;#x434; - &amp;#x201C;&amp;#x432;&amp;#x43A;&amp;#x43B;&amp;#x44E;&amp;#x447;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E; &amp;#x438; &amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x430;&amp;#x442;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;&amp;#x442;&amp;#x435; &amp;#x432; &amp;#x43A;&amp;#x43E;&amp;#x439;&amp;#x442;&amp;#x43E; &amp;#x43C;&amp;#x43E;&amp;#x436;&amp;#x435; &amp;#x438;&amp;#x43C;&amp;#x430; &amp;#x446;&amp;#x438;&amp;#x43A;&amp;#x43B;&amp;#x438;, &amp;#x443;&amp;#x441;&amp;#x43B;&amp;#x43E;&amp;#x432;&amp;#x43D;&amp;#x438; &amp;#x43E;&amp;#x43F;&amp;#x435;&amp;#x440;&amp;#x430;&amp;#x442;&amp;#x43E;&amp;#x440;&amp;#x438; &amp;#x438; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438;&amp;#x201D;\n&amp;#x438;&amp;#x437;&amp;#x447;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x435;&amp;#x43D; &amp;#x441;&amp;#x438;&amp;#x43D;&amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x441;&amp;#x438;&amp;#x441; - &amp;#x201C;&amp;#x43D;&amp;#x435; &amp;#x435; &amp;#x437;&amp;#x430;&amp;#x434;&amp;#x44A;&amp;#x43B;&amp;#x436;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E;, &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x441;&amp;#x43A;&amp;#x43E;&amp;#x431;&amp;#x438;, &amp;#x442;&amp;#x43E;&amp;#x447;&amp;#x43A;&amp;#x430; &amp;#x438; &amp;#x437;&amp;#x430;&amp;#x43F;&amp;#x435;&amp;#x442;&amp;#x430;&amp;#x44F; &amp;#x438; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438;&amp;#x201D;\n&amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x438;&amp;#x440;&amp;#x430;&amp;#x43D;&amp;#x435;\n&amp;#xA0;\n\n
  • #39 \n
  • #40 \n
  • #41 \n
  • #42 \n
  • #43 &amp;#x420;&amp;#x430;&amp;#x437;&amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x435;&amp;#x43D; &amp;#x43E;&amp;#x442; David Heinemeier Hansson &amp;#x43E;&amp;#x442; 37 Signals. &amp;#x41A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x435; Rails &amp;#x435; &amp;#x431;&amp;#x438;&amp;#x43B; &amp;#x438;&amp;#x437;&amp;#x432;&amp;#x43B;&amp;#x435;&amp;#x447;&amp;#x435;&amp;#x43D; &amp;#x43E;&amp;#x442; &amp;#x442;&amp;#x44F;&amp;#x445;&amp;#x43D;&amp;#x43E;&amp;#x442;&amp;#x43E; &amp;#x43F;&amp;#x440;&amp;#x438;&amp;#x43B;&amp;#x43E;&amp;#x436;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x435; Basecamp. &amp;#x412; &amp;#x440;&amp;#x430;&amp;#x437;&amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x430; &amp;#x43D;&amp;#x430; Rails &amp;#x441;&amp;#x430; &amp;#x443;&amp;#x447;&amp;#x430;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x430;&amp;#x43B;&amp;#x438; &amp;#x43D;&amp;#x430;&amp;#x434; 1500 &amp;#x447;&amp;#x43E;&amp;#x432;&amp;#x435;&amp;#x43A;&amp;#x430; &amp;#x43A;&amp;#x44A;&amp;#x43C; &amp;#x43C;&amp;#x43E;&amp;#x43C;&amp;#x435;&amp;#x43D;&amp;#x442;&amp;#x430;.\n\n
  • #44 \n
  • #45 \n
  • #46 \n
  • #47 \n
  • #48 \n
  • #49 \n
  • #50 \n
  • #51 \n
  • #52 \n
  • #53 &amp;#x421;&amp;#x442;&amp;#x440;&amp;#x435;&amp;#x43C;&amp;#x435;&amp;#x436;&amp;#x44A;&amp;#x442; &amp;#x43D;&amp;#x430; Ruby &amp;#x435; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x43B;&amp;#x435;&amp;#x434;&amp;#x432;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x438;&amp;#x43D;&amp;#x446;&amp;#x438;&amp;#x43F;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x43C;&amp;#x430;&amp;#x43B;&amp;#x43A;&amp;#x430; &amp;#x438;&amp;#x437;&amp;#x43D;&amp;#x435;&amp;#x43D;&amp;#x430;&amp;#x434;&amp;#x430;. &amp;#x422;&amp;#x43E;&amp;#x432;&amp;#x430; &amp;#x43E;&amp;#x437;&amp;#x43D;&amp;#x430;&amp;#x447;&amp;#x430;&amp;#x432;&amp;#x430;, &amp;#x447;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x432;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x435;&amp;#x442;&amp;#x43E; &amp;#x43D;&amp;#x430; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x43A;&amp;#x430; &amp;#x442;&amp;#x440;&amp;#x44F;&amp;#x431;&amp;#x432;&amp;#x430; &amp;#x434;&amp;#x430; &amp;#x435; &amp;#x438;&amp;#x43D;&amp;#x442;&amp;#x443;&amp;#x438;&amp;#x442;&amp;#x438;&amp;#x432;&amp;#x43D;&amp;#x43E; &amp;#x438; &amp;#x442;&amp;#x43E;&amp;#x439; &amp;#x434;&amp;#x430; &amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x438; &amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x430;, &amp;#x43A;&amp;#x430;&amp;#x43A;&amp;#x442;&amp;#x43E; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x44A;&amp;#x442; &amp;#x431;&amp;#x438; &amp;#x43E;&amp;#x447;&amp;#x430;&amp;#x43A;&amp;#x432;&amp;#x430;&amp;#x43B;.\nRuby &amp;#x435; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;&amp;#x43D;&amp;#x43E;-&amp;#x43E;&amp;#x440;&amp;#x438;&amp;#x435;&amp;#x43D;&amp;#x442;&amp;#x438;&amp;#x440;&amp;#x430;&amp;#x43D;: &amp;#x432;&amp;#x441;&amp;#x435;&amp;#x43A;&amp;#x438; &amp;#x442;&amp;#x438;&amp;#x43F; &amp;#x434;&amp;#x430;&amp;#x43D;&amp;#x43D;&amp;#x438; &amp;#x435; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;, &amp;#x432;&amp;#x43A;&amp;#x43B;&amp;#x44E;&amp;#x447;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;, &amp;#x447;&amp;#x438;&amp;#x441;&amp;#x43B;&amp;#x430;, &amp;#x431;&amp;#x443;&amp;#x43B;&amp;#x435;&amp;#x432;&amp;#x438; &amp;#x441;&amp;#x442;&amp;#x43E;&amp;#x439;&amp;#x43D;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x438;, &amp;#x43A;&amp;#x43E;&amp;#x438;&amp;#x442;&amp;#x43E; &amp;#x432; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x433;&amp;#x43E; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x446;&amp;#x438; &amp;#x43E;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43B;&amp;#x44F;&amp;#x442; &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x43F;&amp;#x440;&amp;#x438;&amp;#x43C;&amp;#x438;&amp;#x442;&amp;#x438;&amp;#x432;&amp;#x438;, &amp;#x430; &amp;#x43D;&amp;#x435; &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x440;&amp;#x435;&amp;#x430;&amp;#x43B;&amp;#x43D;&amp;#x438; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;&amp;#x438;.\n\n&amp;#x41D;&amp;#x44F;&amp;#x43A;&amp;#x43E;&amp;#x438; &amp;#x43E;&amp;#x442; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x432;&amp;#x430;&amp;#x436;&amp;#x43D;&amp;#x438;&amp;#x442;&amp;#x435; &amp;#x445;&amp;#x430;&amp;#x440;&amp;#x430;&amp;#x43A;&amp;#x442;&amp;#x435;&amp;#x440;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x438;&amp;#x43A;&amp;#x438; &amp;#x43D;&amp;#x430; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x43A;&amp;#x430; &amp;#x441;&amp;#x430;: \n&amp;#x434;&amp;#x438;&amp;#x43C;&amp;#x438;&amp;#x447;&amp;#x43D;&amp;#x43E; &amp;#x43E;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43B;&amp;#x44F;&amp;#x43D;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x442;&amp;#x438;&amp;#x43F;&amp;#x430; &amp;#x434;&amp;#x430;&amp;#x43D;&amp;#x43D;&amp;#x438;&amp;#x442;&amp;#x435;\n&amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x443;&amp;#x43B;&amp;#x438; - &amp;#x201C;&amp;#x432;&amp;#x44A;&amp;#x437;&amp;#x43C;&amp;#x43E;&amp;#x436;&amp;#x43D;&amp;#x43E;&amp;#x441;&amp;#x442; &amp;#x435;&amp;#x434;&amp;#x438;&amp;#x43D; &amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x443;&amp;#x43B; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x432;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x436;&amp;#x434;&amp;#x430; &amp;#x432; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x436;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x43E; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;, &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x438;&amp;#x433;&amp;#x430; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x436;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x435;&amp;#x43D;&amp;#x43E; &amp;#x43D;&amp;#x430;&amp;#x441;&amp;#x43B;&amp;#x435;&amp;#x434;&amp;#x44F;&amp;#x432;&amp;#x430;&amp;#x43D;&amp;#x435;&amp;#x201D;\n&amp;#x43E;&amp;#x442;&amp;#x432;&amp;#x43E;&amp;#x440;&amp;#x435;&amp;#x43D;&amp;#x438; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435; - &amp;#x201C;&amp;#x43A;&amp;#x44A;&amp;#x43C; &amp;#x432;&amp;#x441;&amp;#x435;&amp;#x43A;&amp;#x438; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441; &amp;#x43C;&amp;#x43E;&amp;#x433;&amp;#x430;&amp;#x442; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x434;&amp;#x43E;&amp;#x431;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x43D;&amp;#x43E;&amp;#x432;&amp;#x438; &amp;#x430;&amp;#x442;&amp;#x440;&amp;#x438;&amp;#x431;&amp;#x443;&amp;#x442;&amp;#x438; &amp;#x438; &amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x43E;&amp;#x434;&amp;#x438; &amp;#x43F;&amp;#x43E; &amp;#x432;&amp;#x440;&amp;#x435;&amp;#x43C;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x438;&amp;#x437;&amp;#x43F;&amp;#x44A;&amp;#x43B;&amp;#x43D;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x430;&amp;#x442;&amp;#x430;&amp;#x201D;\n&amp;#x431;&amp;#x43B;&amp;#x43E;&amp;#x43A;&amp;#x43E;&amp;#x432;&amp;#x435;\n&amp;#x430;&amp;#x43D;&amp;#x43E;&amp;#x43D;&amp;#x438;&amp;#x43C;&amp;#x43D;&amp;#x438; &amp;#x444;&amp;#x443;&amp;#x43D;&amp;#x43A;&amp;#x446;&amp;#x438;&amp;#x438;\n&amp;#x432;&amp;#x441;&amp;#x44F;&amp;#x43A;&amp;#x430; &amp;#x43E;&amp;#x43F;&amp;#x435;&amp;#x440;&amp;#x430;&amp;#x446;&amp;#x438;&amp;#x44F; &amp;#x432;&amp;#x440;&amp;#x44A;&amp;#x449;&amp;#x430; &amp;#x440;&amp;#x435;&amp;#x437;&amp;#x443;&amp;#x43B;&amp;#x442;&amp;#x430;&amp;#x442;\n&amp;#x432;&amp;#x441;&amp;#x438;&amp;#x447;&amp;#x43A;&amp;#x43E; &amp;#x435; &amp;#x438;&amp;#x437;&amp;#x43F;&amp;#x44A;&amp;#x43B;&amp;#x43D;&amp;#x438;&amp;#x43C; &amp;#x43A;&amp;#x43E;&amp;#x434; - &amp;#x201C;&amp;#x432;&amp;#x43A;&amp;#x43B;&amp;#x44E;&amp;#x447;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E; &amp;#x438; &amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x430;&amp;#x442;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;&amp;#x442;&amp;#x435; &amp;#x432; &amp;#x43A;&amp;#x43E;&amp;#x439;&amp;#x442;&amp;#x43E; &amp;#x43C;&amp;#x43E;&amp;#x436;&amp;#x435; &amp;#x438;&amp;#x43C;&amp;#x430; &amp;#x446;&amp;#x438;&amp;#x43A;&amp;#x43B;&amp;#x438;, &amp;#x443;&amp;#x441;&amp;#x43B;&amp;#x43E;&amp;#x432;&amp;#x43D;&amp;#x438; &amp;#x43E;&amp;#x43F;&amp;#x435;&amp;#x440;&amp;#x430;&amp;#x442;&amp;#x43E;&amp;#x440;&amp;#x438; &amp;#x438; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438;&amp;#x201D;\n&amp;#x438;&amp;#x437;&amp;#x447;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x435;&amp;#x43D; &amp;#x441;&amp;#x438;&amp;#x43D;&amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x441;&amp;#x438;&amp;#x441; - &amp;#x201C;&amp;#x43D;&amp;#x435; &amp;#x435; &amp;#x437;&amp;#x430;&amp;#x434;&amp;#x44A;&amp;#x43B;&amp;#x436;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E;, &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x441;&amp;#x43A;&amp;#x43E;&amp;#x431;&amp;#x438;, &amp;#x442;&amp;#x43E;&amp;#x447;&amp;#x43A;&amp;#x430; &amp;#x438; &amp;#x437;&amp;#x430;&amp;#x43F;&amp;#x435;&amp;#x442;&amp;#x430;&amp;#x44F; &amp;#x438; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438;&amp;#x201D;\n&amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x438;&amp;#x440;&amp;#x430;&amp;#x43D;&amp;#x435;\n&amp;#xA0;\n\n
  • #54 Rails &amp;#x438;&amp;#x437;&amp;#x43F;&amp;#x43E;&amp;#x43B;&amp;#x437;&amp;#x432;&amp;#x430; Model-View-Controller &amp;#x430;&amp;#x440;&amp;#x445;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43A;&amp;#x442;&amp;#x443;&amp;#x440;&amp;#x430;. &amp;#x427;&amp;#x438;&amp;#x44F;&amp;#x442;&amp;#x43E; &amp;#x43E;&amp;#x441;&amp;#x43D;&amp;#x43E;&amp;#x432;&amp;#x43D;&amp;#x430; &amp;#x446;&amp;#x435;&amp;#x43B; &amp;#x435; &amp;#x440;&amp;#x430;&amp;#x437;&amp;#x434;&amp;#x435;&amp;#x43B;&amp;#x44F;&amp;#x43D;&amp;#x435;&amp;#x442;&amp;#x43E; &amp;#x43D;&amp;#x430; &amp;#x431;&amp;#x438;&amp;#x437;&amp;#x43D;&amp;#x435;&amp;#x441; &amp;#x43B;&amp;#x43E;&amp;#x433;&amp;#x438;&amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x430; &amp;#x43E;&amp;#x442; &amp;#x43F;&amp;#x43E;&amp;#x442;&amp;#x440;&amp;#x435;&amp;#x431;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x441;&amp;#x43A;&amp;#x438;&amp;#x44F; &amp;#x438;&amp;#x43D;&amp;#x442;&amp;#x435;&amp;#x440;&amp;#x444;&amp;#x435;&amp;#x439;&amp;#x441;. &amp;#x41F;&amp;#x43E; &amp;#x442;&amp;#x43E;&amp;#x437;&amp;#x438; &amp;#x43D;&amp;#x430;&amp;#x447;&amp;#x438;&amp;#x43D; &amp;#x43A;&amp;#x43E;&amp;#x434;&amp;#x430; &amp;#x435; &amp;#x43F;&amp;#x43E;-&amp;#x43B;&amp;#x435;&amp;#x441;&amp;#x435;&amp;#x43D; &amp;#x437;&amp;#x430; &amp;#x442;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x430;&amp;#x43D;&amp;#x435;, &amp;#x43F;&amp;#x43E;&amp;#x434;&amp;#x434;&amp;#x440;&amp;#x44A;&amp;#x436;&amp;#x43A;&amp;#x430; &amp;#x438; &amp;#x431;&amp;#x44A;&amp;#x434;&amp;#x435;&amp;#x449;&amp;#x430; &amp;#x440;&amp;#x430;&amp;#x437;&amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x43A;&amp;#x430;.\nModel - &amp;#x201C;&amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x434;&amp;#x438;&amp;#x43D;&amp;#x44F;&amp;#x432;&amp;#x430; &amp;#x431;&amp;#x438;&amp;#x437;&amp;#x43D;&amp;#x435;&amp;#x441; &amp;#x43B;&amp;#x43E;&amp;#x433;&amp;#x438;&amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x430; &amp;#x438; &amp;#x438;&amp;#x43D;&amp;#x444;&amp;#x440;&amp;#x430;&amp;#x441;&amp;#x442;&amp;#x440;&amp;#x443;&amp;#x43A;&amp;#x442;&amp;#x443;&amp;#x440;&amp;#x430;&amp;#x442;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x438;&amp;#x43B;&amp;#x43E;&amp;#x436;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x435;&amp;#x442;&amp;#x43E;. &amp;#x41A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x447;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x43E; &amp;#x441;&amp;#x435; &amp;#x438;&amp;#x437;&amp;#x43F;&amp;#x43E;&amp;#x43B;&amp;#x437;&amp;#x432;&amp;#x430;&amp;#x442; ActiveRecord &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;&amp;#x438;, &amp;#x447;&amp;#x440;&amp;#x435;&amp;#x437; &amp;#x43A;&amp;#x43E;&amp;#x438;&amp;#x442;&amp;#x43E; &amp;#x441;&amp;#x435; &amp;#x432;&amp;#x437;&amp;#x430;&amp;#x438;&amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x435;&amp;#x439;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x430; &amp;#x441; &amp;#x431;&amp;#x430;&amp;#x437;&amp;#x430;&amp;#x442;&amp;#x430; &amp;#x43E;&amp;#x442; &amp;#x434;&amp;#x430;&amp;#x43D;&amp;#x43D;&amp;#x438;. &amp;#x412; Rails &amp;#xA0;&amp;#x43F;&amp;#x43E;&amp;#x447;&amp;#x442;&amp;#x438; &amp;#x43D;&amp;#x438;&amp;#x43A;&amp;#x43E;&amp;#x433;&amp;#x430; &amp;#x43D;&amp;#x435; &amp;#x441;&amp;#x435; &amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x438; &amp;#x434;&amp;#x438;&amp;#x440;&amp;#x435;&amp;#x43A;&amp;#x442;&amp;#x43D;&amp;#x43E; &amp;#x441; &amp;#x431;&amp;#x430;&amp;#x437;&amp;#x430;&amp;#x442;&amp;#x430; &amp;#x43E;&amp;#x442; &amp;#x434;&amp;#x430;&amp;#x43D;&amp;#x438; &amp;#x438; &amp;#x441; sql &amp;#x43A;&amp;#x43E;&amp;#x434;, &amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43C;&amp;#x438;&amp;#x43D;&amp;#x430;&amp;#x432;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x437; ActiveRecord &amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x435;&amp;#x43B;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x201D;\nView - &amp;#x201C;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x434;&amp;#x441;&amp;#x442;&amp;#x430;&amp;#x432;&amp;#x43B;&amp;#x44F;&amp;#x432;&amp;#x430; &amp;#x43F;&amp;#x43E;&amp;#x442;&amp;#x440;&amp;#x435;&amp;#x431;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x441;&amp;#x43A;&amp;#x438;&amp;#x44F; &amp;#x438;&amp;#x43D;&amp;#x442;&amp;#x435;&amp;#x440;&amp;#x444;&amp;#x435;&amp;#x439;&amp;#x441;. &amp;#x422;&amp;#x43E;&amp;#x432;&amp;#x430; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x447;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x43E; &amp;#x435; HTML &amp;#x43A;&amp;#x43E;&amp;#x434;&amp;#x430;&amp;#x201D;.\nController - &amp;#x201C;&amp;#x441;&amp;#x432;&amp;#x44A;&amp;#x440;&amp;#x437;&amp;#x432;&amp;#x430; &amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x435;&amp;#x43B;&amp;#x438;&amp;#x442;&amp;#x435; &amp;#x438; &amp;#x438;&amp;#x437;&amp;#x433;&amp;#x43B;&amp;#x435;&amp;#x434;&amp;#x438;&amp;#x442;&amp;#x435; &amp;#x438; &amp;#x432;&amp;#x440;&amp;#x44A;&amp;#x449;&amp;#x430; &amp;#x440;&amp;#x435;&amp;#x437;&amp;#x443;&amp;#x43B;&amp;#x442;&amp;#x430;&amp;#x442; &amp;#x43D;&amp;#x430; &amp;#x43F;&amp;#x43E;&amp;#x442;&amp;#x440;&amp;#x435;&amp;#x431;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x44F;&amp;#x201D;.\n&amp;#xA0;\n\n
  • #55 &amp;#x41A;&amp;#x430;&amp;#x43A; &amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x438; &amp;#x435;&amp;#x434;&amp;#x43D;&amp;#x43E; Rails &amp;#x43F;&amp;#x440;&amp;#x438;&amp;#x43B;&amp;#x43E;&amp;#x436;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x435;? \n&amp;#x41F;&amp;#x440;&amp;#x438; &amp;#x43F;&amp;#x440;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x438;&amp;#x433;&amp;#x430;&amp;#x43D;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x437;&amp;#x430;&amp;#x43F;&amp;#x438;&amp;#x442;&amp;#x432;&amp;#x430;&amp;#x43D;&amp;#x435; &amp;#x43E;&amp;#x442; browser-&amp;#x430;. &amp;#xA0;&amp;#x41F;&amp;#x44A;&amp;#x440;&amp;#x432;&amp;#x43E; &amp;#x441;&amp;#x435; &amp;#x43C;&amp;#x438;&amp;#x43D;&amp;#x430;&amp;#x432;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x437; Routing &amp;#x441;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x435;&amp;#x43C;&amp;#x430;&amp;#x442;&amp;#x430;, &amp;#x43A;&amp;#x43E;&amp;#x44F;&amp;#x442;&amp;#x43E; &amp;#x43E;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43B;&amp;#x44F;, &amp;#x43A;&amp;#x43E;&amp;#x439; &amp;#x43A;&amp;#x43E;&amp;#x43D;&amp;#x442;&amp;#x440;&amp;#x43E;&amp;#x43B;&amp;#x435;&amp;#x440; &amp;#x435; &amp;#x43E;&amp;#x442;&amp;#x433;&amp;#x43E;&amp;#x432;&amp;#x43E;&amp;#x440;&amp;#x435;&amp;#x43D; &amp;#x437;&amp;#x430; &amp;#x43E;&amp;#x431;&amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x437;&amp;#x430;&amp;#x43F;&amp;#x438;&amp;#x442;&amp;#x432;&amp;#x430;&amp;#x43D;&amp;#x435;&amp;#x442;&amp;#x43E;. &amp;#x421;&amp;#x43B;&amp;#x435;&amp;#x434; &amp;#x442;&amp;#x43E;&amp;#x432;&amp;#x430; &amp;#x441;&amp;#x44A;&amp;#x43E;&amp;#x442;&amp;#x432;&amp;#x435;&amp;#x442;&amp;#x43D;&amp;#x438;&amp;#x44F; &amp;#x43A;&amp;#x43E;&amp;#x43D;&amp;#x442;&amp;#x440;&amp;#x43E;&amp;#x43B;&amp;#x435;&amp;#x440; &amp;#x432;&amp;#x437;&amp;#x430;&amp;#x438;&amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x435;&amp;#x439;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x430; &amp;#x441; &amp;#x431;&amp;#x438;&amp;#x437;&amp;#x43D;&amp;#x435;&amp;#x441; &amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x435;&amp;#x43B;&amp;#x438;&amp;#x442;&amp;#x435;.\n&amp;#x41A;&amp;#x43E;&amp;#x438;&amp;#x442;&amp;#x43E; &amp;#x441;&amp;#x430; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x447;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x43E; &amp;#x441;&amp;#x430; ActiveRecord &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;&amp;#x438;, &amp;#x43A;&amp;#x43E;&amp;#x438;&amp;#x442;&amp;#x43E; &amp;#x441;&amp;#x438; &amp;#x432;&amp;#x437;&amp;#x430;&amp;#x438;&amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x435;&amp;#x439;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x430;&amp;#x442; &amp;#x441; &amp;#x431;&amp;#x430;&amp;#x437;&amp;#x430;&amp;#x442;&amp;#x430; &amp;#x43E;&amp;#x442; &amp;#x434;&amp;#x430;&amp;#x43D;&amp;#x43D;&amp;#x438;. \n&amp;#x421;&amp;#x43B;&amp;#x435;&amp;#x434; &amp;#x442;&amp;#x43E;&amp;#x432;&amp;#x430; &amp;#x43A;&amp;#x43E;&amp;#x43D;&amp;#x442;&amp;#x440;&amp;#x43E;&amp;#x43B;&amp;#x435;&amp;#x440;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x434;&amp;#x430;&amp;#x432;&amp;#x430; &amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x435;&amp;#x43B;&amp;#x438;&amp;#x442;&amp;#x435; &amp;#x43D;&amp;#x430; View Layer-a, &amp;#x43A;&amp;#x43E;&amp;#x439;&amp;#x442;&amp;#x43E; &amp;#x433;&amp;#x435;&amp;#x43D;&amp;#x435;&amp;#x440;&amp;#x438;&amp;#x440;&amp;#x430; &amp;#x438; &amp;#x438;&amp;#x437;&amp;#x43F;&amp;#x440;&amp;#x430;&amp;#x449;&amp;#x430; &amp;#x43E;&amp;#x442;&amp;#x433;&amp;#x43E;&amp;#x432;&amp;#x43E;&amp;#x440; &amp;#x43D;&amp;#x430; &amp;#x431;&amp;#x440;&amp;#x430;&amp;#x443;&amp;#x437;&amp;#x44A;&amp;#x440;&amp;#x430;. &amp;#x41A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x442;&amp;#x43E;&amp;#x437;&amp;#x438; &amp;#x43E;&amp;#x442;&amp;#x433;&amp;#x43E;&amp;#x432;&amp;#x43E;&amp;#x440; &amp;#x43C;&amp;#x43E;&amp;#x436;&amp;#x435; &amp;#x434;&amp;#x430; &amp;#x435; html, xml, json, JavaScript &amp;#x438;&amp;#x43B;&amp;#x438; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433; &amp;#x43A;&amp;#x43E;&amp;#x434;.\n\n
  • #56 \n
  • #57 \n
  • #58 \n
  • #59 \n
  • #60 \n
  • #61 \n
  • #62 \n
  • #63 \n
  • #64 \n
  • #65 \n
  • #66 \n
  • #67 \n
  • #68 \n
  • #69 \n
  • #70 \n
  • #71 \n
  • #72 \n
  • #73 \n
  • #74 \n
  • #75 \n
  • #76 \n
  • #77 \n
  • #78 \n
  • #79 \n
  • #80 \n
  • #81 \n
  • #82 \n
  • #83 \n
  • #84 \n
  • #85 \n
  • #86 \n
  • #87 \n
  • #88 Taskar e &amp;#x440;&amp;#x430;&amp;#x437;&amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x435;&amp;#x43D; &amp;#x447;&amp;#x440;&amp;#x435;&amp;#x437; &amp;#xA0;&amp;#x422;est Driven Development &amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x43E;&amp;#x434;&amp;#x43E;&amp;#x43B;&amp;#x43E;&amp;#x433;&amp;#x438;&amp;#x44F;&amp;#x442;&amp;#x430;, &amp;#x447;&amp;#x438;&amp;#x44F;&amp;#x442;&amp;#x43E; &amp;#x43E;&amp;#x441;&amp;#x43D;&amp;#x43E;&amp;#x432;&amp;#x43D;&amp;#x430; &amp;#x438;&amp;#x434;&amp;#x435;&amp;#x44F; &amp;#x435; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x438;&amp;#x448;&amp;#x435; &amp;#x43A;&amp;#x43E;&amp;#x434; &amp;#x432; 3 &amp;#x441;&amp;#x442;&amp;#x44A;&amp;#x43F;&amp;#x43A;&amp;#x438;:\n&amp;#x41F;&amp;#x44A;&amp;#x440;&amp;#x432;&amp;#x43E; &amp;#x441;&amp;#x435; &amp;#x434;&amp;#x43E;&amp;#x431;&amp;#x430;&amp;#x432;&amp;#x44F; &amp;#x442;&amp;#x435;&amp;#x441;&amp;#x442;, &amp;#x437;&amp;#x430; &amp;#x432;&amp;#x441;&amp;#x435; &amp;#x43E;&amp;#x449;&amp;#x435; &amp;#x43D;&amp;#x435; &amp;#x441;&amp;#x44A;&amp;#x449;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x443;&amp;#x432;&amp;#x430;&amp;#x449; &amp;#x43A;&amp;#x43E;&amp;#x434;. &amp;#x41A;&amp;#x43E;&amp;#x439;&amp;#x442;&amp;#x43E; &amp;#x442;&amp;#x440;&amp;#x44F;&amp;#x431;&amp;#x432;&amp;#x430; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43C;&amp;#x430;&amp;#x440;&amp;#x43A;&amp;#x438;&amp;#x440;&amp;#x430; &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x43D;&amp;#x435; &amp;#x443;&amp;#x441;&amp;#x43F;&amp;#x435;&amp;#x448;&amp;#x435;&amp;#x43D;\n&amp;#x421;&amp;#x43B;&amp;#x435;&amp;#x434; &amp;#x442;&amp;#x43E;&amp;#x432;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x438;&amp;#x448;&amp;#x435; &amp;#x432;&amp;#x44A;&amp;#x437;&amp;#x43C;&amp;#x43E;&amp;#x436;&amp;#x43D;&amp;#x43E; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x438;&amp;#x44F; &amp;#x43A;&amp;#x43E;&amp;#x434;, &amp;#x441; &amp;#x43A;&amp;#x43E;&amp;#x439;&amp;#x442;&amp;#x43E; &amp;#x442;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x430; &amp;#x43C;&amp;#x438;&amp;#x43D;&amp;#x430;&amp;#x432;&amp;#x430; &amp;#x443;&amp;#x441;&amp;#x43F;&amp;#x435;&amp;#x448;&amp;#x43D;&amp;#x43E;.\n&amp;#x41D;&amp;#x430;&amp;#x43A;&amp;#x440;&amp;#x430;&amp;#x44F; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x440;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x43F;&amp;#x43E;&amp;#x434;&amp;#x43E;&amp;#x431;&amp;#x440;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x44F; &amp;#x43F;&amp;#x43E; &amp;#x43A;&amp;#x43E;&amp;#x434;&amp;#x430;, &amp;#x438;&amp;#x437;&amp;#x447;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x430;&amp;#x442; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x432;&amp;#x442;&amp;#x43E;&amp;#x440;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x44F;, &amp;#x434;&amp;#x43E;&amp;#x431;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x441;&amp;#x435; &amp;#x43D;&amp;#x43E;&amp;#x432;&amp;#x438; &amp;#x442;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x43E;&amp;#x432;&amp;#x435; &amp;#x438; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438;.\n\n&amp;#x41A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x442;&amp;#x435;&amp;#x437;&amp;#x438; 3 &amp;#x441;&amp;#x442;&amp;#x44A;&amp;#x43F;&amp;#x43A;&amp;#x438; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x432;&amp;#x442;&amp;#x430;&amp;#x440;&amp;#x44F;&amp;#x442; &amp;#x43D;&amp;#x435;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x43A;&amp;#x44A;&amp;#x441;&amp;#x43D;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x432; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x446;&amp;#x435;&amp;#x441;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x440;&amp;#x430;&amp;#x437;&amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x43A;&amp;#x430;. &amp;#x41A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x446;&amp;#x44F;&amp;#x43B;&amp;#x43E; &amp;#x442;&amp;#x43E;&amp;#x437;&amp;#x438; &amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x43E;&amp;#x434; &amp;#x43D;&amp;#x430; &amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x430; &amp;#x433;&amp;#x430;&amp;#x440;&amp;#x430;&amp;#x43D;&amp;#x442;&amp;#x438;&amp;#x440;&amp;#x430; &amp;#x447;&amp;#x435; 100% &amp;#x43E;&amp;#x442; &amp;#x43A;&amp;#x43E;&amp;#x434;&amp;#x430; &amp;#x449;&amp;#x435; &amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x43A;&amp;#x440;&amp;#x438;&amp;#x442; &amp;#x441; &amp;#x430;&amp;#x432;&amp;#x442;&amp;#x43E;&amp;#x43C;&amp;#x430;&amp;#x442;&amp;#x438;&amp;#x447;&amp;#x43D;&amp;#x438; &amp;#x442;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x43E;&amp;#x432;&amp;#x435;. &amp;#x41A;&amp;#x43E;&amp;#x435;&amp;#x442;&amp;#x43E; &amp;#x433;&amp;#x43E; &amp;#x43F;&amp;#x440;&amp;#x430;&amp;#x432;&amp;#x438; &amp;#x43B;&amp;#x435;&amp;#x441;&amp;#x435;&amp;#x43D; &amp;#x437;&amp;#x430; &amp;#x43F;&amp;#x43E;&amp;#x434;&amp;#x434;&amp;#x440;&amp;#x44A;&amp;#x436;&amp;#x43A;&amp;#x430; &amp;#x438; &amp;#x441; &amp;#x43F;&amp;#x43E;--&amp;#x434;&amp;#x43E;&amp;#x431;&amp;#x44A;&amp;#x440; &amp;#x434;&amp;#x438;&amp;#x437;&amp;#x430;&amp;#x439;&amp;#x43D;. &amp;#xA0;&amp;#x422;&amp;#x43E;&amp;#x432;&amp;#x430; &amp;#x43E;&amp;#x449;&amp;#x435; &amp;#x441;&amp;#x435; &amp;#x43D;&amp;#x430;&amp;#x440;&amp;#x438;&amp;#x447;&amp;#x430; Red-Green-Blue &amp;#x43D;&amp;#x430;&amp;#x447;&amp;#x438;&amp;#x43D; &amp;#x43D;&amp;#x430; &amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x430;.\n&amp;#xA0;\n\n
  • #89 Taskar e &amp;#x440;&amp;#x430;&amp;#x437;&amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x435;&amp;#x43D; &amp;#x447;&amp;#x440;&amp;#x435;&amp;#x437; &amp;#xA0;&amp;#x422;est Driven Development &amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x43E;&amp;#x434;&amp;#x43E;&amp;#x43B;&amp;#x43E;&amp;#x433;&amp;#x438;&amp;#x44F;&amp;#x442;&amp;#x430;, &amp;#x447;&amp;#x438;&amp;#x44F;&amp;#x442;&amp;#x43E; &amp;#x43E;&amp;#x441;&amp;#x43D;&amp;#x43E;&amp;#x432;&amp;#x43D;&amp;#x430; &amp;#x438;&amp;#x434;&amp;#x435;&amp;#x44F; &amp;#x435; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x438;&amp;#x448;&amp;#x435; &amp;#x43A;&amp;#x43E;&amp;#x434; &amp;#x432; 3 &amp;#x441;&amp;#x442;&amp;#x44A;&amp;#x43F;&amp;#x43A;&amp;#x438;:\n&amp;#x41F;&amp;#x44A;&amp;#x440;&amp;#x432;&amp;#x43E; &amp;#x441;&amp;#x435; &amp;#x434;&amp;#x43E;&amp;#x431;&amp;#x430;&amp;#x432;&amp;#x44F; &amp;#x442;&amp;#x435;&amp;#x441;&amp;#x442;, &amp;#x437;&amp;#x430; &amp;#x432;&amp;#x441;&amp;#x435; &amp;#x43E;&amp;#x449;&amp;#x435; &amp;#x43D;&amp;#x435; &amp;#x441;&amp;#x44A;&amp;#x449;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x443;&amp;#x432;&amp;#x430;&amp;#x449; &amp;#x43A;&amp;#x43E;&amp;#x434;. &amp;#x41A;&amp;#x43E;&amp;#x439;&amp;#x442;&amp;#x43E; &amp;#x442;&amp;#x440;&amp;#x44F;&amp;#x431;&amp;#x432;&amp;#x430; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43C;&amp;#x430;&amp;#x440;&amp;#x43A;&amp;#x438;&amp;#x440;&amp;#x430; &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x43D;&amp;#x435; &amp;#x443;&amp;#x441;&amp;#x43F;&amp;#x435;&amp;#x448;&amp;#x435;&amp;#x43D;\n&amp;#x421;&amp;#x43B;&amp;#x435;&amp;#x434; &amp;#x442;&amp;#x43E;&amp;#x432;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x438;&amp;#x448;&amp;#x435; &amp;#x432;&amp;#x44A;&amp;#x437;&amp;#x43C;&amp;#x43E;&amp;#x436;&amp;#x43D;&amp;#x43E; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x438;&amp;#x44F; &amp;#x43A;&amp;#x43E;&amp;#x434;, &amp;#x441; &amp;#x43A;&amp;#x43E;&amp;#x439;&amp;#x442;&amp;#x43E; &amp;#x442;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x430; &amp;#x43C;&amp;#x438;&amp;#x43D;&amp;#x430;&amp;#x432;&amp;#x430; &amp;#x443;&amp;#x441;&amp;#x43F;&amp;#x435;&amp;#x448;&amp;#x43D;&amp;#x43E;.\n&amp;#x41D;&amp;#x430;&amp;#x43A;&amp;#x440;&amp;#x430;&amp;#x44F; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x440;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x43F;&amp;#x43E;&amp;#x434;&amp;#x43E;&amp;#x431;&amp;#x440;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x44F; &amp;#x43F;&amp;#x43E; &amp;#x43A;&amp;#x43E;&amp;#x434;&amp;#x430;, &amp;#x438;&amp;#x437;&amp;#x447;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x430;&amp;#x442; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x432;&amp;#x442;&amp;#x43E;&amp;#x440;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x44F;, &amp;#x434;&amp;#x43E;&amp;#x431;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x441;&amp;#x435; &amp;#x43D;&amp;#x43E;&amp;#x432;&amp;#x438; &amp;#x442;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x43E;&amp;#x432;&amp;#x435; &amp;#x438; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438;.\n\n&amp;#x41A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x442;&amp;#x435;&amp;#x437;&amp;#x438; 3 &amp;#x441;&amp;#x442;&amp;#x44A;&amp;#x43F;&amp;#x43A;&amp;#x438; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x432;&amp;#x442;&amp;#x430;&amp;#x440;&amp;#x44F;&amp;#x442; &amp;#x43D;&amp;#x435;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x43A;&amp;#x44A;&amp;#x441;&amp;#x43D;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x432; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x446;&amp;#x435;&amp;#x441;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x440;&amp;#x430;&amp;#x437;&amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x43A;&amp;#x430;. &amp;#x41A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x446;&amp;#x44F;&amp;#x43B;&amp;#x43E; &amp;#x442;&amp;#x43E;&amp;#x437;&amp;#x438; &amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x43E;&amp;#x434; &amp;#x43D;&amp;#x430; &amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x430; &amp;#x433;&amp;#x430;&amp;#x440;&amp;#x430;&amp;#x43D;&amp;#x442;&amp;#x438;&amp;#x440;&amp;#x430; &amp;#x447;&amp;#x435; 100% &amp;#x43E;&amp;#x442; &amp;#x43A;&amp;#x43E;&amp;#x434;&amp;#x430; &amp;#x449;&amp;#x435; &amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x43A;&amp;#x440;&amp;#x438;&amp;#x442; &amp;#x441; &amp;#x430;&amp;#x432;&amp;#x442;&amp;#x43E;&amp;#x43C;&amp;#x430;&amp;#x442;&amp;#x438;&amp;#x447;&amp;#x43D;&amp;#x438; &amp;#x442;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x43E;&amp;#x432;&amp;#x435;. &amp;#x41A;&amp;#x43E;&amp;#x435;&amp;#x442;&amp;#x43E; &amp;#x433;&amp;#x43E; &amp;#x43F;&amp;#x440;&amp;#x430;&amp;#x432;&amp;#x438; &amp;#x43B;&amp;#x435;&amp;#x441;&amp;#x435;&amp;#x43D; &amp;#x437;&amp;#x430; &amp;#x43F;&amp;#x43E;&amp;#x434;&amp;#x434;&amp;#x440;&amp;#x44A;&amp;#x436;&amp;#x43A;&amp;#x430; &amp;#x438; &amp;#x441; &amp;#x43F;&amp;#x43E;--&amp;#x434;&amp;#x43E;&amp;#x431;&amp;#x44A;&amp;#x440; &amp;#x434;&amp;#x438;&amp;#x437;&amp;#x430;&amp;#x439;&amp;#x43D;. &amp;#xA0;&amp;#x422;&amp;#x43E;&amp;#x432;&amp;#x430; &amp;#x43E;&amp;#x449;&amp;#x435; &amp;#x441;&amp;#x435; &amp;#x43D;&amp;#x430;&amp;#x440;&amp;#x438;&amp;#x447;&amp;#x430; Red-Green-Blue &amp;#x43D;&amp;#x430;&amp;#x447;&amp;#x438;&amp;#x43D; &amp;#x43D;&amp;#x430; &amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x430;.\n&amp;#xA0;\n\n
  • #90 Taskar e &amp;#x440;&amp;#x430;&amp;#x437;&amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x435;&amp;#x43D; &amp;#x447;&amp;#x440;&amp;#x435;&amp;#x437; &amp;#xA0;&amp;#x422;est Driven Development &amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x43E;&amp;#x434;&amp;#x43E;&amp;#x43B;&amp;#x43E;&amp;#x433;&amp;#x438;&amp;#x44F;&amp;#x442;&amp;#x430;, &amp;#x447;&amp;#x438;&amp;#x44F;&amp;#x442;&amp;#x43E; &amp;#x43E;&amp;#x441;&amp;#x43D;&amp;#x43E;&amp;#x432;&amp;#x43D;&amp;#x430; &amp;#x438;&amp;#x434;&amp;#x435;&amp;#x44F; &amp;#x435; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x438;&amp;#x448;&amp;#x435; &amp;#x43A;&amp;#x43E;&amp;#x434; &amp;#x432; 3 &amp;#x441;&amp;#x442;&amp;#x44A;&amp;#x43F;&amp;#x43A;&amp;#x438;:\n&amp;#x41F;&amp;#x44A;&amp;#x440;&amp;#x432;&amp;#x43E; &amp;#x441;&amp;#x435; &amp;#x434;&amp;#x43E;&amp;#x431;&amp;#x430;&amp;#x432;&amp;#x44F; &amp;#x442;&amp;#x435;&amp;#x441;&amp;#x442;, &amp;#x437;&amp;#x430; &amp;#x432;&amp;#x441;&amp;#x435; &amp;#x43E;&amp;#x449;&amp;#x435; &amp;#x43D;&amp;#x435; &amp;#x441;&amp;#x44A;&amp;#x449;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x443;&amp;#x432;&amp;#x430;&amp;#x449; &amp;#x43A;&amp;#x43E;&amp;#x434;. &amp;#x41A;&amp;#x43E;&amp;#x439;&amp;#x442;&amp;#x43E; &amp;#x442;&amp;#x440;&amp;#x44F;&amp;#x431;&amp;#x432;&amp;#x430; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43C;&amp;#x430;&amp;#x440;&amp;#x43A;&amp;#x438;&amp;#x440;&amp;#x430; &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x43D;&amp;#x435; &amp;#x443;&amp;#x441;&amp;#x43F;&amp;#x435;&amp;#x448;&amp;#x435;&amp;#x43D;\n&amp;#x421;&amp;#x43B;&amp;#x435;&amp;#x434; &amp;#x442;&amp;#x43E;&amp;#x432;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x438;&amp;#x448;&amp;#x435; &amp;#x432;&amp;#x44A;&amp;#x437;&amp;#x43C;&amp;#x43E;&amp;#x436;&amp;#x43D;&amp;#x43E; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x438;&amp;#x44F; &amp;#x43A;&amp;#x43E;&amp;#x434;, &amp;#x441; &amp;#x43A;&amp;#x43E;&amp;#x439;&amp;#x442;&amp;#x43E; &amp;#x442;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x430; &amp;#x43C;&amp;#x438;&amp;#x43D;&amp;#x430;&amp;#x432;&amp;#x430; &amp;#x443;&amp;#x441;&amp;#x43F;&amp;#x435;&amp;#x448;&amp;#x43D;&amp;#x43E;.\n&amp;#x41D;&amp;#x430;&amp;#x43A;&amp;#x440;&amp;#x430;&amp;#x44F; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x440;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x43F;&amp;#x43E;&amp;#x434;&amp;#x43E;&amp;#x431;&amp;#x440;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x44F; &amp;#x43F;&amp;#x43E; &amp;#x43A;&amp;#x43E;&amp;#x434;&amp;#x430;, &amp;#x438;&amp;#x437;&amp;#x447;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x430;&amp;#x442; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x432;&amp;#x442;&amp;#x43E;&amp;#x440;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x44F;, &amp;#x434;&amp;#x43E;&amp;#x431;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x441;&amp;#x435; &amp;#x43D;&amp;#x43E;&amp;#x432;&amp;#x438; &amp;#x442;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x43E;&amp;#x432;&amp;#x435; &amp;#x438; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438;.\n\n&amp;#x41A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x442;&amp;#x435;&amp;#x437;&amp;#x438; 3 &amp;#x441;&amp;#x442;&amp;#x44A;&amp;#x43F;&amp;#x43A;&amp;#x438; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x432;&amp;#x442;&amp;#x430;&amp;#x440;&amp;#x44F;&amp;#x442; &amp;#x43D;&amp;#x435;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x43A;&amp;#x44A;&amp;#x441;&amp;#x43D;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x432; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x446;&amp;#x435;&amp;#x441;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x440;&amp;#x430;&amp;#x437;&amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x43A;&amp;#x430;. &amp;#x41A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x446;&amp;#x44F;&amp;#x43B;&amp;#x43E; &amp;#x442;&amp;#x43E;&amp;#x437;&amp;#x438; &amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x43E;&amp;#x434; &amp;#x43D;&amp;#x430; &amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x430; &amp;#x433;&amp;#x430;&amp;#x440;&amp;#x430;&amp;#x43D;&amp;#x442;&amp;#x438;&amp;#x440;&amp;#x430; &amp;#x447;&amp;#x435; 100% &amp;#x43E;&amp;#x442; &amp;#x43A;&amp;#x43E;&amp;#x434;&amp;#x430; &amp;#x449;&amp;#x435; &amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x43A;&amp;#x440;&amp;#x438;&amp;#x442; &amp;#x441; &amp;#x430;&amp;#x432;&amp;#x442;&amp;#x43E;&amp;#x43C;&amp;#x430;&amp;#x442;&amp;#x438;&amp;#x447;&amp;#x43D;&amp;#x438; &amp;#x442;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x43E;&amp;#x432;&amp;#x435;. &amp;#x41A;&amp;#x43E;&amp;#x435;&amp;#x442;&amp;#x43E; &amp;#x433;&amp;#x43E; &amp;#x43F;&amp;#x440;&amp;#x430;&amp;#x432;&amp;#x438; &amp;#x43B;&amp;#x435;&amp;#x441;&amp;#x435;&amp;#x43D; &amp;#x437;&amp;#x430; &amp;#x43F;&amp;#x43E;&amp;#x434;&amp;#x434;&amp;#x440;&amp;#x44A;&amp;#x436;&amp;#x43A;&amp;#x430; &amp;#x438; &amp;#x441; &amp;#x43F;&amp;#x43E;--&amp;#x434;&amp;#x43E;&amp;#x431;&amp;#x44A;&amp;#x440; &amp;#x434;&amp;#x438;&amp;#x437;&amp;#x430;&amp;#x439;&amp;#x43D;. &amp;#xA0;&amp;#x422;&amp;#x43E;&amp;#x432;&amp;#x430; &amp;#x43E;&amp;#x449;&amp;#x435; &amp;#x441;&amp;#x435; &amp;#x43D;&amp;#x430;&amp;#x440;&amp;#x438;&amp;#x447;&amp;#x430; Red-Green-Blue &amp;#x43D;&amp;#x430;&amp;#x447;&amp;#x438;&amp;#x43D; &amp;#x43D;&amp;#x430; &amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x430;.\n&amp;#xA0;\n\n
  • #91 Taskar e &amp;#x440;&amp;#x430;&amp;#x437;&amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x435;&amp;#x43D; &amp;#x447;&amp;#x440;&amp;#x435;&amp;#x437; &amp;#xA0;&amp;#x422;est Driven Development &amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x43E;&amp;#x434;&amp;#x43E;&amp;#x43B;&amp;#x43E;&amp;#x433;&amp;#x438;&amp;#x44F;&amp;#x442;&amp;#x430;, &amp;#x447;&amp;#x438;&amp;#x44F;&amp;#x442;&amp;#x43E; &amp;#x43E;&amp;#x441;&amp;#x43D;&amp;#x43E;&amp;#x432;&amp;#x43D;&amp;#x430; &amp;#x438;&amp;#x434;&amp;#x435;&amp;#x44F; &amp;#x435; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x438;&amp;#x448;&amp;#x435; &amp;#x43A;&amp;#x43E;&amp;#x434; &amp;#x432; 3 &amp;#x441;&amp;#x442;&amp;#x44A;&amp;#x43F;&amp;#x43A;&amp;#x438;:\n&amp;#x41F;&amp;#x44A;&amp;#x440;&amp;#x432;&amp;#x43E; &amp;#x441;&amp;#x435; &amp;#x434;&amp;#x43E;&amp;#x431;&amp;#x430;&amp;#x432;&amp;#x44F; &amp;#x442;&amp;#x435;&amp;#x441;&amp;#x442;, &amp;#x437;&amp;#x430; &amp;#x432;&amp;#x441;&amp;#x435; &amp;#x43E;&amp;#x449;&amp;#x435; &amp;#x43D;&amp;#x435; &amp;#x441;&amp;#x44A;&amp;#x449;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x443;&amp;#x432;&amp;#x430;&amp;#x449; &amp;#x43A;&amp;#x43E;&amp;#x434;. &amp;#x41A;&amp;#x43E;&amp;#x439;&amp;#x442;&amp;#x43E; &amp;#x442;&amp;#x440;&amp;#x44F;&amp;#x431;&amp;#x432;&amp;#x430; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43C;&amp;#x430;&amp;#x440;&amp;#x43A;&amp;#x438;&amp;#x440;&amp;#x430; &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x43D;&amp;#x435; &amp;#x443;&amp;#x441;&amp;#x43F;&amp;#x435;&amp;#x448;&amp;#x435;&amp;#x43D;\n&amp;#x421;&amp;#x43B;&amp;#x435;&amp;#x434; &amp;#x442;&amp;#x43E;&amp;#x432;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x438;&amp;#x448;&amp;#x435; &amp;#x432;&amp;#x44A;&amp;#x437;&amp;#x43C;&amp;#x43E;&amp;#x436;&amp;#x43D;&amp;#x43E; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x438;&amp;#x44F; &amp;#x43A;&amp;#x43E;&amp;#x434;, &amp;#x441; &amp;#x43A;&amp;#x43E;&amp;#x439;&amp;#x442;&amp;#x43E; &amp;#x442;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x430; &amp;#x43C;&amp;#x438;&amp;#x43D;&amp;#x430;&amp;#x432;&amp;#x430; &amp;#x443;&amp;#x441;&amp;#x43F;&amp;#x435;&amp;#x448;&amp;#x43D;&amp;#x43E;.\n&amp;#x41D;&amp;#x430;&amp;#x43A;&amp;#x440;&amp;#x430;&amp;#x44F; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x440;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x43F;&amp;#x43E;&amp;#x434;&amp;#x43E;&amp;#x431;&amp;#x440;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x44F; &amp;#x43F;&amp;#x43E; &amp;#x43A;&amp;#x43E;&amp;#x434;&amp;#x430;, &amp;#x438;&amp;#x437;&amp;#x447;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x430;&amp;#x442; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x432;&amp;#x442;&amp;#x43E;&amp;#x440;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x44F;, &amp;#x434;&amp;#x43E;&amp;#x431;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x441;&amp;#x435; &amp;#x43D;&amp;#x43E;&amp;#x432;&amp;#x438; &amp;#x442;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x43E;&amp;#x432;&amp;#x435; &amp;#x438; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438;.\n\n&amp;#x41A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x442;&amp;#x435;&amp;#x437;&amp;#x438; 3 &amp;#x441;&amp;#x442;&amp;#x44A;&amp;#x43F;&amp;#x43A;&amp;#x438; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x432;&amp;#x442;&amp;#x430;&amp;#x440;&amp;#x44F;&amp;#x442; &amp;#x43D;&amp;#x435;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x43A;&amp;#x44A;&amp;#x441;&amp;#x43D;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x432; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x446;&amp;#x435;&amp;#x441;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x440;&amp;#x430;&amp;#x437;&amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x43A;&amp;#x430;. &amp;#x41A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x446;&amp;#x44F;&amp;#x43B;&amp;#x43E; &amp;#x442;&amp;#x43E;&amp;#x437;&amp;#x438; &amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x43E;&amp;#x434; &amp;#x43D;&amp;#x430; &amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x430; &amp;#x433;&amp;#x430;&amp;#x440;&amp;#x430;&amp;#x43D;&amp;#x442;&amp;#x438;&amp;#x440;&amp;#x430; &amp;#x447;&amp;#x435; 100% &amp;#x43E;&amp;#x442; &amp;#x43A;&amp;#x43E;&amp;#x434;&amp;#x430; &amp;#x449;&amp;#x435; &amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x43A;&amp;#x440;&amp;#x438;&amp;#x442; &amp;#x441; &amp;#x430;&amp;#x432;&amp;#x442;&amp;#x43E;&amp;#x43C;&amp;#x430;&amp;#x442;&amp;#x438;&amp;#x447;&amp;#x43D;&amp;#x438; &amp;#x442;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x43E;&amp;#x432;&amp;#x435;. &amp;#x41A;&amp;#x43E;&amp;#x435;&amp;#x442;&amp;#x43E; &amp;#x433;&amp;#x43E; &amp;#x43F;&amp;#x440;&amp;#x430;&amp;#x432;&amp;#x438; &amp;#x43B;&amp;#x435;&amp;#x441;&amp;#x435;&amp;#x43D; &amp;#x437;&amp;#x430; &amp;#x43F;&amp;#x43E;&amp;#x434;&amp;#x434;&amp;#x440;&amp;#x44A;&amp;#x436;&amp;#x43A;&amp;#x430; &amp;#x438; &amp;#x441; &amp;#x43F;&amp;#x43E;--&amp;#x434;&amp;#x43E;&amp;#x431;&amp;#x44A;&amp;#x440; &amp;#x434;&amp;#x438;&amp;#x437;&amp;#x430;&amp;#x439;&amp;#x43D;. &amp;#xA0;&amp;#x422;&amp;#x43E;&amp;#x432;&amp;#x430; &amp;#x43E;&amp;#x449;&amp;#x435; &amp;#x441;&amp;#x435; &amp;#x43D;&amp;#x430;&amp;#x440;&amp;#x438;&amp;#x447;&amp;#x430; Red-Green-Blue &amp;#x43D;&amp;#x430;&amp;#x447;&amp;#x438;&amp;#x43D; &amp;#x43D;&amp;#x430; &amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x430;.\n&amp;#xA0;\n\n
  • #92 \n
  • #93 \n
  • #94 \n
  • #95 \n
  • #96 &amp;#x421;&amp;#x442;&amp;#x440;&amp;#x435;&amp;#x43C;&amp;#x435;&amp;#x436;&amp;#x44A;&amp;#x442; &amp;#x43D;&amp;#x430; Ruby &amp;#x435; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x43B;&amp;#x435;&amp;#x434;&amp;#x432;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x438;&amp;#x43D;&amp;#x446;&amp;#x438;&amp;#x43F;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x43C;&amp;#x430;&amp;#x43B;&amp;#x43A;&amp;#x430; &amp;#x438;&amp;#x437;&amp;#x43D;&amp;#x435;&amp;#x43D;&amp;#x430;&amp;#x434;&amp;#x430;. &amp;#x422;&amp;#x43E;&amp;#x432;&amp;#x430; &amp;#x43E;&amp;#x437;&amp;#x43D;&amp;#x430;&amp;#x447;&amp;#x430;&amp;#x432;&amp;#x430;, &amp;#x447;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x432;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x435;&amp;#x442;&amp;#x43E; &amp;#x43D;&amp;#x430; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x43A;&amp;#x430; &amp;#x442;&amp;#x440;&amp;#x44F;&amp;#x431;&amp;#x432;&amp;#x430; &amp;#x434;&amp;#x430; &amp;#x435; &amp;#x438;&amp;#x43D;&amp;#x442;&amp;#x443;&amp;#x438;&amp;#x442;&amp;#x438;&amp;#x432;&amp;#x43D;&amp;#x43E; &amp;#x438; &amp;#x442;&amp;#x43E;&amp;#x439; &amp;#x434;&amp;#x430; &amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x438; &amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x430;, &amp;#x43A;&amp;#x430;&amp;#x43A;&amp;#x442;&amp;#x43E; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x44A;&amp;#x442; &amp;#x431;&amp;#x438; &amp;#x43E;&amp;#x447;&amp;#x430;&amp;#x43A;&amp;#x432;&amp;#x430;&amp;#x43B;.\nRuby &amp;#x435; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;&amp;#x43D;&amp;#x43E;-&amp;#x43E;&amp;#x440;&amp;#x438;&amp;#x435;&amp;#x43D;&amp;#x442;&amp;#x438;&amp;#x440;&amp;#x430;&amp;#x43D;: &amp;#x432;&amp;#x441;&amp;#x435;&amp;#x43A;&amp;#x438; &amp;#x442;&amp;#x438;&amp;#x43F; &amp;#x434;&amp;#x430;&amp;#x43D;&amp;#x43D;&amp;#x438; &amp;#x435; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;, &amp;#x432;&amp;#x43A;&amp;#x43B;&amp;#x44E;&amp;#x447;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;, &amp;#x447;&amp;#x438;&amp;#x441;&amp;#x43B;&amp;#x430;, &amp;#x431;&amp;#x443;&amp;#x43B;&amp;#x435;&amp;#x432;&amp;#x438; &amp;#x441;&amp;#x442;&amp;#x43E;&amp;#x439;&amp;#x43D;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x438;, &amp;#x43A;&amp;#x43E;&amp;#x438;&amp;#x442;&amp;#x43E; &amp;#x432; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x433;&amp;#x43E; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x446;&amp;#x438; &amp;#x43E;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43B;&amp;#x44F;&amp;#x442; &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x43F;&amp;#x440;&amp;#x438;&amp;#x43C;&amp;#x438;&amp;#x442;&amp;#x438;&amp;#x432;&amp;#x438;, &amp;#x430; &amp;#x43D;&amp;#x435; &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x440;&amp;#x435;&amp;#x430;&amp;#x43B;&amp;#x43D;&amp;#x438; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;&amp;#x438;.\n\n&amp;#x41D;&amp;#x44F;&amp;#x43A;&amp;#x43E;&amp;#x438; &amp;#x43E;&amp;#x442; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x432;&amp;#x430;&amp;#x436;&amp;#x43D;&amp;#x438;&amp;#x442;&amp;#x435; &amp;#x445;&amp;#x430;&amp;#x440;&amp;#x430;&amp;#x43A;&amp;#x442;&amp;#x435;&amp;#x440;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x438;&amp;#x43A;&amp;#x438; &amp;#x43D;&amp;#x430; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x43A;&amp;#x430; &amp;#x441;&amp;#x430;: \n&amp;#x434;&amp;#x438;&amp;#x43C;&amp;#x438;&amp;#x447;&amp;#x43D;&amp;#x43E; &amp;#x43E;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43B;&amp;#x44F;&amp;#x43D;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x442;&amp;#x438;&amp;#x43F;&amp;#x430; &amp;#x434;&amp;#x430;&amp;#x43D;&amp;#x43D;&amp;#x438;&amp;#x442;&amp;#x435;\n&amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x443;&amp;#x43B;&amp;#x438; - &amp;#x201C;&amp;#x432;&amp;#x44A;&amp;#x437;&amp;#x43C;&amp;#x43E;&amp;#x436;&amp;#x43D;&amp;#x43E;&amp;#x441;&amp;#x442; &amp;#x435;&amp;#x434;&amp;#x438;&amp;#x43D; &amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x443;&amp;#x43B; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x432;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x436;&amp;#x434;&amp;#x430; &amp;#x432; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x436;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x43E; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;, &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x438;&amp;#x433;&amp;#x430; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x436;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x435;&amp;#x43D;&amp;#x43E; &amp;#x43D;&amp;#x430;&amp;#x441;&amp;#x43B;&amp;#x435;&amp;#x434;&amp;#x44F;&amp;#x432;&amp;#x430;&amp;#x43D;&amp;#x435;&amp;#x201D;\n&amp;#x43E;&amp;#x442;&amp;#x432;&amp;#x43E;&amp;#x440;&amp;#x435;&amp;#x43D;&amp;#x438; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435; - &amp;#x201C;&amp;#x43A;&amp;#x44A;&amp;#x43C; &amp;#x432;&amp;#x441;&amp;#x435;&amp;#x43A;&amp;#x438; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441; &amp;#x43C;&amp;#x43E;&amp;#x433;&amp;#x430;&amp;#x442; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x434;&amp;#x43E;&amp;#x431;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x43D;&amp;#x43E;&amp;#x432;&amp;#x438; &amp;#x430;&amp;#x442;&amp;#x440;&amp;#x438;&amp;#x431;&amp;#x443;&amp;#x442;&amp;#x438; &amp;#x438; &amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x43E;&amp;#x434;&amp;#x438; &amp;#x43F;&amp;#x43E; &amp;#x432;&amp;#x440;&amp;#x435;&amp;#x43C;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x438;&amp;#x437;&amp;#x43F;&amp;#x44A;&amp;#x43B;&amp;#x43D;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x430;&amp;#x442;&amp;#x430;&amp;#x201D;\n&amp;#x431;&amp;#x43B;&amp;#x43E;&amp;#x43A;&amp;#x43E;&amp;#x432;&amp;#x435;\n&amp;#x430;&amp;#x43D;&amp;#x43E;&amp;#x43D;&amp;#x438;&amp;#x43C;&amp;#x43D;&amp;#x438; &amp;#x444;&amp;#x443;&amp;#x43D;&amp;#x43A;&amp;#x446;&amp;#x438;&amp;#x438;\n&amp;#x432;&amp;#x441;&amp;#x44F;&amp;#x43A;&amp;#x430; &amp;#x43E;&amp;#x43F;&amp;#x435;&amp;#x440;&amp;#x430;&amp;#x446;&amp;#x438;&amp;#x44F; &amp;#x432;&amp;#x440;&amp;#x44A;&amp;#x449;&amp;#x430; &amp;#x440;&amp;#x435;&amp;#x437;&amp;#x443;&amp;#x43B;&amp;#x442;&amp;#x430;&amp;#x442;\n&amp;#x432;&amp;#x441;&amp;#x438;&amp;#x447;&amp;#x43A;&amp;#x43E; &amp;#x435; &amp;#x438;&amp;#x437;&amp;#x43F;&amp;#x44A;&amp;#x43B;&amp;#x43D;&amp;#x438;&amp;#x43C; &amp;#x43A;&amp;#x43E;&amp;#x434; - &amp;#x201C;&amp;#x432;&amp;#x43A;&amp;#x43B;&amp;#x44E;&amp;#x447;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E; &amp;#x438; &amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x430;&amp;#x442;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;&amp;#x442;&amp;#x435; &amp;#x432; &amp;#x43A;&amp;#x43E;&amp;#x439;&amp;#x442;&amp;#x43E; &amp;#x43C;&amp;#x43E;&amp;#x436;&amp;#x435; &amp;#x438;&amp;#x43C;&amp;#x430; &amp;#x446;&amp;#x438;&amp;#x43A;&amp;#x43B;&amp;#x438;, &amp;#x443;&amp;#x441;&amp;#x43B;&amp;#x43E;&amp;#x432;&amp;#x43D;&amp;#x438; &amp;#x43E;&amp;#x43F;&amp;#x435;&amp;#x440;&amp;#x430;&amp;#x442;&amp;#x43E;&amp;#x440;&amp;#x438; &amp;#x438; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438;&amp;#x201D;\n&amp;#x438;&amp;#x437;&amp;#x447;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x435;&amp;#x43D; &amp;#x441;&amp;#x438;&amp;#x43D;&amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x441;&amp;#x438;&amp;#x441; - &amp;#x201C;&amp;#x43D;&amp;#x435; &amp;#x435; &amp;#x437;&amp;#x430;&amp;#x434;&amp;#x44A;&amp;#x43B;&amp;#x436;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E;, &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x441;&amp;#x43A;&amp;#x43E;&amp;#x431;&amp;#x438;, &amp;#x442;&amp;#x43E;&amp;#x447;&amp;#x43A;&amp;#x430; &amp;#x438; &amp;#x437;&amp;#x430;&amp;#x43F;&amp;#x435;&amp;#x442;&amp;#x430;&amp;#x44F; &amp;#x438; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438;&amp;#x201D;\n&amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x438;&amp;#x440;&amp;#x430;&amp;#x43D;&amp;#x435;\n&amp;#xA0;\n\n
  • #97 &amp;#x421;&amp;#x442;&amp;#x440;&amp;#x435;&amp;#x43C;&amp;#x435;&amp;#x436;&amp;#x44A;&amp;#x442; &amp;#x43D;&amp;#x430; Ruby &amp;#x435; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x43B;&amp;#x435;&amp;#x434;&amp;#x432;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x438;&amp;#x43D;&amp;#x446;&amp;#x438;&amp;#x43F;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x43C;&amp;#x430;&amp;#x43B;&amp;#x43A;&amp;#x430; &amp;#x438;&amp;#x437;&amp;#x43D;&amp;#x435;&amp;#x43D;&amp;#x430;&amp;#x434;&amp;#x430;. &amp;#x422;&amp;#x43E;&amp;#x432;&amp;#x430; &amp;#x43E;&amp;#x437;&amp;#x43D;&amp;#x430;&amp;#x447;&amp;#x430;&amp;#x432;&amp;#x430;, &amp;#x447;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x432;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x435;&amp;#x442;&amp;#x43E; &amp;#x43D;&amp;#x430; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x43A;&amp;#x430; &amp;#x442;&amp;#x440;&amp;#x44F;&amp;#x431;&amp;#x432;&amp;#x430; &amp;#x434;&amp;#x430; &amp;#x435; &amp;#x438;&amp;#x43D;&amp;#x442;&amp;#x443;&amp;#x438;&amp;#x442;&amp;#x438;&amp;#x432;&amp;#x43D;&amp;#x43E; &amp;#x438; &amp;#x442;&amp;#x43E;&amp;#x439; &amp;#x434;&amp;#x430; &amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x438; &amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x430;, &amp;#x43A;&amp;#x430;&amp;#x43A;&amp;#x442;&amp;#x43E; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x44A;&amp;#x442; &amp;#x431;&amp;#x438; &amp;#x43E;&amp;#x447;&amp;#x430;&amp;#x43A;&amp;#x432;&amp;#x430;&amp;#x43B;.\nRuby &amp;#x435; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;&amp;#x43D;&amp;#x43E;-&amp;#x43E;&amp;#x440;&amp;#x438;&amp;#x435;&amp;#x43D;&amp;#x442;&amp;#x438;&amp;#x440;&amp;#x430;&amp;#x43D;: &amp;#x432;&amp;#x441;&amp;#x435;&amp;#x43A;&amp;#x438; &amp;#x442;&amp;#x438;&amp;#x43F; &amp;#x434;&amp;#x430;&amp;#x43D;&amp;#x43D;&amp;#x438; &amp;#x435; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;, &amp;#x432;&amp;#x43A;&amp;#x43B;&amp;#x44E;&amp;#x447;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;, &amp;#x447;&amp;#x438;&amp;#x441;&amp;#x43B;&amp;#x430;, &amp;#x431;&amp;#x443;&amp;#x43B;&amp;#x435;&amp;#x432;&amp;#x438; &amp;#x441;&amp;#x442;&amp;#x43E;&amp;#x439;&amp;#x43D;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x438;, &amp;#x43A;&amp;#x43E;&amp;#x438;&amp;#x442;&amp;#x43E; &amp;#x432; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x433;&amp;#x43E; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x446;&amp;#x438; &amp;#x43E;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43B;&amp;#x44F;&amp;#x442; &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x43F;&amp;#x440;&amp;#x438;&amp;#x43C;&amp;#x438;&amp;#x442;&amp;#x438;&amp;#x432;&amp;#x438;, &amp;#x430; &amp;#x43D;&amp;#x435; &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x440;&amp;#x435;&amp;#x430;&amp;#x43B;&amp;#x43D;&amp;#x438; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;&amp;#x438;.\n\n&amp;#x41D;&amp;#x44F;&amp;#x43A;&amp;#x43E;&amp;#x438; &amp;#x43E;&amp;#x442; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x432;&amp;#x430;&amp;#x436;&amp;#x43D;&amp;#x438;&amp;#x442;&amp;#x435; &amp;#x445;&amp;#x430;&amp;#x440;&amp;#x430;&amp;#x43A;&amp;#x442;&amp;#x435;&amp;#x440;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x438;&amp;#x43A;&amp;#x438; &amp;#x43D;&amp;#x430; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x43A;&amp;#x430; &amp;#x441;&amp;#x430;: \n&amp;#x434;&amp;#x438;&amp;#x43C;&amp;#x438;&amp;#x447;&amp;#x43D;&amp;#x43E; &amp;#x43E;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43B;&amp;#x44F;&amp;#x43D;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x442;&amp;#x438;&amp;#x43F;&amp;#x430; &amp;#x434;&amp;#x430;&amp;#x43D;&amp;#x43D;&amp;#x438;&amp;#x442;&amp;#x435;\n&amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x443;&amp;#x43B;&amp;#x438; - &amp;#x201C;&amp;#x432;&amp;#x44A;&amp;#x437;&amp;#x43C;&amp;#x43E;&amp;#x436;&amp;#x43D;&amp;#x43E;&amp;#x441;&amp;#x442; &amp;#x435;&amp;#x434;&amp;#x438;&amp;#x43D; &amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x443;&amp;#x43B; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x432;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x436;&amp;#x434;&amp;#x430; &amp;#x432; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x436;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x43E; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;, &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x438;&amp;#x433;&amp;#x430; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x436;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x435;&amp;#x43D;&amp;#x43E; &amp;#x43D;&amp;#x430;&amp;#x441;&amp;#x43B;&amp;#x435;&amp;#x434;&amp;#x44F;&amp;#x432;&amp;#x430;&amp;#x43D;&amp;#x435;&amp;#x201D;\n&amp;#x43E;&amp;#x442;&amp;#x432;&amp;#x43E;&amp;#x440;&amp;#x435;&amp;#x43D;&amp;#x438; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435; - &amp;#x201C;&amp;#x43A;&amp;#x44A;&amp;#x43C; &amp;#x432;&amp;#x441;&amp;#x435;&amp;#x43A;&amp;#x438; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441; &amp;#x43C;&amp;#x43E;&amp;#x433;&amp;#x430;&amp;#x442; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x434;&amp;#x43E;&amp;#x431;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x43D;&amp;#x43E;&amp;#x432;&amp;#x438; &amp;#x430;&amp;#x442;&amp;#x440;&amp;#x438;&amp;#x431;&amp;#x443;&amp;#x442;&amp;#x438; &amp;#x438; &amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x43E;&amp;#x434;&amp;#x438; &amp;#x43F;&amp;#x43E; &amp;#x432;&amp;#x440;&amp;#x435;&amp;#x43C;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x438;&amp;#x437;&amp;#x43F;&amp;#x44A;&amp;#x43B;&amp;#x43D;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x430;&amp;#x442;&amp;#x430;&amp;#x201D;\n&amp;#x431;&amp;#x43B;&amp;#x43E;&amp;#x43A;&amp;#x43E;&amp;#x432;&amp;#x435;\n&amp;#x430;&amp;#x43D;&amp;#x43E;&amp;#x43D;&amp;#x438;&amp;#x43C;&amp;#x43D;&amp;#x438; &amp;#x444;&amp;#x443;&amp;#x43D;&amp;#x43A;&amp;#x446;&amp;#x438;&amp;#x438;\n&amp;#x432;&amp;#x441;&amp;#x44F;&amp;#x43A;&amp;#x430; &amp;#x43E;&amp;#x43F;&amp;#x435;&amp;#x440;&amp;#x430;&amp;#x446;&amp;#x438;&amp;#x44F; &amp;#x432;&amp;#x440;&amp;#x44A;&amp;#x449;&amp;#x430; &amp;#x440;&amp;#x435;&amp;#x437;&amp;#x443;&amp;#x43B;&amp;#x442;&amp;#x430;&amp;#x442;\n&amp;#x432;&amp;#x441;&amp;#x438;&amp;#x447;&amp;#x43A;&amp;#x43E; &amp;#x435; &amp;#x438;&amp;#x437;&amp;#x43F;&amp;#x44A;&amp;#x43B;&amp;#x43D;&amp;#x438;&amp;#x43C; &amp;#x43A;&amp;#x43E;&amp;#x434; - &amp;#x201C;&amp;#x432;&amp;#x43A;&amp;#x43B;&amp;#x44E;&amp;#x447;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E; &amp;#x438; &amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x430;&amp;#x442;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;&amp;#x442;&amp;#x435; &amp;#x432; &amp;#x43A;&amp;#x43E;&amp;#x439;&amp;#x442;&amp;#x43E; &amp;#x43C;&amp;#x43E;&amp;#x436;&amp;#x435; &amp;#x438;&amp;#x43C;&amp;#x430; &amp;#x446;&amp;#x438;&amp;#x43A;&amp;#x43B;&amp;#x438;, &amp;#x443;&amp;#x441;&amp;#x43B;&amp;#x43E;&amp;#x432;&amp;#x43D;&amp;#x438; &amp;#x43E;&amp;#x43F;&amp;#x435;&amp;#x440;&amp;#x430;&amp;#x442;&amp;#x43E;&amp;#x440;&amp;#x438; &amp;#x438; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438;&amp;#x201D;\n&amp;#x438;&amp;#x437;&amp;#x447;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x435;&amp;#x43D; &amp;#x441;&amp;#x438;&amp;#x43D;&amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x441;&amp;#x438;&amp;#x441; - &amp;#x201C;&amp;#x43D;&amp;#x435; &amp;#x435; &amp;#x437;&amp;#x430;&amp;#x434;&amp;#x44A;&amp;#x43B;&amp;#x436;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E;, &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x441;&amp;#x43A;&amp;#x43E;&amp;#x431;&amp;#x438;, &amp;#x442;&amp;#x43E;&amp;#x447;&amp;#x43A;&amp;#x430; &amp;#x438; &amp;#x437;&amp;#x430;&amp;#x43F;&amp;#x435;&amp;#x442;&amp;#x430;&amp;#x44F; &amp;#x438; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438;&amp;#x201D;\n&amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x438;&amp;#x440;&amp;#x430;&amp;#x43D;&amp;#x435;\n&amp;#xA0;\n\n
  • #98 &amp;#x421;&amp;#x442;&amp;#x440;&amp;#x435;&amp;#x43C;&amp;#x435;&amp;#x436;&amp;#x44A;&amp;#x442; &amp;#x43D;&amp;#x430; Ruby &amp;#x435; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x43B;&amp;#x435;&amp;#x434;&amp;#x432;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x438;&amp;#x43D;&amp;#x446;&amp;#x438;&amp;#x43F;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x43C;&amp;#x430;&amp;#x43B;&amp;#x43A;&amp;#x430; &amp;#x438;&amp;#x437;&amp;#x43D;&amp;#x435;&amp;#x43D;&amp;#x430;&amp;#x434;&amp;#x430;. &amp;#x422;&amp;#x43E;&amp;#x432;&amp;#x430; &amp;#x43E;&amp;#x437;&amp;#x43D;&amp;#x430;&amp;#x447;&amp;#x430;&amp;#x432;&amp;#x430;, &amp;#x447;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x432;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x435;&amp;#x442;&amp;#x43E; &amp;#x43D;&amp;#x430; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x43A;&amp;#x430; &amp;#x442;&amp;#x440;&amp;#x44F;&amp;#x431;&amp;#x432;&amp;#x430; &amp;#x434;&amp;#x430; &amp;#x435; &amp;#x438;&amp;#x43D;&amp;#x442;&amp;#x443;&amp;#x438;&amp;#x442;&amp;#x438;&amp;#x432;&amp;#x43D;&amp;#x43E; &amp;#x438; &amp;#x442;&amp;#x43E;&amp;#x439; &amp;#x434;&amp;#x430; &amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x438; &amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x430;, &amp;#x43A;&amp;#x430;&amp;#x43A;&amp;#x442;&amp;#x43E; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x44A;&amp;#x442; &amp;#x431;&amp;#x438; &amp;#x43E;&amp;#x447;&amp;#x430;&amp;#x43A;&amp;#x432;&amp;#x430;&amp;#x43B;.\nRuby &amp;#x435; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;&amp;#x43D;&amp;#x43E;-&amp;#x43E;&amp;#x440;&amp;#x438;&amp;#x435;&amp;#x43D;&amp;#x442;&amp;#x438;&amp;#x440;&amp;#x430;&amp;#x43D;: &amp;#x432;&amp;#x441;&amp;#x435;&amp;#x43A;&amp;#x438; &amp;#x442;&amp;#x438;&amp;#x43F; &amp;#x434;&amp;#x430;&amp;#x43D;&amp;#x43D;&amp;#x438; &amp;#x435; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;, &amp;#x432;&amp;#x43A;&amp;#x43B;&amp;#x44E;&amp;#x447;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;, &amp;#x447;&amp;#x438;&amp;#x441;&amp;#x43B;&amp;#x430;, &amp;#x431;&amp;#x443;&amp;#x43B;&amp;#x435;&amp;#x432;&amp;#x438; &amp;#x441;&amp;#x442;&amp;#x43E;&amp;#x439;&amp;#x43D;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x438;, &amp;#x43A;&amp;#x43E;&amp;#x438;&amp;#x442;&amp;#x43E; &amp;#x432; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x433;&amp;#x43E; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x446;&amp;#x438; &amp;#x43E;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43B;&amp;#x44F;&amp;#x442; &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x43F;&amp;#x440;&amp;#x438;&amp;#x43C;&amp;#x438;&amp;#x442;&amp;#x438;&amp;#x432;&amp;#x438;, &amp;#x430; &amp;#x43D;&amp;#x435; &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x440;&amp;#x435;&amp;#x430;&amp;#x43B;&amp;#x43D;&amp;#x438; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;&amp;#x438;.\n\n&amp;#x41D;&amp;#x44F;&amp;#x43A;&amp;#x43E;&amp;#x438; &amp;#x43E;&amp;#x442; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x432;&amp;#x430;&amp;#x436;&amp;#x43D;&amp;#x438;&amp;#x442;&amp;#x435; &amp;#x445;&amp;#x430;&amp;#x440;&amp;#x430;&amp;#x43A;&amp;#x442;&amp;#x435;&amp;#x440;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x438;&amp;#x43A;&amp;#x438; &amp;#x43D;&amp;#x430; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x43A;&amp;#x430; &amp;#x441;&amp;#x430;: \n&amp;#x434;&amp;#x438;&amp;#x43C;&amp;#x438;&amp;#x447;&amp;#x43D;&amp;#x43E; &amp;#x43E;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43B;&amp;#x44F;&amp;#x43D;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x442;&amp;#x438;&amp;#x43F;&amp;#x430; &amp;#x434;&amp;#x430;&amp;#x43D;&amp;#x43D;&amp;#x438;&amp;#x442;&amp;#x435;\n&amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x443;&amp;#x43B;&amp;#x438; - &amp;#x201C;&amp;#x432;&amp;#x44A;&amp;#x437;&amp;#x43C;&amp;#x43E;&amp;#x436;&amp;#x43D;&amp;#x43E;&amp;#x441;&amp;#x442; &amp;#x435;&amp;#x434;&amp;#x438;&amp;#x43D; &amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x443;&amp;#x43B; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x432;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x436;&amp;#x434;&amp;#x430; &amp;#x432; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x436;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x43E; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;, &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x438;&amp;#x433;&amp;#x430; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x436;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x435;&amp;#x43D;&amp;#x43E; &amp;#x43D;&amp;#x430;&amp;#x441;&amp;#x43B;&amp;#x435;&amp;#x434;&amp;#x44F;&amp;#x432;&amp;#x430;&amp;#x43D;&amp;#x435;&amp;#x201D;\n&amp;#x43E;&amp;#x442;&amp;#x432;&amp;#x43E;&amp;#x440;&amp;#x435;&amp;#x43D;&amp;#x438; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435; - &amp;#x201C;&amp;#x43A;&amp;#x44A;&amp;#x43C; &amp;#x432;&amp;#x441;&amp;#x435;&amp;#x43A;&amp;#x438; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441; &amp;#x43C;&amp;#x43E;&amp;#x433;&amp;#x430;&amp;#x442; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x434;&amp;#x43E;&amp;#x431;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x43D;&amp;#x43E;&amp;#x432;&amp;#x438; &amp;#x430;&amp;#x442;&amp;#x440;&amp;#x438;&amp;#x431;&amp;#x443;&amp;#x442;&amp;#x438; &amp;#x438; &amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x43E;&amp;#x434;&amp;#x438; &amp;#x43F;&amp;#x43E; &amp;#x432;&amp;#x440;&amp;#x435;&amp;#x43C;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x438;&amp;#x437;&amp;#x43F;&amp;#x44A;&amp;#x43B;&amp;#x43D;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x430;&amp;#x442;&amp;#x430;&amp;#x201D;\n&amp;#x431;&amp;#x43B;&amp;#x43E;&amp;#x43A;&amp;#x43E;&amp;#x432;&amp;#x435;\n&amp;#x430;&amp;#x43D;&amp;#x43E;&amp;#x43D;&amp;#x438;&amp;#x43C;&amp;#x43D;&amp;#x438; &amp;#x444;&amp;#x443;&amp;#x43D;&amp;#x43A;&amp;#x446;&amp;#x438;&amp;#x438;\n&amp;#x432;&amp;#x441;&amp;#x44F;&amp;#x43A;&amp;#x430; &amp;#x43E;&amp;#x43F;&amp;#x435;&amp;#x440;&amp;#x430;&amp;#x446;&amp;#x438;&amp;#x44F; &amp;#x432;&amp;#x440;&amp;#x44A;&amp;#x449;&amp;#x430; &amp;#x440;&amp;#x435;&amp;#x437;&amp;#x443;&amp;#x43B;&amp;#x442;&amp;#x430;&amp;#x442;\n&amp;#x432;&amp;#x441;&amp;#x438;&amp;#x447;&amp;#x43A;&amp;#x43E; &amp;#x435; &amp;#x438;&amp;#x437;&amp;#x43F;&amp;#x44A;&amp;#x43B;&amp;#x43D;&amp;#x438;&amp;#x43C; &amp;#x43A;&amp;#x43E;&amp;#x434; - &amp;#x201C;&amp;#x432;&amp;#x43A;&amp;#x43B;&amp;#x44E;&amp;#x447;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E; &amp;#x438; &amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x430;&amp;#x442;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;&amp;#x442;&amp;#x435; &amp;#x432; &amp;#x43A;&amp;#x43E;&amp;#x439;&amp;#x442;&amp;#x43E; &amp;#x43C;&amp;#x43E;&amp;#x436;&amp;#x435; &amp;#x438;&amp;#x43C;&amp;#x430; &amp;#x446;&amp;#x438;&amp;#x43A;&amp;#x43B;&amp;#x438;, &amp;#x443;&amp;#x441;&amp;#x43B;&amp;#x43E;&amp;#x432;&amp;#x43D;&amp;#x438; &amp;#x43E;&amp;#x43F;&amp;#x435;&amp;#x440;&amp;#x430;&amp;#x442;&amp;#x43E;&amp;#x440;&amp;#x438; &amp;#x438; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438;&amp;#x201D;\n&amp;#x438;&amp;#x437;&amp;#x447;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x435;&amp;#x43D; &amp;#x441;&amp;#x438;&amp;#x43D;&amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x441;&amp;#x438;&amp;#x441; - &amp;#x201C;&amp;#x43D;&amp;#x435; &amp;#x435; &amp;#x437;&amp;#x430;&amp;#x434;&amp;#x44A;&amp;#x43B;&amp;#x436;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E;, &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x441;&amp;#x43A;&amp;#x43E;&amp;#x431;&amp;#x438;, &amp;#x442;&amp;#x43E;&amp;#x447;&amp;#x43A;&amp;#x430; &amp;#x438; &amp;#x437;&amp;#x430;&amp;#x43F;&amp;#x435;&amp;#x442;&amp;#x430;&amp;#x44F; &amp;#x438; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438;&amp;#x201D;\n&amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x438;&amp;#x440;&amp;#x430;&amp;#x43D;&amp;#x435;\n&amp;#xA0;\n\n
  • #99 &amp;#x421;&amp;#x442;&amp;#x440;&amp;#x435;&amp;#x43C;&amp;#x435;&amp;#x436;&amp;#x44A;&amp;#x442; &amp;#x43D;&amp;#x430; Ruby &amp;#x435; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x43B;&amp;#x435;&amp;#x434;&amp;#x432;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x438;&amp;#x43D;&amp;#x446;&amp;#x438;&amp;#x43F;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x43C;&amp;#x430;&amp;#x43B;&amp;#x43A;&amp;#x430; &amp;#x438;&amp;#x437;&amp;#x43D;&amp;#x435;&amp;#x43D;&amp;#x430;&amp;#x434;&amp;#x430;. &amp;#x422;&amp;#x43E;&amp;#x432;&amp;#x430; &amp;#x43E;&amp;#x437;&amp;#x43D;&amp;#x430;&amp;#x447;&amp;#x430;&amp;#x432;&amp;#x430;, &amp;#x447;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x432;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x435;&amp;#x442;&amp;#x43E; &amp;#x43D;&amp;#x430; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x43A;&amp;#x430; &amp;#x442;&amp;#x440;&amp;#x44F;&amp;#x431;&amp;#x432;&amp;#x430; &amp;#x434;&amp;#x430; &amp;#x435; &amp;#x438;&amp;#x43D;&amp;#x442;&amp;#x443;&amp;#x438;&amp;#x442;&amp;#x438;&amp;#x432;&amp;#x43D;&amp;#x43E; &amp;#x438; &amp;#x442;&amp;#x43E;&amp;#x439; &amp;#x434;&amp;#x430; &amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x438; &amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x430;, &amp;#x43A;&amp;#x430;&amp;#x43A;&amp;#x442;&amp;#x43E; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x44A;&amp;#x442; &amp;#x431;&amp;#x438; &amp;#x43E;&amp;#x447;&amp;#x430;&amp;#x43A;&amp;#x432;&amp;#x430;&amp;#x43B;.\nRuby &amp;#x435; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;&amp;#x43D;&amp;#x43E;-&amp;#x43E;&amp;#x440;&amp;#x438;&amp;#x435;&amp;#x43D;&amp;#x442;&amp;#x438;&amp;#x440;&amp;#x430;&amp;#x43D;: &amp;#x432;&amp;#x441;&amp;#x435;&amp;#x43A;&amp;#x438; &amp;#x442;&amp;#x438;&amp;#x43F; &amp;#x434;&amp;#x430;&amp;#x43D;&amp;#x43D;&amp;#x438; &amp;#x435; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;, &amp;#x432;&amp;#x43A;&amp;#x43B;&amp;#x44E;&amp;#x447;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;, &amp;#x447;&amp;#x438;&amp;#x441;&amp;#x43B;&amp;#x430;, &amp;#x431;&amp;#x443;&amp;#x43B;&amp;#x435;&amp;#x432;&amp;#x438; &amp;#x441;&amp;#x442;&amp;#x43E;&amp;#x439;&amp;#x43D;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x438;, &amp;#x43A;&amp;#x43E;&amp;#x438;&amp;#x442;&amp;#x43E; &amp;#x432; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x433;&amp;#x43E; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x446;&amp;#x438; &amp;#x43E;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43B;&amp;#x44F;&amp;#x442; &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x43F;&amp;#x440;&amp;#x438;&amp;#x43C;&amp;#x438;&amp;#x442;&amp;#x438;&amp;#x432;&amp;#x438;, &amp;#x430; &amp;#x43D;&amp;#x435; &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x440;&amp;#x435;&amp;#x430;&amp;#x43B;&amp;#x43D;&amp;#x438; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;&amp;#x438;.\n\n&amp;#x41D;&amp;#x44F;&amp;#x43A;&amp;#x43E;&amp;#x438; &amp;#x43E;&amp;#x442; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x432;&amp;#x430;&amp;#x436;&amp;#x43D;&amp;#x438;&amp;#x442;&amp;#x435; &amp;#x445;&amp;#x430;&amp;#x440;&amp;#x430;&amp;#x43A;&amp;#x442;&amp;#x435;&amp;#x440;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x438;&amp;#x43A;&amp;#x438; &amp;#x43D;&amp;#x430; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x43A;&amp;#x430; &amp;#x441;&amp;#x430;: \n&amp;#x434;&amp;#x438;&amp;#x43C;&amp;#x438;&amp;#x447;&amp;#x43D;&amp;#x43E; &amp;#x43E;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43B;&amp;#x44F;&amp;#x43D;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x442;&amp;#x438;&amp;#x43F;&amp;#x430; &amp;#x434;&amp;#x430;&amp;#x43D;&amp;#x43D;&amp;#x438;&amp;#x442;&amp;#x435;\n&amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x443;&amp;#x43B;&amp;#x438; - &amp;#x201C;&amp;#x432;&amp;#x44A;&amp;#x437;&amp;#x43C;&amp;#x43E;&amp;#x436;&amp;#x43D;&amp;#x43E;&amp;#x441;&amp;#x442; &amp;#x435;&amp;#x434;&amp;#x438;&amp;#x43D; &amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x443;&amp;#x43B; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x432;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x436;&amp;#x434;&amp;#x430; &amp;#x432; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x436;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x43E; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;, &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x438;&amp;#x433;&amp;#x430; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x436;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x435;&amp;#x43D;&amp;#x43E; &amp;#x43D;&amp;#x430;&amp;#x441;&amp;#x43B;&amp;#x435;&amp;#x434;&amp;#x44F;&amp;#x432;&amp;#x430;&amp;#x43D;&amp;#x435;&amp;#x201D;\n&amp;#x43E;&amp;#x442;&amp;#x432;&amp;#x43E;&amp;#x440;&amp;#x435;&amp;#x43D;&amp;#x438; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435; - &amp;#x201C;&amp;#x43A;&amp;#x44A;&amp;#x43C; &amp;#x432;&amp;#x441;&amp;#x435;&amp;#x43A;&amp;#x438; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441; &amp;#x43C;&amp;#x43E;&amp;#x433;&amp;#x430;&amp;#x442; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x434;&amp;#x43E;&amp;#x431;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x43D;&amp;#x43E;&amp;#x432;&amp;#x438; &amp;#x430;&amp;#x442;&amp;#x440;&amp;#x438;&amp;#x431;&amp;#x443;&amp;#x442;&amp;#x438; &amp;#x438; &amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x43E;&amp;#x434;&amp;#x438; &amp;#x43F;&amp;#x43E; &amp;#x432;&amp;#x440;&amp;#x435;&amp;#x43C;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x438;&amp;#x437;&amp;#x43F;&amp;#x44A;&amp;#x43B;&amp;#x43D;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x430;&amp;#x442;&amp;#x430;&amp;#x201D;\n&amp;#x431;&amp;#x43B;&amp;#x43E;&amp;#x43A;&amp;#x43E;&amp;#x432;&amp;#x435;\n&amp;#x430;&amp;#x43D;&amp;#x43E;&amp;#x43D;&amp;#x438;&amp;#x43C;&amp;#x43D;&amp;#x438; &amp;#x444;&amp;#x443;&amp;#x43D;&amp;#x43A;&amp;#x446;&amp;#x438;&amp;#x438;\n&amp;#x432;&amp;#x441;&amp;#x44F;&amp;#x43A;&amp;#x430; &amp;#x43E;&amp;#x43F;&amp;#x435;&amp;#x440;&amp;#x430;&amp;#x446;&amp;#x438;&amp;#x44F; &amp;#x432;&amp;#x440;&amp;#x44A;&amp;#x449;&amp;#x430; &amp;#x440;&amp;#x435;&amp;#x437;&amp;#x443;&amp;#x43B;&amp;#x442;&amp;#x430;&amp;#x442;\n&amp;#x432;&amp;#x441;&amp;#x438;&amp;#x447;&amp;#x43A;&amp;#x43E; &amp;#x435; &amp;#x438;&amp;#x437;&amp;#x43F;&amp;#x44A;&amp;#x43B;&amp;#x43D;&amp;#x438;&amp;#x43C; &amp;#x43A;&amp;#x43E;&amp;#x434; - &amp;#x201C;&amp;#x432;&amp;#x43A;&amp;#x43B;&amp;#x44E;&amp;#x447;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E; &amp;#x438; &amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x430;&amp;#x442;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;&amp;#x442;&amp;#x435; &amp;#x432; &amp;#x43A;&amp;#x43E;&amp;#x439;&amp;#x442;&amp;#x43E; &amp;#x43C;&amp;#x43E;&amp;#x436;&amp;#x435; &amp;#x438;&amp;#x43C;&amp;#x430; &amp;#x446;&amp;#x438;&amp;#x43A;&amp;#x43B;&amp;#x438;, &amp;#x443;&amp;#x441;&amp;#x43B;&amp;#x43E;&amp;#x432;&amp;#x43D;&amp;#x438; &amp;#x43E;&amp;#x43F;&amp;#x435;&amp;#x440;&amp;#x430;&amp;#x442;&amp;#x43E;&amp;#x440;&amp;#x438; &amp;#x438; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438;&amp;#x201D;\n&amp;#x438;&amp;#x437;&amp;#x447;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x435;&amp;#x43D; &amp;#x441;&amp;#x438;&amp;#x43D;&amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x441;&amp;#x438;&amp;#x441; - &amp;#x201C;&amp;#x43D;&amp;#x435; &amp;#x435; &amp;#x437;&amp;#x430;&amp;#x434;&amp;#x44A;&amp;#x43B;&amp;#x436;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E;, &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x441;&amp;#x43A;&amp;#x43E;&amp;#x431;&amp;#x438;, &amp;#x442;&amp;#x43E;&amp;#x447;&amp;#x43A;&amp;#x430; &amp;#x438; &amp;#x437;&amp;#x430;&amp;#x43F;&amp;#x435;&amp;#x442;&amp;#x430;&amp;#x44F; &amp;#x438; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438;&amp;#x201D;\n&amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x438;&amp;#x440;&amp;#x430;&amp;#x43D;&amp;#x435;\n&amp;#xA0;\n\n
  • #100 &amp;#x421;&amp;#x442;&amp;#x440;&amp;#x435;&amp;#x43C;&amp;#x435;&amp;#x436;&amp;#x44A;&amp;#x442; &amp;#x43D;&amp;#x430; Ruby &amp;#x435; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x43B;&amp;#x435;&amp;#x434;&amp;#x432;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x438;&amp;#x43D;&amp;#x446;&amp;#x438;&amp;#x43F;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x43C;&amp;#x430;&amp;#x43B;&amp;#x43A;&amp;#x430; &amp;#x438;&amp;#x437;&amp;#x43D;&amp;#x435;&amp;#x43D;&amp;#x430;&amp;#x434;&amp;#x430;. &amp;#x422;&amp;#x43E;&amp;#x432;&amp;#x430; &amp;#x43E;&amp;#x437;&amp;#x43D;&amp;#x430;&amp;#x447;&amp;#x430;&amp;#x432;&amp;#x430;, &amp;#x447;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x432;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x435;&amp;#x442;&amp;#x43E; &amp;#x43D;&amp;#x430; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x43A;&amp;#x430; &amp;#x442;&amp;#x440;&amp;#x44F;&amp;#x431;&amp;#x432;&amp;#x430; &amp;#x434;&amp;#x430; &amp;#x435; &amp;#x438;&amp;#x43D;&amp;#x442;&amp;#x443;&amp;#x438;&amp;#x442;&amp;#x438;&amp;#x432;&amp;#x43D;&amp;#x43E; &amp;#x438; &amp;#x442;&amp;#x43E;&amp;#x439; &amp;#x434;&amp;#x430; &amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x438; &amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x430;, &amp;#x43A;&amp;#x430;&amp;#x43A;&amp;#x442;&amp;#x43E; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x44A;&amp;#x442; &amp;#x431;&amp;#x438; &amp;#x43E;&amp;#x447;&amp;#x430;&amp;#x43A;&amp;#x432;&amp;#x430;&amp;#x43B;.\nRuby &amp;#x435; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;&amp;#x43D;&amp;#x43E;-&amp;#x43E;&amp;#x440;&amp;#x438;&amp;#x435;&amp;#x43D;&amp;#x442;&amp;#x438;&amp;#x440;&amp;#x430;&amp;#x43D;: &amp;#x432;&amp;#x441;&amp;#x435;&amp;#x43A;&amp;#x438; &amp;#x442;&amp;#x438;&amp;#x43F; &amp;#x434;&amp;#x430;&amp;#x43D;&amp;#x43D;&amp;#x438; &amp;#x435; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;, &amp;#x432;&amp;#x43A;&amp;#x43B;&amp;#x44E;&amp;#x447;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;, &amp;#x447;&amp;#x438;&amp;#x441;&amp;#x43B;&amp;#x430;, &amp;#x431;&amp;#x443;&amp;#x43B;&amp;#x435;&amp;#x432;&amp;#x438; &amp;#x441;&amp;#x442;&amp;#x43E;&amp;#x439;&amp;#x43D;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x438;, &amp;#x43A;&amp;#x43E;&amp;#x438;&amp;#x442;&amp;#x43E; &amp;#x432; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x433;&amp;#x43E; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x446;&amp;#x438; &amp;#x43E;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43B;&amp;#x44F;&amp;#x442; &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x43F;&amp;#x440;&amp;#x438;&amp;#x43C;&amp;#x438;&amp;#x442;&amp;#x438;&amp;#x432;&amp;#x438;, &amp;#x430; &amp;#x43D;&amp;#x435; &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x440;&amp;#x435;&amp;#x430;&amp;#x43B;&amp;#x43D;&amp;#x438; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;&amp;#x438;.\n\n&amp;#x41D;&amp;#x44F;&amp;#x43A;&amp;#x43E;&amp;#x438; &amp;#x43E;&amp;#x442; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x432;&amp;#x430;&amp;#x436;&amp;#x43D;&amp;#x438;&amp;#x442;&amp;#x435; &amp;#x445;&amp;#x430;&amp;#x440;&amp;#x430;&amp;#x43A;&amp;#x442;&amp;#x435;&amp;#x440;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x438;&amp;#x43A;&amp;#x438; &amp;#x43D;&amp;#x430; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x43A;&amp;#x430; &amp;#x441;&amp;#x430;: \n&amp;#x434;&amp;#x438;&amp;#x43C;&amp;#x438;&amp;#x447;&amp;#x43D;&amp;#x43E; &amp;#x43E;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43B;&amp;#x44F;&amp;#x43D;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x442;&amp;#x438;&amp;#x43F;&amp;#x430; &amp;#x434;&amp;#x430;&amp;#x43D;&amp;#x43D;&amp;#x438;&amp;#x442;&amp;#x435;\n&amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x443;&amp;#x43B;&amp;#x438; - &amp;#x201C;&amp;#x432;&amp;#x44A;&amp;#x437;&amp;#x43C;&amp;#x43E;&amp;#x436;&amp;#x43D;&amp;#x43E;&amp;#x441;&amp;#x442; &amp;#x435;&amp;#x434;&amp;#x438;&amp;#x43D; &amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x443;&amp;#x43B; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x432;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x436;&amp;#x434;&amp;#x430; &amp;#x432; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x436;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x43E; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;, &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x438;&amp;#x433;&amp;#x430; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x436;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x435;&amp;#x43D;&amp;#x43E; &amp;#x43D;&amp;#x430;&amp;#x441;&amp;#x43B;&amp;#x435;&amp;#x434;&amp;#x44F;&amp;#x432;&amp;#x430;&amp;#x43D;&amp;#x435;&amp;#x201D;\n&amp;#x43E;&amp;#x442;&amp;#x432;&amp;#x43E;&amp;#x440;&amp;#x435;&amp;#x43D;&amp;#x438; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435; - &amp;#x201C;&amp;#x43A;&amp;#x44A;&amp;#x43C; &amp;#x432;&amp;#x441;&amp;#x435;&amp;#x43A;&amp;#x438; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441; &amp;#x43C;&amp;#x43E;&amp;#x433;&amp;#x430;&amp;#x442; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x434;&amp;#x43E;&amp;#x431;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x43D;&amp;#x43E;&amp;#x432;&amp;#x438; &amp;#x430;&amp;#x442;&amp;#x440;&amp;#x438;&amp;#x431;&amp;#x443;&amp;#x442;&amp;#x438; &amp;#x438; &amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x43E;&amp;#x434;&amp;#x438; &amp;#x43F;&amp;#x43E; &amp;#x432;&amp;#x440;&amp;#x435;&amp;#x43C;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x438;&amp;#x437;&amp;#x43F;&amp;#x44A;&amp;#x43B;&amp;#x43D;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x430;&amp;#x442;&amp;#x430;&amp;#x201D;\n&amp;#x431;&amp;#x43B;&amp;#x43E;&amp;#x43A;&amp;#x43E;&amp;#x432;&amp;#x435;\n&amp;#x430;&amp;#x43D;&amp;#x43E;&amp;#x43D;&amp;#x438;&amp;#x43C;&amp;#x43D;&amp;#x438; &amp;#x444;&amp;#x443;&amp;#x43D;&amp;#x43A;&amp;#x446;&amp;#x438;&amp;#x438;\n&amp;#x432;&amp;#x441;&amp;#x44F;&amp;#x43A;&amp;#x430; &amp;#x43E;&amp;#x43F;&amp;#x435;&amp;#x440;&amp;#x430;&amp;#x446;&amp;#x438;&amp;#x44F; &amp;#x432;&amp;#x440;&amp;#x44A;&amp;#x449;&amp;#x430; &amp;#x440;&amp;#x435;&amp;#x437;&amp;#x443;&amp;#x43B;&amp;#x442;&amp;#x430;&amp;#x442;\n&amp;#x432;&amp;#x441;&amp;#x438;&amp;#x447;&amp;#x43A;&amp;#x43E; &amp;#x435; &amp;#x438;&amp;#x437;&amp;#x43F;&amp;#x44A;&amp;#x43B;&amp;#x43D;&amp;#x438;&amp;#x43C; &amp;#x43A;&amp;#x43E;&amp;#x434; - &amp;#x201C;&amp;#x432;&amp;#x43A;&amp;#x43B;&amp;#x44E;&amp;#x447;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E; &amp;#x438; &amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x430;&amp;#x442;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;&amp;#x442;&amp;#x435; &amp;#x432; &amp;#x43A;&amp;#x43E;&amp;#x439;&amp;#x442;&amp;#x43E; &amp;#x43C;&amp;#x43E;&amp;#x436;&amp;#x435; &amp;#x438;&amp;#x43C;&amp;#x430; &amp;#x446;&amp;#x438;&amp;#x43A;&amp;#x43B;&amp;#x438;, &amp;#x443;&amp;#x441;&amp;#x43B;&amp;#x43E;&amp;#x432;&amp;#x43D;&amp;#x438; &amp;#x43E;&amp;#x43F;&amp;#x435;&amp;#x440;&amp;#x430;&amp;#x442;&amp;#x43E;&amp;#x440;&amp;#x438; &amp;#x438; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438;&amp;#x201D;\n&amp;#x438;&amp;#x437;&amp;#x447;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x435;&amp;#x43D; &amp;#x441;&amp;#x438;&amp;#x43D;&amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x441;&amp;#x438;&amp;#x441; - &amp;#x201C;&amp;#x43D;&amp;#x435; &amp;#x435; &amp;#x437;&amp;#x430;&amp;#x434;&amp;#x44A;&amp;#x43B;&amp;#x436;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E;, &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x441;&amp;#x43A;&amp;#x43E;&amp;#x431;&amp;#x438;, &amp;#x442;&amp;#x43E;&amp;#x447;&amp;#x43A;&amp;#x430; &amp;#x438; &amp;#x437;&amp;#x430;&amp;#x43F;&amp;#x435;&amp;#x442;&amp;#x430;&amp;#x44F; &amp;#x438; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438;&amp;#x201D;\n&amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x438;&amp;#x440;&amp;#x430;&amp;#x43D;&amp;#x435;\n&amp;#xA0;\n\n
  • #101 &amp;#x421;&amp;#x442;&amp;#x440;&amp;#x435;&amp;#x43C;&amp;#x435;&amp;#x436;&amp;#x44A;&amp;#x442; &amp;#x43D;&amp;#x430; Ruby &amp;#x435; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x43B;&amp;#x435;&amp;#x434;&amp;#x432;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x438;&amp;#x43D;&amp;#x446;&amp;#x438;&amp;#x43F;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x43C;&amp;#x430;&amp;#x43B;&amp;#x43A;&amp;#x430; &amp;#x438;&amp;#x437;&amp;#x43D;&amp;#x435;&amp;#x43D;&amp;#x430;&amp;#x434;&amp;#x430;. &amp;#x422;&amp;#x43E;&amp;#x432;&amp;#x430; &amp;#x43E;&amp;#x437;&amp;#x43D;&amp;#x430;&amp;#x447;&amp;#x430;&amp;#x432;&amp;#x430;, &amp;#x447;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x432;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x435;&amp;#x442;&amp;#x43E; &amp;#x43D;&amp;#x430; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x43A;&amp;#x430; &amp;#x442;&amp;#x440;&amp;#x44F;&amp;#x431;&amp;#x432;&amp;#x430; &amp;#x434;&amp;#x430; &amp;#x435; &amp;#x438;&amp;#x43D;&amp;#x442;&amp;#x443;&amp;#x438;&amp;#x442;&amp;#x438;&amp;#x432;&amp;#x43D;&amp;#x43E; &amp;#x438; &amp;#x442;&amp;#x43E;&amp;#x439; &amp;#x434;&amp;#x430; &amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x438; &amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x430;, &amp;#x43A;&amp;#x430;&amp;#x43A;&amp;#x442;&amp;#x43E; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x44A;&amp;#x442; &amp;#x431;&amp;#x438; &amp;#x43E;&amp;#x447;&amp;#x430;&amp;#x43A;&amp;#x432;&amp;#x430;&amp;#x43B;.\nRuby &amp;#x435; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;&amp;#x43D;&amp;#x43E;-&amp;#x43E;&amp;#x440;&amp;#x438;&amp;#x435;&amp;#x43D;&amp;#x442;&amp;#x438;&amp;#x440;&amp;#x430;&amp;#x43D;: &amp;#x432;&amp;#x441;&amp;#x435;&amp;#x43A;&amp;#x438; &amp;#x442;&amp;#x438;&amp;#x43F; &amp;#x434;&amp;#x430;&amp;#x43D;&amp;#x43D;&amp;#x438; &amp;#x435; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;, &amp;#x432;&amp;#x43A;&amp;#x43B;&amp;#x44E;&amp;#x447;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;, &amp;#x447;&amp;#x438;&amp;#x441;&amp;#x43B;&amp;#x430;, &amp;#x431;&amp;#x443;&amp;#x43B;&amp;#x435;&amp;#x432;&amp;#x438; &amp;#x441;&amp;#x442;&amp;#x43E;&amp;#x439;&amp;#x43D;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x438;, &amp;#x43A;&amp;#x43E;&amp;#x438;&amp;#x442;&amp;#x43E; &amp;#x432; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x433;&amp;#x43E; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x446;&amp;#x438; &amp;#x43E;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43B;&amp;#x44F;&amp;#x442; &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x43F;&amp;#x440;&amp;#x438;&amp;#x43C;&amp;#x438;&amp;#x442;&amp;#x438;&amp;#x432;&amp;#x438;, &amp;#x430; &amp;#x43D;&amp;#x435; &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x440;&amp;#x435;&amp;#x430;&amp;#x43B;&amp;#x43D;&amp;#x438; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;&amp;#x438;.\n\n&amp;#x41D;&amp;#x44F;&amp;#x43A;&amp;#x43E;&amp;#x438; &amp;#x43E;&amp;#x442; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x432;&amp;#x430;&amp;#x436;&amp;#x43D;&amp;#x438;&amp;#x442;&amp;#x435; &amp;#x445;&amp;#x430;&amp;#x440;&amp;#x430;&amp;#x43A;&amp;#x442;&amp;#x435;&amp;#x440;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x438;&amp;#x43A;&amp;#x438; &amp;#x43D;&amp;#x430; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x43A;&amp;#x430; &amp;#x441;&amp;#x430;: \n&amp;#x434;&amp;#x438;&amp;#x43C;&amp;#x438;&amp;#x447;&amp;#x43D;&amp;#x43E; &amp;#x43E;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43B;&amp;#x44F;&amp;#x43D;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x442;&amp;#x438;&amp;#x43F;&amp;#x430; &amp;#x434;&amp;#x430;&amp;#x43D;&amp;#x43D;&amp;#x438;&amp;#x442;&amp;#x435;\n&amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x443;&amp;#x43B;&amp;#x438; - &amp;#x201C;&amp;#x432;&amp;#x44A;&amp;#x437;&amp;#x43C;&amp;#x43E;&amp;#x436;&amp;#x43D;&amp;#x43E;&amp;#x441;&amp;#x442; &amp;#x435;&amp;#x434;&amp;#x438;&amp;#x43D; &amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x443;&amp;#x43B; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x432;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x436;&amp;#x434;&amp;#x430; &amp;#x432; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x436;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x43E; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;, &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x438;&amp;#x433;&amp;#x430; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x436;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x435;&amp;#x43D;&amp;#x43E; &amp;#x43D;&amp;#x430;&amp;#x441;&amp;#x43B;&amp;#x435;&amp;#x434;&amp;#x44F;&amp;#x432;&amp;#x430;&amp;#x43D;&amp;#x435;&amp;#x201D;\n&amp;#x43E;&amp;#x442;&amp;#x432;&amp;#x43E;&amp;#x440;&amp;#x435;&amp;#x43D;&amp;#x438; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435; - &amp;#x201C;&amp;#x43A;&amp;#x44A;&amp;#x43C; &amp;#x432;&amp;#x441;&amp;#x435;&amp;#x43A;&amp;#x438; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441; &amp;#x43C;&amp;#x43E;&amp;#x433;&amp;#x430;&amp;#x442; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x434;&amp;#x43E;&amp;#x431;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x43D;&amp;#x43E;&amp;#x432;&amp;#x438; &amp;#x430;&amp;#x442;&amp;#x440;&amp;#x438;&amp;#x431;&amp;#x443;&amp;#x442;&amp;#x438; &amp;#x438; &amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x43E;&amp;#x434;&amp;#x438; &amp;#x43F;&amp;#x43E; &amp;#x432;&amp;#x440;&amp;#x435;&amp;#x43C;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x438;&amp;#x437;&amp;#x43F;&amp;#x44A;&amp;#x43B;&amp;#x43D;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x430;&amp;#x442;&amp;#x430;&amp;#x201D;\n&amp;#x431;&amp;#x43B;&amp;#x43E;&amp;#x43A;&amp;#x43E;&amp;#x432;&amp;#x435;\n&amp;#x430;&amp;#x43D;&amp;#x43E;&amp;#x43D;&amp;#x438;&amp;#x43C;&amp;#x43D;&amp;#x438; &amp;#x444;&amp;#x443;&amp;#x43D;&amp;#x43A;&amp;#x446;&amp;#x438;&amp;#x438;\n&amp;#x432;&amp;#x441;&amp;#x44F;&amp;#x43A;&amp;#x430; &amp;#x43E;&amp;#x43F;&amp;#x435;&amp;#x440;&amp;#x430;&amp;#x446;&amp;#x438;&amp;#x44F; &amp;#x432;&amp;#x440;&amp;#x44A;&amp;#x449;&amp;#x430; &amp;#x440;&amp;#x435;&amp;#x437;&amp;#x443;&amp;#x43B;&amp;#x442;&amp;#x430;&amp;#x442;\n&amp;#x432;&amp;#x441;&amp;#x438;&amp;#x447;&amp;#x43A;&amp;#x43E; &amp;#x435; &amp;#x438;&amp;#x437;&amp;#x43F;&amp;#x44A;&amp;#x43B;&amp;#x43D;&amp;#x438;&amp;#x43C; &amp;#x43A;&amp;#x43E;&amp;#x434; - &amp;#x201C;&amp;#x432;&amp;#x43A;&amp;#x43B;&amp;#x44E;&amp;#x447;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E; &amp;#x438; &amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x430;&amp;#x442;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;&amp;#x442;&amp;#x435; &amp;#x432; &amp;#x43A;&amp;#x43E;&amp;#x439;&amp;#x442;&amp;#x43E; &amp;#x43C;&amp;#x43E;&amp;#x436;&amp;#x435; &amp;#x438;&amp;#x43C;&amp;#x430; &amp;#x446;&amp;#x438;&amp;#x43A;&amp;#x43B;&amp;#x438;, &amp;#x443;&amp;#x441;&amp;#x43B;&amp;#x43E;&amp;#x432;&amp;#x43D;&amp;#x438; &amp;#x43E;&amp;#x43F;&amp;#x435;&amp;#x440;&amp;#x430;&amp;#x442;&amp;#x43E;&amp;#x440;&amp;#x438; &amp;#x438; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438;&amp;#x201D;\n&amp;#x438;&amp;#x437;&amp;#x447;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x435;&amp;#x43D; &amp;#x441;&amp;#x438;&amp;#x43D;&amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x441;&amp;#x438;&amp;#x441; - &amp;#x201C;&amp;#x43D;&amp;#x435; &amp;#x435; &amp;#x437;&amp;#x430;&amp;#x434;&amp;#x44A;&amp;#x43B;&amp;#x436;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E;, &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x441;&amp;#x43A;&amp;#x43E;&amp;#x431;&amp;#x438;, &amp;#x442;&amp;#x43E;&amp;#x447;&amp;#x43A;&amp;#x430; &amp;#x438; &amp;#x437;&amp;#x430;&amp;#x43F;&amp;#x435;&amp;#x442;&amp;#x430;&amp;#x44F; &amp;#x438; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438;&amp;#x201D;\n&amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x438;&amp;#x440;&amp;#x430;&amp;#x43D;&amp;#x435;\n&amp;#xA0;\n\n
  • #102 &amp;#x421;&amp;#x442;&amp;#x440;&amp;#x435;&amp;#x43C;&amp;#x435;&amp;#x436;&amp;#x44A;&amp;#x442; &amp;#x43D;&amp;#x430; Ruby &amp;#x435; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x43B;&amp;#x435;&amp;#x434;&amp;#x432;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x438;&amp;#x43D;&amp;#x446;&amp;#x438;&amp;#x43F;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x43C;&amp;#x430;&amp;#x43B;&amp;#x43A;&amp;#x430; &amp;#x438;&amp;#x437;&amp;#x43D;&amp;#x435;&amp;#x43D;&amp;#x430;&amp;#x434;&amp;#x430;. &amp;#x422;&amp;#x43E;&amp;#x432;&amp;#x430; &amp;#x43E;&amp;#x437;&amp;#x43D;&amp;#x430;&amp;#x447;&amp;#x430;&amp;#x432;&amp;#x430;, &amp;#x447;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x432;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x435;&amp;#x442;&amp;#x43E; &amp;#x43D;&amp;#x430; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x43A;&amp;#x430; &amp;#x442;&amp;#x440;&amp;#x44F;&amp;#x431;&amp;#x432;&amp;#x430; &amp;#x434;&amp;#x430; &amp;#x435; &amp;#x438;&amp;#x43D;&amp;#x442;&amp;#x443;&amp;#x438;&amp;#x442;&amp;#x438;&amp;#x432;&amp;#x43D;&amp;#x43E; &amp;#x438; &amp;#x442;&amp;#x43E;&amp;#x439; &amp;#x434;&amp;#x430; &amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x438; &amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x430;, &amp;#x43A;&amp;#x430;&amp;#x43A;&amp;#x442;&amp;#x43E; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x44A;&amp;#x442; &amp;#x431;&amp;#x438; &amp;#x43E;&amp;#x447;&amp;#x430;&amp;#x43A;&amp;#x432;&amp;#x430;&amp;#x43B;.\nRuby &amp;#x435; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;&amp;#x43D;&amp;#x43E;-&amp;#x43E;&amp;#x440;&amp;#x438;&amp;#x435;&amp;#x43D;&amp;#x442;&amp;#x438;&amp;#x440;&amp;#x430;&amp;#x43D;: &amp;#x432;&amp;#x441;&amp;#x435;&amp;#x43A;&amp;#x438; &amp;#x442;&amp;#x438;&amp;#x43F; &amp;#x434;&amp;#x430;&amp;#x43D;&amp;#x43D;&amp;#x438; &amp;#x435; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;, &amp;#x432;&amp;#x43A;&amp;#x43B;&amp;#x44E;&amp;#x447;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;, &amp;#x447;&amp;#x438;&amp;#x441;&amp;#x43B;&amp;#x430;, &amp;#x431;&amp;#x443;&amp;#x43B;&amp;#x435;&amp;#x432;&amp;#x438; &amp;#x441;&amp;#x442;&amp;#x43E;&amp;#x439;&amp;#x43D;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x438;, &amp;#x43A;&amp;#x43E;&amp;#x438;&amp;#x442;&amp;#x43E; &amp;#x432; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x433;&amp;#x43E; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x446;&amp;#x438; &amp;#x43E;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43B;&amp;#x44F;&amp;#x442; &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x43F;&amp;#x440;&amp;#x438;&amp;#x43C;&amp;#x438;&amp;#x442;&amp;#x438;&amp;#x432;&amp;#x438;, &amp;#x430; &amp;#x43D;&amp;#x435; &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x440;&amp;#x435;&amp;#x430;&amp;#x43B;&amp;#x43D;&amp;#x438; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;&amp;#x438;.\n\n&amp;#x41D;&amp;#x44F;&amp;#x43A;&amp;#x43E;&amp;#x438; &amp;#x43E;&amp;#x442; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x432;&amp;#x430;&amp;#x436;&amp;#x43D;&amp;#x438;&amp;#x442;&amp;#x435; &amp;#x445;&amp;#x430;&amp;#x440;&amp;#x430;&amp;#x43A;&amp;#x442;&amp;#x435;&amp;#x440;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x438;&amp;#x43A;&amp;#x438; &amp;#x43D;&amp;#x430; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x43A;&amp;#x430; &amp;#x441;&amp;#x430;: \n&amp;#x434;&amp;#x438;&amp;#x43C;&amp;#x438;&amp;#x447;&amp;#x43D;&amp;#x43E; &amp;#x43E;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43B;&amp;#x44F;&amp;#x43D;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x442;&amp;#x438;&amp;#x43F;&amp;#x430; &amp;#x434;&amp;#x430;&amp;#x43D;&amp;#x43D;&amp;#x438;&amp;#x442;&amp;#x435;\n&amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x443;&amp;#x43B;&amp;#x438; - &amp;#x201C;&amp;#x432;&amp;#x44A;&amp;#x437;&amp;#x43C;&amp;#x43E;&amp;#x436;&amp;#x43D;&amp;#x43E;&amp;#x441;&amp;#x442; &amp;#x435;&amp;#x434;&amp;#x438;&amp;#x43D; &amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x443;&amp;#x43B; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x432;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x436;&amp;#x434;&amp;#x430; &amp;#x432; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x436;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x43E; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;, &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x438;&amp;#x433;&amp;#x430; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x436;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x435;&amp;#x43D;&amp;#x43E; &amp;#x43D;&amp;#x430;&amp;#x441;&amp;#x43B;&amp;#x435;&amp;#x434;&amp;#x44F;&amp;#x432;&amp;#x430;&amp;#x43D;&amp;#x435;&amp;#x201D;\n&amp;#x43E;&amp;#x442;&amp;#x432;&amp;#x43E;&amp;#x440;&amp;#x435;&amp;#x43D;&amp;#x438; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435; - &amp;#x201C;&amp;#x43A;&amp;#x44A;&amp;#x43C; &amp;#x432;&amp;#x441;&amp;#x435;&amp;#x43A;&amp;#x438; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441; &amp;#x43C;&amp;#x43E;&amp;#x433;&amp;#x430;&amp;#x442; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x434;&amp;#x43E;&amp;#x431;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x43D;&amp;#x43E;&amp;#x432;&amp;#x438; &amp;#x430;&amp;#x442;&amp;#x440;&amp;#x438;&amp;#x431;&amp;#x443;&amp;#x442;&amp;#x438; &amp;#x438; &amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x43E;&amp;#x434;&amp;#x438; &amp;#x43F;&amp;#x43E; &amp;#x432;&amp;#x440;&amp;#x435;&amp;#x43C;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x438;&amp;#x437;&amp;#x43F;&amp;#x44A;&amp;#x43B;&amp;#x43D;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x430;&amp;#x442;&amp;#x430;&amp;#x201D;\n&amp;#x431;&amp;#x43B;&amp;#x43E;&amp;#x43A;&amp;#x43E;&amp;#x432;&amp;#x435;\n&amp;#x430;&amp;#x43D;&amp;#x43E;&amp;#x43D;&amp;#x438;&amp;#x43C;&amp;#x43D;&amp;#x438; &amp;#x444;&amp;#x443;&amp;#x43D;&amp;#x43A;&amp;#x446;&amp;#x438;&amp;#x438;\n&amp;#x432;&amp;#x441;&amp;#x44F;&amp;#x43A;&amp;#x430; &amp;#x43E;&amp;#x43F;&amp;#x435;&amp;#x440;&amp;#x430;&amp;#x446;&amp;#x438;&amp;#x44F; &amp;#x432;&amp;#x440;&amp;#x44A;&amp;#x449;&amp;#x430; &amp;#x440;&amp;#x435;&amp;#x437;&amp;#x443;&amp;#x43B;&amp;#x442;&amp;#x430;&amp;#x442;\n&amp;#x432;&amp;#x441;&amp;#x438;&amp;#x447;&amp;#x43A;&amp;#x43E; &amp;#x435; &amp;#x438;&amp;#x437;&amp;#x43F;&amp;#x44A;&amp;#x43B;&amp;#x43D;&amp;#x438;&amp;#x43C; &amp;#x43A;&amp;#x43E;&amp;#x434; - &amp;#x201C;&amp;#x432;&amp;#x43A;&amp;#x43B;&amp;#x44E;&amp;#x447;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E; &amp;#x438; &amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x430;&amp;#x442;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;&amp;#x442;&amp;#x435; &amp;#x432; &amp;#x43A;&amp;#x43E;&amp;#x439;&amp;#x442;&amp;#x43E; &amp;#x43C;&amp;#x43E;&amp;#x436;&amp;#x435; &amp;#x438;&amp;#x43C;&amp;#x430; &amp;#x446;&amp;#x438;&amp;#x43A;&amp;#x43B;&amp;#x438;, &amp;#x443;&amp;#x441;&amp;#x43B;&amp;#x43E;&amp;#x432;&amp;#x43D;&amp;#x438; &amp;#x43E;&amp;#x43F;&amp;#x435;&amp;#x440;&amp;#x430;&amp;#x442;&amp;#x43E;&amp;#x440;&amp;#x438; &amp;#x438; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438;&amp;#x201D;\n&amp;#x438;&amp;#x437;&amp;#x447;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x435;&amp;#x43D; &amp;#x441;&amp;#x438;&amp;#x43D;&amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x441;&amp;#x438;&amp;#x441; - &amp;#x201C;&amp;#x43D;&amp;#x435; &amp;#x435; &amp;#x437;&amp;#x430;&amp;#x434;&amp;#x44A;&amp;#x43B;&amp;#x436;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E;, &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x441;&amp;#x43A;&amp;#x43E;&amp;#x431;&amp;#x438;, &amp;#x442;&amp;#x43E;&amp;#x447;&amp;#x43A;&amp;#x430; &amp;#x438; &amp;#x437;&amp;#x430;&amp;#x43F;&amp;#x435;&amp;#x442;&amp;#x430;&amp;#x44F; &amp;#x438; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438;&amp;#x201D;\n&amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x438;&amp;#x440;&amp;#x430;&amp;#x43D;&amp;#x435;\n&amp;#xA0;\n\n
  • #103 &amp;#x421;&amp;#x442;&amp;#x440;&amp;#x435;&amp;#x43C;&amp;#x435;&amp;#x436;&amp;#x44A;&amp;#x442; &amp;#x43D;&amp;#x430; Ruby &amp;#x435; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x43B;&amp;#x435;&amp;#x434;&amp;#x432;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x438;&amp;#x43D;&amp;#x446;&amp;#x438;&amp;#x43F;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x43C;&amp;#x430;&amp;#x43B;&amp;#x43A;&amp;#x430; &amp;#x438;&amp;#x437;&amp;#x43D;&amp;#x435;&amp;#x43D;&amp;#x430;&amp;#x434;&amp;#x430;. &amp;#x422;&amp;#x43E;&amp;#x432;&amp;#x430; &amp;#x43E;&amp;#x437;&amp;#x43D;&amp;#x430;&amp;#x447;&amp;#x430;&amp;#x432;&amp;#x430;, &amp;#x447;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x432;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x435;&amp;#x442;&amp;#x43E; &amp;#x43D;&amp;#x430; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x43A;&amp;#x430; &amp;#x442;&amp;#x440;&amp;#x44F;&amp;#x431;&amp;#x432;&amp;#x430; &amp;#x434;&amp;#x430; &amp;#x435; &amp;#x438;&amp;#x43D;&amp;#x442;&amp;#x443;&amp;#x438;&amp;#x442;&amp;#x438;&amp;#x432;&amp;#x43D;&amp;#x43E; &amp;#x438; &amp;#x442;&amp;#x43E;&amp;#x439; &amp;#x434;&amp;#x430; &amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x438; &amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x430;, &amp;#x43A;&amp;#x430;&amp;#x43A;&amp;#x442;&amp;#x43E; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x44A;&amp;#x442; &amp;#x431;&amp;#x438; &amp;#x43E;&amp;#x447;&amp;#x430;&amp;#x43A;&amp;#x432;&amp;#x430;&amp;#x43B;.\nRuby &amp;#x435; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;&amp;#x43D;&amp;#x43E;-&amp;#x43E;&amp;#x440;&amp;#x438;&amp;#x435;&amp;#x43D;&amp;#x442;&amp;#x438;&amp;#x440;&amp;#x430;&amp;#x43D;: &amp;#x432;&amp;#x441;&amp;#x435;&amp;#x43A;&amp;#x438; &amp;#x442;&amp;#x438;&amp;#x43F; &amp;#x434;&amp;#x430;&amp;#x43D;&amp;#x43D;&amp;#x438; &amp;#x435; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;, &amp;#x432;&amp;#x43A;&amp;#x43B;&amp;#x44E;&amp;#x447;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;, &amp;#x447;&amp;#x438;&amp;#x441;&amp;#x43B;&amp;#x430;, &amp;#x431;&amp;#x443;&amp;#x43B;&amp;#x435;&amp;#x432;&amp;#x438; &amp;#x441;&amp;#x442;&amp;#x43E;&amp;#x439;&amp;#x43D;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x438;, &amp;#x43A;&amp;#x43E;&amp;#x438;&amp;#x442;&amp;#x43E; &amp;#x432; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x433;&amp;#x43E; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x446;&amp;#x438; &amp;#x43E;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43B;&amp;#x44F;&amp;#x442; &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x43F;&amp;#x440;&amp;#x438;&amp;#x43C;&amp;#x438;&amp;#x442;&amp;#x438;&amp;#x432;&amp;#x438;, &amp;#x430; &amp;#x43D;&amp;#x435; &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x440;&amp;#x435;&amp;#x430;&amp;#x43B;&amp;#x43D;&amp;#x438; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;&amp;#x438;.\n\n&amp;#x41D;&amp;#x44F;&amp;#x43A;&amp;#x43E;&amp;#x438; &amp;#x43E;&amp;#x442; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x432;&amp;#x430;&amp;#x436;&amp;#x43D;&amp;#x438;&amp;#x442;&amp;#x435; &amp;#x445;&amp;#x430;&amp;#x440;&amp;#x430;&amp;#x43A;&amp;#x442;&amp;#x435;&amp;#x440;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x438;&amp;#x43A;&amp;#x438; &amp;#x43D;&amp;#x430; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x43A;&amp;#x430; &amp;#x441;&amp;#x430;: \n&amp;#x434;&amp;#x438;&amp;#x43C;&amp;#x438;&amp;#x447;&amp;#x43D;&amp;#x43E; &amp;#x43E;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43B;&amp;#x44F;&amp;#x43D;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x442;&amp;#x438;&amp;#x43F;&amp;#x430; &amp;#x434;&amp;#x430;&amp;#x43D;&amp;#x43D;&amp;#x438;&amp;#x442;&amp;#x435;\n&amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x443;&amp;#x43B;&amp;#x438; - &amp;#x201C;&amp;#x432;&amp;#x44A;&amp;#x437;&amp;#x43C;&amp;#x43E;&amp;#x436;&amp;#x43D;&amp;#x43E;&amp;#x441;&amp;#x442; &amp;#x435;&amp;#x434;&amp;#x438;&amp;#x43D; &amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x443;&amp;#x43B; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x432;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x436;&amp;#x434;&amp;#x430; &amp;#x432; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x436;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x43E; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;, &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x438;&amp;#x433;&amp;#x430; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x436;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x435;&amp;#x43D;&amp;#x43E; &amp;#x43D;&amp;#x430;&amp;#x441;&amp;#x43B;&amp;#x435;&amp;#x434;&amp;#x44F;&amp;#x432;&amp;#x430;&amp;#x43D;&amp;#x435;&amp;#x201D;\n&amp;#x43E;&amp;#x442;&amp;#x432;&amp;#x43E;&amp;#x440;&amp;#x435;&amp;#x43D;&amp;#x438; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435; - &amp;#x201C;&amp;#x43A;&amp;#x44A;&amp;#x43C; &amp;#x432;&amp;#x441;&amp;#x435;&amp;#x43A;&amp;#x438; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441; &amp;#x43C;&amp;#x43E;&amp;#x433;&amp;#x430;&amp;#x442; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x434;&amp;#x43E;&amp;#x431;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x43D;&amp;#x43E;&amp;#x432;&amp;#x438; &amp;#x430;&amp;#x442;&amp;#x440;&amp;#x438;&amp;#x431;&amp;#x443;&amp;#x442;&amp;#x438; &amp;#x438; &amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x43E;&amp;#x434;&amp;#x438; &amp;#x43F;&amp;#x43E; &amp;#x432;&amp;#x440;&amp;#x435;&amp;#x43C;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x438;&amp;#x437;&amp;#x43F;&amp;#x44A;&amp;#x43B;&amp;#x43D;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x430;&amp;#x442;&amp;#x430;&amp;#x201D;\n&amp;#x431;&amp;#x43B;&amp;#x43E;&amp;#x43A;&amp;#x43E;&amp;#x432;&amp;#x435;\n&amp;#x430;&amp;#x43D;&amp;#x43E;&amp;#x43D;&amp;#x438;&amp;#x43C;&amp;#x43D;&amp;#x438; &amp;#x444;&amp;#x443;&amp;#x43D;&amp;#x43A;&amp;#x446;&amp;#x438;&amp;#x438;\n&amp;#x432;&amp;#x441;&amp;#x44F;&amp;#x43A;&amp;#x430; &amp;#x43E;&amp;#x43F;&amp;#x435;&amp;#x440;&amp;#x430;&amp;#x446;&amp;#x438;&amp;#x44F; &amp;#x432;&amp;#x440;&amp;#x44A;&amp;#x449;&amp;#x430; &amp;#x440;&amp;#x435;&amp;#x437;&amp;#x443;&amp;#x43B;&amp;#x442;&amp;#x430;&amp;#x442;\n&amp;#x432;&amp;#x441;&amp;#x438;&amp;#x447;&amp;#x43A;&amp;#x43E; &amp;#x435; &amp;#x438;&amp;#x437;&amp;#x43F;&amp;#x44A;&amp;#x43B;&amp;#x43D;&amp;#x438;&amp;#x43C; &amp;#x43A;&amp;#x43E;&amp;#x434; - &amp;#x201C;&amp;#x432;&amp;#x43A;&amp;#x43B;&amp;#x44E;&amp;#x447;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E; &amp;#x438; &amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x430;&amp;#x442;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;&amp;#x442;&amp;#x435; &amp;#x432; &amp;#x43A;&amp;#x43E;&amp;#x439;&amp;#x442;&amp;#x43E; &amp;#x43C;&amp;#x43E;&amp;#x436;&amp;#x435; &amp;#x438;&amp;#x43C;&amp;#x430; &amp;#x446;&amp;#x438;&amp;#x43A;&amp;#x43B;&amp;#x438;, &amp;#x443;&amp;#x441;&amp;#x43B;&amp;#x43E;&amp;#x432;&amp;#x43D;&amp;#x438; &amp;#x43E;&amp;#x43F;&amp;#x435;&amp;#x440;&amp;#x430;&amp;#x442;&amp;#x43E;&amp;#x440;&amp;#x438; &amp;#x438; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438;&amp;#x201D;\n&amp;#x438;&amp;#x437;&amp;#x447;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x435;&amp;#x43D; &amp;#x441;&amp;#x438;&amp;#x43D;&amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x441;&amp;#x438;&amp;#x441; - &amp;#x201C;&amp;#x43D;&amp;#x435; &amp;#x435; &amp;#x437;&amp;#x430;&amp;#x434;&amp;#x44A;&amp;#x43B;&amp;#x436;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E;, &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x441;&amp;#x43A;&amp;#x43E;&amp;#x431;&amp;#x438;, &amp;#x442;&amp;#x43E;&amp;#x447;&amp;#x43A;&amp;#x430; &amp;#x438; &amp;#x437;&amp;#x430;&amp;#x43F;&amp;#x435;&amp;#x442;&amp;#x430;&amp;#x44F; &amp;#x438; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438;&amp;#x201D;\n&amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x438;&amp;#x440;&amp;#x430;&amp;#x43D;&amp;#x435;\n&amp;#xA0;\n\n
  • #104 &amp;#x421;&amp;#x442;&amp;#x440;&amp;#x435;&amp;#x43C;&amp;#x435;&amp;#x436;&amp;#x44A;&amp;#x442; &amp;#x43D;&amp;#x430; Ruby &amp;#x435; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x43B;&amp;#x435;&amp;#x434;&amp;#x432;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x438;&amp;#x43D;&amp;#x446;&amp;#x438;&amp;#x43F;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x43C;&amp;#x430;&amp;#x43B;&amp;#x43A;&amp;#x430; &amp;#x438;&amp;#x437;&amp;#x43D;&amp;#x435;&amp;#x43D;&amp;#x430;&amp;#x434;&amp;#x430;. &amp;#x422;&amp;#x43E;&amp;#x432;&amp;#x430; &amp;#x43E;&amp;#x437;&amp;#x43D;&amp;#x430;&amp;#x447;&amp;#x430;&amp;#x432;&amp;#x430;, &amp;#x447;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x432;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x435;&amp;#x442;&amp;#x43E; &amp;#x43D;&amp;#x430; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x43A;&amp;#x430; &amp;#x442;&amp;#x440;&amp;#x44F;&amp;#x431;&amp;#x432;&amp;#x430; &amp;#x434;&amp;#x430; &amp;#x435; &amp;#x438;&amp;#x43D;&amp;#x442;&amp;#x443;&amp;#x438;&amp;#x442;&amp;#x438;&amp;#x432;&amp;#x43D;&amp;#x43E; &amp;#x438; &amp;#x442;&amp;#x43E;&amp;#x439; &amp;#x434;&amp;#x430; &amp;#x440;&amp;#x430;&amp;#x431;&amp;#x43E;&amp;#x442;&amp;#x438; &amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x430;, &amp;#x43A;&amp;#x430;&amp;#x43A;&amp;#x442;&amp;#x43E; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x44A;&amp;#x442; &amp;#x431;&amp;#x438; &amp;#x43E;&amp;#x447;&amp;#x430;&amp;#x43A;&amp;#x432;&amp;#x430;&amp;#x43B;.\nRuby &amp;#x435; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;&amp;#x43D;&amp;#x43E;-&amp;#x43E;&amp;#x440;&amp;#x438;&amp;#x435;&amp;#x43D;&amp;#x442;&amp;#x438;&amp;#x440;&amp;#x430;&amp;#x43D;: &amp;#x432;&amp;#x441;&amp;#x435;&amp;#x43A;&amp;#x438; &amp;#x442;&amp;#x438;&amp;#x43F; &amp;#x434;&amp;#x430;&amp;#x43D;&amp;#x43D;&amp;#x438; &amp;#x435; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;, &amp;#x432;&amp;#x43A;&amp;#x43B;&amp;#x44E;&amp;#x447;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;, &amp;#x447;&amp;#x438;&amp;#x441;&amp;#x43B;&amp;#x430;, &amp;#x431;&amp;#x443;&amp;#x43B;&amp;#x435;&amp;#x432;&amp;#x438; &amp;#x441;&amp;#x442;&amp;#x43E;&amp;#x439;&amp;#x43D;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x438;, &amp;#x43A;&amp;#x43E;&amp;#x438;&amp;#x442;&amp;#x43E; &amp;#x432; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x433;&amp;#x43E; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x446;&amp;#x438; &amp;#x43E;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43B;&amp;#x44F;&amp;#x442; &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x43F;&amp;#x440;&amp;#x438;&amp;#x43C;&amp;#x438;&amp;#x442;&amp;#x438;&amp;#x432;&amp;#x438;, &amp;#x430; &amp;#x43D;&amp;#x435; &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x440;&amp;#x435;&amp;#x430;&amp;#x43B;&amp;#x43D;&amp;#x438; &amp;#x43E;&amp;#x431;&amp;#x435;&amp;#x43A;&amp;#x442;&amp;#x438;.\n\n&amp;#x41D;&amp;#x44F;&amp;#x43A;&amp;#x43E;&amp;#x438; &amp;#x43E;&amp;#x442; &amp;#x43D;&amp;#x430;&amp;#x439;-&amp;#x432;&amp;#x430;&amp;#x436;&amp;#x43D;&amp;#x438;&amp;#x442;&amp;#x435; &amp;#x445;&amp;#x430;&amp;#x440;&amp;#x430;&amp;#x43A;&amp;#x442;&amp;#x435;&amp;#x440;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x438;&amp;#x43A;&amp;#x438; &amp;#x43D;&amp;#x430; &amp;#x435;&amp;#x437;&amp;#x438;&amp;#x43A;&amp;#x430; &amp;#x441;&amp;#x430;: \n&amp;#x434;&amp;#x438;&amp;#x43C;&amp;#x438;&amp;#x447;&amp;#x43D;&amp;#x43E; &amp;#x43E;&amp;#x43F;&amp;#x440;&amp;#x435;&amp;#x434;&amp;#x435;&amp;#x43B;&amp;#x44F;&amp;#x43D;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x442;&amp;#x438;&amp;#x43F;&amp;#x430; &amp;#x434;&amp;#x430;&amp;#x43D;&amp;#x43D;&amp;#x438;&amp;#x442;&amp;#x435;\n&amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x443;&amp;#x43B;&amp;#x438; - &amp;#x201C;&amp;#x432;&amp;#x44A;&amp;#x437;&amp;#x43C;&amp;#x43E;&amp;#x436;&amp;#x43D;&amp;#x43E;&amp;#x441;&amp;#x442; &amp;#x435;&amp;#x434;&amp;#x438;&amp;#x43D; &amp;#x43C;&amp;#x43E;&amp;#x434;&amp;#x443;&amp;#x43B; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x432;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x436;&amp;#x434;&amp;#x430; &amp;#x432; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x436;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x43E; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;, &amp;#x43A;&amp;#x430;&amp;#x442;&amp;#x43E; &amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x438;&amp;#x433;&amp;#x430; &amp;#x43C;&amp;#x43D;&amp;#x43E;&amp;#x436;&amp;#x435;&amp;#x441;&amp;#x442;&amp;#x432;&amp;#x435;&amp;#x43D;&amp;#x43E; &amp;#x43D;&amp;#x430;&amp;#x441;&amp;#x43B;&amp;#x435;&amp;#x434;&amp;#x44F;&amp;#x432;&amp;#x430;&amp;#x43D;&amp;#x435;&amp;#x201D;\n&amp;#x43E;&amp;#x442;&amp;#x432;&amp;#x43E;&amp;#x440;&amp;#x435;&amp;#x43D;&amp;#x438; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435; - &amp;#x201C;&amp;#x43A;&amp;#x44A;&amp;#x43C; &amp;#x432;&amp;#x441;&amp;#x435;&amp;#x43A;&amp;#x438; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441; &amp;#x43C;&amp;#x43E;&amp;#x433;&amp;#x430;&amp;#x442; &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x434;&amp;#x43E;&amp;#x431;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x43D;&amp;#x43E;&amp;#x432;&amp;#x438; &amp;#x430;&amp;#x442;&amp;#x440;&amp;#x438;&amp;#x431;&amp;#x443;&amp;#x442;&amp;#x438; &amp;#x438; &amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x43E;&amp;#x434;&amp;#x438; &amp;#x43F;&amp;#x43E; &amp;#x432;&amp;#x440;&amp;#x435;&amp;#x43C;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x438;&amp;#x437;&amp;#x43F;&amp;#x44A;&amp;#x43B;&amp;#x43D;&amp;#x435;&amp;#x43D;&amp;#x438;&amp;#x435; &amp;#x43D;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x430;&amp;#x442;&amp;#x430;&amp;#x201D;\n&amp;#x431;&amp;#x43B;&amp;#x43E;&amp;#x43A;&amp;#x43E;&amp;#x432;&amp;#x435;\n&amp;#x430;&amp;#x43D;&amp;#x43E;&amp;#x43D;&amp;#x438;&amp;#x43C;&amp;#x43D;&amp;#x438; &amp;#x444;&amp;#x443;&amp;#x43D;&amp;#x43A;&amp;#x446;&amp;#x438;&amp;#x438;\n&amp;#x432;&amp;#x441;&amp;#x44F;&amp;#x43A;&amp;#x430; &amp;#x43E;&amp;#x43F;&amp;#x435;&amp;#x440;&amp;#x430;&amp;#x446;&amp;#x438;&amp;#x44F; &amp;#x432;&amp;#x440;&amp;#x44A;&amp;#x449;&amp;#x430; &amp;#x440;&amp;#x435;&amp;#x437;&amp;#x443;&amp;#x43B;&amp;#x442;&amp;#x430;&amp;#x442;\n&amp;#x432;&amp;#x441;&amp;#x438;&amp;#x447;&amp;#x43A;&amp;#x43E; &amp;#x435; &amp;#x438;&amp;#x437;&amp;#x43F;&amp;#x44A;&amp;#x43B;&amp;#x43D;&amp;#x438;&amp;#x43C; &amp;#x43A;&amp;#x43E;&amp;#x434; - &amp;#x201C;&amp;#x432;&amp;#x43A;&amp;#x43B;&amp;#x44E;&amp;#x447;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E; &amp;#x438; &amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x430;&amp;#x442;&amp;#x430; &amp;#x43D;&amp;#x430; &amp;#x43A;&amp;#x43B;&amp;#x430;&amp;#x441;&amp;#x43E;&amp;#x432;&amp;#x435;&amp;#x442;&amp;#x435; &amp;#x432; &amp;#x43A;&amp;#x43E;&amp;#x439;&amp;#x442;&amp;#x43E; &amp;#x43C;&amp;#x43E;&amp;#x436;&amp;#x435; &amp;#x438;&amp;#x43C;&amp;#x430; &amp;#x446;&amp;#x438;&amp;#x43A;&amp;#x43B;&amp;#x438;, &amp;#x443;&amp;#x441;&amp;#x43B;&amp;#x43E;&amp;#x432;&amp;#x43D;&amp;#x438; &amp;#x43E;&amp;#x43F;&amp;#x435;&amp;#x440;&amp;#x430;&amp;#x442;&amp;#x43E;&amp;#x440;&amp;#x438; &amp;#x438; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438;&amp;#x201D;\n&amp;#x438;&amp;#x437;&amp;#x447;&amp;#x438;&amp;#x441;&amp;#x442;&amp;#x435;&amp;#x43D; &amp;#x441;&amp;#x438;&amp;#x43D;&amp;#x442;&amp;#x430;&amp;#x43A;&amp;#x441;&amp;#x438;&amp;#x441; - &amp;#x201C;&amp;#x43D;&amp;#x435; &amp;#x435; &amp;#x437;&amp;#x430;&amp;#x434;&amp;#x44A;&amp;#x43B;&amp;#x436;&amp;#x438;&amp;#x442;&amp;#x435;&amp;#x43B;&amp;#x43D;&amp;#x43E;, &amp;#x434;&amp;#x430; &amp;#x441;&amp;#x435; &amp;#x43F;&amp;#x43E;&amp;#x441;&amp;#x442;&amp;#x430;&amp;#x432;&amp;#x44F;&amp;#x442; &amp;#x441;&amp;#x43A;&amp;#x43E;&amp;#x431;&amp;#x438;, &amp;#x442;&amp;#x43E;&amp;#x447;&amp;#x43A;&amp;#x430; &amp;#x438; &amp;#x437;&amp;#x430;&amp;#x43F;&amp;#x435;&amp;#x442;&amp;#x430;&amp;#x44F; &amp;#x438; &amp;#x434;&amp;#x440;&amp;#x443;&amp;#x433;&amp;#x438;&amp;#x201D;\n&amp;#x43C;&amp;#x435;&amp;#x442;&amp;#x430; &amp;#x43F;&amp;#x440;&amp;#x43E;&amp;#x433;&amp;#x440;&amp;#x430;&amp;#x43C;&amp;#x438;&amp;#x440;&amp;#x430;&amp;#x43D;&amp;#x435;\n&amp;#xA0;\n\n
  • #105 \n
  • #106 \n