А как ты относишся к MySQLi
1.
Евгений (19.12.2011 / 23:01)
Каково ваше отношение к MySQLi ?
Что лучше использовать, MySQL или MySQLi ? (по вашему мнению)
Какие преимущества/недостатки ?
2.
jozze (19.12.2011 / 23:07)
много тем уже было. юзай поиск.
3.
halsoft (19.12.2011 / 23:26)
Я бы сначала посоветовал почитать определения в вики или где-нибудь еще, вот для начала:
http://ru.wikipedia.org/wiki/MySQLi
i - improved, то есть улучшенное. Делайте выводы.
4.
Александр (19.12.2011 / 23:42)
разница примерно такая:
Ты используешь программу версии 1.12 и ждешь обновлений. Ждешь 1.13 или 1.14.
И тут включаешь комп и получаешь версию 2.0 или даже 3.0
примерно так по возможностям
5.
Артур (20.12.2011 / 01:07)
Переход с процедурного на объектно ориентированный подход в программировании это очень облегчает. Собственно наличие всего появившегося интерфейс взаимодействия в MySQL, его объектной ориентации и инкапсуляции очень облегчает реализацию. Выкинул кучу адаптеров
6.
iNeeXT (20.12.2011 / 01:41)
Нейтрально отношусь почему-то.
7.
Артур (20.12.2011 / 03:00)
лучше вообще смотреть в сторону PDO
8.
Артур (26.12.2011 / 12:32)
9.
ZiGR, нет. в PDO не только 1 этот +
9.
Слава (26.12.2011 / 12:53)
Bashka (20 Декабря 2011 / 01:07)
Переход с процедурного на объектно ориентированный подход в программировании это очень облегчает. Собственно наличие всего появившегося интерфейс взаимодействия в MySQL, его объектной ориентации и инкапсуляции очень облегчает реализацию. Выкинул кучу адаптеров
там и оо и процедурный подход использовать можно
10.
Александр (26.12.2011 / 13:46)
единственное преимущество пдо на мой взгляд это связка prepare - execute без костылей типа bind_param - fetch
11.
Sep (26.12.2011 / 14:27)
MySQLi это улучшеный MySQL, ответ очевиден
12.
Артур (27.12.2011 / 19:09)
12.
ZiGR, мне не нравицца просто XD нервируют названия методов в mysqli с использованием _ ГГ)))
13.
Саня (27.12.2011 / 19:27)
положительно
14.
Ant0ha (27.12.2011 / 19:39)
Имхо, в грамотно организованной работе с БД, программист не должен обращать внимания на то, как реализована эта работа. mysql, mysqli, pdo, все это должно быть реализованно ввиде драйверов класса для взаимодействия с БД более высокого уровня абстракции.
15.
Артур (27.12.2011 / 22:09)
Ты хотел сказать - должно быть реализовано с использованием класса (точнее интерфейса, абстрактного класса) на более высоком уровне абстракции - или - с использованием фассада - ? Вообще MySQLi на мой взгляд это то, как не надо программировать в ОО векторе
16.
Ant0ha (27.12.2011 / 22:49)
По типу обычной фабрики (первый вариант). Делается класс-фабрика для взаимодействия с БД, а так же интерфейс, на основе которого создаются драйвера (mysqli, pdo и тд).
Но суть даже не в этом, а в том чтобы использовать готовые реализации от граматных разработчиков, к примеру, это все реализовано в кохана из коробки и не нужно париться на чем же строится взаимодействие с базой.
17.
Ant0ha (27.12.2011 / 23:02)
Можно запросто сменить драйвер mysql на драйвер pdo исправив всего одно слово в конфиге базы данных (соответственно mysql -> pdo), вот и все дела.
18.
ramzes (27.12.2011 / 23:05)
Ant0ha (27 Декабря 2011 / 22:49)
По типу обычной фабрики (первый вариант). Делается класс-фабрика для взаимодействия с БД, а так же интерфейс, на основе которого создаются драйвера (mysqli, pdo и тд).
Но суть даже не в этом, а в том чтобы использовать готовые реализации от граматных разработчиков, к примеру, это все реализовано в кохана из коробки и не нужно париться на чем же строится взаимодействие с базой.
простите, не удержался :-[
продолжайте
19.
Ant0ha (27.12.2011 / 23:07)
с мобилки набирал, простительно =)
20.
Артур (28.12.2011 / 22:50)
Эм, я могу ошибаться, но мне кажется что вы не понимаете что такое фабрика
21.
Дима (28.12.2011 / 22:53)
Мое мнение нейтральное.
22.
Ant0ha (29.12.2011 / 10:43)
23.
Bashka, ну, поясни что же не так).
З.Ы. вот как раз таки твои сомнения и предполагают твоё не понимание паттерна.
23.
Юрий (29.12.2011 / 15:44)
Хорошо отношусь.
24.
Артур (29.12.2011 / 23:53)
Мм, покину я сайт с подобными правилами лучше. Удачи
25.
ramzes (29.12.2011 / 23:59)
28.
Bashka, не обращай внимания, модератор видимо сам плохо понимает что означает этот пункт правил
________
в) Не одобряются попытки обратить внимание на низкий уровень знаний какого-либо участника сайта. Все когда-то не знали простых вещей.
________
Не пришей к пи...е рукав тут, простите за выражение
26.
Ant0ha (30.12.2011 / 11:54)
28.
Bashka, проще обидеться на "не хорошего модератора" чем обосновать свои высказывания?)
27.
Дмитрий (30.12.2011 / 12:54)
проще понтунуться, видя что апонент уходит;)
28.
Ant0ha (30.12.2011 / 13:03)
31.
ПьяНый Ангел, да, пусть приходит, проблема в чем? не я же убегаю от спора и не я же этот спор затеял
З.Ы. у него онлайн всё это время висит и хочет в личке поговорить.
29.
Ant0ha (30.12.2011 / 13:33)
Решили в личке, человек просто не понял о чем речь, теперь уладили.
Простой пример реализации способа, о котором я говорил выше, выглядит примерно так:
<?php
class DB {
public static function factory($driver)
{
return new $driver;
}
}
interface DB_Interface {}
class DB_MySQL implements DB_Interface {}
class DB_PDO implements DB_Interface {}
class DB_MySQLi implements DB_Interface {}
$db = new DB::factory('DB_MySQL');
30.
ramzes (30.12.2011 / 13:58)
ZiGR (29 Декабря 2011 / 15:00)
21. ramzes, а вы, товарищ, правила читали?
Указывание на незнание чего-либо запрещено правилами. Предупреждение вам.
Ни чего подобного
Просто забавная опечатка именно в таком слове.
Проще надо быть, речи о знаниях и прочем не было
31.
Ant0ha (30.12.2011 / 14:00)
дополню пост 34:
new перед DB::factory() - лишнее
Kohana реализует этот паттерн еще удобней. Вместо интерфейсов используется абстрактный класс фабрика, в котором определяются общие методы и плюс в том, что некоторые из них реализуются (не абстрактные методы), но их можно переопределить в самих драйверах.
т.е. делается примерно так:
<?php
abstract class DB {
public static function factory($driver)
{
return new $driver;
}
}
class DB_MySQL extends DB {}
class DB_PDO extends DB {}
class DB_MySQLi extends DB {}
$db = DB::factory('DB_MySQL');
32.
Артур (30.12.2011 / 17:56)
Да, решили вопрос частично. Сегодня решим полностью )
33.
Ant0ha (30.12.2011 / 21:07)
Ок, отписывай только сюда.
34.
Жень4ик (10.01.2012 / 19:02)
Вот какой у меня вопрос назрел... Сел я читать учебник по MySQL , почитал чуть-чуть, и вспомнил про эту тему... Вы мне скажите, то щас MySQL изучать? Или подождать?
35.
JustZero (10.01.2012 / 19:19)
хах, разница там не большая) точнее ее я например не замечаю)
36.
Артур (12.01.2012 / 00:27)
Чего ждать?
37.
ramzes (12.01.2012 / 01:48)
SiT (10 Января 2012 / 19:02)
Вот какой у меня вопрос назрел... Сел я читать учебник по MySQL , почитал чуть-чуть, и вспомнил про эту тему... Вы мне скажите, то щас MySQL изучать? Или подождать?
Подожди конечно, когда вязать надоест, переходи на базы данных))
38.
Don (30.01.2012 / 13:19)
SiT (10 Января 2012 / 19:02)
Вот какой у меня вопрос назрел... Сел я читать учебник по MySQL , почитал чуть-чуть, и вспомнил про эту тему... Вы мне скажите, то щас MySQL изучать? Или подождать?
разницы особо нету)) можно учить и mysql тоже самое практически, там их немного пару функций лишь, главное знать sql ) а там разберешься.
URL:
https://visavi.net/topics/27588