|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
21.02.2016, 20:26 | #11 |
Форумчанин
Регистрация: 11.04.2010
Сообщений: 440
|
Просто немного смущает, что мы создаём "объект работы с БД" в этом случае. Обычно создают объект: базу, подключение и т.п. То есть, то что в реальности есть. А тут... Хотя в принципе нормально.
|
21.02.2016, 20:28 | #12 |
Форумчанин
Регистрация: 11.04.2010
Сообщений: 440
|
Код:
|
21.02.2016, 21:19 | #13 |
Форумчанин
Регистрация: 11.04.2010
Сообщений: 440
|
Код:
Или аналогично. |
22.02.2016, 09:57 | #14 |
Участник клуба
Регистрация: 08.03.2008
Сообщений: 1,537
|
Зачем нужен класс для работы с БД:
1. Коннект к базе очень ресурсозатратная операция. В классе с помощью синглтон возврашаем один и тот же коннект, а не каждый раз подключаемся. 2. Пишите методы которые возвращают вам данные в удобном виде. 3. Если нужно поменять драйвер доступа к базе например mysqli на PDO, то переписываете 1 класс, а не в 100500 местах меняете код. 4. Т.к. все запросы проходят через одну точку входа, просто прикрутить логирование, узнать время выполнения запроса и тп. 5. Меньше кода в моделях, код более читаем. Наверняка есть еще преимущества. Сразу все не вспомню. Последний раз редактировалось Gorychev; 22.02.2016 в 11:56. |
22.02.2016, 10:20 | #15 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Так все 5 пунктов и без ООП реализовать можно.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
22.02.2016, 10:43 | #16 | |
Участник клуба
Регистрация: 08.03.2008
Сообщений: 1,537
|
Цитата:
|
|
22.02.2016, 12:02 | #17 |
Лис
Старожил
Регистрация: 18.09.2015
Сообщений: 2,409
|
Если вам не нужно. То и не используйте.
Функции хороши когда у вас задача простая. А если задача сложная, то стоит использовать ООП. Что значит сложная задача? Да пожалуй такая которую не под силу охватить одному разуму. Когда у вас в задаче переплетаются, данные, функции, машина состояний, иеархия. Пока задача простая её можно решить простыми данными. Обойтись функциями. Как только задача становиться сложнее появляются структуры данных: записи, деревья списки. Но как только у вас появляются разнообразные списки и вы хотите иметь один унифицированный интерфейс, для выполнения нужных действий. Поиск в списке. Сериализация дерева из разных объектов. Вот тогда ООП и начинает работать и приносить плоды. За вас уже написали код выделили общие функции и методы присущи определённым классам. Знаний становиться так много, что прикладной программист использующий ООП учиться догадываться о том что делает тот или иной объект, та или иная функция лишь взглянув по названию. Он перестаёт вникать в суть работы. В этом и заключается, то что разум уже не способен в одиночку охватить всю задачу. А кто может тот сам начинает делать ООП объекты и иерархию. Это архитекторы и ведущие программисты.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал . |
22.02.2016, 16:27 | #18 |
Форумчанин
Регистрация: 11.04.2010
Сообщений: 440
|
Спасибо. Да, пожалуй, когда используешь готовые объекты, то всё понятно, особенно когда документация под рукой - и всё работает.
А вот когда создавать надо свой класс или объекты - тут уже вопросы. Можно создать письмо, заметку, файл и т.п., но объект "работа с базой данных" не совсем соответствует какой-то реальной вещи/предмету. Если только иметь в виду сам процесс. Тут часто и появляются искусственности/загвоздки. |
22.02.2016, 16:40 | #19 |
Форумчанин
Регистрация: 11.04.2010
Сообщений: 440
|
Насчёт 5 преимуществ - чтобы освоить все эти шаблоны и правильно применить, нужно много времени, особенно если нет заготовки в IDE.
ООП оправдано обычно, если в редакторе подставляется код Последний раз редактировалось vinniepooh; 22.02.2016 в 19:59. |
22.02.2016, 17:02 | #20 | |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Ну дык возьмите IDE если нужна.
Цитата:
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. Последний раз редактировалось Alex11223; 22.02.2016 в 17:04. |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Когда стоит использовать постоянные соединения с Mysql? | Illusiony | PHP | 5 | 13.10.2015 18:45 |
ООП - когда стоит использовать классы ? | A9050 | Общие вопросы C/C++ | 10 | 25.02.2013 17:04 |
Когда нужно использовать ООП? | leklerk | Общие вопросы по программированию, компьютерный форум | 49 | 01.06.2012 09:09 |
Не будет ли ошибкой использовать инвок для случаев, когда он не требуется? | gramp | C# (си шарп) | 4 | 18.04.2012 20:41 |
сортировка, когда невозможно использовать свойства таблицы IndexFieldName | Римма | БД в Delphi | 5 | 07.09.2007 10:56 |