
더 자바, 애플리케이션을 테스트하는 다양한 방법
백기선
자바 프로그래밍 언어를 사용하고 있거나 공부하고 있는 학생 또는 개발자라면 반드시 알아야 하는 애플리케이션을 테스트하는 다양한 방법을 학습합니다.
초급
Java, JUnit, Testcontainers
Learn “Effective Java,” the ultimate Java learning guide, more easily and completely. By taking this course, you can improve not only your Java programming knowledge and skills, but also your learning ability.
Java technologies related to object creation and destruction.
How to appropriately override methods provided by Object
Learn with MS Senior Developers!
Effective Java with extraordinary depth ✨
Every Java developer tries to study it at least once.
"Effective Java," a book that no one can conquer
This course will give you a complete guide.
"Effective Java 3/E" is a book recommended to all Java developers, but paradoxically, it's not a book that everyone can easily learn. Even to properly understand the first item, you need background knowledge on "enumeration types," "flyweight patterns," "static methods in interfaces," "service provider frameworks," and "reflection." Without this background knowledge, it's difficult to fully grasp the book's content. While it's certainly challenging to learn, the rewards of mastering each chapter are truly remarkable.
Understanding the contents of "Effective Java" will significantly enhance your skills and knowledge, opening up new perspectives. Even if you study or use other programming languages, it's worth considering . (Just like I did, I diligently studied this book, but now work at Microsoft using C# and PowerShell.)
"Effective Java" is divided into five parts. This lecture, Part 1, covers Chapter 2, "Object Creation and Destruction," and Chapter 3, "Common Methods for All Objects."
For developers or students who find "Effective Java" challenging, or those who want to learn more thoroughly, we'll summarize each item with code and provide background knowledge to help you learn each item. Your "Effective Java" study will be much more enjoyable, easier, and more beneficial.
This course is not for beginners or complete beginners in programming. It's for developers working with Java, developers who have completed basic Java studies, or students who want to improve their skills through advanced, in-depth study. If you've taken the following course or completed a similar course, you're welcome to take this course. (For more information, please refer to Section 0 - Introduction to the Course.)
This course covers 14 topics covered in Parts 2 and 3 of Effective Java, providing 30 pieces of background knowledge for a thorough approach. Effective Java also provides additional source code to help you understand parts of the book that weren't covered in text. The recommended learning method is as follows:
Step 1
I bought "Effective Java" as a textbook and read one item first.
Step 2
Take the "Key Summary" class for the item corresponding to "Effective Java Complete Guide Part 1."
Step 3
Take the "Perfect Strategy" class that follows and continue to study the areas you are lacking.
Step 4
If you organize what you have learned additionally on your personal blog and leave a link on the "Questions and Answers" bulletin board, we will review it.
Item 1. Consider static factory methods instead of constructors.
Item 2. If your constructor has many parameters, consider a builder.
Item 3. Ensure singletons with constructors or enumeration types.
Item 4. Use a private constructor to prevent instantiation.
Item 5. Use dependency injection instead of explicitly specifying resources.
Item 6. Avoid creating unnecessary objects.
Item 7. Release references to objects you no longer use.
Item 8. Avoid using finalizers and cleaners.
Item 9. Use try-with-resources instead of try-finally.
Item 10. Redefine equals to follow the general convention.
Item 11. If you override equals, also override hashCode.
Item 12. Always override toString.
Item 13. Be careful when redefining clone.
Item 14. Consider implementing Comparable.
Why do we study? Why do we spend time and money trying to understand such difficult concepts? I believe the answer is to "improve your skills." This course embodies the same learning method I used when studying Spring and Java. First, read, organize what you understand and what you don't, summarize the reasons for any incomprehensible content, and then conduct further study on those areas. And then, further study follows, and so on.
I believe that true skill development is achieved through this learning process. It may be slow and difficult at first, but by the time you complete Items 13 and 14, you will be noticeably different from when you studied Items 1 and 2. Experience it for yourself. If you don't feel any change in your skills or knowledge by the end of this course, please request a refund. I'll give you a 100% refund, no matter the reason.
Who is this course right for?
All developers who use Java in the field
Developers or students who want to master Java
Developers or students who want to learn Effective Java more thoroughly
Need to know before starting?
Java Basics (Must read one of the following books: Java God, Java Essentials, and Head First Java)
The Java: Java 8
More Java: Different ways to manipulate code
Design Patterns Learned Through Coding
92,401
Learners
4,233
Reviews
2,010
Answers
4.8
Rating
20
Courses
네이버와 아마존을 거쳐 현재 Microsoft에서 시니어 소프트웨어 엔지니어로 일하고 있습니다.
아인슈타인은 "교육이란 사실을 가르치는 것이 아니라, 생각할 수 있는 힘을 기르는 것이다."라고 말했습니다. 그리고 저도 그 말에 깊이 공감하며 강의를 만들고 있습니다.
유튜브: '백기선' 채널에서 개발자 고민 상담 및 개발자에게 유용한 지식 공유
번역: 스프링 및 하이버네이트 관련 서적 다수 번역
저술: 쉽게 따라하는 자바 웹 개발
All
74 lectures ∙ (12hr 52min)
Course Materials:
All
111 reviews
4.9
111 reviews
Reviews 15
∙
Average Rating 4.9
5
백기선님 강의의 가장 큰 특징이자 장점은 문제에 대한 정답만을 제공하는 것이 아닌 그 문제를 해결하기 위한 방법을 찾고 선택하는 안목을 배울 수 있다는 것이라고 생각합니다. 대부분의 백기선님 강의 중에서 기선님이 실수하는 순간이나 예상치 못한 문제를 만나서 방법을 모색하고 디버깅으로 문제를 해결하는 것을 편집 없이 보여주는 부분은 저와 같이 라이브 코딩을 하는 느낌도 나고 기선님이 어떻게 문제를 바라보고 해결하시는지에 대한 시각을 볼 수 있어서 좋았습니다. 제가 개발을 접한지 얼마 안됐을 때에는 단지 스프링 개발자가 되고 싶다는 막연한 꿈만 갖고 있었습니다. 스프링이라는 기술이 어떤 문제를 해결해주기 위해서 만들어졌고 우리 개발자에게 어떤 가치를 제공해 주면서 이런 큰 인기를 끄는지 알지 못한 채로요. 하지만 2년전 우연찮게 유튜브에서 백기선님 유튜브를 접하게 되고, 인프런에서 첫 REST-API 강의를 시작으로 지금의 이펙티브 자바 강의에 이르기까지 쭉 기선님의 강의와 유튜브를 보면서 개발자로 살아가는데 기술이 전부가 아니구나를 깨닫고 반성하며 스프링처럼 변화하는 수 많은 기술의 근간이 되는 변하지 않는 근간의 기술과 지식을 중점적으로 학습하고 있습니다. 강의 분위기를 잠깐 얘기해보자면 과거에는 다소 딱딱하면서도 약간의 친절하지 않음이라는 느낌을 받았고 이러한 점은 민감하게 반응할 사람들이 꽤 있겠구나라고 생각을 했었지만, 현재는 전체적인 강의 분위기와 강의 퀄리티도 많이 향상되었다는 점을 크게 느끼고 있습니다. 최고입니다. 마지막으로 백기선과 유튜브와 인프런으로 소통을 해온지 2년이 된 올해에 취직이 되어 행복한 회사 생활을 보내고 있습니다. 제가 개발자로서 살아가는데 정체성을 갖추고 공부하는 법을 깨닫도록 도와준 백기선님과, 이런 명품 강의를 손쉽게 접할 수 있게 도와준 인프런에게 정말 감사드립니다! 앞으로 더 좋은 강의와 좋은 서비스를 기대해보겠습니다!!
안녕하세요. 강낭콩님 좋은 소식을 들으니 기분이 좋네요. 제 강의가 조금이라도 도움이 되었길 바라며 앞으로도 계속 개선해 나가겠습니다. 감사합니다.
Reviews 205
∙
Average Rating 5.0
5
100페이지도 안되는 책 내용을 약 13시간 분량에 핵심정리와 완벽공략으로 자세히 설명해주시는게 좋았습니다. 책을 한번 보고 나서 강의를 수강하니 강의 볼 때 이해도 더 잘 됐고, 혼자서 책을 여러번 본다고 하더라도 기반 지식이 없는 상태라면 이해하지 못할 내용을 책에 대한 설명과 책에서 다룬 키워드에 대한 설명을 나눠서 해주셔서 이해하는 데에 많은 도움이 되었습니다. 다만 아쉬웠던 점은 강의 내내 강의PPL이 많아 집중이 깨질 때가 있었습니다. 더자바 시리즈와 디자인 패턴 강의에 대한 언급이 많은데 영상마다 강의 언급이 많다면(그만큼 해당 강의들이 사전지식으로써, 참고할 내용으로써 중요하단 뜻임은 이해하고 숙지하고 있습니다.) 스프링 프레임워크 핵심 기술 강의와 같이 강의소개, 강사소개를 나눠놓은 것 처럼 본 강의와 연관된 기선님의 기존 연관 강의 설명하는 영상을 따로 만들어서 설명하고, 강의에서는 학습 내용만 설명해주시는게 어땠나 싶습니다. 복습할 때도 좋고, 학습하는 데에도 좋고, 강의 연관도를 참고하는 데에도 많은 도움이 되는 방법이라 생각합니다. 단점으로 작성한 내용에도 불구하고 다음 강의가 출시된다면 무조건 볼 예정입니다. 앞으로도 좋은 강의 부탁드립니다^^
피드백 감사합니다. 제가 생각해도 초반에 다른 강의 언급이 조금 많았던 것 같습니다. 다음엔 조금 더 신경 쓰겠습니다.
Reviews 7
∙
Average Rating 4.9
5
기선님 강의 스타일은 다른 인강처럼 딱딱한 느낌보다 웃고 실수도 하시는 장면도 가끔 있어 현강인 느낌인 것 같아 좋습니다. MS 개발자도 저런 실수를 하다니 로봇이 아니고 사람이구나 느낍니다. 🤣🤣🤣 기선님 강의를 많이 들어봤지만 이 강의는 기본 선수지식들이 당연한 베이스로 깔고가다보니 이보다 어려운 강의는 없는 것 같습니다 (다른 강의들 홍보도 하시지만 해당 내용을 맛보기로 상기시켜주시니 부족한 부분은 해당 목차보고 수강생들이 판단해서 들으면 될 것 같아요) 이펙티브 자바가 번역서이다보니 쉽게 와닿지가 않는데 한 번 더 번역해주는 느낌으로 편하게 다가올 수 있었습니다. (그래도 어렵지만..) 옛날에 찍으셨던 강의들과 다르게 Question을 던져주고 Answer를 답해주는 방식이 좀 더 많아서 더 깊게 생각해보고 할 수 있는 시간이였던 것 같습니다. 이런 스타일 너무 좋습니다!! 완강했을 때까지 변화를 못느꼈다면 100프로 환불이라니까 모두 들어보세요. 기선님이 자신 있으신 이유가 있습니다. !! p.s) 다음 부작은 언제 나오나요?
2부는 올해 (2022년) 여름으로 계획하고 있습니다. 피드백 감사합니다.
Reviews 11
∙
Average Rating 5.0
5
어떻게 보면 실무를 하며 자바의 특성을 제대로 알고 사용해야 함에도, 늘 사용하는 방법대로만 쓰다 보니 계속 퇴보하는 느낌이 들어 다시 한번 공부해 보려 하던 차에 기선님의 강의를 만났습니다. 디자인 패턴, 리팩토링과 함께 보고 있습니다. 기선님 강의가 실무에서 쓰이는 영역과 접목이 되는 부분들도 많고, 필요한 배경 정보도 함께 전해주시다 보니 지식을 확장해 나가는데 많은 도움이 되는 것 같습니다. 그리고 특히 좋은 부분은 정해진 틀에서 진행하는 것이 아니라, 생(Live)로 발생하는 문제들도 같이 해결해 가는 과정들도 좋은 경험인 것 같아요. 이펙티브 자바는 예전에 책으로 한번 도전을 했다가 그냥 진도만 나가고 제대로 소화하지 못했던 경험이 있습니다. 책으로 읽을 때 딱딱하고 이해 가지 않는 내용들이 많았는데, 책에서는 접할 수 없었던 지식의 행간을 기선님을 통해 채워 나가는 것 같습니다. 특히 예전 유튜브 공개영상에 비해 점점 구성이 더 좋아지는 것은 느낌적인 느낌일까요? 예전에는 라이브 코딩이긴 했지만 집중하기가 힘든 면도 있었는데, 요즘은 중간중간 정리하면서, 생각해 볼 문제를 던져 주는 것도 지식을 정리하는데 도움이 되는 것 같습니다. 어려운 내용이지만 아이템별로 차근히 따라가면 많은 도움이 될 것 같습니다. 앞으로 남은 4 파트들도 기대하고 있겠습니다 :)
Reviews 4
∙
Average Rating 5.0
5
자바 개발자 필독서로 꼽히는 이펙티브 자바, 옮긴이의 말에서 추천해 주던 백기선님의 이펙티브 자바 유튜브 강의가 중간까지만 있어서 항상 아쉬웠습니다. 백기선님이 꾸준히 강의를 내주시면서 '혹시 이펙티브 자바도 강의로 만들어주시지 않을까?' 라는 생각을 했었는데 실제로 강의로 만드신다는 이야기를 듣고 바로 구매를 하게 됐네요. 이전에도 이미 해당 책의 내용을 소개해 주시는 영상을 만드신 경험과 그동안 인프런에 꾸준히 강의를 만드신 경험이 합쳐지면서 더 좋은 강의가 나오지 않았나 생각해 봅니다. 강의에서 중간중간 나오는 질문은 놓치고 있는 부분은 없는지, 내가 부족한 부분은 무엇인지 생각할 수 있게 해주어서 좋았으며, 책에서 나오는 내용에 대한 것만이 아닌 개발자로서 고려해야 할 부분 또한 전해주시는 것도 좋았습니다. 그리고 이 강의와는 상관이 없을 수 있지만 강의를 녹화하시는 중간에 소스에서 오류가 났을 때 해당 내용을 편집하여 다시 진행하지 않고, 그 오류를 해결하는 과정도 같이 볼 수 있는 것은 많은 도움이 되는 것 같습니다. 비록 해당 강의만으로 모든 책의 내용을 전부 다루고 있지는 않지만 그만큼 이 책을 꼼꼼하게 살펴볼 수 있는 기회를 가지게 된 것 같습니다. 그리고 저의 경우에는 오히려 다음 강의가 나올 때까지 이 강의가 다루고 있는 부분만이라도 어느 정도는 이해할 수 있게 만들 시간을 가질 수 있을 것 같습니다. 백기선님의 강의/영상은 왠지 모르게 열정을 만들어 주시는 것 같습니다. 다음 강의도 그다음 강의도 항상 기대하고 있으며, 다음 파트가 나오기 전까지 백기선님이 만들어주신 이전 강의의 내용들도 다시 익히고 있겠습니다. 좋은 강의 감사합니다. ^^
오류 수정 부분은 호불호가 있어서 최근에 만드는 강의에서는 대부분 편집하고 깔끔하게 전달하려고 노력하고 있습니다. 나중에 오류난 부분만 모아서 유튜브에 올려볼 순 있겠지만 유료 강의에서는 그런 부분에서 민감한 분들이 많으셔서요. 피드백 감사합니다.
$68.20
Check out other courses by the instructor!
Explore other courses in the same field!