• Notepad++ - как сделать автоматический выбор синтаксиса "xml" для файлов с расширением "config"?

    girichev
    @girichev
    Settings —> Style Configurator

    image
    Ответ написан
    Комментировать
  • Библиотека AR для PHP?

    zizop
    @zizop
    AR обладает рядом преимуществ:
    — единая точка доступа к БД (объект запроса), а значит легко можно добавить такие вещи, как: журналирование, кэширование, контроль доступа и т.д.
    — отсутствие необходимости писать самому SQL-запросы -> меньшее кол-во ошибок в следствии автоматизации.

    Для начала я бы на вашем месте взял Zend_Db. Хотя многие и говорят, что это не AR в чистом виде, а скорее Table Data Gateway, но в вашем случае это не важно.
    Сами мы пользуемся Doctrine ORM + собственный набор расширений к ней, и очень довольны.
    Ответ написан
    Комментировать
  • Библиотека AR для PHP?

    @Elkaz
    Всё индивидуально.
    AR уменьшает скорость разработки приложения, но (не)значительно увеличивает скорость его работы. В некоторых приложениях выигрыш может быть достаточно существенным, в некоторых практически незаметным или даже получить отрицательное значение. Всё зависит от вашего проекта и от вашего умения построить правильную архитектуру приложения.

    P.s
    Пользовался только Doctrine.
    Ответ написан
    1 комментарий
  • Библиотека AR для PHP?

    Gibbzy
    @Gibbzy
    Можно выдергнуть это из любого фреймворка например из ZF или yii
    Еще Doctrire есть.
    Ответ написан
    1 комментарий
  • Выборка списка из отдельной таблицы

    DevMan
    @DevMan
    SELECT table1.`id`, table1.`title`, GROUP_CONCAT(table2.`name` SEPARATOR ', ') as names 
    FROM `table1` JOIN table2 ON table1.`id` = table2.`sourceid` 
    GROUP BY table2.`sourceid`
    
    Ответ написан
    Комментировать
  • Какой движок или framework лучший для создания сложных онлайн-анкет?

    @Jodes
    Зависит от религиозных взглядов.
    Я бы все же выбрал Yii
    Ответ написан
    Комментировать
  • В какую IDE перейти с notedpad++ (веб, в осн. serverside[php,perl] + немного clientside[html/css,js/jquery])?

    taliban
    @taliban
    php программист
    раотал в нетбинс, отличная штука, хотя и громоздкая, но очень удобная + есть плагины по всем пожеланиям. Сейчас перешел на комодо, менее громоздкая, менее удобная, но у нее свои плюсы. Использовал zend studio, еще более громоздкое (наследние еклипса) не вдохновило, у меня с еклипсом не сошлось изначально, использовал geany, маленькая простенькая, на уровне notepad++. А вообще советую поставить все, поработать в каждой через день, тогда в течении недели появится одна именно та. Нет лучшей иде, есть та которая нам подходит =)
    Ответ написан
    1 комментарий
  • Резюме для вакансии с зарплатой > 100 тыс. рублей?

    VBart
    @VBart
    На вакансию за 100к хотят видеть не резюме, а мозги ;)
    Ответ написан
    1 комментарий
  • Валидация кнопок социальных сетей?

    k12th
    @k12th
    console.log(`You're pulling my leg, right?`);
    Для первого надо добавить неймспейс:
    <html xmlns="http://www.w3.org/1999/xhtml" xmlns:g="http://google.com/"> 

    Впрочем, кажется, неймспейс можно добавить и непосредственно в сам элемент.

    Для второго заменить все & на &amp;
    Ответ написан
    4 комментария
  • MVC, как лучше избежать дублирование кода?

    @bioroot
    Первым делом определитесь чего вы хотите на самом деле. Не понятно почему отсутствие проверки родителя — непрофессиональность. Если она не нужна, то непрофессиональность как раз её написание ради какой-то абстрактной идеи. Например, для региона может быть нужно сделать отдельную страницу при наличии страны и отсутствии его самого («для указанной страны не существует такого региона»). Если все ошибки ведут на одинаковую надпись «страница не найдена», то дополнительные проверки ни к чему.

    Далее надо определиться с реализацией. Но тут уже вам должно быть виднее какая у вас архитектура. По сути всё предложенное выше сводится к классическому паттерну Strategy: весь общий функционал оставляем в родительском классе, а все частности (ключевой момент — их должно быть мало) переносим в наследников. В вашем случае предком будет CRUDController с реализацией метеодов завязанной на modelClass, а потомками классы определяющие этот modelClass и метод checkRequest. Дёрганье checkRequest прописывайте где вам нравится. Не знаю как устроен Yii, но если он позволяет создавать контроллеры произвольных классов не наследуясь ни от кого, то имеет смысл вообще объявить CRUDController абстрактным и в нём же прописать абстрактный метод checkRequest. Тогда это будет вообще Strategy из книжки, а вы получите возможность использовать checkRequest в других методах CRUDController не опасаясь того что в наследниках он не определён. И ещё обычно в современных фреймворках есть метод, который дёргается перед любым экшеном контроллера. Возможно, там вашему checkRequest самое место.

    Продолжая фантазировать на тему, можно сделать тип модели modelClass передаваемым в параметре. Или получать его исходя из того что вам передали. Только надо сделать карту допустимых значений. Что-нибудь типа
    array(
    	...
    	'region' => array( 'model' => 'regionModel', 'parent' => 'countryModel' ),
    	'country' => array( 'model' => 'countryModel', 'parent' => null )
    )
    

    и из этой карты получать модель и родителя проходя по ключам массива и проверяя на существование параметра с таким ключом. Как только нашли — проверяем существование родителя и работаем по общим методам с уже определённым значением modelClass.

    Почему все советуют делать Strategy. Потому что эта штука зарекомендовала себя в боях. Классический ООП подход часто приносит больше трудностей при разработке (надо быть аккуратнее и чаще всего писать больший объём кода), но даёт заметный выигрыш при необходимости изменить какую-то часть проекта. К примеру, «нафантазированный» способ реализуется быстрее (надо добавить пару методов и карту соответствия, против базового класса + 5 классов дочерних для сущностей). Но при этом если понадобиться добавить какой-то новый экшн (например, добавление комментария к ревью), то в случае со стратегией вы просто впишите его в нужный класс. А для более простого метода придётся ломать себе голову с изобретением исключения в логике. Пару раз так можно сделать, но… после 12 костылей код превратится в тыкву.

    Но, в конечном итоге, решать всё-равно вам. Может быть и второй быстрый способ подойдёт, потому что «там стопудова ничего не будет меняться» (не верьте тем кто так говорит — обязательно будет). Может вы их скрестите и внесёте в базовый класс стандартную реализацию checkRequest, а в дочерних классах будете определять только modelClass и parentModelClass. Всё зависит от конкретных потребностей и архитектуры проекта.
    Ответ написан
    1 комментарий
  • Литература для переквалификации PHP -> Python?

    @bekbulatov
    Аналоги функций php в питоне www.php2python.com
    Ответ написан
    Комментировать
  • Netbeans + RDP + x*1000км = неописуемые тормоза редактора?

    Wott
    @Wott
    Я честно не могу понять зачем выворачивать технологии?
    Поставь окружение локально и DVCS + VPN. Тем более что netbeans — один из наименее требовательных к ресурсам и достаточно мобильный IDE
    Ответ написан
    2 комментария
  • Модульная архитектура на примерах..?

    taliban
    @taliban
    php программист
    Я делал свой фреймверк на основе евентов. В ядре при каждом чихе генерится евент, дополнения этим пользуются, при желании генерят свои. Удобно, не накладно, быстро и просто. Недостаток — при евенте видна лишь та часть приложения которую тебе дали.
    При использоании каскадной файловой системы тоже есть свои преимущества, но это медленней, как ни крути а скан фс и поиск файлов это долго.
    Еще есть варианты с регистрацией компонентов в ядре и потом ядровызывает их само, но я с такими вещами не работал, мне кажется это не акруально.
    Ответ написан
    4 комментария
  • Среда разработки битрикса. Для чего он нужен и какие у него преимущества?

    un1t
    @un1t
    Аторы Битрикса врядли слышали слова типа ORM, Git и TDD, и расчитан он на кодеров которые их тоже не знают.

    1. Никак не помогает, только мешает дурацким API, дурацкой структурой БД, очень медленной скоростью, деревянной системой шаблонизации, тем что страницы хранятся в текстовых файлах и т.п…
    2. Ни один нормальный нормальный разарботчик с этой штукой долго работать не будет, работают с ней только кодеры. А разработчики из таких проектов быстро сваливают.
    3. ИМХО нет таких случаев, единственный случай если только вы уже неделю не ели, денег нету и это единственная работа в городе.

    Код битрикса представляет собой спагетти и голимый копи-паст. Есть например модуль sale.ajax.order не помню точно название, там более 1500 строк кода более 8 уровней вложенности и не одной функции. Логика работы этого модуля также очень-очень странная, я вообще не смог понять как разработчики до этого додумались и почему нельзя было сделать нормальную логику.
    Ответ написан
    1 комментарий
  • Кириллица в SQLite, Android?

    @Next_Alex
    Ну если мне не изменяет мой склероз, для нормальной работы с языком, отличным от английского, в SQLite необходимо прикручивать к нему ICU.
    Пробуй копать в сторону сюда:
    http://habrahabr.ru/blogs/sql/57915/
    http://stackoverflow.com/questions/3944207/unicode-support-in-android-ndk
    http://www.goneeded.com/android/projects/ICUaInternationalmComponentsmformUnicodeb.html
    Ответ написан
    1 комментарий
  • Магистратура в Санкт-Петербурге?

    @GANGTA
    Могу посоветовать Санкт-Петербургский государственный университет
    информационных технологий, механики и оптики, слышал много
    Ответ написан
    1 комментарий
  • IDE для разработки на PHP?

    Lifelover
    @Lifelover
    нетбинс если надо бесплатно и сердито)
    Ответ написан
    1 комментарий
  • IDE для разработки на PHP?

    GodSon
    @GodSon
    NetBeans
    Ответ написан
    Комментировать