inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

이야기를 나눠요

173만명의 커뮤니티!! 함께 토론해봐요.

노트 정리해보았어요. 혹시 문제 있으시면 알려주셔요!

스프링 핵심 원리 - 기본편

[문제점] - 클라이언트 (OrderServiceImpl) 고쳐야함 => OCP를 위반함 - OrderServiceImpl이 DiscountPolicy 뿐만 아니라 구현 클래스 FixDiscountPolicy에도 의존하고 있다 => DIP를 위반함 [해결 방법] - 1. DIP 해결 방법: 인터페이스만 의존 하게 한다 -- => 코드 내에서도 객체 할당 X - 객체 할당 X 에서 생기는 NullPointer Exception 문제 해결 방법: -- => 대신 주입할 얘가 필요하다 [강의 느낀점] - 실제 의존 관계 다이어그램에서 화살표를 보니 의존 관계가 확 와닿는다

  • spring
  • 객체지향
Tai Sun Park 댓글 1 좋아요 0 조회수 231

AppConfig의 역할이 너무 광범위 하지는 않을까요?

스프링 핵심 원리 - 기본편

질문: - AppConfig의 역할이 너무 광범위 하지는 않을까요? - member service impl 에 주입하는 구체 클래스는 동적으로 runtime 시 정하는 방법도 있을까요? 깨달음: - final 변수를 만들면 기본 할당 또는 생성자를 통해서 할당 되어야 함 - Command + E: 과거 했던 파일들 다보는 방법 => vim: ls [관심사의 분리] - 공연 => 역할의 구현을 누가 정하는가: 기획자 - 기획자 => AppConfig [AppConfig] - 역할 => 구현 생성 => 역할에 설정 => 기획자로서 역할을 갖는 ROLE에 맞는 구현 ACTOR를 배정함 - 역할에 설정 방법: -- 생성자 주입 [Injection] - Injection => 역할에 구체화를 부여 - DIP를 지킨다 => 구현 클래스를 몰라도 된다. ==> 역할인 인터페이스만 의존한다. - OCP를 지킨다 => (closed) 역할을 사용하는 클라이언트가 구현 클래스를 의지 않해서 구현이 바뀔 때마다 수정할 필요가 없다 => (open) 클라이언트 수정 없이 언제든지 추가 구현 클래스를 만들어서 클라이언트에 적용 할 수 있다 - Dependency Injection => 의존 관계 주입 ==> 클라이언트가 의존하는 것을 클라이언트 외부에서 주입

  • spring
  • 객체지향
Tai Sun Park 댓글 0 좋아요 0 조회수 240

순진한 개발자 여기 있어요

스프링 핵심 원리 - 기본편

아래와 같이 정리해보았습니다. 혹시 더 필요한 부분이 있을까요? [agile manifesto] 느낀점: - 기준을 제시해주어서 좋다 - 개발 할 때 고려 할 기준: -- 개인의 생각을 중요시하고 상호 교류가 잘 일어나는 것이 중요 -- 문서화 할 시간에 더 나은 제품 -- 고객과 협력에 집중하고 계약 협상에 대한 생각은 나중에 -- 필요에 따른 변화를 우선. 계획에 집착하기보다 [test] 깨달은점: - test 코드 파일 작성 쉽게 가능하다 느낀점: - 아직 SOLID가 안되는 문제점은 말씀해주시지 않았다

  • spring
  • 객체지향
Tai Sun Park 댓글 1 좋아요 1 조회수 234

MemberRepository 공유가 되나요?

스프링 핵심 원리 - 기본편

질문: - Member Repository가 OrderService와 MemberService 사이에 어떻게 공유 될 수 있을지 => 내 생각: final이 영향을 준다? => 실제 답: repository 내 store가 static으로 선언되어서 그렇다 느낀점: - 단위테스트가 중요하다 => 단위테스트로 점점 쌓아 점점 더 크게 테스트하는 것이다 - 이렇게 역할과 구현을 나눠서 개발만 한 것도 잘한 것이다 => 실무에서 이렇게만 해주는 것을 1차 단계로 해보자

  • spring
  • 객체지향
Tai Sun Park 댓글 1 좋아요 0 조회수 367

discountPrice가 최종 할인된 가격 맞을까요?

스프링 핵심 원리 - 기본편

