루비 또는 파이썬? [닫은]


24

이 질문은 매우 주관적이고 개방적입니다. 그것은 내가 스스로 연구하고 스스로 결정해야 할 무언가처럼 들릴 수도 있습니다. 그러나 나는 그것을 거기에 넣고 다른 사람들로부터 생각을 얻고 싶습니다.

짧은 이야기 짧게-나는 쥐 경주에 불타고 올해 자체 자금 안식년입니다. 그것의 대부분은 기업의 갈등에서 벗어나 여행을 떠나는 것이지만 새로운 기술을 가지고 놀고 자체 학습 프로젝트를 수행하고 프로그래밍 속도를 높이고 싶습니다. 압력이 없을 때 프로그래밍!

나는 평생 C / C ++ / Java 프로그래머이다. 나는 전체 프로그래밍 경력을 위해이 언어 패밀리와 함께 일한 이래로 약간의 구불 구불 한 속임수입니다. 그래서 저는이 그룹과 문법적으로 밀접한 관련이없는 언어를 배우고 싶습니다. 내가 기본적으로 찾고있는 것은 비교적 일반적인 목적이며 배우기가 재미 있고 C ++ / Java와 다른 새로운 개념을 가지고 있으며 커뮤니티가 좋은 언어입니다. 두 번째 고려 사항은 웹 개발 프레임 워크가 우수하다는 것입니다. 3 차 고려 사항은 전적으로 학업이 아니라는 것입니다 (읽기 : 실제 직업이 있습니다).

루비 또는 파이썬으로 좁혔습니다. Ruby에 대한 인상은 웹 지향적이라는 것입니다. 웹 애플리케이션 (주로 Ruby on Rails)을 수행하기위한 서버 측 스크립팅 언어 일뿐입니다. 나는 열렬한 팬층을 가지고 있고 상당히 다양한 언어로 보이는 것을 제외하고는 파이썬에 대해 전혀 인상을받지 못했습니다.

TL; DR 과 가능한 한 간결하게 작성 : C ++ / Java가 프로그래밍에 대한 새로운 관점을 얻는 것이 더 나은 방법은 무엇입니까? 그리고 어느 것이 더 개방적이고 일반적인 목적이며 더 광범위한 응용 프로그램에 적용됩니까? 나는 현재 루비에 기대어 있지만 서버 측 웹 언어로만 사용되는 것처럼 보일 정도로 걱정하고 있습니다.


"Python의 경우 확실하지 않습니다"? 어떤? 이것은 어떻게 관련이 있습니까?
S.Lott

StackOverflow의 Ruby vs Python에서 더 많은 것을 찾을 수 있습니다. Lennart 자신이 아직 언급하지 않은 것에 놀랐습니다. regebro.wordpress.com/2009/07/12/python-vs-ruby stackoverflow.com/questions/1113611/…
직업

@ S.Lott : 죄송합니다. 방금 파이썬에 대해 매우 자세하게 설명하지 않았습니다. 다목적이며 강력한 팬 기반이 있습니다.
바비 테이블

9
물론 펄.
Bruce Alderman

이것은 "어떤 기술이 더 낫습니까?"에 속합니다. FAQ 에 따라 주제를 벗어난 것으로 간주 되는 질문 범주 .
ChrisF

답변:


35

Rails (웹 애플리케이션 프레임 워크)가 당신을 속이기 때문에 Ruby가 공통 용어로 들어간 사실을 놓치지 마십시오. 범용 프로그래밍 언어이며 다른 언어를 사용할 수있는 모든 용도로 사용할 수 있습니다.

루비를 가지고 놀아보고 사랑에 빠지는 지보십시오. 당신은 것입니다 또는하지 않습니다. 그것은 고마운 죽음의 음악과 비슷합니다. 당신은 그것을 좋아하거나 참을 수 없습니다.

루비는 당신의 두뇌를 확장시킬 것입니다. 많은면에서 C ++ / Java와는 거리가 멀다. 나는 C와 C # 배경에서 왔으며 루비의 역동 성과 메타 프로그래밍 능력이 상당히 중독성이 있음을 알았습니다.

말하자면, 파이썬은 절대적으로 뛰어난 언어이며, 당신의 곱슬 머리에서 당신을 파열시킬 것입니다.

둘 다 배우지 않겠습니까? 나는 Rails 프로그래밍을 위해 Ruby를, Google AppEngine을 사용하기 위해 Python을 정기적으로 사용합니다.


2
Dead reference의 경우 +1
,;

