문제

은 더 나은 그것을 개발하 ruby on rails 에서)windows b)리눅스 또는 c)맥.왜?

편집:

왜 나는 이는 내가 들어 있는 개발 ruby on rails windows 같이 안정적이지/비할 때 사용 ruby on rails 니다.(없는 경우 또는 사실이 아니다).

사실 다윗이 Heinemeier 한손(창조자의 Ruby on Rails)을 사용하는 것으로 보인 맥도록 초기 노출이 될 것으로 보인 Ruby on Rails 응용 프로그램과 맥도 함께.

도움이 되었습니까?

해결책

나는 강하게 당신을 조언을 개발하지 않는 응용 프로그램을 시작합니다.왜?첫째,많은 것들 틈에서 윈도우와 모든 업그레이드 과 대부분의 보석 또는 플러그인을 제작자를 사용하지 않는 윈도우도록 그들에 대해 걱정하지 않는 윈도우고 실행하지 않는 테스트는 그것에(있는 여러 가지 큰 이름이 있는 사람은 평평했다는 윈도우가 자신의 문제가 당신).당신을 찾을 수 있*nix 대 Windows 문제가 당신을 물에서 엉덩이시됩니다.경로 이름의 슬래쉬에 사소한 차이가 ssh 구현 콘솔 글꼴 문제,rubygems,카피스트라노,etc....

무엇이 일어나는 후에 잠시 동안은 당신이 항상 있을 것이 이성에서 당신의 머리는 당신이 가진 모든 시간을 디버그가"말하는 이것이 문제는 윈도우?"과는 조금 목소리가 비용니다.를 사용하여 어떤 배터리의 모든 하루가 있습니다.

Mac 는 면에서 더 비싼 upfront 달러(는 슬프게도 나는 없다)와 리눅스 플랫폼은 더 비싸 지출 측면 하루나 이틀을 얻으려고 노력 하 고 무선 작동하지만 그들은 선행 하나 있습니다.잔소리의 불안정하여 윈도우 레일 개발은 지속적인 비용입니다.최소될 때까지 커뮤니티 거부하지 않는 것이 진정한 크로스 플랫폼입니다.

예로 들어 보면서 오이 있습니다.어떤 이유는 테스트 프레임워크에 의존한 특정 콘솔 구성에서 사용할 수 없습 windows.그래서 그것을 사용하 Windows 에서 당신은 글꼴을 변경하려면 콘솔에서 및 코드 변경 페이지에서 당신의 콘솔입니다.그렇지 않으면 편지"a"에서 사라지는 모든 출력됩니다.왜?기 때문에 그것이 잘 작동*유닉스 시스템과 당신에게 리(제 생각에 이것은 거대한 하자 그리고 아주 아주 가난한 디자인의 선택에도 무시한다면 윈도우).

당신은 또한 느낌이 같은 사람이다.엘리베이터에 모든 시간을 가져 windows 문제입니다.

제가 말한 모든 이로 어떤 사람은 윈도우를 사용한 자신의 개발 플랫폼에서는 순간입니다.어떻게는 냄새가?

[늦은 편집:루비에도 약 3 시간 느린이드 응용 프로그램을 시작합니다.이 영향을 미칠 것이 귀하의 의지 테스트를 실행한 모든 시간과는 상처 당신의 TDD 의견 주기]

다른 팁

당신이 가장 편한 것이 중요하지 않아야합니다. 나는 세 가지를 모두했다.

나는 유닉스 기반이 아니기 때문에 Windows가 조금 불편하다고 생각합니다. CLI는 조금 더 어리 석습니다.

(그러나 NetBeans와 같은 도구를 사용하는 경우 CLI가 많이 필요하지 않습니다).

나중에 Linux 시스템에 배포 될 앱을 개발할 때 Windows를 사용하는 것이 좋습니다. 연습용 앱을 개발하는 경우 Windows는 괜찮습니다.

문제는 Linux를 목표로하는 경우 웹 서버, DBM, Memcached 등 개발 시스템에 전체 스택을 원할 것입니다. (나는 그것을했다), Linux 기계보다 오래 걸릴 것이고, 느려질 것이며, 무언가가 작동하지 않을 때 도움을 찾는 데 더 어려움이 있습니다.

또한 Windows에서 GEM 및 플러그인 지원 문제를 해결할 수 있습니다. 디렉토리 경로 및 기타 이상함 대신 예를 들어 . Rubyists는 도움이 되려고 노력하지만 대부분의 ROR 작업이 Mac 또는 Linux 시스템에서 수행되기 때문에 Windows 지원이 제한됩니다. 예를 들어 Capistrano는 Windows에서 실행하는 데 문제가있었습니다 (현재 고정 될 수 있음).

