No video

스프링 제대로 공부했는지 5분안에 확인하는 방법

  Рет қаралды 146,441

백기선

백기선

Күн бұрын

리팩토링 강의:bit.ly/3BfwdL6
디자인패턴 강의: bit.ly/3JaYrJA
채널 멤버쉽 가입:
/ @keesun.b

Пікірлер: 200
@choi775
@choi775 2 жыл бұрын
다시 공부하러 가야하는 영상
@keesun.b
@keesun.b 2 жыл бұрын
홧팅!
@user-rw6lx7hg7i
@user-rw6lx7hg7i 2 жыл бұрын
뼈 부서짐..
@keesun.b
@keesun.b 2 жыл бұрын
사실 이게 스프링하고 크게 상관없는 기본적인 코딩 + 테스트 스킬인데, 이거 모르는 MS 직원도 있었습니다. (자세한 사연은 저 아래 "난 루피야"님 대댓글을 참고하세요.) 그러니 여러분은 적어도 그 MS 직원 보다 하나 더 많이 알게 되신겁니다. ㅊㅋ
@elate-o
@elate-o Ай бұрын
@@keesun.bㄱㅅ
@Yomanghangeot
@Yomanghangeot 2 жыл бұрын
이건 정말 훌륭합니다. 스프링 뿐만아니라 의존성 주입이 왜 필요한지 가장 쉽게 이해할 수 있는 영상 같습니다.
@User_Masuri
@User_Masuri 2 жыл бұрын
테스트를 작성하다보면 자주 만나는 문제입니다. 이 부분은 꼭 Spring이 아니여도 객체지향 언어에서 Interface와 DI를 왜 써야하는지 설명하는 아주 구체적인 예가 될 수 있겠네요! 좋은 영상 감사합니다
@keesun.b
@keesun.b 2 жыл бұрын
그렇습니다. 당연히 스프링을 몰라도 알 수 있는 문제지만, 스프링을 알면서 이걸 모른다면.. 도대체 무엇을 공부한 것인가... 싶습니다. ㅎㅎ
@jipdol2638
@jipdol2638 2 жыл бұрын
장난도 섞으시면서 편안하게 말씀해주셨지만 뼈가 있는 말씀이시네요. 공부의 목적 반성합니다. 그리고 시작하겠습니다
@keesun.b
@keesun.b 2 жыл бұрын
홧팅! 제목이 어그로라서 내용은 좀 순하게 가려고 했는데 그래도 좀.. 아파 하시는 분들이 계시네요. 흠.. 수위 조절이 어렵네요.
@leesangwn
@leesangwn 2 жыл бұрын
좋은 문제 감사합니다 스프링 아니어도 테스트나 di를 이해하고 짜려면 알고있어야 할문제일것 같아 보이네요ㅎㅎ
@kindjoo84
@kindjoo84 2 жыл бұрын
끊임없는 공부의 동기가 되는 영상...ㄷㄷㄷ
@hoganchu5898
@hoganchu5898 Жыл бұрын
1년 전에 대충 따라 쓰던 코드들에서 공부하면서 코드 짜면서 오다가 지금 다시 보니 감이 오네요 항상 감사합니다 기선 선생님
@ksmail12
@ksmail12 2 жыл бұрын
이번예제 처럼 어떤 객체의 생성이 필요한 경우라면 따로 별도의 인터페이스를 만들지 않더라도 스프링의 FactoryBean 인터페이스나 자바 8의 Supplier 인터페이스를 사용해도 괜찮을 것 같습니다.
@taegyeonghwang3139
@taegyeonghwang3139 2 жыл бұрын
주니어 개발자로서 유튜브 너무 잘 보고 있습니다 감사합니다 !!
@jws1837
@jws1837 2 жыл бұрын
ㅎㅎ 형님2월 상담방송에서 나왔던 내용 따로 영상찍으셨군요. 덕분에 복습했습니다. 감사합니다.
@zzzzfff1
@zzzzfff1 Жыл бұрын
기선님 항상 많은 부분과 키워드 들을 얻고 가는 거 같습니다 !!! 감사합니다~!!!
@user-bx7gm5tk6r
@user-bx7gm5tk6r Жыл бұрын
토비의 스프링 한번이라도 읽으셨으면 바로 이해할 수 있는 내용! 토비님 짱
@user-cw4is7sg1t
@user-cw4is7sg1t Жыл бұрын
그분 책좀 추천좀
@user-SleepySleepy
@user-SleepySleepy Жыл бұрын
외부 의존성 테스트할 때마다 참고하러 매번 오네요. 감사합니다~!
@YY-er2lq
@YY-er2lq 2 жыл бұрын
좋은 말씀 감사합니다!!
@user-ys4ji5ex7s
@user-ys4ji5ex7s 2 жыл бұрын
좋습니다. 이건 비단 스프링뿐만 아니라 다른 언어 레벨에서도 충분히 적용될 사항으로 보여집니다.
@rayee817
@rayee817 2 жыл бұрын
차분히 설명을 잘하시네요. ~!
@핑크픙
@핑크픙 7 ай бұрын
스프링까지 안가도 추상적인 클래스나 인터페이스에 의존해라는 solid 원칙중 하나 dip 까지만 알아도 해결할 수 있을것 같네요
@Expecter0106
@Expecter0106 2 жыл бұрын
좋은 내용과 건강한 마케팅
@ellerym149
@ellerym149 Жыл бұрын
유튜브 추천뜰때마다 3개월에 한번씩 보는거 같은데, 볼 때마다 발전된 나를 느껴요. 아는만큼 보인다는데 이제는 다 대답할 수 있고 같은 상황에서 이미 이렇게 코딩하고 있구나라는걸 알게됨
@k-s-y-
@k-s-y- 2 жыл бұрын
스프링을 모르는 사람인데, 그냥 코드 보고 비슷한 방법을 떠올렸네요 ㅋㅋ 전역하면 스프링을 꼭 공부해보고 싶습니다.
@keesun.b
@keesun.b 2 жыл бұрын
기본기가 좋으신 분이군요. 스프링은 스프링을 쓸 때 하시면 됩니다.
@user-hw2in1pn6r
@user-hw2in1pn6r 2 жыл бұрын
멋진 선배님 감사합니다.
@orbit-dy2vm
@orbit-dy2vm Жыл бұрын
실전에서 추상화되지 않은 코드로 고통받아봐야 저렇게 할 수 있습니다 솔직히 그냥 배운지 얼마 안된 분들은 저거 하기 힘듦
@orbit-dy2vm
@orbit-dy2vm Жыл бұрын
개인적으로 공부하는 분들에게 조언하자면 비즈니스 로직이 뭔지 캐치하고 그거에 대한 단위테스트를 만드는 식으로 접근하면 좋아요 나머지는 의존성 주입하고 본인이 깃헙 sdk만들게 아니면 주입받아야겠지요 ㅋㅋ
@waytogo1231
@waytogo1231 2 жыл бұрын
경력만 쌓았나봐요 좋은 말씀 듣고 갑니다!
@user-yr8jb7vv4y
@user-yr8jb7vv4y 2 жыл бұрын
스프링에 국한된 내용이라기 보단 보다 더 근원적인... DIP에 관한 내용으로 느껴지네요.
@keesun.b
@keesun.b 2 жыл бұрын
네 사실 이 문제는 최근에 C#으로 코딩하는 동료가 테스트를 작성하지 않길래 물어봤더니 결국에 그 안에 저렇게 static 호출이 있어서 이걸 어떻게 테스트 하냐길래.. '와.. 이걸 모르네..' 싶어서 다시 생각난.. 그러다가 나는 이런걸 언제쯤 알게 됐을까 생각해보니 '아 스프링 공부할 때 PSA 보다가 알았지..' 떠올라서 만든 영상입니다.
@kimyohanson
@kimyohanson 2 жыл бұрын
좋은 영상 감사함다
@user-ie9jz8ht6c
@user-ie9jz8ht6c 2 жыл бұрын
업무에서도 쓰는 패턴이네요 그래도 설명이 이렇게 깔끔하지는 않는데 나중에 복습 해봐야 갰습니다
@moka7986
@moka7986 2 жыл бұрын
자바 뉴비입니다. 왠지 모르게 시작부터 주구장창 혼나는거 같아서 마음이 불편했지만 그래도 하나 배우고 갑니다. 감사합니다.
@user-bp4yo1on5e
@user-bp4yo1on5e 2 жыл бұрын
좋은 영상입니다. 꼭 spring에서만 쓰는 코드가 아니죠!! 다른 언어로 백엔드를 개발할 때 알아야하는 기본 개념 인거같아요.😋
@FENRYR_Lykan
@FENRYR_Lykan 4 ай бұрын
*다시 돌아가야겠군요 🥹*
@pandahyvaa
@pandahyvaa Жыл бұрын
감사합니다.
@user-cv5lm4lp2c
@user-cv5lm4lp2c Жыл бұрын
일반적으로 테스트하고 싶은 메서드 안에 static 함수가 있는 경우 테스트 코드 작성하기가 어렵지는 않습니다. 그러나 일부 상황에서는 static 함수 때문에 테스트 코드 작성이 어려울 수 있습니다. 예를 들어, static 함수가 다른 클래스의 static 함수를 호출하는 경우, 이를 모의(mock) 객체를 사용하여 대체하기가 어려울 수 있습니다. 또한 static 함수가 외부 자원에 종속되어 있거나 부작용(side effect)을 가지는 경우, 이를 테스트 코드에서 재현하기가 어렵습니다. 그러나 이러한 문제들은 전반적으로 테스트 가능한 코드를 작성하기 위해 다양한 기술들을 사용하여 극복할 수 있습니다. 예를 들어, 의존성 주입(dependency injection)을 사용하거나, static 함수 대신 인스턴스 메서드를 사용하거나, mockito와 같은 모의 객체 라이브러리를 사용할 수 있습니다. 따라서, 테스트하고 싶은 메서드 안에 static 함수가 있다고 해서 테스트 코드 작성이 불가능한 것은 아니며, 상황에 따라 다양한 해결 방법이 존재합니다. chat gpt 왈.... 오오.....
@thkim941
@thkim941 Жыл бұрын
신기한 게 3개월 전에는 뭔 소리지... 했는데 지금 졸업작품 만들면서 스프링 조금은 익숙해지니 되게 쉬운 문제였네 이런 생각이 들더라고요
@usekim376
@usekim376 2 жыл бұрын
Spring은 해본 적 없고 NestJS로 개발 중인데 타이틀에 이끌려 들어왔습니다 ㅎ Dependency Injection이란게 공부할 때도 개념/예제를 봐도 이걸 도대체 왜 써야하는지 납득이 안되던걸 unit test 짜면서 깨달았던 기억이 있네요 ㅋㅋㅋㅋ 어떻게 보면 추상적인 개념을 아주 잘 설명해주신 것 같습니다. 굳이네요
@user-ch6lq5ic1l
@user-ch6lq5ic1l 2 жыл бұрын
근본적으로 스프링보단 디자인 패턴과 객체지향 5원칙에 대한 이해도를 묻는 듯하네요. 물론 스프링이 해당 내용에 매우 도움을 주는 프레임워크이니, 그 내용을 모른다면 제대로 공부했다고 볼 수 없긴 하네요 ㅋㅋ
@yeonsangjeong2390
@yeonsangjeong2390 2 жыл бұрын
바로 더 자바 수강신청 했습니다 ㅎㅎ
@iwinwinwinwinwin
@iwinwinwinwinwin 2 жыл бұрын
오 난 이거 바로 맞췄는데, 그래도 리팩토링 저거 구매하고 싶다. 할인 할 때..
@sdnfsdtk
@sdnfsdtk 2 жыл бұрын
네~ 공부하러 가보겠습니다
@keesun.b
@keesun.b 2 жыл бұрын
홧팅!
@user-ym3dd5jq5d
@user-ym3dd5jq5d Жыл бұрын
어그로 끌어넣고 영향받지말라는건 무슨짓이죠
@user-kk6rz5mx1p
@user-kk6rz5mx1p 2 жыл бұрын
프로 유튜버 다되셨네요-!! ㅋㅋ
@user-ic8lq8ir4q
@user-ic8lq8ir4q 2 жыл бұрын
오랜만이에여 행님
@lob8118
@lob8118 2 жыл бұрын
ㅎㅎㅎㅎ 잘 보았습니다!
@keesun.b
@keesun.b 2 жыл бұрын
재밌게 봐주셔서 감사해요. 재미로 봐달라고 만든 영상인데.. 진지하신 분들도 계시겠죠? ㅋㅋ
@gym11ification
@gym11ification 2 жыл бұрын
POJO가 아나고 따로 interface를 extract하지 않은 이상, GHRepository도 mocking이 필요할거예요 ^^ 그럴 경우에는 차라리 CodeRepository POJO 모델들을 따로 짜서, adapter로 GitHub client class랑 연결하는게 올바를 것 같네요. 간단한 예시로 DI설명 하신 것 같은데, 이걸로 계발자분들에게 스프링을 모른다고하면 좀 도발적이지 않나 싶습니다!
@gym11ification
@gym11ification 2 жыл бұрын
꼭 이렇게 안해도 Mockito.mockStatic도 test 할 수는 있다는점..
@keesun.b
@keesun.b 2 жыл бұрын
당연히 모킹은 필요하죠. 그런데 제가 "스프링을 모른다"고 한게 아니고 제 생각에 그런 분들은 제대로 공부한건 아니라는 거죠. (그 둘은 다르자나요 그쵸? 제 말을 곡해하진 말아주세요.) 그리고 제가 "목킹을 하지 않고"라고 말한게 아니라, "목 프레임워크 없이!, 목킹을 도와주는 프레임워크 없이"라고 말했자나요. 그렇게 말한건 static까지 목킹해주는 툴이 있기 때문에 그걸 배제하고 싶었습니다. 그래야 제가 의도한 곳으로 유도할 수 있었으니까요. 뭐 이걸 트릭이라고 말하신다면 트릭이라고 할 수 있겠지만 글쎄요. 이걸 "모킹 없이"라고 곡해하시면 제가 한 말과 많이 다르지 않나요? 스프링 PSA와 IoC를 "제대로" 이해했다면 스프링 없이도 이렇게 코딩할 수 있어야 한다고 믿고 있기 때문에 이런 영상을 만든 것이고 물론 누구나 제 생각과 같을 거라고 생각하진 않아요. 하지만 저와 생각이 다르다고 해서 모두 틀리다는 것도 아닙니다. 영상 말미에 이야기 했자나요. 실무에서 쓰고 계신 분들은 목적이 좀 다를 수도 있을거라고. 그분들은 이런거 말고 스프링이 제공하는 구체적인 기술들에 더 집중해야 할지도 모른단 이야기였어요. 이 영상은 스프링을 쓰고 있지 않으면서도 학습을 목적으로 공부하는 분들.. 그런 분들이 스프링 공부를 잘못하고 있는건 아닌지 생각해볼 여지를 드리기 위해 만든 영상입니다. 물론 제목으로 조금 어그로를 끌었습니다. 그렇다고 daoonee님의 댓글처럼 결론을 내리시면 조금 아쉽네요. 제가 하려던 말은 그런게 아니었는데..
@gym11ification
@gym11ification 2 жыл бұрын
@@keesun.b 친절한 설명 감사해요. 스프링 공부 이전의 기초적인 IoC를 모른다면 공부를 잘못 한 거라고 말씀 하신거군요. 이해의 차고였나봐요~
@gym11ification
@gym11ification 2 жыл бұрын
"Mocking을 도와주는 프레임워크 없이"라고 하셨는데요, framework를 이용해 test허용하는 방법은 2가지 밖에 떠오르지 않는데.. 1. mockStatic 2. Extract GitHub.connect() to connect method in class under test, and use spies. doReturn(gHRepo) .when(spy(foo)).connect(); 다른 방법이 있나요?
@keesun.b
@keesun.b 2 жыл бұрын
저도 그 둘밖에 모르겠네요. 어떻게 보면 2번이 결국에 영상에서 설명한 방법의 축약판이겠네요 ㅋㅋ
@Likitaka
@Likitaka 2 жыл бұрын
의존성 주입, 인터페이스 (추상화에 의존하고 구체적인거에 의존하지 말것) 이런거 애기하는거 같으시네요. 근데 굳이 공격적으로 제목을 다셔야 하나요?? 사람에 따라 모를수도 있는거고. 계속 공부하다 보면 스스로 충분히 깨우칠 수 있는 내용인데 굳이?
@jh-to4us
@jh-to4us Жыл бұрын
어그로 끄셔서 본인 인프런 강의를 좀 자극적으로 영업하시는거 같긴합니다 ㅋㅋㅋ
@lovelyalien9167
@lovelyalien9167 2 жыл бұрын
오..고민상담할 때 봤던거다 헤헿
@user-ec1rr8ci5h
@user-ec1rr8ci5h 2 жыл бұрын
다시공부하러갑니다
@masic3610
@masic3610 2 жыл бұрын
엄마가 왜우냐고해서 그냥 울었음
@user-zw8uq1rj9m
@user-zw8uq1rj9m 2 жыл бұрын
공부를 시작한지 3달이 다 되가지만 PSA에 대해서 들어본 적도 없다는 제 자신이 너무 한심스럽습니다..왜 IoC AOP DI밖에 몰랐을까요? 사고력을 넓혀주신거에 감사합니다.
@user-mz2it8eu8g
@user-mz2it8eu8g 2 ай бұрын
안녕하세요. 궁금한게 있는데 혹시 외부 api가 제공하는 코드 중 사용할 클래스가 final 클래스일때도 똑같이 적용하면 될까요?
@user-ds8bb4ti4x
@user-ds8bb4ti4x 2 жыл бұрын
다행이네요 엉망까진 아니었어요 :)
@ycho7120
@ycho7120 2 жыл бұрын
이걸 psa라고하는군요 새로운 용어를 알게됐습니다 감사합니다
@pong95goo
@pong95goo 2 жыл бұрын
아야…공부하러 갑니다..
@lludd5114
@lludd5114 2 жыл бұрын
무슨 소리인지 잘 이해를 못했습니다ㅠㅠ 저렇게 인터페이스 주입을 해주면 실제로 구현된 DefaultGithubSerivce가 주입이 되고, 기존 로직과 동일하게 똑같이 Github.connect가 실행되는거 아닌가요?? 어떤 부분이 가짜로 행동하게 되는걸까요...??
@keesun.b
@keesun.b 2 жыл бұрын
영상에서 보여드린 코드는 테스트 할 때 가짜로 행동하는 구현체를 끼워넣을 수 있도록 개선하는 것까지만 보여드렸으니까 말씀하신대로 기존 로직하고 동일합니다. (이 다음에 테스트 코드 작성하는 것까지는 영상도 길어지고 재미없으니 생략하고 말로만 설명했습니다.)
@lludd5114
@lludd5114 2 жыл бұрын
@@keesun.b 답변 감사드립니다!
@22Gas
@22Gas 2 жыл бұрын
@@keesun.b 아하~~~ 저도 몰랐는데 이해가됩니다.
@metacoding
@metacoding 2 жыл бұрын
@@keesun.b 이 답변보고 이해했습니다 ㅎ 감사합니다. 잘봤습니다.
@padohy2817
@padohy2817 Жыл бұрын
이야 저번엔 들어도 뭔말인지 몰랐는데 이제 그래도 감은오네요. 굿입니다.
@openmaya
@openmaya 2 жыл бұрын
어그로 대박이구요. 마지막까지 어그로를 풀어주는 언급이 없어서 조회수가 더 올라가지 않을까 기대해 봅니다?!
@user-qi3fy6em3f
@user-qi3fy6em3f 2 жыл бұрын
spring을 2년이나 했는데 인터페이스 만드는 건 생각도 못했네요...그냥 엥? 쟤만 따로 떼서 테스트하면 되는 거 아냐? 이러고 있었네요....전 뭘한 걸까요?ㅋㅋㅋ
@user-wq9ee9fg9f
@user-wq9ee9fg9f 2 жыл бұрын
도저히 지나칠 수가 없는 제목••
@user-ux3si3ge2e
@user-ux3si3ge2e 2 жыл бұрын
머리속에 구현하는 코드는 조금 차이 있었디만 큰 방향은 같아서 다행이었습니다. 역할-구현 모델을 통한 해결!
@timeover243
@timeover243 2 жыл бұрын
ㅎㅎㅎㅎ 스프링했다가 순서가 잘못되서 부트로 넘어갔다가 들으러와봤는데 머리만 깨졌군..ㅜㅜㅜㅜㅜㅜ
@kihong67
@kihong67 11 ай бұрын
헐... ㅋㅋㅋ 이걸 테스트 코드 어떻게 짜 ?... 라고 전전긍긍 했었던 문제였는데 난 멀었구나 ㅠㅠ...
@user-vi4og3sd2z
@user-vi4og3sd2z 4 ай бұрын
근데 처음 제시한 코드에서 저렇게 개선하면 뭐가 달라져요?
@user-uf9xp7ft7w
@user-uf9xp7ft7w 2 жыл бұрын
다 아는 내용들이군… 그래서 강의 결제는 어디서 하나요?
@keesun.b
@keesun.b 2 жыл бұрын
영상 본문에 링크 추가해 뒀습니다. 다 아시다니! 인정!!
@ymj2934
@ymj2934 Жыл бұрын
힌트 주시니까 알았음ㅋㅋ
@loopstudy5476
@loopstudy5476 2 жыл бұрын
새로운 강의 구매하러 갑니다.
@keesun.b
@keesun.b 2 жыл бұрын
감사합니다. :)
@munseok_choi
@munseok_choi 2 жыл бұрын
당연히 잘 모른다고 생각해서 몸으로 깨닫기 위해 왔읍니다 ㅎㅎ
@T_QQQ
@T_QQQ 2 жыл бұрын
정답 맞췄습니다 후후
@hansay8511
@hansay8511 Жыл бұрын
스프링과는 그닥 무관한 내용인 것 같아요. 어차피 외부연결하는 서비스들은 의존성주입하는게 좋은데, mocking 하기 위해서 인터페이스 하나 만들어서 주입하면 된다는게 골자인데요 이 맥락에서 스프링은 그 의존성주입을 프레임워크에 위임하는 역할밖에 못하니까요
@user-pp9vy5gg1c
@user-pp9vy5gg1c 2 жыл бұрын
!(저는 영상보자마자 어떻게 테스트코드를 작성하는지 눈치해서 공부를 제대로 한 것 같습니다.)
@61crossroad
@61crossroad 2 жыл бұрын
SOLID 인터페이스의 구현체가 스프링이다.
@need5mojo
@need5mojo 2 жыл бұрын
가르쳐주기보다 혼내는.. 영상이군요
@unknown22de
@unknown22de 2 жыл бұрын
아... 다시 공부하러 가야하는 것으로....
@nick6267
@nick6267 2 жыл бұрын
PSA볼 때 마다 느끼는 건데 전략 패턴과 차이가 없어 보이는데 다른점이 무엇일까요?
@keesun.b
@keesun.b 2 жыл бұрын
전략 패턴 맞습니다. 대표적인 전략 패턴의 사례라고 볼 수 있을 것 같습니다.
@ReadingKing1
@ReadingKing1 Жыл бұрын
선생님 안녕하세요 우연히 선생님의 영상을 보게 된 학생입니다 아직 스프링은 공부하지않은 상태에 자바랑 운영체제만 공부하고 있는 상태라 psa가 뭔지는 잘 모르겠습니다만 해당 문제는 Githib이라는 클래스에 직접 접근하지않고 인터페이스를 통해 중간연결 매개체를 두고 간접접근을 하게 하는 캡슐화라고 보면 될까요?
@user-xo9kk5ut2y
@user-xo9kk5ut2y 2 жыл бұрын
항상 좋은 영상을 보여주셔서 감사합니다. 백엔트 개발자로 1년차인 구독자입니다... 이 영상을 보면서 스프링 뿐만 아닌 객체지향 언어에 대하여 완전히 이해하지 않고 공부를 하고 있었다고 생각이 들었습니다. ㅠㅠ 혹시 이 영상에 대하여 배울 수 있는 백기선님의 강의가 어떤것이 있는지 알 수 있을까요? ~ 다시 제대로 배우고 싶네요
@user-dt9pg3ef6q
@user-dt9pg3ef6q 2 жыл бұрын
스태틱 메소드를 굳이 인터페이스와 DI 로 뺴는 이유를 알 수 있을까요?
@ef_kim
@ef_kim 2 жыл бұрын
유닛테스트 짜보시면 바로 답 나옵니다.
@user-bv3tk7jf7r
@user-bv3tk7jf7r Жыл бұрын
어디부터해야하나요...
@zzgo332
@zzgo332 2 ай бұрын
di는 라라벨에서 더 많이 쓰이는 듯..
@kimhi5931
@kimhi5931 Ай бұрын
람다까지 쓰면 완벽
@gkkry
@gkkry Жыл бұрын
이제 막 졸업한 컴공인데.. 모르것네유.. 아--
@Ahnuoy
@Ahnuoy 2 жыл бұрын
스프링과는 별 관련없는 예제같은데.. 제목 너무 어그로 아닌가요~ ㅎㅎ
@Grujam92
@Grujam92 2 жыл бұрын
스프링에서 DI는 알파이자 오메가에요. 그 위에 올라간 복잡한것들은 부수적인것.
@Ahnuoy
@Ahnuoy 2 жыл бұрын
DI, DIP 가 스프링의 핵심 철학이지만 둘이 스프링에 의존적인 개념은 아니죠 ^^ 스프링 몰라도 OOP 설계 원칙이나 테스트 용이한 코드에 대한 고민을 했다면 알 수 있는 개념인데 스프링 지식에 대한 영상인것처럼 제목을 뽑아놓은 것에 대해 지적한 겁니다~
@Grujam92
@Grujam92 2 жыл бұрын
글쎄요. OOP설계 원칙을 생각하면 결론이 항상 DI라는식으로 전도하시는 분들도 있던데, DI가 항상 정답은 아니에요. 스프링이 그러한 방식으로 OOP를 구현해낸거지. 언어마다 하나씩 다 있는 DI 프레임워크의 시작이 스프링인데, 스프링과 DI를 떼놓고 생각할수있을까요?
@keesun.b
@keesun.b 2 жыл бұрын
맞아요. 제가 조금 어그로를 끌려고 굳이 "스프링"을 넣은것 뿐이지, 스프링 없이도 다 되는 것들이에요. 덕분에 조회수가 좀 나오겠지만.. 그래도 막 심각한 어그로는 아니죠??
@Ahnuoy
@Ahnuoy 2 жыл бұрын
네 저도 영상의 주제는 좋다고 생각합니다~ ㅎㅎ
@gurasi
@gurasi 2 жыл бұрын
정말 죄송합니다만,, 인터페이스와 구현 메소드를 이용하면 가짜를 사용하게 된다는 말씀이 잘 이해가 가지 않습니다..
@user-vx4ck5ls5k
@user-vx4ck5ls5k 7 ай бұрын
선생님 안녕하세요. 잘 이해가 안 가서 댓글 썼어요. Github API와 같은 외부 라이브러리를 끌어다 쓸 때, 테스트하기가 어려운 경우가 있는데, 이 때, DefaultGitHubService라는 테스트를 위한 테스트 구현체를 스스로 만들어서 주입시켜주면, 테스트를 원활하게 할 수 있다는 내용인 건가요??
@ililllliiil
@ililllliiil Жыл бұрын
저건 스프링을 공부하는게 아니라 자바만 공부해도 아는거 아닌가요??
@james77861
@james77861 2 жыл бұрын
프레임워크의 특징과 기본이 시간과 노력을 아끼고 협업을 잘하자인데 혼자 프래임워크만 주구장창 파면 자바 스프링의 전형적인 단점 아주 단순한 것도 개 복잡하게 짜고 관리가 더복잡하고 혼자만 알게 되더라 자바 개발자의 특징 스프링이 만능인줄 착각
@jlee6732
@jlee6732 2 жыл бұрын
괜히찔려 들어와본 영상
@saramanda21c
@saramanda21c 2 жыл бұрын
이건 스프링이라건 하긴 쫌 그렇고 걍 객체지향 언어를 공부랄 집중함 됨 ㅋ
@chachajuna
@chachajuna 2 жыл бұрын
전 다시 공부 중입니다. 하나도 모르겠네요ㅠ
@ssonacy
@ssonacy 2 жыл бұрын
널 오프젝트를 생각했는데... 비슷한걸까용??
@keesun.b
@keesun.b 2 жыл бұрын
과연??
@user-gl2kt6ec5f
@user-gl2kt6ec5f 2 жыл бұрын
처음엔 기가 죽었다가, 피가 갑자기 끓는 도전적인 영상
@keesun.b
@keesun.b 2 жыл бұрын
피가 끓면 큰일납니다 ㅋㅋㅋ 좋은 자극이 되었길 바래요.
@jeslee2527
@jeslee2527 2 жыл бұрын
잘못 배운지도 모르고 살고 있었네요 ㅠ.ㅠ 노오력 하겠습니다
@PhotoByRainJ
@PhotoByRainJ 2 жыл бұрын
어그로 당했습니다. ㅋㅋ 고민상담시간에 잠시 나왔던 내용 정리해주신 것 같네요.. 감사합니다. 잘볼께요.
@keesun.b
@keesun.b 2 жыл бұрын
맞아요. 그겁니다. ㅋㅋ
@user-mc8ck3cu2l
@user-mc8ck3cu2l 2 жыл бұрын
안녕하세요~
@keesun.b
@keesun.b 2 жыл бұрын
네 하이요.
@minjeongchoi8067
@minjeongchoi8067 2 жыл бұрын
저는 아직 spring 공부 시작은 안했구요. 어제 저녁까지 자바 언어의 객체지향개념의 추상 클래스와 인터페이스 개념과 어째서 그것을 사용해야하는지에 대한 내용까지 보고있었는데 기선님께서 생각 해보시라는 부분에서 100% 동일하진 않지만, 배웠던 내용들을 활용해서 수정할 방향을 "예상"해보았는데.. 일맥상통하는 것 같아요. 제가 잘 학습하고있는게 맞겠지요?
@keesun.b
@keesun.b 2 жыл бұрын
네 잘하고 계신겁니다. 그렇게 기본이 되어있어야 나중에 스프링을 공부해도 쉽게 하실 거에요.
@erller123
@erller123 2 жыл бұрын
야매는 다시 공부하러 갑니다...
@keesun.b
@keesun.b 2 жыл бұрын
다시 하는게 중요한게 아니라 제대로!
@woon0426
@woon0426 3 ай бұрын
요새안올리시네..
@Geouttttt
@Geouttttt 2 жыл бұрын
저 오버라이드 마우스 안쓰고 키보드로만 어떻게 하셨나요
@keesun.b
@keesun.b 2 жыл бұрын
그건 인터페이스 구현체에다가 퀵픽스를 쓰면 자동으로 붙여 줍니다. 제가 코딩하는 부분을 슬로모션으로 보시면 알 수 있어요.
@user-lucytop
@user-lucytop Жыл бұрын
생성자 주입..?
@ef_kim
@ef_kim 2 жыл бұрын
삐빅. 이건 사실 저 커넥트 매서드를 스태틱 매서드로 만든 사람을 까는 영상입니다.
@user-nk6ud4dn6w
@user-nk6ud4dn6w 2 жыл бұрын
저 코드의 경우 인터페이스를 다른 파일로 분리하지 않고, 클래스 내에서 선언해주는 식으로 하는 게 더 괜찮은 방법인가요..? 클래스 내 인터페이스 선언은 생소하네요...ㅠㅠㅠ 공부가 부족합니다
@keesun.b
@keesun.b 2 жыл бұрын
이 경우엔 분리하시는게 좋쵸. 저는 그냥 빨리 보여드리느라 클래스 내부에 선언한 것 뿐이에요.
@user-nk6ud4dn6w
@user-nk6ud4dn6w 2 жыл бұрын
@@keesun.b 감사합니다!! 리팩터링 강의도 바로 구매했어요!! 공부 열심히 하겠습니다 좋은 강의 만들어주셔서 정말 감사합니다!
@sj-mu5pb
@sj-mu5pb 2 жыл бұрын
클릭이 너무 힘들었습니다.
@kimjongyeol779
@kimjongyeol779 2 жыл бұрын
이걸 꼭 저렇게?
[10분 테코톡] 오잉의 Spring vs Spring Boot
9:34
우아한테크
Рет қаралды 10 М.
나이 40에 갑자기? 개발자가 되고 싶다고?
8:28
백기선
Рет қаралды 19 М.
Please Help Barry Choose His Real Son
00:23
Garri Creative
Рет қаралды 22 МЛН
Yum 😋 cotton candy 🍭
00:18
Nadir Show
Рет қаралды 7 МЛН
Running With Bigger And Bigger Feastables
00:17
MrBeast
Рет қаралды 144 МЛН
CHOCKY MILK.. 🤣 #shorts
00:20
Savage Vlogs
Рет қаралды 30 МЛН
Differences Between Cookies, Sessions and Tokens
11:45
노마드 코더 Nomad Coders
Рет қаралды 142 М.
1초 컷 당하는 포트폴리오 특
9:27
미스터 디벨로 (MR.DEVELLO)
Рет қаралды 15 М.
스프링 부트 기본기 한시간에 끝내기! [ 스프링 부트(Spring Boot) 기초 강의 ]
44:28
어라운드 허브 스튜디오 - Around Hub Studio
Рет қаралды 40 М.
[10분 테코톡] 🐶 코기의 Servlet vs Spring
11:44
우아한테크
Рет қаралды 29 М.
평생 써먹는 코딩 공부 순서, 코딩 고수는 보지 마세요!
15:02
스파르타 IT연구소
Рет қаралды 193 М.
[10분 테코톡] 🦊닉의 Spring vs Spring Boot
10:56
우아한테크
Рет қаралды 78 М.
오늘의 테크용어 : 웹소켓이 뭐냐면
6:55
코딩애플
Рет қаралды 120 М.
Please Help Barry Choose His Real Son
00:23
Garri Creative
Рет қаралды 22 МЛН