Должен ли я переписать свое приложение Codeigniter / PHP в Ruby on Rails?Зачем? - PullRequest
6 голосов
/ 03 декабря 2010

У меня уже есть v1 моего веб-приложения, написанного на Codeigniter / PHP.Сейчас я работаю над версией 2, в которой будут существенные изменения во всех компонентах MVC.

Мне довольно комфортно с CI, и мне это нравится.Очень интуитивно понятно для C-кодера, как я.Но мне интересно, стоит ли переписывать приложение в Rails?Будет ли выигрыш в производительности стоить затрат на изучение другой структуры с нуля?Я хочу быть практичным и не гоняться за чем-то просто потому, что это круче или веселее.

Вот несколько критериев производительности:

  • Создание HTML и CSS довольно трудоемко.Есть ли у Rails что-нибудь особенное, чтобы помочь с этим?

  • Я хотел бы повторно использовать код других людей для часто реализуемой функциональности (например, взаимодействие с FB, Twitter и другими социальными сайтами).Сколько еще повторного использования стороннего кода я получу с Rails?

  • Насколько больше пользы я получу от сообщества Rails и сообщества CI?

  • Упростите автоматизированное тестирование.Сегодня я тестирую вручную, что является трудоемким.

Я был бы признателен за конкретные преимущества против идеалистических / религиозных аргументов.Спасибо!

Ответы [ 3 ]

2 голосов
/ 03 декабря 2010

Codeigniter - это, очевидно, фреймворк, построенный на PHP.Хотя между PHP и Ruby есть фундаментальные различия, все ваши критерии могут быть выполнены с любым из двух языков.Переход на Ruby может показаться пустой тратой времени, учитывая ваши требования.Существует множество способов автоматизировать HTML / CSS в PHP, и существует множество интеграций с открытым исходным кодом Facebook / Twitter (просто посмотрите разделы для разработчиков FB и Twitter).Существует также множество вариантов тестирования PHP с открытым исходным кодом.Google твой друг!IMO, было бы большой тратой времени переписать все ваше приложение ради ваших критериев, когда есть множество решений PHP для вашей проблемы.

1 голос
/ 03 декабря 2010

Для меня это больше вопрос того, насколько велико ваше текущее веб-приложение.Если вам потребовалось несколько выходных, и у вас нет жестких сроков, я бы переключился на Ruby / Rails.

Однако, если он значительно большой, и вы действительно хотите своевременно придумать R2Я бы предложил придерживаться PHP.

Что касается ваших конкретных вопросов, я не слишком знаком с PHP, но я не думаю, что Rails даст вам намного больше в отделе HTML / CSS.Не уверен насчет следующих двух пунктов.В Ruby есть гораздо лучшие инструменты автоматизированного тестирования, и все время появляются новые вещи.

Вот пара ссылок о Дереке Сиверсе, который перешел с PHP на Rails на PHP и теперь снова любит Rails.Это может помочь вашему мышлению.

http://www.oreillynet.com/ruby/blog/2007/09/7_reasons_i_switched_back_to_p_1.html

http://railstutorial.org/ruby-on-rails-tutorial-book#foreword

1 голос
/ 03 декабря 2010

Я думаю, что лучшее сравнение здесь будет CI с Symfony. Symfony 1.4 - это PHP-фреймворк, в значительной степени сравнимый с функциональностью Rails - насколько я могу судить по моим исследованиям (я не программист на Ruby).

Если бы вы переключились на Symfony, вы бы получили много инструментов для повышения производительности. Symfony 1.4 + Doctrine имеет возможность генерировать для вас много кода / интерфейса. Symfony / Doctrine любит держать вас подальше от повторяющихся задач, таких как построение моделей и проверка данных.

Если вы хотите заняться исследованиями раньше, я предлагаю прочитать бесплатную электронную книгу Symfony Пиратское Symfony , чтобы дать вам представление о том, как все работает в Symfony.

Теперь, учитывая все сказанное, я чувствую себя обязанным упомянуть, что команда Symfony работает над Symfony 2.0, который не будет обратно совместим с Symfony 1.4. Ожидаемая дата выпуска - март 2011 года. Я ожидаю, что обслуживание Symfony 1.4 будет продолжено и в будущем.

- Правка -

Я также думаю, что придерживаться вашего родного языка позволит вам развиваться с наименьшими затратами. Переход на новый язык означает необходимость изучать его плюсы и минусы, чтобы быть по-настоящему продуктивным.

IE находится в точке, когда вы не вернетесь через 6 месяцев, чтобы исправить ошибку, которую опытный разработчик Ruby мог бы избежать.

...