1
감사. 먼저 루비와 함께 가서 사랑에 빠지는 지 살펴 보겠습니다. :)
Bobby Tables

8
나는 파티에 조금 늦었지만 trypython.orgtryruby.org 는 언어를 시험해보기에 좋은 사이트입니다.
Michelle Tilley

17

필자는 루비를 거의 사용하지 않았지만 파이썬에 대한 인상은 다음과 같습니다.

  • 함수를 작성하기 위해 의사 코드를 작성할 때 실제로 작성하는 것이 파이썬 이라는 것을 알았 으며 때로는 실제 코드를 작성하는 데 재 작성이 거의 필요하지 않습니다. 의사 코드를 모두 건너 뛰고 파이썬에서 직접 생각을 표현할 수도 있습니다.
  • 일반적인 작업처럼 보이는 것을해야 할 때 파이썬은 표준 라이브러리에 필요한 기능 (높은 수준)이 내장되어 있습니다. 예를 들어, 초기에 파일을 열고 한 줄씩 스캔하려고했을 때 대답은 'myFile의 행 : dostuff (lines)'처럼 간단했습니다. 이것은 그들이 '배터리 포함'접근법이라고 부르며, 일상적인 작업이 훨씬 더 어리석은 곳에서 사용한 다른 언어와는 다릅니다

그 두 가지가 나에게 두드러집니다.


이것이 바로 루비를 선호하는 이유라고 생각합니다. 루비는 OO가 많고 키워드가 적습니다. 예를 들어 Ruby "[1,3,5] .length ()"및 "[1..10] .each () ..."vs Python "len ([1,3,5])"및 "i의 경우 "범위 (1,11)를에
LennyProgrammers

6
@Lenny-Ruby에는 실제로 더 많은 키워드가 있습니다 : krijnhoetmer.nl/stuff/ruby/keywords vs. zetcode.com/tutorials/pythontutorial/keywords-Python 2.6의 경우 Ruby의 38에 대한 31 키워드입니다. 또한 'more OO' 두 언어 모두에서 "모든 것은 객체이다"(그리고 문자 그대로 Python 3.x에서는 모든 하위 클래스가이므로)이기 때문에 상당히 주관적으로 사용되었습니다 object. 또한, len(obj)호출에 대한 바로 가기입니다 obj.__len__(), 그리고 for i in range또한 운영 발전기 객체의 운영 세부 사항을 추상화합니다. 나는 / 동등하지만 다르다 / 더 정확하다고 생각합니다.
Wayne Werner

Lenny가 일반적인 문장에 키워드를 적게 사용한다는 느낌이 들었습니다. 예를 들어 '범위의 i (1,11)에 3 개의 키워드 (for, in, range)가 있습니다. 물론 때로는 더 많은 단어가 더 좋습니다.
Andrew M

5
범위는 키워드가 아닙니다
Kugel

9

일년 내내 안식년을 보내고 있다면, 1 주일에 2 ~ 2 시간 씩 배우는 것이 좋습니다. 나는 둘 다에 대한 경험이 있으며 내 의견으로는 둘 다 너무 좋아서 실제로 원하는 것을 결정해야합니다.


+1, 둘 다 꽤 쉬운 것 같습니다. 반면 Clojure는 ... 재미가 많지만 더 어렵습니다.
Job

7

IMO, 파이썬과 함께 가야합니다. 그 이유는 더 다재 다능하기 때문에 거의 모든 것에 사용할 수 있습니다. 루비는 웹 프레임 워크로 인해 웹 개발에 더 많이 사용됩니다. Python과 달리 Ruby는 GUI 데스크탑 응용 프로그램, 숫자, 통계 또는 이미지 처리 프로그램 개발에 적합하지 않습니다.


1
루비가 "gui 데스크탑 응용 프로그램, 숫자, 통계 또는 이미지 처리 프로그램 개발에 좋지 않은 이유"를 지적 할 수 있습니까? 2001/2002 년에 루비로 프로그래밍 할 때, 나는 그 모든 일을 행복하게 해냈습니다.
LennyProgrammers

7
@ Lenny222. Ruby에는 numpy, scipy, sympy, PIL, matplotlib와 같은 라이브러리가 없습니다. 숫자 라이브러리가 무엇이든 파이썬보다 훨씬 뒤떨어집니다. GUI 애플리케이션 개발을위한 문서 및 라이브러리와 유사합니다.
Marcin