[수업 노트 공유] 깨달음: 1. 단일 설계 원칙을 잘 지켰다: - "Order 생성 시 DiscountPolicy는 나는 모르겠고~ 할 수 있다. 질문: 1. discountPrice가 최종 할인된 가격 맞을까요? - discount 함수는 얼마나 할인 되는지를 알려주는 함수 아닌가요?

  • spring
  • 객체지향
Tai Sun Park 댓글 1 좋아요 0 조회수 332

여러분은 어떤 깨달음이 있으셨나요?

스프링 핵심 원리 - 기본편

< 노트 > 깨달음: 주문 서비스를 하나 둔다 => 주문 생성 서비스 제공하고 => 결과로 주문 결과를 반영 => 주문 결과에는 회원 등급 별 할인 정책에 의한 가격이 들어감 ==> 회원 등급 조회하기 위한 회원 서비스 ==> 할인 정책 적용하기 위한 할인 정책 서비스가 필요함 할인 정책이 하나의 역할이 될 수 있다 => 구현은 정액, 정률. 협력 관계: 역할을 통한 체계 => 재사용: 구현 바꿔서 체계 세부 내용을 바꿀 수 있다

  • spring
  • 객체지향
Tai Sun Park 댓글 0 좋아요 0 조회수 219

한번 정리해보았어요! 어떠신가요?

스프링 핵심 원리 - 기본편

[리뷰] 클래스 다이어그램 => 정적 객체 다이어그램 => 동적 [JUNIT] 배운점: - 사용시 given, when, then 적기 검증: - org.assertj.core.api 쓰기 이제 테스트: - 눈으로 검증 하는 테스트 => 테스트 코드를 통한 검증 [DIP] DIP 위반: => 한개의 클래스 내에서 인터페이스와 구현체 두가지를 의존함

  • spring
  • 객체지향
Tai Sun Park 댓글 1 좋아요 0 조회수 208

배운점 어떤가요?

스프링 핵심 원리 - 기본편

< 느낌점 > - 동시성 이슈가 있을때? => Concurrent Hashmap 사용! - 구현체 하나 있을때? => 이름 뒤 Impl 이라고 많이 쓰임!

  • spring
  • 객체지향
Tai Sun Park 댓글 1 좋아요 0 조회수 230

클래스 다이어그램에 추가적으로 객체 다이어그램이 필요하군요

스프링 핵심 원리 - 기본편

아래 처럼 이해했는데 맞을까요? < 클래스 그림> => 점선: 상속, 실선: 뭔가 사용하는 인터페이스? - 회원 서비스에 하나의 인터페이스 MemberService - 이것의 구현체 MemberServiceImpl 이 있다 - 회원 저장소에 대한 인터페이스 MemberRepository 를 두고 - MemberServiceImpl 은 인터페이스 MemberRepository 를 조작 < 객체 그림> => "new 한 인스턴스 끼리의 참조" - 어떤 MemberRepository 를 쓸지를 나타냄 => 회원 서비스 (impl) 은 메모리 회원 저장소 사용 (MemoryMemberRepository)

  • spring
  • 객체지향
Tai Sun Park 댓글 1 좋아요 0 조회수 208

다음 강의 듣기 전 설계해봤어요. 어떤 점을 개선해야 할까요?

스프링 핵심 원리 - 기본편

설계: < 미확정 부분에 대한 설계 > 회원 역할: DB 클래스를 추상화 구현: 자체 DB인지 외부 시스템 인지에 따라 달라짐 주문과 할인 정책 역할: 할인 정책 구현: VIP의 할인 정책, 나중에 정할 할인 정책 감사드립니다.

  • spring
  • 객체지향
Tai Sun Park 댓글 1 좋아요 0 조회수 310

강의 정리 해보았는데요. 어떤가요?

스프링 핵심 원리 - 기본편

깨달음 - OCP, DIP를 지키면 => 스프링 프레임워크를 만들게 됨 정리 - 설계 핵심: 역할과 구현 분리 -- 모든 설계에 인터페이스를 부여하자 --- 추상화란 비용 => 장점 보다 단점이 클 때 ---- 변화 할 것 같다 => 인터페이스. 안변한다 => 구현클래스.

  • spring
  • 객체지향
Tai Sun Park 댓글 1 좋아요 0 조회수 449

스프링 넘어가기 전에 들어야할 로드맵 질문

김영한의 실전 자바 - 기본편

