|
18 / 15 / 0
Регистрация: 25.10.2011
Сообщений: 241
|
|
Какой сделать главный класс и/или какая правильная структура?11.08.2012, 18:31. Показов 4341. Ответов 34
Метки нет (Все метки)
Написал авторизацию и регистрацию без классов. Все работает как положено.
Переделываю через классы: Какой сделать главный класс и/или какая правильная структура? Например, я создам класс fns(методы проверки почты, создания хэша, определения ip и подключение к базе данных), а потом создам унаследованные дочерние подклассы - auth и reg. Туда будут передаваться соответствующие аргументы получаемые из форм авторизации или регистрации. Такой подход верен? Или предложите свой, пожалуйста.
0
|
|
| 11.08.2012, 18:31 | |
|
Ответы с готовыми решениями:
34
Какая структура правильная? Правильная структура сайта. Как сделать? Класс или структура |
|
270 / 226 / 11
Регистрация: 20.04.2012
Сообщений: 817
|
|||
| 11.08.2012, 22:49 | |||
|
Нет, не верен. Каждый класс должен делать что-то ОДНО. А не
Читай http://market.yandex.ru/model.... 3447109363 и http://yandex.ru/yandsearch?te... 999&lr=213
1
|
|||
|
18 / 15 / 0
Регистрация: 25.10.2011
Сообщений: 241
|
|
| 11.08.2012, 23:39 [ТС] | |
|
Василий Макогон,
у меня есть функция хэширования которая используется и в auth и reg, мне что ее прописывать как метод в обеих классах? т.е. будут 2 абсолютно одинаковых метода в разных классах.
0
|
|
|
270 / 226 / 11
Регистрация: 20.04.2012
Сообщений: 817
|
|
| 12.08.2012, 01:59 | |
|
тогда ВОЗМОЖНО базовый, да. но он не должен давать других полномочий, кроме работы с auth и reg
1
|
|
|
web dev
107 / 93 / 9
Регистрация: 23.09.2010
Сообщений: 737
|
|
| 12.08.2012, 10:09 | |
|
1
|
|
|
28 / 50 / 2
Регистрация: 10.01.2012
Сообщений: 347
|
|
| 12.08.2012, 10:35 | |
|
а auth - это авторизация или аутентификация?
)
0
|
|
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
||
| 12.08.2012, 11:45 | ||
|
1
|
||
|
|
|
| 12.08.2012, 12:11 | |
|
Кто сказал, что класс должен делать что-то одно....
Целью класса фактически есть создание и использование обьекта. Приведём аналогию.... Обьект машина(в реальной жизни) - перевоз пасажиров, заправка, починка, апгрейд деталей и т.п.(возможно не очень удачный пример) При работе с юзером я чаще создаю класс User - родитель . Который наследую другими классами(в зависимостио т типа пользователя) например: AdminUser, ModeratorUser и т.д. Что очень удобно. Добавлено через 54 секунды и в этот класс Юсер можно записать все функции - логин, регистрация, хеши и т.д и т.п.
1
|
|
|
web dev
107 / 93 / 9
Регистрация: 23.09.2010
Сообщений: 737
|
|
| 12.08.2012, 12:39 | |
|
0
|
|
|
270 / 226 / 11
Регистрация: 20.04.2012
Сообщений: 817
|
||||
| 12.08.2012, 13:13 | ||||
просто у ТС есть ДВА разных по своему функционалу класса. и тут нужно либо наследование, либо делегирование класса, который бы имел функционал хэширования и проверки этого хэша. я за делегирование.
1
|
||||
|
26 / 26 / 1
Регистрация: 30.09.2011
Сообщений: 196
|
||
| 12.08.2012, 15:44 | ||
И зачем самопальная функция хеширования если есть встроеная.
1
|
||
|
18 / 15 / 0
Регистрация: 25.10.2011
Сообщений: 241
|
||
| 12.08.2012, 17:00 [ТС] | ||
|
Честно говоря, Вы все меня запутали, т.к. у каждого свое мнение...
Добавлено через 32 секунды d1gi, авторизация Добавлено через 59 минут Не понятно, что общего между авторизацией и регистрацией, чтобы сделать класс с общими данными, а потом уже наследовать. Раз у них ничего нет общего, кроме одного метода хэширования, то о5 же мал смысл выделять под 1 метод класс. Верно?
0
|
||
|
28 / 50 / 2
Регистрация: 10.01.2012
Сообщений: 347
|
|
| 12.08.2012, 17:42 | |
|
С терминологией надо аккуратно, дело в том, что авторизация - это процесс наделения правами какого-то пользователя, с целью, чтобы потом можно было принять решение какое действие ему можно сделать, а какое нет, а вот чтобы выяснить что за юзер наделяется правами его надо сначала распознать - вот этот процесс и называется аутентификация, к сожалению оба этих слова можно сократить до auth, что может очень сильно дезориентировать...
Вообще процессы аутентицикации, авторизации и регистрации это достаточно разные вещи и можно смело юзать разные классы.
1
|
|
|
18 / 15 / 0
Регистрация: 25.10.2011
Сообщений: 241
|
||
| 12.08.2012, 18:04 [ТС] | ||
|
Жаль только это считается ошибкой проектирования(2 одинаковых метода) . Всем спасибо!
0
|
||
|
28 / 50 / 2
Регистрация: 10.01.2012
Сообщений: 347
|
|
| 12.08.2012, 18:05 | |
|
какие одинаковые методы?
0
|
|
|
18 / 15 / 0
Регистрация: 25.10.2011
Сообщений: 241
|
|
| 12.08.2012, 18:40 [ТС] | |
|
d1gi, метод хэширования один и тотже, что в авторизации, что в регистрации.
0
|
|
|
28 / 50 / 2
Регистрация: 10.01.2012
Сообщений: 347
|
|
| 12.08.2012, 18:52 | |
|
при наделении прав нужно знать только ИД распознанного юзера, другими словами перед авторизацией надо аутентифицироваться, а в некоторых случаях авторизация вообще ненужна например если в проекте достаточно проверить админа, например user_id = 1 и всё, а остальные юзеры считаются просто юзерами.
для регистрации и аутентификации лучше юзать некий класс, например UserProvider, в нём будет реализован API по созданию, залогиниванию и т.д. таким образом можно в любой момент подменить поставщика юзеров, например если вы решите хранить юзеров не в БД а в плоских файлах.
1
|
|
|
270 / 226 / 11
Регистрация: 20.04.2012
Сообщений: 817
|
||
| 12.08.2012, 20:39 | ||
1
|
||
|
26 / 26 / 1
Регистрация: 30.09.2011
Сообщений: 196
|
|||
| 12.08.2012, 22:14 | |||
Не можешь в двух простых классах разобратся а претендуешь на имплементацию хеширования лучшего чем писаные спецами до которых ты вряд ли дорастешь.
0
|
|||
|
web dev
107 / 93 / 9
Регистрация: 23.09.2010
Сообщений: 737
|
||||||||
| 12.08.2012, 22:27 | ||||||||
|
Вот класс на закуску:
1
|
||||||||
| 12.08.2012, 22:27 | |
|
Помогаю со студенческими работами здесь
20
Структура или класс ? Структура или класс Отдельно класс данных, класс формул и главный класс Класс или структура или кортеж? Кортеж, структура или класс? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Нашел на реддите интересную статью под названием «Кто-нибудь знает, где получить бесплатный компьютер или. . .
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод
Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод.
Thinkpad X220 Tablet —. . .
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|