루비 대 자바스크립트

Python functions

Ruby와 JavaScript 비교

요컨대, Ruby는 일반적으로 서버 측 개발에 사용되는 객체 지향 언어입니다. JavaScript는 또한 객체 지향적이며 일반적으로 클라이언트 측 응용 프로그램에 사용됩니다. JavaScript는 Ruby보다 훨씬 더 많이 사용되지만 Ruby는 여전히 강력한 언어입니다.

JavaScript는 웹에서 가장 많이 사용되는 언어 중 하나입니다. 프론트 엔드용으로 무언가를 개발 중이라면 JavaScript로 빌드할 가능성이 큽니다. 실제로 JavaScript는 작성 당시 Github 에서 가장 널리 사용되는 언어입니다. Ruby는 웹 프레임워크인 Ruby on Rails를 포함하여 웹에서도 사용되는 또 다른 일반 프로그래밍 언어입니다. 이 두 언어를 어떻게 비교하고 어떤 것을 배워야 합니까? 알아봅시다.

자바스크립트

자바스크립트는 HTML, CSS와 함께 인터넷의 기본 기술 중 하나입니다. 그것은 우리가 대화형 웹 페이지를 가질 수 있게 하고 클라이언트 측 웹 애플리케이션을 위한 참조 언어입니다. 인터넷의 거의 모든 것에서 사용됩니다. - 2018년부터 사용된 모든 웹사이트의 95% 자바스크립트 . 웹이 지배하는 목록에는 Google, Facebook 및 Youtube와 같은 사이트가 포함되며 모두 JavaScript를 사용합니다.

JavaScript는 "웹 페이지에 생명을 불어넣기" 위해 만들어졌습니다. 응용 프로그램 및 웹 사이트용으로 설계된 이 도구는 1995년 Netscape에서 근무한 Brendan Eich가 만들었습니다. 고급 해석 스크립팅 언어로 JavaScript가 컴파일되지 않습니다. 런타임 시 제자리에서 해석됩니다. JavaScript는 C 언어와 같은 객체 지향 프로그래밍 언어이기도 합니다. 중괄호 구문, 동적 유형 지정 및 일급 기능이 있습니다. 인터프리터는 웹 브라우저에 내장되어 있으므로 Node.js와 같은 프로그램의 도움 없이는 브라우저에서만 작동합니다.

Ruby

Ruby는 동적 오픈 소스 프로그래밍 언어입니다 . 단순성과 생산성을 강조합니다. Ruby는 Yukihiro Matsumoto에 의해 개발되어 1995년에 출시되었으며 사용 편의성을 위해 설계되었으며 다이내믹하고 덕 타이핑(오리처럼 보이면 오리 - 유형 식별 방법), 다중 패러다임, 높은 수준 및 해석 . Ruby는 JavaScript와 같은 객체 지향적이기도 합니다. 프로그래머가 언어의 다른 부분을 수정하여 작동 방식을 변경할 수 있기 때문에 유연합니다. Python과 Pearl의 영향을 받았으며 다양한 용도가 있습니다 .

Ruby는 다음으로도 잘 알려져 있습니다. 레일 위의 루비. Ruby on Rails는 웹 애플리케이션을 쉽게 만들 수 있도록 설계되었으며 2011년부터 사용되었습니다. 소셜 미디어, 블로깅 및 온라인 마켓플레이스에 사용되었습니다. AirBnB, Hulu 및 Github에 사용되었습니다. 그러나 JavaScript가 웹에 도입된 이후 Rail의 인기는 급격히 떨어졌습니다.

Ruby on Rails란 무엇입니까?

Ruby on Rails는 웹 애플리케이션을 구축하기 위해 Ruby로 작성된 프레임워크입니다. 프레임워크는 웹 개발을 위한 골격과 같으며 일부 기본 구조와 삽입 및 제거할 수 있는 선택적 기능을 제공합니다. 인기 있는 프레임워크의 또 다른 예로는 다음을 기반으로 하는 Angular가 있습니다. JavaScript. Rails는 프로그래밍 언어가 아니라 Ruby입니다. Rails는 단순히 Ruby를 사용하여 생성되며 많은 입력을 절약할 수 있습니다.

Ruby on Rail은 MVC 프레임워크의 스타일을 따릅니다. (템플릿, 보기, 컨트롤러). 모델은 정보를 저장하고, 보기는 정보를 보여주며, 컨트롤러는 그 사이에서 작동하여 제어합니다. Ruby on Rails에는 gem도 함께 제공됩니다. gem은 Ruby pro의 라이브러리입니다. 플러그 앤 플레이가 가능하도록 설치를 위한 표준 형식으로 변환된 그램. 사용 가능한 수천 개의 보석이 있으며 각각은 웹 애플리케이션을 구축할 때 고유하고 종종 필요한 요구 사항을 제공합니다.

JavaScript 대 Ruby

