문의를 보내주셔서 감사합니다! 팀원이 곧 연락드리겠습니다.
예약을 보내주셔서 감사합니다! 저희 팀 멤버 중 한 분이 곧 연락드리겠습니다.
코스 개요
Groovy 소개
- Apache Groovy 개요
- Groovy의 역사 및 진화
- Groovy와 Java Virtual Machine(JVM)
- 스크립팅 및 프로그래밍 언어로서의 Groovy
- Groovy의 일반적인 사용 사례
- Java 기반 프로젝트에서의 Groovy 활용
- Java와 함께 Groovy를 사용하는 이점
- 샘플 애플리케이션 개요
Groovy 기능 개요
- 동적 타이핑 및 선택적 정적 타이핑
- Groovy 스크립팅 기능
- 간결한 구문 및 언어 기능 강화
- 클로저 및 함수형 프로그래밍
- Groovy 컬렉션 및 강화된 API
- 연산자 오버로딩
- 문자열 보간(String Interpolation)
- 안전한 내비게이션(Safe Navigation) 및 Elvis 연산자
- 도메인 특화 언어(DSL) 개발
- 메타 프로그래밍 기능
- Groovy Development Kit(GDK)
개발 환경 설정
- Groovy 설치 및 구성
- Groovy 배포판 사용
- 명령줄에서 Groovy 사용
- Groovy 스크립트 실행
- IDE 설정
- Groovy 프로젝트 생성
- 의존성 관리
- Java 프로젝트와의 Groovy 통합
- 컨테이너용 개발 환경 구성
첫 번째 Groovy 애플리케이션 작성
- 기본적인 Groovy 스크립트 생성
- Groovy 스크립트 구조 이해
- Groovy 애플리케이션 실행
println문구 사용- 변수 사용
- 메서드 정의
- 주석 및 문서화 추가
- 단순한 샘플 애플리케이션 구축
- Groovy 코드 컴파일
Groovy 구문 익히기
- Groovy 문장 및 표현식
- 세미콜론 및 선택적 구문 요소
- 변수 및 상수
- 동적 및 명시적 타이핑
- 문자열 리터럴 및 보간
- 단일 줄 및 다중 줄 문자열
- 연산자 및 표현식
- Groovy 연산자 및 단축 기법
- Null 처리
- 안전한 내비게이션
- Elvis 연산자
- 다중 대입
Groovy의 데이터 타입 및 컬렉션 사용
- 기본 타입 및 객체 타입
- 숫자 및 숫자 연산
- 문자열 및 문자
- 부울(Boolean)
- 날짜 및 시간 관련 값
- List(목록)
- Map(맵)
- Set(집합)
- Range(범위)
- 컬렉션 반복(Itération)
- 컬렉션 변환(Transformations)
- 컬렉션 필터링 및 검색
- 데이터 정렬 및 그룹화
- Groovy 컬렉션 메서드
Groovy 클로저 사용
- 클로저 이해
- 클로저 구문
- 클로저 매개변수
- 암시적 클로저 매개변수
- 클로저 호출
- 변수로서의 클로저
- 메서드에 클로저 전달
- 메서드에서 클로저 반환
- 컬렉션과 클로저
- 필터링 및 변환을 위한 클로저 사용
- 범위 및 변수 캡처(Scope and Variable Capture)
- 함수형 프로그래밍을 위한 클로저
- 실전 클로저 패턴
Groovy 제어 구조를 통한 프로그램 흐름 제어
- 조건문
if및else- 중첩 조건문
switch문구- 루프 및 반복
for,while, 및do-while- 루프에서의 범위(Ranges) 사용
- 반복을 위한 클로저 사용
break및continue- 예외 처리
try,catch, 및finally- 사용자 정의 예외 던지기
- Groovy 특유의 제어 흐름 기능
애플리케이션에 객체 지향 프로그래밍(OOP) 구현
- Groovy 클래스 정의
- 속성 및 필드
- 생성자(Constructor)
- 메서드
- 캡슐화(Encapsulation)
- 상속(Inheritance)
- 인터페이스(Interfaces)
- 추상 클래스(Abstract Classes)
- 다형성(Polymorphism)
- 메서드 오버라이딩(Method Overriding)
- 메서드 오버로딩(Method Overloading)
- Groovy의 getter 및 setter
- Traits
- Enums(열거형)
- 샘플 애플리케이션을 위한 도메인 모델 생성
런타임 메타 프로그래밍 및 컴파일 타임 메타 프로그래밍
- Groovy 메타 프로그래밍 소개
- 동적 메서드 호출
- Expando 객체
- 런타임 메서드 및 속성 조작
- Categories 및 Extensions
- MetaClass
- 동적으로 메서드 추가
- 메서드 호출 가로채기(Intercepting)
- 컴파일 타임 변환(Compile-time Transformations)
- 공통 AST(추상 구문 트리) 변환
- 책임감 있는 메타 프로그래밍 사용
- 실전 메타 프로그래밍 예제
빌더(Builders) 작업
- 빌더 패턴 소개
- Groovy 빌더 및 그 목적
- 계층적 구조 생성
- XML 빌더
- JSON 빌더
- HTML 및 마크업 생성
- 빌더 출력 구성
- 빌더와 클로저 사용
- 사용자 정의 빌더 생성
- 도메인 특화 언어(DSL)에 빌더 적용
Groovy를 통한 데이터베이스 접근
- 데이터베이스 연결 개념
- Groovy 애플리케이션과 데이터베이스 연결
- JDBC 및 Groovy 데이터베이스 API
- 데이터베이스 연결 구성
- SQL 쿼리 실행
- 쿼리 결과 읽기
- 데이터 삽입, 업데이트 및 삭제
- 매개변수화 쿼리(Parameterized Queries)
- 트랜잭션(Transactions)
- 데이터베이스 예외 처리
- Groovy SQL 사용
- 샘플 애플리케이션의 데이터베이스 기능 구축
Groovy에서 Java 호출
- Groovy와 Java의 상호 운용성(Interoperability)
- Groovy에서 Java 클래스 사용
- Java 메서드 호출
- Java 라이브러리 사용
- Java 컬렉션 사용
- Java 예외 처리
- Groovy 구문과 Java 구문 비교
- Java에서 Groovy 코드 호출
- Groovy 및 Java 소스 파일 혼합 사용
- 기존 Java 애플리케이션에 Groovy 통합
- 상호 운용성 모범 사례(Best Practices)
REST 서비스 및 애플리케이션 연결
- REST API 소개
- Groovy 애플리케이션을 위한 HTTP 개념
- HTTP 요청 전송
- GET, POST, PUT, DELETE 작업 처리
- 요청 매개변수 및 헤더 작업
- JSON 응답 처리
- JSON 요청 본문 구축
- 인증(Authentication) 처리
- HTTP 오류 관리
- 외부 REST 서비스 소비(Consuming)
- 샘플 애플리케이션에 REST 기능 통합
GDK 작업
- Groovy Development Kit 소개
- 강화된 Java API
- 문자열 작업
- 강화된 컬렉션
- 파일 및 디렉터리 작업
- 파일 읽기 및 쓰기
- 스트림(Streams) 작업
- XML 처리
- JSON 처리
- 날짜 및 시간 작업
- 유틸리티 메서드 및 편의 API
- 적절한 GDK 기능 선택
Groovy 애플리케이션 유닛 테스트
- Groovy 애플리케이션 테스트 소개
- 테스트 주도 개발(TDD) 개념
- 유닛 테스트 작성
- 테스트 프레임워크 사용
- 테스트 클래스 구조화
- 단언(Assertions)
- 클래스 및 메서드 테스트
- 클로저 테스트
- 예외 테스트
- 의존성 목킹(Mocking Dependencies)
- 데이터 기반 테스트
- 데이터베이스 관련 기능 테스트
- REST 통합 테스트
- 테스트 실행 및 결과 분석
문제 해결(Troubleshooting)
- Groovy 구문 오류 진단
- 런타임 오류 디버깅
- 컴파일 문제 처리
- Java 상호 운용성 문제 해결
- 클로저 및 컬렉션 작업 디버깅
- 데이터베이스 연결 문제 조사
- REST API 통합 문제 해결
- 메타 프로그래밍 동작 디버깅
- 로깅 및 진단 도구 사용
- 실전 문제 해결 연습
요약 및 결론
- Groovy 언어 기초 재검토
- 구문, 타입 및 컬렉션 재검토
- 클로저 및 함수형 프로그래밍 재검토
- 객체 지향 프로그래밍 재검토
- 메타 프로그래밍 및 빌더 재검토
- 데이터베이스 및 REST 통합 재검토
- Groovy와 Java 상호 운용성 재검토
- GDK 기능 재검토
- 테스트 실무 재검토
- Groovy 애플리케이션 개발 모범 사례
- 최종 실습 연습
- 질의 응답 및 토론
요건
- 어떤 프로그래밍 언어에 대한 개발 경험
21 시간
회원 평가 (1)
공유된 추가 정보에 따르면, 훈련은 직관적이지 않은 Groovy였지만 그래도 좋았습니다.
Covenant - Vodacom
코스 - Groovy Programming
기계 번역됨