Класс Student
Атрибуты:
id: Integer
— Идентификатор студента.surname: String
— Фамилия студента.name: String
— Имя студента.patronymic: String
— Отчество студента.git: String
— Ссылка на GitHub (обязательный атрибут).phone: String
— Номер телефона (приватный).telegram: String
— Телеграм (приватный).email: String
— Электронная почта (приватный).
Методы:
initialize(args = {})
— Конструктор, инициализирующий объект с проверкой параметров.self.valid_phone_number?(phone: String) -> Boolean
— Проверяет корректность номера телефона.self.valid_name?(name: String) -> Boolean
— Проверяет корректность имени.self.valid_telegram?(telegram: String) -> Boolean
— Проверяет корректность Telegram.self.valid_email?(email: String) -> Boolean
— Проверяет корректность email.self.valid_git?(git: String) -> Boolean
— Проверяет корректность GitHub ссылки.self.from_string(student_string: String) -> Student
— Создает объектStudent
из строки с параметрами.set_contacts(phone: String, telegram: String, email: String)
— Устанавливает контактную информацию.git_present? -> Boolean
— Проверяет наличие ссылки на GitHub.contact_present? -> Boolean
— Проверяет наличие хотя бы одного контакта.validate
— Валидация обязательных атрибутов (наличие Git и хотя бы одного контакта).to_s -> String
— Возвращает строковое представление объекта.get_info -> String
— Возвращает краткую информацию о студенте: фамилия с инициалами, ссылка на GitHub и основной контакт.surname_and_initials -> String
— Возвращает фамилию с инициалами студента.git_info -> String
— Возвращает ссылку на GitHub.contact_info -> String
— Возвращает основной контакт студента (телефон, Telegram или email).
Приватные методы и атрибуты:
phone
,telegram
,email
— Приватные атрибуты для хранения контактной информации, которые можно изменить только черезset_contacts
.