Alex Meier EbXSMYVOF I Unsplash
테이블에 두 종류의 커피 아이스크림이 놓여 있습니다.
< tr>

이제 두 언어에 대한 정보를 얻었으므로 두 언어를 살펴보고 어떤 언어를 선호할 수 있는지 알아보겠습니다. 우리는 이 작업을 여러 측면에서 대면하여 비교함으로써 접근할 것입니다.

입력 및 구문

Ruby는 사용성을 위해 설계되었습니다. 그의 철학은 무언가를 하는 데에는 한 가지 이상의 방법이 있다는 것입니다. 따라서 Ruby에는 단순하고 배우기 쉬운 구문이 있을 뿐만 아니라 원하는 대로 사용할 수 있도록 설계된 구문도 있습니다. 최고 수준이며 변수나 세미콜론 선언이 없으며 읽기 쉬운 코드입니다. 또한 대부분의 다른 객체 지향 언어보다 더 객체 지향적입니다. 매우 객체 지향적이어서 메서드와 함수, 심지어 단순한 정수까지 모든 것이 객체입니다. 이러한 이유로 프로그래머는 메서드 체인을 사용할 수 있습니다. 많은 코드를 약간의 코드로 줄일 수 있는 곳 루비처럼 깨끗합니다. Ruby는 일반 인간 언어와 거의 흡사하여 상위/중/하위 프로그래밍 차트에서 상위에 위치합니다.

div>

그러나 Ruby는 프로그래머가 사용할 수 있는 방식이 매우 유연하기 때문에 프로그래머 간에 코드를 전달하는 것이 어려울 수 있습니다. 일반적으로 여러 줄로 구성된 코드를 몇 줄로 줄였다가 나중에 한 줄로 줄일 수 있습니다. 이러한 깨끗한 코드가 보기에는 더 좋아 보이지만 여러 줄에 걸쳐 있는 동일한 코드보다 읽기 어렵거나 읽기 어려울 수도 있습니다. 많아야 하는 한 줄의 코드는 해독하기 어려울 수 있습니다. 그는 느긋하기 때문에 Ruby는 매우 비효율적인 프로그래밍 방법을 허용하고 누군가에게 프로그래밍 규칙 집합을 따르도록 강요하지 않습니다.

또한 Ruby는 높은 수준에 있기 때문에 디버깅 악몽이 될 수 있습니다. Ruby는 특히 추상적이므로 어떤 코드 라인이 인터프리터를 잘못된 방식으로 조작하는지 알아내는 것이 어려울 수 있습니다. squo, 세미콜론을 잃는 것만큼 쉬운 일이 아니며 종종 내부에서 발생하는 보이지 않는 상호 작용과 연결되거나 거대한 호출 스택에 묻혀 있습니다.

성능

일반적으로 프로그래밍 언어의 성능에 관한 규칙이 있습니다. 기계어에 가까울수록 빨라집니다. 이런 의미에서 프로그래밍 언어가 높을수록 느려집니다. 이 규칙은 Ruby 및 JavaScript에 적용됩니다. JavaScript는 빠르지 않습니다. C ++와 같이 더 빠르게 컴파일된 언어와 비교할 수 없습니다. 그러나 Ruby는 JavaScript를 페라리처럼 보이게 합니다. 벤치마크의 경우 Ruby는 JavaScript(node.js로 실행)보다 50%에서 200% 느린 평균 속도를 유지합니다. JavaScript에서 30초 미만이 소요되는 작업은 Ruby를 완료하는 데 약 8분이 소요될 수 있습니다.

Ruby는 기본 상황에서 더 느립니다. 그 때 우리는 이해하기 어려운 것을 집어넣고 언어가 그것을 이해하는 데 걸리는 시간을 측정합니다. 현실 세계에서 웹 애플리케이션을 구축할 때 항상 만델브로트 프랙탈을 풀 필요는 없습니다. 이러한 의미에서 많은 Ruby 팬은 Ruby가 다른 언어에 비해 매우 빠르며 느리지만 그렇지 않으면 잘 작동한다고 주장합니다. 이 주제는 격렬한 논쟁의 주제이지만 AirBnB, Kickstarter 또는 Apple.com과 같이 Ruby가 잘 작동하는 기능적 예가 많이 있습니다. 성능은 일반적으로 완벽한 타이밍이나 크고 복잡한 계산이 필요한 경우에만 문제가 됩니다.

두 언어 모두 뒤에 큰 커뮤니티가 있습니다. JavaScript 제품군은 더 크고 많은 매개변수에서 가장 많이 사용되는 언어로 간주됩니다. 인터넷의 거의 95% 이상을 소비합니다. 사용 가능한 모듈과 패키지에서 그는 여기에서 달까지의 거리에서 승리합니다. Ruby와 Rails는 수천 개의 모듈을 사용할 수 있지만 npm(node.js의 경우, 다시 JavaScript)에는 800,000개 이상의 모듈이 있으며 대부분은 오픈 소스이며 대부분은 상용으로 무료입니다.