원래는 실전편 듣고 스프링을 수강하려고 했는데요 최근에 선생님께서 중급편 강좌도 업로드하셨던데, 그것까지 마치고 넘어가는게 맞을까요?

  • java
  • 객체지향
디와이 댓글 1 좋아요 0 조회수 276

강의 자료에 사용하시는 그림

스프링 핵심 원리 - 기본편

안녕하세요! 강의 자료에 사용하시는 그림 만드실 때 따로 사용하시는 도구가 있는지 궁금합니다.

  • spring
  • 객체지향
김학준 댓글 1 좋아요 0 조회수 237

이해 잘한 것일까요?

스프링 핵심 원리 - 기본편

SRP 단일 책임 원칙 - 하나의 책임이라는 것은 모호하다. => 문맥과 상황에 따라 다르다 ==> 책임을 잘 조절하는 것이 묘미 - 기준이란 것은 변경 => 변경이 있을 때 파급 효과가 적도록 OCP 개방-폐쇄 원칙 - 확장: O, 변경: X => 별도의 뭔가가 필요하다 - 핵심: 별도의 뭔가 - 스프링 컨테이너 LSP 리스코프 치환 원칙 - 핵심: 인터페이스 규약을 맞춰야 한다 ISP 인터페이스 분리 원칙 - 핵심: 인터페이스는 잘게 나눠라 => 물론 이것도 너무 잘게 말고. 잘 조절하는 것이 묘미 DIP 의존관계 역전 원칙 - 핵심: (역할) 기능은 인터페이스의 역할 안에서 모두 설명되어야 한다. => 클라이언트는 (구현) 을 모르고 (역할) 만 가지고 해야 한다. ==> 근데, 다형성을 쓰더라도 parent = child 를 대입하여, child 에 의존한다. - 어떻게 해야 해? => spring

  • spring
  • 객체지향
Tai Sun Park 댓글 1 좋아요 0 조회수 193

OpenJDK 버전 업데이트에 대한 문의 드립니다.

김영한의 실전 자바 - 중급 1편

영한님 안녕하세요! 입문, 기본편에 이어 따끈따끈한 중급편을 수강중인 수강생입니다. https://openjdk.org/projects/jdk/22/ 위 링크에서 보면 OpenJDK 22버전이 2024. 03. 19에 출시되었습니다. 그래서 IntelliJ 에서도 OpenJDK 22 버전이 기본으로 선택되도록 변경되었더라구요. 정확한 이유는 모르겠지만 OpenJDK 구버전은 UI에서 제공하지 않는 것 같습니다. 강의를 수강하는데 버전업에 따른 문제는 크지 않을 것 같지만, 강의에서는 특정 버전이 명시되어 있어서.. 최신 버전 호환에 대한 말씀은 따로 없으셔서 한번 언급해주시면 좋을 것 같아서 문의 남깁니다! [2024. 03. 28 - 기본 버전이 22] [21버전 선택해도 Oracle OpenJDK 21은 없음]

  • java
  • 객체지향
  • openjdk
  • intellij
JJK 댓글 1 좋아요 2 조회수 1055

비전공자 고민입니다ㅠㅠ

김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음

안녕하세요 선생님 진로 고민과 궁금증이 있습니다. 우선 저는 비전공자입니다ㅠㅠ 백엔드 개발자가 되고싶은데 인터넷에 검색하고 찾아봐도 어떤 순서로 공부를 해야할지 잘 모르겠습니다.. 독학으로 할 생각입니다.. 우선 java를 듣고 spring를 순서로 듣는다고 하는데 python도 들어야한다고 하고 api랑 jpa, DB도 있다고 알아봤습니다. 또 찾아보니 c언어를 먼저 공부하라고 나와있기도 하고.. 오히려 너무 많은 정보로 혼란스럽습니다ㅠㅠ 어떤 걸 먼저 공부하고 순차적으로 어떤 언어와 커리큘럼으로 해야하는지 알려주세요ㅠㅠ 너무 복잡해서 api랑 jpa도 자바랑 같은 언어인건지.. 너무 헷갈립니다. 가야할 길을 알고 갈 수 있게 도와주세요ㅠㅠ

  • java
  • 객체지향
권정익 댓글 2 좋아요 0 조회수 624

대학교 휴학생 고민이 있어요

김영한의 실전 자바 - 기본편

