|
|
@ -0,0 +1,55 @@
|
|
|
|
|
|
|
|
### Класс `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 ссылки.
|
|
|
|
|
|
|
|
- `set_contacts(phone: String, telegram: String, email: String)` — Устанавливает контактную информацию.
|
|
|
|
|
|
|
|
- `git_present? -> Boolean` — Проверяет наличие ссылки на GitHub.
|
|
|
|
|
|
|
|
- `contact_present? -> Boolean` — Проверяет наличие хотя бы одного контакта.
|
|
|
|
|
|
|
|
- `validate` — Валидация обязательных атрибутов (Git и хотя бы один контакт).
|
|
|
|
|
|
|
|
- `to_s -> String` — Возвращает строковое представление объекта.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
**Приватные методы и атрибуты:**
|
|
|
|
|
|
|
|
- `phone`, `telegram`, `email` (чтение и запись).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
### Описание:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- Класс: **Student**
|
|
|
|
|
|
|
|
- **Атрибуты:**
|
|
|
|
|
|
|
|
- +id: Integer
|
|
|
|
|
|
|
|
- +surname: String
|
|
|
|
|
|
|
|
- +name: String
|
|
|
|
|
|
|
|
- +patronymic: String
|
|
|
|
|
|
|
|
- +git: String
|
|
|
|
|
|
|
|
- -phone: String
|
|
|
|
|
|
|
|
- -telegram: String
|
|
|
|
|
|
|
|
- -email: String
|
|
|
|
|
|
|
|
- **Методы:**
|
|
|
|
|
|
|
|
- +initialize(args = {})
|
|
|
|
|
|
|
|
- +valid_phone_number?(phone: String) -> Boolean
|
|
|
|
|
|
|
|
- +valid_name?(name: String) -> Boolean
|
|
|
|
|
|
|
|
- +valid_telegram?(telegram: String) -> Boolean
|
|
|
|
|
|
|
|
- +valid_email?(email: String) -> Boolean
|
|
|
|
|
|
|
|
- +valid_git?(git: String) -> Boolean
|
|
|
|
|
|
|
|
- +set_contacts(phone: String, telegram: String, email: String)
|
|
|
|
|
|
|
|
- +git_present? -> Boolean
|
|
|
|
|
|
|
|
- +contact_present? -> Boolean
|
|
|
|
|
|
|
|
- +validate
|
|
|
|
|
|
|
|
- +to_s -> String
|
|
|
|
|
|
|
|
- -phone: String
|
|
|
|
|
|
|
|
- -telegram: String
|
|
|
|
|
|
|
|
- -email: String
|