[Spring Basic] IoC와 DI
BE/Spring2024. 1. 18. 21:56[Spring Basic] IoC와 DI

IoC - 제어의 역전 기존 프로그램들은 개발자의 의지에 따라 구현 객체를 생성하고, 연결하고 실행했다. 즉 프로그램의 제어 흐름을 개발자가 직접 조종했다. 하지만 스프링에선 해당 객체의 생성과 연결, 실행을 개발자가 아닌 스프링이 담당한다. 프레임 워크 vs 라이브러리 프레임워크는 내가 작성한 코드를 제어하고, 대신 실행하면 프레임워크 내가 작성한 코드를 직접 제어의 흐름을 제어하면 라이브러리 위의 그림처럼 나의 비즈니스 오브젝트(내가 구현한 객체)와 Configuration 메타 데이터를 가지고 스프링 이리저리 짬뽕해서 스프링 서버가 생성된다. DI - 의존관계 주입 스프링이 DI를 하는 방법에는 네 가지가 있다. ⭐️ 생성자 주입 ⭐️ Setter 주입 필드 주입 일반 메서드 주입 생성자 주입 생성..

[Spring Basic] 객체 지향 설계와 스프링
BE/Spring2024. 1. 18. 21:27[Spring Basic] 객체 지향 설계와 스프링

스프링이란? 자바 언어 기반의 프레임워크 -> 객체 지향 객체 지향 언어가 가진 강력한 특징을 살려내는 프레임워크 "좋은" 객체 지향 애플리케이션을 개발 할 수 있게 도와주는 프레임 워크 스프링 DI 컨테이너, AOP, 이벤트, MVC, WebFlux, 트랙잭션, JDBC, ORM 지원 ... 등등 정말 다 있다 흔히 말하는 "좋은" 객체 지향 프로그래밍 추상화 캡슐화 상속 다형성 역할과 구현으로 구분해서 세상을 바라보고 또 코딩하면 단순해지고, 유연해지고, 변경도 편리해진다. 역할(인터페이스) - 구현(인스턴스, 구현 클래스)을 유연하게 변경할 수 있게 되면 코드가 유연해진다. 스프링과 객체 지향 다형성이 가장 중요하다. 스프링은 다형성을 극대화해서 이용할 수 있게 도와준다. 제어의 역전(IoC), 의..

백준 허브 연동하기
CS/Algorithm2024. 1. 16. 23:56백준 허브 연동하기

백준 허브를 이용해서 백준도 풀고, 깃허브 잔디도 심어보자 백준 허브 설치 아래 링크로 가서 백준허브 익스텐션을 크롬에 설치한다. https://chromewebstore.google.com/detail/%EB%B0%B1%EC%A4%80%ED%97%88%EB%B8%8Cbaekjoonhub/ccammcjdkpgjmcpijpahlehmapgmphmk?hl=ko 백준허브(BaekjoonHub) Automatically integrate your BOJ submissions to GitHub chrome.google.com 깃허브 인증 후 레포지토리 연동 Create a new Private Repository - 새로운 레포지토리 연결 Link an Existing Repository - 기존의 레포지토리 ..

Python 3.11 달라진 점 - 업데이트
Language/Python2024. 1. 15. 23:01Python 3.11 달라진 점 - 업데이트

속도문서에 따르면 3.10에 비해 10% ~ 60% 빨라졌다. 즉 1.25 배 빨라졌다  예외 처리 새 구문 (except*) 예외문에 대한 그룹을 설정할 수 있고, 한번에 여러 예외를 받을 수 있다.또한 출력문을 예쁘게 그려준다def f(): raise ExceptionGroup( "group1", [ OSError(1), SystemError(2), ExceptionGroup( "group2", [ OSError(3), RecursionError(4) ] ..

ROS2 - Jetbrain IDE 설정 (Intellij, PyCharm, CLion)
Embedded/ROS2024. 1. 12. 14:03ROS2 - Jetbrain IDE 설정 (Intellij, PyCharm, CLion)

ModuleNotFoundError: No module named 'rclpy'rclpy를 import 하기 위해서는 /opt/ros/humble/ 내부의 package를 가져와야 한다. ROS2 Humble이 제공하는 방법은하지만 이 경우는 Local에서만 동작하여 Jetbrain의 Remote 개발환경에서 사용할 수가 없다.또한 매번 터미널로만 열어야 한다. 같은 문제로 인터넷을 뒤졌지만 찾을 수 없었다.직접손보기로 하고 로그를 뒤진 결과 LocalLocal의 경우 비교적 간단하다.Jetbrain Tool 박스로 IntelliJ를 설치한 경우에는 아래 경로 파일로 가$ /home/{USER_NAME}/.local/share/JetBrains/Toolbox/apps/inte..

[MAC] M1 맥북 프로 16인치 맥세이프 충전 포트 수리 (feat. 동탄 TUVA)
일상2023. 11. 12. 14:14[MAC] M1 맥북 프로 16인치 맥세이프 충전 포트 수리 (feat. 동탄 TUVA)

새 케이블 연결해도 끊김현상이 재현되어, 하드웨어 검사를 하니 포트에 에러 코드가 떳다. 판매자에게 바로 말했고, 판매자분도 포트가 나갔을 지는 몰랐다고 했다. 인터넷을 찾아보니 만약에 수리를 하면 10만원 초중반 또 열심히 검색을 하다가 https://www.clien.net/service/board/cm_mac/18292152 맥북을 수리해야 할지 고견을 구합니다. : 클리앙 맥북에어 m2 모델입니다. 맥세이프3 단자로 충전하려고 연결하면 간혈적으로 연결이 안되어 충전이 안되는 현상이 있어 애플스토어에 방문했습니다. 먼저, 방문 전에 케이블 단자와 맥북 맥세이 www.clien.net 위 글을 보고 여차하면 10만원 초중반을 쓴다는 마음으로 서비스 센터를 예약했다. (1년 반정도가 지나서 무상보증은 ..

image