[초보자를 향해] 루비, 루비라고 불리지만 실제로는 어때요?

6551 단어 PHPRubyJava
Ateam Hikkoshi Samurai Inc. Advent Calendar 201720일째.
오늘은 파티 연결의 중도 이듬해로 간식을 매우 좋아하는 중년 웹 엔지니어@taka999가 맡았다.

배경.


최근 루비 주변에서 개발이 활발해졌다.
루비, 나니, 루비, 나니, PHP잖아...
아무것도 모르고 투덜거리는 것은 예술이 아니기 때문에 인터넷 엔지니어의 초보자로서 루비를 조사해 보자.

개시하다


자신이'초심자'이기 때문에 소스 코드로 설명을 잘 못하고, 참고 사이트도 소스 코드로 설명하지 않은 사이트를 선택했다.
일단 사공의 흔한'루비'검색.
• 모든 대상
• 해석기 방식
• 문장 구조의 자유도가 높다
그렇구나!
프로그래밍을 해 본 사람은 다소 알 수 있지만 모르는 사람에게는 부드럽지 않다.

특징 1: 객체 지향


이걸 잘 설명할 수 있는 사람이 얼마나 될까...
이런 자신도 모르게 이해하게 되었으니 아래의 내용을 참고하시오.
5분 동안 절대적으로 보이는 대상을 방향으로
대상을 향한 것은 무엇입니까?간단명료하고 알기 쉬운 예로 설명하였다.
대상(물)을 계승해 기본적인 것을 만들 수도 있고, 그에 따라 다른 것을 간단하게 만들어 응용할 수도 있다.
게임으로 말하자면 하나의 기본 캐릭터를 만들고 이 캐릭터를 바탕으로 색깔과 강도가 다른 캐릭터의 느낌을 내는 것이다.

특징2: 해석기 방식


프로그램 설계 언어의 지령은 하나하나 기계 언어로 해석되어 실행되기 때문에 원본 파일을 써서 바로 실행할 수 있다.
■ 장점
프로그램 개발 도중에 실행하면서 확인할 수 있기 때문에 프로그램을 만들기 쉽고 디버깅도 쉽다.
■단점
매번 하나씩 설명하기 때문에 변수에 접근할 때도 식별자와 메모리의 위치를 확인하면서 실행하기 때문에 실행 속도가 느려집니다.

특징3: 문장 구조의 자유도가 높다


문법 하면 코드만 볼 수 있으니 조금만 쓰세요.
■정수형 변수 정의
Java의 경우
int var = 123;
루비의 경우
var = 123
■반복
Java의 경우
for (int i = 0; i < 10; i++) {
    System.out.println(i);
}
루비의 경우
10.times do |i|
  puts i
end
■ switch(case)문
Java의 경우
switch(num){
   case 1:
        System.out.println("a");
        break;
   case 2:
   case 3:
   case 4:
        System.out.println("b");
        break;
}
루비의 경우
case num
when 1
  puts 'a'
when 2..4
  puts 'b'
end
코드량이 적어도 되고 편하네요~
문법상의 제한이 매우 적기 때문에 모든 사람의 취향이 잘 반영될 수 있다

프레임


루비온 레일스, 시나트라, 하나미 등 다양하다.
Ruby on Rails뿐만 아니라!루비 프레임 6 선택
지금까지의 역사와 인기를 보면'루비 온 레일스'를 선택하는 것도 나쁘지 않다.

기타


루비용 라이브러리는'gem'이라고 불리는데 상당히 많은 gem이 있는 것 같다.
Ruby에서 사용되는 라이브러리는 대부분 Gem 형식으로 포장되어 있습니다.
처음부터 굳이 하지 않아도 원하는 기능을 찾으면 성공할 가능성이 높고 개발도 수월해진다.
※ 라이브러리란 일반적인 처리와 편리한 기능을 총결산한 외부 절차
생산성 향상!Ruby 개발을 통해서 미리 알면 편한gem10 선택

총결산


심플한 수준이라 결정할 수는 없지만, PHP 등 다른 언어도 같은 특징이 있지만 프레임 선택에 현혹되지 않고 라이브러리(gem)도 풍부하고 코드도 짧게 쓰면 쉽게 개발할 수 있는 루비부터 시작한다고 생각한다.
다만, 이미 다른 언어(PHP와 perl 등)로 개발돼 어려움을 겪지 않았다면 굳이 루비로 변경할 필요는 없었을 것이다.
이 언어라면 쉽게 개발할 수 있는 선택도 있지만 하고 싶은 일을 이루려면 이 언어를 써야 한다!나는 이 단어를 선정하는 것이 매우 중요하다고 생각한다.

최후


Ateam Hikkoshi Samurai Inc. Advent Calendar 201720일째 어때요?
내일이사 무사 한동안 심리학에 푹 빠진 전치 엔지니어@hashimoto-1202
"vue-rooter를 사용하여 SPAv를 만들었습니다."
써줄 테니 기대해 주세요.

덧붙이다


우리는 웹 서비스와 기술을 함께 향상시키고 미래를 창조할 파트너를 모집하고 있습니다.
30대 후반 비즈니스 시스템 엔지니어에서 WEB 엔지니어로 바뀐 저도 새로운 도전을 하면서 전진하고 있습니다. 지금까지 한 발자국도 내딛지 못한 엔지니어와 AVI팀에 관심이 있으신 분들은 아래 링크로 응모해 주시기 바랍니다.
여러분의 응모를 기대합니다!!
팀 모집 사이트(웹 개발 엔지니어)

좋은 웹페이지 즐겨찾기