Разработка в Ruby на машине с Windows слишком контрпродуктивна? - PullRequest
5 голосов
/ 14 февраля 2010

Кажется, что это очень контрпродуктивно, потому что так много драгоценных камней будет разбиваться на окнах. Я имел дело со множеством проблем с гемами mysql и ruby-mysql (ошибки сегментов, возникающие в самом геме, класс под названием UnixSocket, очевидно, плохо работает на машинах с Windows и т. Д.).

Я просто трачу свое время здесь? Стоит ли переходить на другой язык сценариев?

Ответы [ 3 ]

8 голосов
/ 14 февраля 2010

У меня очень мало опыта работы с Ruby в Windows, но когда я начинал работать с Ruby, я работал в Windows, и у меня сложилось общее впечатление, что это не родная система Windows.

Итак, после многих лет использования преимущественно Windows, переход на Ruby побудил меня вернуться к моей исходной системе Unix, на этот раз к Linux. Ruby работал с меньшими хлопотами, и запуск bash в его родной среде был лучше, чем у Cygwin, который был в основном «ОК». Я был счастлив.

Тогда мой новый работодатель заставил меня переключиться на Mac. Теперь я очень избалован, но очень счастлив.

Я понимаю, что это субъективно, но, согласно ISTM, Linux был намного лучше, чем Windows, а Mac намного лучше, чем Linux. Я мог бы по-прежнему запускать Windows в VMWare Fusion, если бы захотел, но я этого не делаю. У меня есть несколько виртуальных машин Linux.

Я думаю, что я действительно пытаюсь сказать, что есть причина, по которой Ruby лучше всего не развертывать в Windows. Люди, которые запускают Ruby: .. Я пытаюсь придумать не уничижительное слово здесь ... вряд ли можно найти в Windows.

Так что это поворотный момент для вас. Да, .net - это сложная и хорошо документированная среда, да, Windows надежна уже несколько лет, и да, на данный момент это респектабельная система. Да, он работает с переполнением стека, и некоторые гуру - парни из Windows. Но это просто лакмусовая бумажка для ... черт, опять пропущено это слово ...

Многие люди запускают Windows, потому что они просто не знают, что еще запускать. Linux - хорошая альтернатива, если вам придется покупать систему самостоятельно. И если вы или ваш работодатель можете себе это позволить, Mac (под Unix) даст вам все, что делает Linux, плюс мир, специфичный для Mac.

Пора выбирать ...: -)

1 голос
/ 14 февраля 2010

Я работаю с Ruby для Windows в течение нескольких лет, включая создание и развертывание приложений Enterprise Rails для интрасети, работающих под управлением Oracle, MySQL и SQLServer, на серверах Windows и Solaris.

Согласен, есть несколько драгоценных камней, которые имеют скомпилированные компоненты, авторы которых не создали версии для Windows - это нормально, это платформа с открытым исходным кодом, и им не нужно, если они этого не хотят. Точно так же вы имеете полное право (а) игнорировать библиотеки, не имеющие версий mswin32 или mingw32, или (б) отдавать что-то, компилируя их самостоятельно!

Что касается драгоценного камня MySQL, IIRC для Windows, вам нужен адаптер "чистого Ruby", который не использует MySQL C API: http://github.com/tmtm/ruby-mysql или gem install ruby-mysql

0 голосов
/ 14 февраля 2010

Я не думаю, что вы зря тратите время. Я работал с двумя парнями, которые выполняли обширные проекты над приложениями Ruby on Rails с использованием Windows XP, например крупные долгосрочные проекты. Кажется, они совсем не против. Они оба работали над этим с помощью среды IDE NetBeans. (Имеет версию для Ruby.)

Я попробовал это сам, когда только начал работать с Ruby, и у меня не было много ошибок или проблем с гемами, хотя некоторые вещи работали неловко. Обычно это был обходной путь.

Я решил, что для разработки на Ruby я бы предпочел использовать OS X или CentOS Linux. Но я точно знаю, что работа на Windows возможна.

Стоит обратить внимание на то, что 90% сообщества Ruby работает на OS X и развертывается на Linux, поэтому вы получите дополнительную помощь, если будете использовать одну из этих ОС.

Еще одна вещь, на которую стоит обратить внимание, это то, что вся вселенная и культура Ruby очень ориентирована на командную строку Unix с использованием оболочки bash. Все ваши учебные пособия и прочее предполагают, что это так. У них будут инструкции типа «Перейти к оболочке и запустить # rake db:migrate», и будет намного легче следовать этим инструкциям, если у вас полнофункциональная оболочка с завершением команд, историей команд и т. Д. Так что если вы хотите для работы в Windows вы можете посмотреть что-то вроде MinGW .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...