그러나 Ruby는 사용하기 훨씬 쉬운 언어이므로 커뮤니티도 마찬가지입니다. Ruby는 초보자에게도 친절한 언어이기 때문에 일반적으로 초보자에게 도움이 되고 친절한 것으로 간주됩니다. 커뮤니티도 매우 활동적이어서 문서화가 상당히 잘 된 언어입니다. Rails용 Gem 라이브러리는 node.js용 JavaScript 카탈로그만큼 크지는 않지만 모듈은 신중하게 설계되었습니다.

경력 관점

JavaScript는 인터넷을 지배하고 Rails는 사용하기 쉽지만 JavaScript의 성능이나 시장 점유율이 부족합니다. 그렇지만 Ruby는 새로운 언어를 배우려는 사람들에게 여전히 가치 있는 투자입니다. Ruby는 배우기 쉽기 때문에 제2외국어로도 잘 작동합니다.

작성 당시에는 Indeed.com 은 미국에서만 Ruby 개발자 및 프로그래머를 위해 일하는 I의 16,000개 이상의 광고를 제공합니다. Ruby 개발자는 또한 많은 돈을 벌고 있습니다. 평균적인 Ruby 개발자는 일반적으로 연간 $50,000에서 $200,000 이상을 벌어들일 것으로 예상할 수 있습니다. 인디드에 따르면 이 모든 직업이 나열되어 있는 미국 Ruby 개발자의 전국 평균은 연간 $123,154 .

많은 사람들이 JavaScript가 주머니에 넣고 다닐 수 있는 최고의 언어라고 말할 것입니다. 그들이 생각하지 않습니다. 당신은 잘못. JavaScript 전문가가 될 생각이 없더라도 JavaScript를 배우면 개발자의 삶, 특히 전체 스택 개발자의 삶에서 더 많은 도움이 될 것입니다. JavaScript를 관심의 중심에 둘 계획이라면 그것도 나쁘지 않은 생각입니다. 이전에 사용한 것과 동일한 사이트인 인디드에는 거의 60,000개의 JavaScript 작업이 있습니다. 인디드에서 자바스크립트 개발자의 평균 급여는 다음과 같습니다. $ 113,615 연간 .

두 선택 모두 큰 전망이 있지만 둘 중 하나를 선택해야 한다면 JavaScript가 기본 언어입니다. 향후 몇 년 동안 인터넷이 바뀌지 않는 한 JavaScript는 아무데도 갈 수 없습니다. Ruby의 미래는 덜 확실하지만 항상 더 많은 JS 개발자가 필요합니다.

Shop

Gifts for programmers

Best laptop for Excel

$
Gifts for programmers

Best laptop for Solidworks

$399+
Gifts for programmers

Best laptop for Roblox

$399+
Gifts for programmers

Best laptop for development

$499+
Gifts for programmers

Best laptop for Cricut Maker

$299+
Gifts for programmers

Best laptop for hacking

$890
Gifts for programmers

Best laptop for Machine Learning

$699+
Gifts for programmers

Raspberry Pi robot kit

$150

Latest questions

PythonStackOverflow

Common xlabel/ylabel for matplotlib subplots

1947 answers

PythonStackOverflow

Check if one list is a subset of another in Python

1173 answers

PythonStackOverflow

How to specify multiple return types using type-hints

1002 answers

PythonStackOverflow

Printing words vertically in Python

909 answers

PythonStackOverflow

Python Extract words from a given string

798 answers

PythonStackOverflow

Why do I get "Pickle - EOFError: Ran out of input" reading an empty file?

606 answers

PythonStackOverflow

Python os.path.join () method

384 answers

PythonStackOverflow

Flake8: Ignore specific warning for entire file

360 answers


Wiki

Python | How to copy data from one Excel sheet to another

Common xlabel/ylabel for matplotlib subplots

Check if one list is a subset of another in Python

How to specify multiple return types using type-hints

Printing words vertically in Python

Python Extract words from a given string

Cyclic redundancy check in Python

Finding mean, median, mode in Python without libraries

Python add suffix / add prefix to strings in a list

Why do I get "Pickle - EOFError: Ran out of input" reading an empty file?

Python - Move item to the end of the list

Python - Print list vertically

Ruby JavaScript
Ruby는 일반적으로 클라이언트 서버 측 응용 프로그램에 사용 JavaScript는 일반적으로 클라이언트에 사용 -사이드 애플리케이션
Ruby는 JavaScript보다 느립니다. JavaScript는 Ruby보다 빠릅니다.
Ruby는 작성하고 배우기 더 쉽습니다. JavaScript는 파악하고 배우기가 더 어렵습니다.
Ruby는 클래스를 사용하는 객체 지향적이며 Ruby의 거의 모든 것이 객체 JavaScript는 객체 지향이지만 클래스가 없습니다.
Ruby는 `duck`으로 작성되었습니다. JavaScript는 자유롭게 작성되었습니다.