2024년 2월 28일 수요일

그루비(Groovy)스크립트에 대한 정리

그루비 스크립트란?

  • JVM(Java Virtual Machine)에 실행되어 문법이 JAVA(객체지향,구문 등)와 비슷하다고 함 → 마이그레이션 간단할수도
  • 그외 JVM에서 실행되는 언어들도 존재 → 그언어들도 마이그레이션 쉬울까?
  • 자바개발자를 위한 스크립트 언어라는 점
    • 새로운 언어를 배울때 방대한 API를 알아야하는 부담을 덜수 있는듯
  • 자바와 호환되고 클래스파일 그대로 그루비에서 사용할수 있는 듯
  • 아파치 그루비 자바 플랫폼으로 구축
  • 그루비는 2003년부터 히스토리가 시작된것으로 확인
    • 2022년에는 Groovy 4출시, 현재는 Groovy5 alpha버젼 출시
  • 파이썬,루비,스몰토크 언어의 특징을 더한 동적언어?
  • 자바보다는 간결한 구문으로 코드를 작성할수 있음 → 단순함?
  • 그루비는 많은 메모리가 필요할수도 있다?
  • 그레일즈(Grails) → 그루비 기반 웹애플리케이션 개발 프레임워크
  • 인터프리터가 없음 
    • 인터프리터는 코드를 한 줄씩 읽어 내려가며 실행하는 프로그램
    • 그루비컴파일러(groovyc)에 의해 자바클래스 파일 변환(.class)
    • 실행 직전 그루비 클래스로더(GroovyClassLoader)에 실시간 컴파일 후 JVM에 올라간다고함
  • 자바코드를 그루비 코드에서 불러 사용할수 있다고 함
  • SAP IS(Integration Suite)에서도 그루비를 사용할수 있음

SAP에서의 Groovy는

  • SAP IS(CPI,Cloud Platform Integration)의 필수적이고 중요한 기능
  • 그루비로 통합향상 및 복잡한 문제를 해결할수 있다고함
    • "기존 PI/PO 그리고 다른 자바 기반 EAI솔루션에서 표준으로 제공되는 라이브러리나 기능으로 해결할수 없는 문제를 자바로 해결했던것처럼" 
  • 데이터 변환을 하는데 사용 및 팁이 존재
    • XML처리를 위한 GPath표현식 사용 → 그루비에서 기본적 지원
    • 클로저사용하여 중복을 줄임 → 자바 람다(Lambda)와 유사한 기능이라고함
    • EIvis연산자는 널값 처리하고 좋다고 함
    • JSON 파서,빌더를 사용하여 JSON데이터 작업가능 → 기본기능


그루비 테스트시 유용한 툴


출처

댓글 없음:

댓글 쓰기