대안으로, Windows를 데스크탑 머신으로 사용할 수 있지만 Linux 시스템을 앱을 실행하기위한 개발 서버로 사용할 수 있습니다. 모든 오래된 PC는 Linux를 잘 실행합니다. Samba를 사용하여 Windows 시스템에서 원격 액세스 및 편집하십시오. Linux 머신에는 디스플레이가 필요하지 않으며 원격으로 만 사용합니다.

포함하도록 앱의 구성/환경/Development.rb 만 변경하십시오.

config.action_controller.consider_all_requests_local = true

따라서 Windows 시스템에서 브라우저에서 스택 추적이 실행되는 것을 볼 수 있습니다.

문안 인사,

래리

Ruby on Rails는 모든 플랫폼에서 잘 작동하지만 공구 지원은 다양합니다. 예를 들어, TextMate는 Rubyists에서 가장 좋아하는 편집자이며 Mac 전용입니다. TextMate에서 ROR과 함께 작업하는 데 도움이되는 도구를 많이 찾을 수 있으므로 Mac에서 ROR 개발을 수행하는 것이 가장 좋습니다.

나는 Mac과 Linux를 직접 사용합니다.

UNIX 기반 시스템은이 시스템에서 모든 보석을 사용할 수 있거나 컴파일 할 수 있으므로 저항 경로를 제공합니다.이 시스템에서는 Windows 시스템에서 쉽지 않습니다. Windows에서는 불가능하지는 않지만 일을하지 않고 어떤 경우에는 일을하는 데 더 많은 시간을 할애 할 것입니다.

내가 선호하는 Unix 시스템 중 Mac은 Mac입니다. Linux 시스템에서 부족할 수있는 모든 UNIX 전원과 모든 인터페이스 니스가 있습니다. 물론 매일의 텍스트 메이트 없이는 살 수 없었습니다. 이다.

나는 1981 년 초기 유닉스 시스템에서 프로그래머로 인생을 시작했습니다. 나는 1995 년까지 순수한 유닉스 사람을 머물 렀습니다. 그런 다음 '물건'이 일어 났고 (사업 소유권) 창문이 내 인생에 들어 왔습니다.

그래서 2007 년에 나는 순수한 창문을 배우기 시작합니다. 나는 Solaris 인 Joyent에 배치했습니다. 나는 큰 사건없이 Solaris/Apache/Mongrel에 배치 된 두 개의 대형 앱을 성공적으로 개발했습니다.

내가 기억하는 유일한 Wind

솔직히 Windows에서 개발하고 UNIX에 배포하는 데 아무런 문제가 없습니다. 그러나 나는 광범위한 유닉스 배경을 가지고 있었는데, 나는 유닉스를 모른다면 이야기가 똑같을지 확신하지 못한다.

또한, 나는 비즈니스를 위해 구축 한 ROR 앱에서만 작업 할 것입니다. 다른 ROR 앱을 구축 할 필요가 없으며 플러그인을 개발하지 않을 것입니다. 다른 프로젝트를 인수 할 필요가 없습니다. 아무도 내 Windows 개발 환경에서 잘 작동하지 않는 무언가에만 사용할 수있는 것을 포함한다고 주장하지 않습니다. , 등...

이렇게 말하고 싶습니다 :

고용주를위한 웹 앱을 개발할 책임이 있고 해당 고용주가 Windows 기반이므로 ROR을 플랫폼으로 고려하지 않아야합니다. 고용주가 충분히 크지 않고 하우스 유닉스 시스템에서 보증 할만 큼 중요한 프로젝트가 아니라면 앱은 제 3자가 배치해야합니다.

따라서 유닉스에 대한 스쿼트를 알고 있다면 도중에 약간의 도움이 필요할 수 있습니다. 제 3 자 레일 호스트와 함께 가면 지원 포럼을 확인하고 배포/설정 및 유지 보수 문제를 통해 비 유닉스 사람에게 기꺼이 대화 할 수있는 사람들이 있는지 확인하십시오.

Joyent에서 마이그레이션을 실행하려면 데이터베이스 GUI Thingy를 통해 데이터베이스에 로그인 한 다음 '실행'명령을 내려야합니다. 좋아, 그래서 나는 UNIX 쉘을 위해 입력을 입력하는 간단한 text_field를 얻습니다.

CD/USER/MYHOME/사이트/MYSITE && RAKE DB : 마이그레이션 RAILS_ENV = 프로덕션

유닉스 배경이 없다면 알아 내기가 쉽지 않았을 수도 있습니다.

