За последние 24 часа нас посетили 20838 программистов и 1130 роботов. Сейчас ищут 365 программистов ...

Кружок по Yii

Тема в разделе "Прочие вопросы по PHP", создана пользователем Psih, 9 июл 2010.

?

Пользуетесь ли вы Yii?

  1. Нет, не пользуюсь.

    3 голосов
    33,3%
  2. Нет, у меня другой людимый фреймворк.

    1 голосов
    11,1%
  3. Начинаю с ним работать.

    3 голосов
    33,3%
  4. Да пользуюсь, всё хорошо.

    2 голосов
    22,2%
  1. ATI

    ATI Активный пользователь

    С нами с:
    3 янв 2008
    Сообщения:
    254
    Симпатии:
    0
    Адрес:
    Москва
    На Yii сижу около 1,5 года. Когда начал изучать была еще верси 1.0.9 помойму. Отличный фреймворк, все проекты делаю на нем.
     
  2. Апельсин

    Апельсин Активный пользователь

    С нами с:
    20 мар 2010
    Сообщения:
    3.645
    Симпатии:
    2
    уважаемый топик стартер, подскажи такую штуку. в некоторых комментах встречаю утверждения, что myisam быстрее innodb, но во втором есть транзакции. в уии за них отвечает beginTransaction(), но в мануале чтото не встречал требований фреймворка относительно того, что нужно юзать только innodb для работоспособности этого метода. выходит, что и myisam прокатывает. Каким макаром фрейм уговаривает myisam поддерживать транзакции? Тупо вставляет записи по порядку, а если последняя, например, не вставилась, то делает запрос на удаление предыдущих?
    и еще хотел бы заказать песню группы Руки вверх... :D
     
  3. MiksIr

    MiksIr Активный пользователь

    С нами с:
    29 ноя 2006
    Сообщения:
    2.340
    Симпатии:
    44
    Yii работает через PDO. Как PDO себя поведет - так и будет. А PDO вроде как просто тупо игнорирует транзакции без генерирования ошибок.
     
  4. Апельсин

    Апельсин Активный пользователь

    С нами с:
    20 мар 2010
    Сообщения:
    3.645
    Симпатии:
    2
    игнорирует - то есть не исполняет? вроде откат транзакции работает и на innodb и на myisam (об обратном ничего не сказано в уии). только как этот откат происходит в последней.
     
  5. MiksIr

    MiksIr Активный пользователь

    С нами с:
    29 ноя 2006
    Сообщения:
    2.340
    Симпатии:
    44
    С чего ты взял, что там работает откат.
     
  6. Апельсин

    Апельсин Активный пользователь

    С нами с:
    20 мар 2010
    Сообщения:
    3.645
    Симпатии:
    2
    MiksIr
    исходя из обратного - мануале не говорит, что он гдето может не работать :)
     
  7. MiksIr

    MiksIr Активный пользователь

    С нами с:
    29 ноя 2006
    Сообщения:
    2.340
    Симпатии:
    44
    Фреймворки не предназначены для коррекции ошибок проектирования, которые даже сама MySQL за ошибку не считает. С чего бы генерировать какую-то ошибку, если MySQL сама генерирует только варнинг, да и то только на роллбеке. Хотя в документации про PDO есть пару строчек про поддержку транзакций и как PDO на это реагирует.
     
  8. Апельсин

    Апельсин Активный пользователь

    С нами с:
    20 мар 2010
    Сообщения:
    3.645
    Симпатии:
    2
    MiksIr
    всеравно это не правильно с точки зрения составления мануала. в описании метода могли бы упомянуть
     
  9. MiksIr

    MiksIr Активный пользователь

    С нами с:
    29 ноя 2006
    Сообщения:
    2.340
    Симпатии:
    44
    Если следовать вашей же логики, то в документации не сказано, что они написали что-то отдельное свое для транзакций, а значит, что они ничего не писали, и как результат - поведение определяется базой. Странно документировать то, что они не писали.
     
  10. Апельсин

    Апельсин Активный пользователь

    С нами с:
    20 мар 2010
    Сообщения:
    3.645
    Симпатии:
    2
    MiksIr
    фрейм - это уже "чтото отдельное свое" по сути. это не натив пхп.

    приведу аналогию с jquery - куча браузеров и не все их фишки поддерживаются фреймворком. то что он не может сделать кроссбраузерным - то он вообще в себе не реализует. (или указано в мануале. с получение версии браузера косяк происходит вроде)
    такого же поведения я предполагаю увидеть в уии. не удается сделать транзакции для myisam - значит либо не делать такого метода вовсе или указать о этом нюансе в мануале. Вроде все логично.
     
  11. MiksIr

    MiksIr Активный пользователь

    С нами с:
    29 ноя 2006
    Сообщения:
    2.340
    Симпатии:
    44
    Нет, вы не увидите такого функционала ни в yii ни в ином любом другом PHP фреймворке, написанным вменяемыми людьми.
     
  12. MiksIr

    MiksIr Активный пользователь

    С нами с:
    29 ноя 2006
    Сообщения:
    2.340
    Симпатии:
    44
    Думаю, кто работает с Yii и пробует PhpStorm, будет интересна такая вот фича http://youtrack.jetbrains.net/issue/WI-2225
    Я к тому, что нада голосовать =)
    А то после Model()::model()->find() задолбался уже хинты прописывать, что у меня возвращается Model а не CActiveRecord
     
  13. Апельсин

    Апельсин Активный пользователь

    С нами с:
    20 мар 2010
    Сообщения:
    3.645
    Симпатии:
    2
    MiksIr
    Я тут немного инфы нарыл, пока искал кой-чего. Вспомнил, что уии на pdo работает и про эти самые транзакции.
    Вобщем, исходя из той мной нарытой инфы, если сама бд не обеспечивает нативных транзакций (как в случае с MySQL + MyISAM), то pdo эмулирует своими средствами, как будто транзакции поддерживаются. Следовательно, в уии не зачем упоминать о типе таблиц в бд (или типе бд вообще), так как транзации в любом случае будут работать, хоть и не нативно.
     
  14. MiksIr

    MiksIr Активный пользователь

    С нами с:
    29 ноя 2006
    Сообщения:
    2.340
    Симпатии:
    44
    Клиент не может эмулировать транзакции. Принципиально. О том, поддерживает ли конкретный драйвер PDO транзакции или нет - говорит он сам (как бы зашито флагом в драйвере). Но в случае с мускулем, где поддержка может быть (innodb) а может и не быть (myisam) драевер просто говорит - что они есть. Проверять тип таблиц - это уже не его работа, тем паче они могут быть смешанные.
     
  15. Amertox

    Amertox Активный пользователь

    С нами с:
    21 мар 2011
    Сообщения:
    17
    Симпатии:
    0
    Обожаю Yii за ее продуманность. За что не возьмешься - Yii к этому готов. + Код Yii написан грамотно и понятно.

    По мощности Yii опережает только Симфони, но симфони - это много мороки на пустом месте. Врядли что-то можно сделать лучше на Симфони, чем на Yii, но, точно, на Симфони уйдет больше времени на изучение и написание длинных, никому не нужных, конструкций.
     
  16. iliavlad

    iliavlad Активный пользователь

    С нами с:
    24 янв 2009
    Сообщения:
    1.689
    Симпатии:
    4
    в чём измеряется мощность фреймворка? хотя это риторический вопрос.
     
  17. Amertox

    Amertox Активный пользователь

    С нами с:
    21 мар 2011
    Сообщения:
    17
    Симпатии:
    0
    Под мощностью фреймворка я понимаю способность ядра (именно ядра, а не плагинов) выполнять те или иные функции.

    Например, параметры по которым можно сравнивать "мощность" работы с базой данных (мы говорим, опять же, про ядро):
    - Поддержка разных типов баз данных
    - Встроенная поддержка транзакций
    - Удобное и информативное профилирование
    - Поддержка миграций
    - Удобной построитель запросов

    При этом главное не только количество функций ядра, но и
    - Удобство использования эти функциями
    - Простоту их изменения "под себя"
     
  18. Михаил

    Михаил Активный пользователь

    С нами с:
    12 июл 2009
    Сообщения:
    545
    Симпатии:
    0
    Адрес:
    Bielarus
    да symfony2 лучше чем yii
    100%/

    p/s экспертное мнение.
     
  19. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
  20. Amertox

    Amertox Активный пользователь

    С нами с:
    21 мар 2011
    Сообщения:
    17
    Симпатии:
    0
    Нет общего понятие "лучше". Каждому свое. Это как машины - нельзя сказать, что "ауди" лучше чем "девятка", потому что придет кто-то и скажет: "девятку лучше, потому что а) она дешевле, б) запчастей много и в) бить не жалко". Тут не поспоришь. А вот с тем, что а) ауди мощней девятке, б) ауди долговечней девятки и т.д - это как постулаты. Тут спорить нечего.

    Ситуация с фреймворками аналогичная.
     
  21. Михаил

    Михаил Активный пользователь

    С нами с:
    12 июл 2009
    Сообщения:
    545
    Симпатии:
    0
    Адрес:
    Bielarus
    tommyangelo
    да-да типо того.


    софизм и враньё.
    да симфоени быстрее, чем yii, можно дополнительно подключить сотню модулей из зенда, , миграции, форм билдер, работа с конфигурациями в разных форматах, разные окружения (тесты\рабочее) а не одно.

    ещё есть http://fuelphp.com/
    говорят классная вещь, но я не видел.
     
  22. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    Михаил
    В Yii можно дополнительно подключить сотню модулей из зенда, есть миграции, есть еще много чего.

    Я к сожалению с Симфони не работал, да и на Yii ничего супер-сложного не делал, так что тяжело сравнивать.

    Возможно, ты тоже после более плотного знакомства с Yii изменишь своё мнение.
     
  23. Amertox

    Amertox Активный пользователь

    С нами с:
    21 мар 2011
    Сообщения:
    17
    Симпатии:
    0
    Хорошо что есть такие люди :)
     
  24. Amertox

    Amertox Активный пользователь

    С нами с:
    21 мар 2011
    Сообщения:
    17
    Симпатии:
    0
    2 Михаил

    Расскажите всем, как вы мерили скорость Yii и Симфони, приведите результаты тестов, код. Пока всего этого нет - ваши слова пусты, как незаполненная форма ответа на этом форуме.
     
  25. Михаил

    Михаил Активный пользователь

    С нами с:
    12 июл 2009
    Сообщения:
    545
    Симпатии:
    0
    Адрес:
    Bielarus