안녕하세요, 대학교 4학년 휴학생입니다. 현재 저의 상태는 프로그래밍 언어로 자바와 mysql db만 조금 다룰줄 아는 상태입니다. 졸업을 하기 위해선 졸작을 준비해야하는데 저의 개인 능력 부족으로 휴학을 한 상태고 휴학하면서 공부를 어떻게 해야할까 하다가 김영한선생님의 강의를 접하게 되었습니다. 그런데 자바 공부만 해봤지 아직 스프링을 해보진 않았지만 졸업작품을 해야하는데 감이 잘 안잡힙니다. 저에겐 6개월이라는 시간이 있는데 개발자님이 만드신 로드맵을 천천히 해보면 졸업작품주제, 졸업작품을 만들수있는 개발 실력이 될까요? 구글이나 네이버 자료를 찾아봐도 잘모르겠고 조금 답답한 마음에 고민을 풀어봅니다.

  • java
  • 객체지향
김병곤 댓글 2 좋아요 0 조회수 628

진로적 고민입니다. 선생님 ㅠ 조언 부탁드립니다.

김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음

선생님 안녕하십니까 현직 프론트엔드 개발자로 2년차인 개발자입니다. 선생님 제가 백엔드로 전향하고자 하는 의지가 있어 고민되어 글을 남기게 되었습니다... 현실적으로 공부만 하기엔 돈이 좀 문제이 이기도 해서 선생님 강의로 준비를 해보려고합니다. 부트캠프같은 곳도 좋겠지만 시간 할당을 할수는 없고 일을 쉬는것도 부담인지라 ㅠㅠ 의지는 충만한데 이게 선생님 강의를 가지고 제가 취업을 할 수 있을지 앞으로의 조언이나 그런 방향성에 대해서 듣고싶어 이렇게 글을 남깁니다. 현재 비공자 출신이여서 cs적 공부를 더하고싶어서 현재 방송대 컴퓨터 공학과에도 진학해서 학업 병행중인데 조언 부탁드리겠습니다 ㅠ

  • java
  • 객체지향
uphoon 댓글 1 좋아요 0 조회수 420

웹크롤링 강의

[무료]기초 텍스트마이닝: 앱 리뷰 분석 with 파이썬(40분 완성)

안녕하세요 선생님 빅데이터 분석에 관심이 있어 파이썬을 1도 모르는 상태에서 시작해 현재 선생님의 강의를 통해 많은 도움을 받고 있습니다. 현재 텍스트 마이닝 분석 방법으로 쓴 논문들을 보면 쇼핑몰 댓글 부터 해서 각종 SNS(페이스북, 인스타그램 등)의 댓글을 분석한 논문들을 많이 살펴볼 수 있는데 현재 파이썬 초보로서 데이터를 수집하는 과정(웹크롤링)이 제일 중요하고도 어려운 것 같습니다. 현재 텍스톰이나 빅카인즈 같은 웹사이트를 이용하는 것 말고 파이썬 으로 다양한 데이터를 직접 웹크롤링 해서 데이터를 수집하는 방법을 집중적으로 다룬 강의는 거의 찾아보기 어렵더라구요..ㅠㅠ 블로그 등에 검색해보면 코드가 공개된 것도 있지만 여기저기 코드 방식이 다 다양하고 막상 적용해서 실행해보면 또 에러 생기고 이유는 모르겠고 답답하더라구요. SNS 채널 및 쇼핑몰 댓글 등을 웹크롤링 하는 과정을 하나하나 다 보여주는 강의가 있으면 좋겠다고 생각하고 있는데 혹시 이렇게 여러 채널의 웹크롤링 과정만 다룬 강의를 올려주실 계획은 없으신지요?

  • 빅데이터
  • NLP
  • 텍스트마이닝
  • 데이터-리터러시
우아한 북극곰 댓글 1 좋아요 0 조회수 486

안녕하세요 고민좀 들어주십쇼 ㅠ

김영한의 실전 자바 - 기본편

일단 저는 안드로이드 앱 개발자를 목표로 하고있어요. 강의 내용에서 자바 스프링이란것이 중요하게 언급되던데 안드로이드 앱개발에도 쓰이는지 궁금합니다. 그리고 이제 무엇을 해야 할지 길을 잃었습니다 ㅠㅠ. 안드로이드 스튜디오로 간단한 앱 만드는 걸 무작정 따라해 보는게 좋을지 ..

  • java
  • 객체지향
준호 댓글 1 좋아요 0 조회수 520

인기 태그

인프런 TOP Writers

주간 인기글