Ruby 1.9.2 및 Rails 3.2에 따라 Windows는 자동 테스트 및 스포크에 대해 훨씬 느리게 느리게 진행됩니다 (동일한 프로젝트의 경우 Linux의 몇 초에 비해 평균 1 회 전체 사이클이 평균 15 초가 걸렸습니다). Windows에 훨씬 익숙하기 때문에 기능 (Tortoisegit, WinSCP). 필수 기능이 두 플랫폼에서 모두 작업하고 있음을 확인 했으므로 속도에 비해 파손이 더 적은 문제라고 생각합니다.

문제가되지 않습니다. 당신이 순수 주의자라면, 당신의 개발 환경은 운영 체제 및 루비 및 레일의 버전과 관련하여 가능한 한 생산 환경과 밀접하게 일치해야합니다. 그러나 실제로는 중요하지 않습니다.

일부 보석은 Mac에서 작동하지만 Linux의 맛은 거의 없습니다 (마지막으로 시도했을 때 Gitjour와 같은).

Mac을 사용하는 것은 당신이 개발 한 것이 다른 OS에서 작동 할 수 있다는 것을 알고 싶은지에 따라 좋든 나빠질 수 있습니다.

나는 OSX와 Linux (Ubuntu) 모두에서 경전철 개발을 수행했으며, 그 차이는 거의 눈에 띄지 않는다는 것을 알았습니다 (루비와 레일 측면에서 ... 분명히 데스크탑 환경은 두 OS 사이에 크게 다릅니다).

다른 사람들이 말했듯이, 대부분의 Ruby/Rails 튜토리얼, 보석, 플러그인 등은 Unix 유형 시스템을 지향하기 때문에 물론 Windows에서 Ruby/Rails 개발을 시도하는 성가신 딸꾹질이있을 수 있다고 가정합니다. Ironruby 사용. :-)

Rails 개발을위한 UNIX 환경을 설정하기위한 번거 로움이 낮은 대안은 VMware, VirtualBox, VirtualPC 등과 같은 가상화 소프트웨어에서 Ubuntu 또는 Fedora와 같은 Linux 배포판을 사용하기 쉬운 Linux 배포판 중 하나를 실행하는 것입니다.

Windows의 레일이 문제가 될 수있는 많은 이전 게시물에 동의합니다. 단순히 레일을 위해 개발하는 많은 사람들이 Mac 또는 Linux에 있으므로 결과적으로 Windows 버그를 찾을 수없는 경우에 특히 플러그인의 문제입니다.

Rails의 한 가지 문제는 IDES입니다. Mac의 TextMate는 인기있는 선택 인 것처럼 보이지만 Linux 및 Windows 옵션은 매우 단편화되었습니다. 일반적으로 나는 이것에 대해 걱정하지 않을 것이지만, IDE 지원이있을 때 레일이 훨씬 더 관리 가능하다는 것을 알았습니다. 일반적으로 합리적으로 복잡한 디렉토리 구조에 많은 파일이 위치하고 있으므로 IDE가있는 파일을 가질 수있는 파일을 쉽게 찾을 수있는 파일이 있습니다.

당신이 고려하고 싶은 또 다른 것은 배포 환경의 모습입니다. 예를 들어, 사람들이 Linux 서버에 Rails 앱을 배포 할 수 있습니다. 이 경우 OS X에서 개발하여 버그 주위를 치울 수 있지만 불행히도 새 소프트웨어를 배포 할 때 버그가 발생합니다. 그것이 당신이 코드를 디버깅하고 싶은 마지막 장소입니다. 물론 스테이징 환경에서 코드를 먼저 테스트해야하지만 너무 자주 사람들은이 단계를 건너 뜁니다.

Ruby에서 개발하는 동안 항상 Windows 주변의 작업을 해킹해야하기 때문에이 질문에 대한 답변을 검색하는 동안 Linux 또는 Mac을 사용하는 경우 Linux 또는 Mac을 사용한다고 말할 수 있습니다. 오늘은 공식적으로 Ubuntu 9.04를 사용하기 시작했으며 그 이유는 다음과 같습니다.

1) Capistrano, Vlad를 사용하고 Rubyforge를위한 보석을 만드는 것과 같은 SSH 일을 할 수는 없습니다. Cygwin을 사용하여 이러한 작업을 수행 할 수 있지만 Cygwin과 Windows를 사용하는 것은 ASS에서 모든 것을 사용하는 것이 고통 스럽습니다.

2) 마지막 빨대는 Windows가 프로세스를 포크 할 수 없다는 것을 깨닫기 위해 Rails 앱에서 배경 작업을 시작하려고 할 때였습니다. 이 문제에 대해 계속 노력해야합니다.

Ubuntu 9.0.4는 꽤 뜨겁고 감명을 받았기 때문에 그렇게 나쁘지 않을 수도 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top