1
파이썬이 더 다재다능하다고 말하면 왜 라이브러리를 가리킬 것입니다. 좋은 라이브러리가 없기 때문에 루비에서 어떤 일을하는 것이 쉽지 않다는 것을 인정하지만 루비 자체가 다재다능하다는 의미는 아닙니다.
Twisol

@Twisol은 왜 그럴까요 : 파이썬은 매우 단순하고 일관된 이유는 그 다재다능하고 유용한 라이브러리 (IMO)가 많은 이유입니다.
Nadir Sampaoli

6

루비는 레일보다 훨씬 오래 사용되어 왔기 때문에 세계에서 Ruby != web잘 해내 고 싶습니다 . 할 수 있고 할 수있는 수많은 시스템 관련 작업이 있습니다. 전체 Rails 프레임 워크가 나머지 Ruby 세계를 삼킨 것처럼 보입니다. 그리고 네, 저는 루비 팬입니다.

반면에 파이썬은 많은 노력을 기울이고 있으며 Linux의 거의 모든 것과 통합되었습니다. 그것은 아마도 루비, 자바 등과 비교하여 더 큰 프로그램에 통합하는 것이 상당히 쉽다는 것을 말해줍니다. 파이썬으로 작성된 우분투 리눅스 인프라는 상당히 많으며, 이는 파이썬이 시스템 프로그래밍에 응용 프로그램을 가지고 있음을 알려줍니다. 나는 웹 프레임 워크가 정말 훌륭하다고 들었습니다. 아직 가지고 놀지 않았습니다.

즉, 루비와 파이썬은 모두 똑같이 유능한 언어이며, 생활이 훨씬 쉬워집니다. Ruby는 커뮤니티에 더 많은 웹 헤드를 가지고 있지만 커뮤니티 전체가 아닙니다. 여러 인프라 프로젝트에서도 사용했습니다.


5

이것은 " 이상적인 프로그래밍 언어 학습 순서"유사한 질문 의 특별한 경우입니다 . 당신이 필요로하는 것은 "하나의 완벽한 언어"가 아니며, 당신의 마음을 열려면 여러 언어 패러다임과 여러 학습 경험이 필요합니다.

나는 당신이 그것을 Ruby와 Python으로 좁혔다 고 말했지만, Racket (인기있는 Scheme)으로 시작하는 것이 좋습니다. 학습을 위해 만들어졌으며 기능적 프로그래밍, 대화 형 프로그래밍 및 동적 타이핑으로 두뇌를 멋지게 확장합니다. 작고, 조각난 커뮤니티와 주요 웹 프레임 워크가없는 작업 (문자 그대로 0)은 없습니다. 잠시 동안 뇌를 볶은 다음 계속하십시오.

둘째, 가능한 작업에 대해 Ruby 또는 Python을 배우고 싶습니다. 둘 다 배울 것을 제안합니다. 두 가지 중 두 번째 것을 배우는 것은 차이점에도 불구하고 첫 번째 것보다 훨씬 쉽습니다. 가능한 직업에 관해서는, Rails로 인해 루비 작업이 더 많다는 느낌이 들지만이 영역에는 Zope 작업도 있습니다. 그중 하나 이상에 투자하고, 작은 것을 짓기에 충분한 다른 하나도 확인하십시오.

솔직히, 당신은 아마 당신이 지금까지 배운 것보다 그들 중 하나와 함께 직업에 대해 첫 주를 더 많이 배울 것입니다. 그들은 많은 도구와 문화와 관용구가있는 큰 생태계를 가지고 있습니다.

tl; dr : 그리고 계획.


1
+1 내가 본 것은 "하나의 완벽한 언어"와 "구성표"였습니다. :)
dietbuddha

1

나도 Java / C ++ 배경에서 왔으며 지난 4 개월 동안 Django 프레임 워크를 사용하여 Python으로 프로그래밍했으며 정말 훌륭합니다. 문제 나 질문이있을 때마다 기존 게시물에 대한 설명을 찾을 수 있습니다. 루비를 아직 사용하지 않아서 보증 할 수는 없지만 시간이 있으면 꼭 시도해 볼 것입니다.

필자는 개인적으로 유용한 기능이 많이 내장되어 있기 때문에 파이썬으로 정말 빠르게 작업을 수행하는 방법을 개인적으로 좋아합니다.


1

루비에 대한 ID 투표. 나는 .Net 및 C # 배경에서 왔으며 파이썬을 먼저 시도했지만 루비는 나를 매료
시켰다. 시스템 프로그래밍에서 Python으로 가능하며 웹에서 훌륭합니다. 그리고 그것은 나에게 더 세련된 느낌 ..

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.