Рельсы или Синатра?С чего лучше начать обучение программисту PHP?[закрыто]
-
19-09-2019 - |
Вопрос
Я слишком долго работал с PHP, и он мне наскучил.Я также хочу выучить новый язык.
Я использую Ruby, и он мне нравится.Мне нужно сделать выбор между Rails и Sinatra, какой из них вы бы порекомендовали?Правда ли, что Sinatra нельзя использовать для создания сложных приложений, а только для простых приложений?
Решение
Используйте Rails, у него гораздо больше документации/книг, чем у Sinatra.Кроме того, он более «мейнстримовый», и многие IDE относятся к рельсам по-особому, как первоклассный гражданин, поэтому начинать с него — хорошая идея.
Хотя на любом из них можно написать любое приложение, Sinatra спроектирован более простым, поэтому на Sinatra сложное приложение может потребовать дополнительных усилий.
Другие советы
Если вы «очень новичок» в Ruby, возможно, вам следует сначала обратиться к Синатре:он действительно небольшой, хорошо документированный и простой в освоении.Затем, для более сложных веб-приложений, вам следует попробовать Ruby On Rails.
http://railsmagazine.com/issues/5 — это бесплатная вводная статья в формате PDF, которую я написал для журнала Rails Magazine.
О, пожалуйста, о, пожалуйста, не начинайте с рельсов.Это как первый раз идти в бой против танковой дивизии.Лучше начать с беспокойных туземцев и продвигаться вверх.Хорошо, это не лучшая аналогия, но рельсы — это слишком много времени для обучения.Вы можете очень быстро освоить Синатру, а затем переход на рельсы будет разумным шагом вперед.То же самое, только больше полезных вещей.С рельсами есть масса запутанных вещей.Они добавляют много чего в язык и т. д.Если вы не знаете Ruby и базовые классы, просто выполняйте Sinatra.Это быстро, просто и вам не нужно изучать миграцию, рейк и т. д.
вам обязательно следует знать оба, потому что они были созданы для разных целей.Sinatra — это микрофреймворк для небольших приложений.Rails — это полноценная MVC-инфраструктура с множеством помощников практически для всего.
Я бы сказал, что Sinatra легче выучить, если вы знаете Ruby, потому что он очень маленький и следует общим идиомам Ruby.но выучить рельсы не намного сложнее.документация великолепна, и в Интернете вы найдете множество руководств и инструкций.
как я уже сказал, полезно знать и то, и другое, чтобы вы могли выбрать правильный инструмент для работы.
Сначала пойдите с Синатрой.Он действительно прост и понятен, а также охватывает основные принципы Rails (архитектура MVC и т. д.).Затем вы можете перейти на Rails.Кроме того, благодаря вашим знаниям Sinatra вы можете писать приложения Sinatra на Rails Metal, что упростит создание API.
Rails или Sinatra — отличный выбор для обучения.
Я начал работать над проектом на Rails, где я буквально ничего не знал о веб-разработке или Ruby, в октябре 2009 года (мой соучредитель помог мне преодолеть некоторые первоначальные препятствия и привел меня в RTFM).Я столкнулся с некоторыми проблемами, но смог довольно легко написать бизнес-логику.Недавно я начал переносить проект на движок приложения и использовать Sinatra в качестве фреймворка, и это был невероятный процесс обучения.В основном для изучения всего того, что Rails делает автоматически.Это также было полезно для просмотра упрощенного определения членов класса и их метода сохранения (хотя, к сожалению, миграции - это лаваш, фоновые процессы для изменения формата).
Возможно, вы захотите подумать о том, где вы будете развертываться.
Поскольку меня в первую очередь интересуют простые приложения с низкой стоимостью сервера, и Heroku, и Google App Engine хорошо подходят.Rails/ActiveRecord/SQLite и Heroku Works Supl Sinatra/DataMapper/Datastore.
Rails также успешно работает на движке приложений, так что и этот выбор открыт.IMO Heroku немного проще развернуть.
Возможно, вам захочется посмотреть на Рамаза в дополнение к Синатре или вместо него.Ramaze, кажется, находится между Ruby on Rails и Sinatra с точки зрения функций и удобства использования.