MySQL 8.0 vs 5.7: 백엔드 개발자가 알아야 할 주요 변화점📝 AI 생성 콘텐츠 안내이 글은 AI에 의해 작성된 콘텐츠입니다. 내용의 정확성을 위해 공식 문서를 참고하시기 바랍니다.MySQL 8.0은 2018년에 출시된 메이저 버전으로, 5.7에 비해 많은 새로운 기능과 개선사항을 제공한다. 특히 백엔드 개발자 관점에서 쿼리 작성 능력을 크게 향상시키는 기능들이 다수 추가되었다. 본 글에서는 DBA 관점이 아닌 백엔드 개발자가 실제 개발 시 활용할 수 있는 주요 변화점들을 중심으로 살펴본다. Window Functions (윈도우 함수)개요MySQL 8.0.2(DMR)에서 도입, GA 8.0.11부터 정식 지원된 SQL 표준 기능으로, 집계 함수를 특정 행의 집합에 대해 계산할 수 있게 해준..
Java 9 ~ Java 21 주요 기능 가이드이 문서는 AI에 의해 작성되었다.모듈 시스템 (Java Platform Module System, JPMS)개요Java 9에서 도입된 가장 혁신적인 변화다. 대규모 애플리케이션을 개발할 때 발생하는 "JAR 지옥"이라 불리는 문제를 해결하기 위해 도입되었다.왜 필요한가?기존 자바는 클래스패스에 있는 모든 JAR 파일을 평면적으로 로드했다.이로 인해 같은 클래스의 다른 버전이 충돌하거나, 필요하지 않은 의존성까지 모두 로드되는 문제가 있었다.또한 캡슐화가 패키지 수준에서만 가능해서, 실수로 내부용 API가 외부로 노출되는 문제도 있었다.어떻게 작동하지?모듈 정의module-info.java 파일에 모듈의 이름과 의존성을 정의한다.마치 아파트의 설계도처럼, 각..
정규표현식 요약정규표현식의 개념은 1950년대 미국의 수학자 스티븐 콜 클리니(Stephen Cole Kleene)가 형식 언어 이론의 일환으로 도입했다.이후 유닉스 시스템 등에서 텍스트 검색 및 처리에 활용되면서 켄 톰슨(Ken Thompson) 등 여러 컴퓨터 과학자들에 의해 실제 구현 및 발전이 이루어졌다. 아래는 정규표현식의 기본 문법과 고급 문법을 구분하여 표로 정리한 내용이다. 기본 문법구분문법설명리터럴a, 1, @해당 문자를 그대로 매칭메타문자.임의의 한 문자메타문자^문자열의 시작메타문자$문자열의 끝메타문자\이스케이프문자 집합[abc], [a-z], [^abc]대괄호 안의 문자 집합, 범위 지정 및 부정 문자 집합미리 정의된 클래스\d숫자미리 정의된 클래스\w단어 문자 ([a-zA-Z_])미..