Language37 [Python] 요즘 떠오르는 uv 패키지 매니저 Python 개발을 하다 보면 빠지지 않고 마주치는 것이 패키지 관리이다. 기존에는 pip, venv, requirements.txt 조합이 표준처럼 쓰였고, 최근에는 Poetry, Pipenv, Conda 같은 대안 도구도 널리 사용되고 있다. 하지만.. 24년에 uv 패키지 매니저가 새롭게 등장하였다. 그리고 정말 무서운 속도로 Python 생태계의 새로운 '사실상 표준'으로서 자리 잡아가고 있다. 한마디로 uv는 트렌디함과 혁신을 둘 다 겸비한 지덕체 그 자체~ ㅁuv: Python 패키지 관리와 가상환경 관리를 동시에 지원하는 초고속 패키지 매니저 pip처럼 단순히 패키지를 설치하는 것에 그치지 않고, venv, virtualenv처럼 가상환경 생성까지 통합적으로 지원한다.즉, pip + v.. 2025. 9. 17. Java 17 Sealed Class 문법 알아보기 (상속의 범위를 제어) Java는 OOP 언어로, 클래스를 상속해서 기능을 확장하거나 재정의하는 패턴이 매우 흔하게 사용된다.그런데 모든 클래스가 무제한으로 상속이 가능하다면, 의도치 않은 확장이나 보안상의 허점이 발생할 수 있다.이런 문제를 해결하기 위해 Java 17에서 Sealed Class라는 새로운 기능이 정식으로 도입되었다.이번 글에서는 Sealed Class 문법이 왜 필요하게 되었는지, 어떤 식으로 사용할 수 있는지 실제 코드와 함께 살펴보려 한다! Java 17부터 도입된 Sealed Class 문법이란?Sealed Class는 해당 클래스를 상속받을 수 있는 하위 클래스들을 명시적으로 제한할 수 있도록 해주는 기능이다.쉽게 말해서 "이 클래스를 상속받을 수 있는 애들은 내가 정한 애들만 가능해!"라는 의미.. 2025. 7. 23. [Java API] 함수형 프로그래밍 익숙해지기(java.util.function 패키지) https://claremont.tistory.com/entry/Java-Stream-API%EC%99%80-%ED%95%A8%EC%88%98%ED%98%95-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D [Java] Stream API와 함수형 프로그래밍Java 8부터 도입된 Stream API는 프로그래밍 스타일을 완전히 바꿔놓았다고 해도 과언이 아니다. 처음에는 그냥 반복문을 대체하는 기능 정도로만 생각했는데, 쓰면 쓸수록 '이거 꽤 강력한데?'라는claremont.tistory.com먼저 함수형 프로그래밍이 뭔지! 개념에 대해 알고 오자 :> Java에서는 람다 표현식(Lambda Expressions)을 활용하여 간결한 코드 작성을 지원하기 위해 표준 함수.. 2025. 3. 17. [Java] Stream API와 함수형 프로그래밍 Java 8부터 도입된 Stream API는 프로그래밍 스타일을 완전히 바꿔놓았다고 해도 과언이 아니다. 처음에는 그냥 반복문을 대체하는 기능 정도로만 생각했는데, 쓰면 쓸수록 '이거 꽤 강력한데?'라는 느낌이 든다. 특히, 함수형 프로그래밍 스타일과 맞물려서 사용하면 코드가 훨씬 깔끔해지고 유지보수가 편리해진다. ㅁStream API: 컬렉션(List, Set 등)의 요소들을 선언형(declarative) 방식으로 처리할 수 있게 도와주는 기능기존의 for-each 문을 사용한 코드보다 훨씬 간결하게 데이터를 필터링하거나 변환할 수 있다 (기존의 반복문 방식)public static void withoutStream() { String[] arrayOfStrings = {"A", "B", "C".. 2025. 3. 14. [Java] 버전 수정 기여(김영한의 실전 자바 - 중급 1편) Java Spring 생태계의 거장이신 김영한님 강의를 매우 좋아한다김영한님의 많은 강의들을 결제했으며, 그중 Java 강의는 현재 중급 2편까지 완강한 상태이다! 오랜만에 다시 들어가서 강의를 보는데 재밌는 걸 발견했다 이전에 교재에 오타가 있어 제보를 했더니, 정말 감사하게 수정 이력에 내 이름을 넣어주셨다(클레어몬트) 물론 큰 기여는 아닐지라도, 내가 정말 좋아하는 강의에 보탬이 됐다는 게 행복하고 뿌듯하다 😊#SK, #SKALA, #SKALA1기 2025. 3. 14. [Python] 코드 린터 도구: Flake8, Pylint Python 코드를 작성할 때 코드 스타일을 유지하고 잠재적인 오류를 사전에 방지하는 것은 매우 중요하다. 이를 위해 코드 린터(Linter) 도구를 사용하면 일관된 스타일을 유지하고 코드 품질을 향상할 수 있다. 대표적인 Python 코드 검사 도구로는 Flake8과 Pylint가 있다. - Flake8: Python 코드 스타일을 검사하는 도구PEP 8 스타일 가이드를 준수하는지 확인하는 역할을 한다. 기본적으로 코드 스타일을 점검하고, 코드의 복잡도를 분석하는 기능도 포함하고 있다.(Flake8의 주요 기능)PEP 8 스타일 가이드 검사코드 복잡도 분석 (McCabe Complexity 체크)사용되지 않는 변수 및 불필요한 코드 탐지확장 플러그인 지원Flake8은 코드 스타일을 유지하는 데 초점을.. 2025. 3. 4. [Python] 로그 관리(logging 라이브러리) 보통 로그 관리는 ELK Stack + log 라이브러리 체제로 간다!오늘은 근본이라 할 수 있는 이 Python의 logging 라이브러리에 대해 알아보자 import logginglogging.basicConfig(filename="app.log", level=logging.DEBUG, # 로그 레벨 설정 format="%(asctime)s - %(levelname)s - %(message)s") # 로그 포맷 설정logging.debug("디버깅 메시지")logging.info("정보 메시지")logging.warning("경고 메시지")logging.error("에러 메시지")logging.critical("심각한 오류 메시지.. 2025. 3. 4. [Python] requests 라이브러리 ㅇrequests 라이브러리: Python에서 HTTP 요청을 보내기 위해 가장 널리 사용되는 라이브러리 웹 페이지의 데이터를 가져오거나, API 요청을 보내고 응답을 받을 때 주로 사용된다. 간단한 코드 작성만으로도 HTTP 요청을 쉽게 처리할 수 있기 때문에, Python 개발자들에게 필수적인 라이브러리 중 하나이다. [requests 라이브러리 주요 기능]GET 요청 - 웹(서버)에서 데이터 가져오기import requestsresponse = requests.get("https://api.github.com")print(response.status_code) # 응답 코드 출력 (e.g. 200)print(response.json()) # JSON 응답 출력requests.get()을 사용하.. 2025. 2. 17. [Java API] 정렬 메서드(sort) 종류와 차이점 https://claremont.tistory.com/entry/%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98-%EC%A0%95%EB%A0%AC-%EC%A0%95%EB%A6%AC-%EB%B0%8F-%EC%84%A0%ED%83%9D-%EB%A7%A4%EB%89%B4%EC%96%BC [알고리즘] 정렬 정리 및 선택 매뉴얼ㅇ버블정렬 - 실무에서는 아예 사용하지 말자 "제자리 + stable" O(n^2) ㅇ선택정렬: 우선순위 큐 (무순 리스트로 구현) "제자리 + unstable" O(n^2): 느리다 - 소규모 입력에 적합 ㅇ삽입정렬: 우선순위 큐claremont.tistory.com먼저 위 포스트를 통해 정렬에 대한 기본적인 공부를 하고 오는 것을 추천한다 자바에서 Primitive T.. 2024. 10. 29. 이전 1 2 3 4 5 다음