Основы Ruby 101 — часть первая


Введение

Привет из шахт, меня зовут Питер, и я буду вашим гидом, когда мы пройдем по туннелям и узнаем, как добывать и очищать драгоценные камни. Если быть точным, то Рубин. В зависимости от того, кого вы спросите, рубин может быть драгоценным камнем или инструментом для темной паутины: хахах, шучу. Прежде чем погрузиться в туннели, давайте разберемся, как появился рубин.

В начале 90-х годов один маг был выбран ингибиторами Земли-10, чтобы придумать способ общения с роботами для снижения вероятности возникновения Скайнета. Маг получил кодовое имя Мац, а его удостоверение личности — Юкихиро Мацумото. Юкихиро Мацумото создал Ruby как язык общего назначения для ингибиторов Земли 10, также называемых программистами/разработчиками/кодерами.

Давайте начнем!!!!!!!!!!!!!!!!!!!!!!!!!!

Прежде чем мы узнаем, как определить камни рубина, нам нужны инструменты, которые позволят нам быть настолько эффективными, насколько это возможно. Вам не нужно беспокоиться о том, где найти вышеупомянутые инструменты, просто копните ниже

  • Код Visual Studio
  • RVM — менеджер версий ruby

Приступаем к чтению руководства по работе с лопатой: RVM иногда может быть сложной задачей, но вам не стоит беспокоиться, так как мы сжали инструкции ниже

# As a first step we get keys to verify our installation
$ gpg --keyserver hkp://pool.sks-keyservers.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB

# make sure to have curl installed before running the command below
$ curl -sSL https://get.rvm.io | bash -s stable --ruby

curl -sSL https://get.rvm.io | bash -s -- --ignore-dotfiles

# check if rvm is intsalled
$ rvm -v

# install ruby using rvm
$ rvm install 2.7

# check if ruby is installed
$ ruby -V

Войдите в полноэкранный режим Выйти из полноэкранного режима

С помощью приведенных выше инструкций мы готовы найти и изучить свойства рубиновых камней в шахте. Вдох-выдох, вот это была работа в шахте, верно?
Теперь, когда у нас есть все необходимые инструменты, давайте погрузимся в добычу рубинов. Позвольте мне изменить настройки языка, чтобы говорить как ингибитор земли10.

Language loading ...........................Language loading ...........................Language loading ...........................Language loading ...........................Lnguage loading............................................Done

Прежде чем мы сможем что-либо сделать в ruby, нам нужно будет установить его на наши машины, что мы и сделали выше, когда настраивали наши инструменты. Чтобы убедиться, что ruby установлен, просто повторно выполните команду вверху

$ ruby -v

# should return output 
ruby 2.7.6p219 (2022-04-12 revision c9c2245c0a)
Войти в полноэкранный режим Выйти из полноэкранного режима

Типы данных

Как у нас, людей, есть структура языка, так и у языков программирования, или, в данном случае, у языка магов Ruby. Эта структура позволяет нам хорошо общаться с машинами без необходимости оставлять то, что естественно для нас, как для ингибиторов Земли10. Согласно этой структуре, данные должны быть распределены по категориям следующим образом

1. Numbers
2. Strings
3. Hashes
4. Symbols
5. Boolean
6. Arrays
Вход в полноэкранный режим Выход из полноэкранного режима

Чтобы понять, как эта структура будет работать, давайте разберемся с каждой из них и поймем, как с ними работать.

Строки

Это тип данных, который обычно представляет собой последовательность символов, заключенных в кавычки, предпочтительно двойные.

"John Doe"
"Joe Tribiani"
"Racheal Geller"
Войти в полноэкранный режим Выйти из полноэкранного режима

Мы можем продолжать и продолжать, но суть вы уловили.

Числа

Этот тип данных представляет собой числовое выражение величин, он отлично подходит для количественной оценки вещей, людей или идей. Вы можете подумать, что число — это число, но в глазах Ruby число состоит из двух частей, то есть целого числа и десятичного числа, известного как float. Примеры ниже

10 -> whole number
10.5 -> Float number
Вход в полноэкранный режим Выйти из полноэкранного режима

Boolean

Этот тип данных хранит или обозначает истинные или ложные значения, которые могут быть присвоены явно или в результате условия.
NB: Следует отметить, что в ruby все значения являются истинными, кроме false и nil: мы увидим, что такое nil.

true 

10 > 1 # greater than comparison operator evaluates to true as 10 is greater than one

false
Вход в полноэкранный режим Выйти из полноэкранного режима

Прежде чем перейти к следующим типам данных, давайте сделаем паузу, чтобы осветить кое-что важное. Если посмотреть на булевы, числа и строки, то нет никакого способа вернуться к значениям без необходимости запоминать их в явном виде. Это неэффективно. Как же сделать это эффективным и простым для нас?

Переменные — это большое слово, которое сделает это для нас, но что такое переменные. Переменные — это именованные контейнеры, в которых хранятся наши значения, использование имени позволяет легко понять, о чем идет речь, без необходимости запоминать реальное значение. Для наглядности, насколько вероятно, что вы запомните номер шасси автомобиля по сравнению с моделью автомобиля.

Итак, как мы можем использовать переменные, не проверяйте нигде, кроме как в приведенном ниже фрагменте кода

# we use the equal operator to assign the value on the right to the variable name on the left

name = "john" 
age = 10                                               
Вход в полноэкранный режим Выйти из полноэкранного режима

Массив

Этот тип данных позволяет группировать или хранить значения последовательно, разделяя отдельные элементы с помощью запятой. В основном рекомендуется хранить данные одного типа в массиве. Элементы заключены в квадратные скобки

# An array with numbers
[10, 20, 10]

# An array with strings
["Monicah", "Racheal"]

# mixed array
[10, "Hello world", false]
Вход в полноэкранный режим Выйти из полноэкранного режима

Когда вы наблюдаете массив, может возникнуть вопрос, как получить доступ к отдельным элементам. Ну, мы используем принцип, называемый индексацией, как в библиотеке используют индекс для поиска книг, так и у нас, но наш принцип будет немного отличаться. Для доступа к элементу массива мы будем использовать скобки-нотации для индексации.
Примечание: В массивах и строках индексация начинается с нуля.

# names array
names = ["joe", "john", "jan"]

#accessing the first element
names[0] => rreturns "joe"

Вход в полноэкранный режим Выйти из полноэкранного режима

Хеши

Если взглянуть на массивы, то можно заметить, что даже при обращении к данным отсутствует контекст. Не волнуйтесь, поскольку там, где массивы терпят неудачу, хэши превосходят их, поскольку они хранят свои значения в паре ключ-значение, что это значит, спросите вы. Если вы пришли из python, то хэши следуют принципу, близкому к тому, как ведут себя словари, но если вы пришли из javascript, то ближе всего к этому будет объект.
NB: У хэшей ключи являются отдельными типами данных, т.е. символами.

# creating a hash using key symbol
{name: "john"} 

#creating key using symbol with rocket syntax
{name => "john"}
Вход в полноэкранный режим Выход из полноэкранного режима

Заключение

В этой первой части мы рассмотрели, что такое типы данных в ruby, в следующей части мы рассмотрим более продвинутые темы.

  • Потоки управления
  • Петля
  • Методы
  • ООП

Оцените статью
devanswers.ru
Добавить комментарий