다음 자바강의는 어떤 강의를 들어야할까요??
김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
입문 강의 거의 막바지를 달려가고있는데 다음 자바 강의는 중급으로 들으면 될까요? 아니면 기초강의를 들으면 될까요? (다른 언어는 html, css, kotlin을 배웠습니다)
- java
- 객체지향
173만명의 커뮤니티!! 함께 토론해봐요.
김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
입문 강의 거의 막바지를 달려가고있는데 다음 자바 강의는 중급으로 들으면 될까요? 아니면 기초강의를 들으면 될까요? (다른 언어는 html, css, kotlin을 배웠습니다)
실전! 코틀린과 스프링 부트로 도서관리 애플리케이션 개발하기 (Java 프로젝트 리팩토링)
저는 특정강의부터 따라하면서 보고 싶은데 완료프로젝트에 git으로 각 강의마다의 결과가 반영되었으면 더 좋았겠다는 생각이 들었어요 ! 좋은 강의 감사드립니다.
김영한의 실전 자바 - 중급 2편
안녕하세요. 로 타입을 쓰는 팀원에게 어떻게 제네릭을 쓰자고 잘 설득할지 고민입니다. 20년, 10년 전의 레거시 코드를 유지보수하고 있습니다. 현재 사용중인 JDK는 1.6인데요. 그러면 객체 생성 시 할당하는 곳에서 생략하는 건 못해도 제네릭 자체는 쓸 수 있잖아요. 로 타입은 기본이요, 제네릭을 List<Map> 까지만 쓴다거나, 아예 그냥 자료구조를 따로 만들어서(?) 사용하더라고요. 그래서 최근에 제네릭을 쭉 여러 서적과 강의를 보면서 공부하고 있긴 한데, 거대한 레거시 코드라 한 번에 고칠 수는 없고... 그렇다고 팀원에게 강요하는 건 그릇된 개선이라고 봅니다. 어떻게 하면 제네릭을 잘 도입할 수 있을까요? 제가 공부를 정말~ 많이 하는 방법밖에 없는 걸까요? 제네릭 한 번 쓰면 코드의 양이 확 줄텐데 말이죠...그러면 유지보수도 편해지고 좋을텐데... 🥺
(2026 최신!) 일주일만에 합격하는 정보처리기사 실기
안녕하세요. 믿고 결제 했습니다!! 이제 막 결제를 한 단계인데요, 인프런에 올리신 강의만 다 들으면 될까요? 아니면 유튜브에 올려두신 영상들도 같이 봐야할까요? 혹시 인프런 강의랑 겹치지는 않지만 도움이 되는 유튜브의 재생목록?? 그런 게 따로 있을까 싶어서 묻습니다. 기존에 무료로 올리신 것도 좋은 영상이 많을텐데 시간이 널널하지 않아서 어떻게 참고할지 고민글 남깁니다!
안녕하세요, 개인적으로 공부를 하고 있는데 의견을 구할 곳이 없어서 이렇게 게시글을 작성하게 되었습니다. 현재 생각하는 어플 기획인데 건강 디저트 카페 어플에 대해 어떻게 생각하시는지 의견을 얻고자 이렇게 설문을 진행하게되었습니다. 이 기획은 비건, 글루텐프리, 저당 디저트를 제공하는 카페들 에 대한 정보를 제공하며, 사용자들이 간편하게 픽업 주문을 하고 온라인 스토어를 통해 배송 주문도 할 수 있도록 합니다. 사용자는 자신의 취향과 건강 상태에 맞는 디저트를 쉽게 찾고 주문할 수 있습니다! 여러분의 소중한 피드백은 해당 어플 기획을 개선하고 사용자에게 더욱 유익한 서비스를 제공하는 데 큰 도움이 되오니 시간이 되신다면 설문 조사 진행 부탁드리겠습니다 😍 😍 가능한 아래 2가지 미션을 진행 후에 설문을 진행 부탁드리겠습니다. 1. 손님 입장에서 픽업 오더하는 역할 2. 사장님 입장에서 관리하는 역할 ★프로토타입 어플 진행방법★ 아래 링크를 클릭하여 참여해 주세요. 1. 소비자용: https://www.figma.com/proto/NwM7lgvwCtr7pC5Q9xrKg4/%EB%94%94%EC%9C%A0%EB%94%94_%EA%B9%80%EC%98%88%EC%8A%AC?node-id=130-9291&viewport=657%2C-517%2C0.29&t=man3XYkXny4W61WD-0&scaling=scale-down&starting-point-node-id=155%3A14451&show-proto-sidebar=1 2. 사장님용: https://www.figma.com/proto/NwM7lgvwCtr7pC5Q9xrKg4/%EB%94%94%EC%9C%A0%EB%94%94_%EA%B9%80%EC%98%88%EC%8A%AC?node-id=130-9291&viewport=657%2C-517%2C0.29&t=man3XYkXny4W61WD-0&scaling=scale-down&starting-point-node-id=160%3A16417&show-proto-sidebar=1 ★설문조사 참여 방법★ 아래 링크를 클릭하여 설문조사에 참여해 주세요. https://docs.google.com/forms/d/e/1FAIpQLSdRBMazRBh37GLBkTfO_1WCls2dZ84IX0KpfCvQbCSZLRgahA/viewform?usp=sf_link
자바 ORM 표준 JPA 프로그래밍 - 기본편
log 데이터베이스가 log_연_월로 매월 스키마를 자동 생성하여 로그를 기록 및 보관하고 있습니다. (ex) 2024.03월 >> log_2024_03(db) >> application_log(table), system_log(table) 2024.04월 >> log_2024_04(db) >> 테이블 구조는 동일 (새로운 연.월이 오면 자동으로 생성) .... 위에 대한 데이터베이스 구조에서 3월과 4월의 system_log 내용을 조회하고 싶다면? (조회하고 싶은 날짜는 사용자의 조건에 따라 달라질 수 있음.) mybatis에서 mapper.xml 에 쿼리를 직접 작성하여 해결 가능하지만, jpa로는 위와 같은 문제를 어떤식으로 해결할 수 있는지 조언 부탁 드립니다.
안녕하세요 백엔드 독학 시 포트폴리오 준비 및 공부 방향을 어떻게 해야 할지 방향이 잡히지 않아 고수분들의 의견을 청하고자 글을 작성하게 되었습니다. 저는 백엔드 개발자를 지망하고 있고 인프런에서 강의를 들으면서 공부하고 있습니다. 현재는 자바 강의 및 김영한 님 스프링, JPA, QueryDSL 강의 및 데이터베이스 강의를 수강하였고 개인적으로 나름 포트폴리오? 하나 만들어보고자 도서 대출 반납 및 게시판 CRUD를 할 수 있는 것을 만들었습니다.(백엔드 부분 자바 코드) 화면도 만들기는 했지만 GPT 선생님의 도움을 빌려 일단 화면이 보일 수 있을 정도만 해놨습니다. 이후 협업을 경험해 보고 싶은데 현재 올라와 인프런에서 사이드 프로젝트 자리가 있으면 지원하고 있지만 뛰어난 분들이 너무 많아 참여가 힘든 것 같습니다. 일단 현재는 docker를 공부 중이며 redis, aws를 공부하려고 합니다. 현재 취업을 위해 팀 프로젝트를 하고 싶은데 어떻게 참여할 수 있을지, 많이 부족하다면 현재 어떤 방향으로 더 공부를 진행해야 할지 방향을 잡기가 힘들어 글을 쓰게 되었습니다. 중소기업에 취직하기 위해서는 JSP을 요구하는 곳도 많아 보이는데 html, css, js를 활용해서 화면도 만들 정도로 공부해야 하는 것 인지도 질문드리고 팀플 구하는 방법 및 공부 방향 및 어떤 것을 더 추가적으로 공부하면 좋을지 댓글 부탁드립니다! 감사합니다. 많은 분들께서 댓글 주시면 경청하도록 하겠습니다!
현재 개발 외 직군으로 입사해서 개발자로 이직을 준비하려고 합니다. stack : java spring 인프라 경험 : aws ec2, mysql 학습내용 인프런 김영한 spring 완전정복코스(https://tinyurl.com/23s6uonc)에서 스프링 입문, 스프링 핵심 원리, HTTP, MVC1, MVC2 김영한의 스프링 부트와 JPA 실무 완전 정복 로드맵(https://tinyurl.com/2dzrelgr)에서 ORM, JPA 활용1, JPA활용2 포트폴리오 1(팀 / 앱개발 프로젝트) - https://github.com/heoeuntaek/capstone-spring 포트폴리오 2(개인/ 웹게시판 프로젝트) - https://github.com/heoeuntaek/project-post 이 정도까지 준비를 했습니다. 서울, 부천 등 인천과 가까운 100개 넘는 자바스택의 백엔드, SI 회사에 지원 - 5개만 서합, 1개 코테, 4개 면접 모두 탈락 2022~2023년 동안 개발자 붐이 일어나 현직 개발자, 개발자 취준생이 많고 AI가 발전함에 따라 어느 정도의 개발을 대체하기에 기업이 신입에게 요구하는 역량이 더 커져 신입 개발자의 문턱이 커진 것 같은데요, 1. IT 업계 전반적으로 전망이 궁금합니다. 2. 구체적으로 백엔드 개발 쪽의 전망이 궁금합니다. 3. 개발자 준비를 계속해서 한다면 신입으로서 Spring, 인프라, 알고리즘 등 분야마다 어느정도의 역량은 갖춰야 한다고 생각하시나요? 4. 케바케겠지만 개발자가 수명이 짧다고 들었는데 어떻게 생각하시나요?
"백엔드 개발자가 되고 싶은데..!" 백엔드 개발자 취업을 위해 독학과 부트캠프 중에 고민이신가요? 내 인생을 바꾸는 취업, 확실한 취업 전략 으로 대비하셔야죠! 🔥 취업에 대한 궁금증과 고민, 실시간으로 물어보며 나에게 맞는 취업 전략을 세워보세요! 🔥 📢 설명회 정보 : [ 확실한 백엔드 개발자 취업 설명회 ] 1부 - 현실적인 개발자 취업 이야기 2부 - 사전 질문 답변 및 실시간 Q&A ✅ 일시 : 2024.03.11(월) ‼ 바로 오늘 오후 07:00 ~ 08:00 ‼ ✅ 장소 : Zoom (온라인 실시간 화상) ✅ 신청 방법 : https://bit.ly/4cnlSir (30초면 ok 👌🏻 ) 링크 클릭 → 필수 정보 입력 → 궁금했던 점 모두 적어요! → 제출! 🔥 🎁 참여 혜택 (선착순 50명) 1) 주니어 개발자 취업 분석 리포트 2) 내일배움캠프 백엔드 코스 가산점 💬 문의 창구 - 채팅상담: https://spartacodingclub.channel.io/support-bots/41731 - 메일: contact@teamsparta.co 👉🏻 실시간 QnA를 통해 궁금증 해소하러 가기 👈🏻
2주만에 통과하는 알고리즘 코딩테스트 (2024년)
public class BOJ_12865 { static int N; static int K; static int[][] merchandise; // 0 : 무게, 1 : 가치 static int[][] dp; public static void main(String[] args) { Scanner sc = new Scanner(System.in); N = sc.nextInt(); K = sc.nextInt(); merchandise = new int[N][2]; dp = new int[10000000][N]; for (int i = 0; i < 10000000; i++) { for (int j = 0; j < N; j++) { dp[i][j] = -1; } } for (int i = 0; i < N; i++) { merchandise[i][0] = sc.nextInt(); merchandise[i][1] = sc.nextInt(); } int max = recursion(0, 0); System.out.println(max); } private static int recursion(int index, int weight) { if (weight > K) { return Integer.MIN_VALUE; } if (index == N) { return 0; } if (dp[weight][index] != -1) { return dp[weight][index]; } dp[weight][index] = Math.max(recursion(index + 1, weight), recursion(index + 1, weight + merchandise[index][0]) + merchandise[index][1]); return dp[weight][index]; } 안녕하세요 덕분에 강의 잘 듣고 있는 수강생입니다. 냅색 문제를 풀고 있는데, 최대 가능한 무게의 경우 100 (배낭 물품의 최대 개수) * 100,000(각 물건의 최대 무게) 로 생각보다 생성해줘야하는 배열의 크기가 크더라구요. 그래서 혹시 dp를 1차원 배열로 생성하면 어떻게 되는 지 궁금하여 1차원 배열로 해본 결과, 무게를 고려하지 않고 dp의 무게 갱신을 하게 되어 답이랑은 다르게 나오네요. 혹시 1차원 배열을 시도하려고 할 때 제가 놓치고 있는 부분이 있을까요?감사합니다.
실전! Querydsl
삭제된 글입니다
김영한의 실전 자바 - 기본편
기본편 강의 수강 후 중급편, 고급편이 나오기 전까지는 어떤 식으로 공부를 해야할 지도 잘 모르겠고, 어떤 강의를 들어야할지 고민 입니다. 기본편 수강 후에 혼자서 작은 프로젝트를 해보아야 할까요? 아니면 차후 강의에서 강사님과 함께 하는 작은 프로젝트 느낌의 수업도 있을까요? 또 만약 혼자 프로젝트를 진행한다면 기본편 수강만으로도 가능할까요? 또 코딩테스트 문제들은 어떤식으로 공부를 해야할지 모르겠습니다.
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
삭제된 글입니다
저는 비전공자 출신입니다. 인서울이긴 하지만, 비전공자라 의미없을 거 같구요. 백엔드 vs 게임 프로그래머 중에 고민하고있습니다. 웹 관련해서는 node.js 기반으로 프로젝트를 3번정도 해본 경험이 있지만, 요새 트렌드가 java, spring이라 웹 백엔드 쪽으로 간다면, java, spring을 공부할 생각입니다. 반면, 게임 프로그래밍은 유니티를 기반으로 소규모 게임 1번 만들어본게 전부입니다. 이런 상황에서 질문드립니다. 제가 가장 발목을 잡는다 느낀 것은 CS 지식입니다. 이것으로부터 덜 자유로운 것이 백엔드 개발자일지 게임 프로그래머 일지 고민입니다. 어느 방향이 더 맞을까요? 알고리즘 자료구조 지식은 백준 골드 3 정도 입니다. 잘 부탁드리겠습니다.
현재 4학년 재학 중이고, JAVA와 Spring 기반 프로젝트를 한 개 진행 중입니다. 백엔드 쪽으로 취업을 생각 중인데, 이번 방학 중에 컴퓨터비전 쪽으로 모듈 개발 관련 인턴을 진행할 기회가 생겼습니다. 과거에도 인공지능 쪽으로 인턴을 했었는데, 제가 인턴을 진행하는 게 도움이 될 지 모르겠네요. 커리어 상으로는 인공지능을 하다가 백엔드로 틀어버린 게 된 거 같아 마구잡이로 커리어 쌓는 것처럼 보일 것 같아 고민입니다. 물론 개발 경험이 도움이 되기는 하겠지만 말이지요. 선배님들의 조언이 듣고 싶습니다.
나도코딩의 자바 기본편 - 풀코스 (20시간)
삭제된 글입니다
이제 1년 2개월 차 웹개발자 입니다. 파이썬 기반인 fastapi 프레임워크로 백엔드 개발을 하고 있고, Next.js로 프론트개발도 하고 있습니다. 아직 시리즈 A도 안된 기술에 대한 딥한 개발을 하기 보단 비즈니스적으로 어떤 임팩트를 낼 수 있을까에 대한 고민을 좀 더 하다보니 사실 경력이라고 하기엔 이도저도 아닌 실력이 되는 것 같아 조금 겁이 나는 상황입니다. 이 상황에서 크게 두 가지 고민이 있는데, 첫 번째는 기술스택입니다. 파이썬 특히, fastapi 프레임워크는 제가 다음에 이직하고 싶어하는 회사의 스택과는 거리가 멉니다... 경력을 쌓는 동안 별도로 자바나 스프링같은 인기있는 언어나 프레임워크를 다룰 수 있게끔 공부를 해야하는지, 아님 그보다 더 기본이 되는 공부를 하는 게 맞는 건지 갈피를 못잡겠습니다. 후자의 선택이 더 맞다면, 어떤 공부를 더 중점적으로 해야하고 참고 할만한 도서같은 게 있다면 추천부탁 드립니다 두 번째는 내 경력이 물경력이 될 거 같다. 라는 점입니다. SI는 아니지만, 아직 기능을 개발하는 데에만 목표를 두는 게 회사의 방향이다보니 일단 일정에 맞추어 빨리 만들어내는 게 저희 회사룰입니다.. 경력이 찰 수록 제가 공부하거나 사이드프로젝트를 해본 거보단 업무를 하면서 경험한 것들에 대해 할 말이 많아야 하는데, 제가 일을 하면서 어떤 스탠스로 업무를 해야하고, 어떤식으로 업무를 해야할 지 고민입니다.
실전! Querydsl
QueryDSL 내부 메소드 중 fetchResult() 나 fetchCount()는 만료된 메소드에 대해서는 QueryDSL에서 Blaze-persistence Integration 라이브러리 사용을 권장 하는데요, Blaze-persistence도 QueryDSL 처럼 쿼리 빌더 API 로서 개발자에게 유지보수하기 좋은 객체를 제공해주고 있습니다. 게다가 최신 업데이트 날짜가 글 작성일 기준(2023.06.21) 일주일 이전이라 여전히 유지보수되고 있어서 최신 스프링버전과 호환성도 어느정도 보장되었다고 볼 수 있습니다. 개인적으로 SpringBoot 3.1.0 기준으로 다음과 같이 세팅하니 정상적으로 동작하는 걸 확인했는데요, 혹시 저처럼 deprecated 메소드를 쓰는 것이 신경쓰이시는 분들을 위해 공유드립니다. build.gradle dependencies { //Blaze-Persistence implementation 'com.blazebit:blaze-persistence-integration-querydsl-expressions-jakarta:1.6.9' implementation 'com.blazebit:blaze-persistence-integration-hibernate-6.2:1.6.9' implementation 'com.blazebit:blaze-persistence-core-impl-jakarta:1.6.9' } BlazePersistenceConfiguration.java @Configuration public class BlazePersistenceConfiguration { @PersistenceUnit private EntityManagerFactory entityManagerFactory; @Bean @Scope(ConfigurableBeanFactory.SCOPE_SINGLETON) @Lazy(false) public CriteriaBuilderFactory createCriteriaBuilderFactory() { CriteriaBuilderConfiguration config = Criteria.getDefault(); // do some configuration return config.createCriteriaBuilderFactory(entityManagerFactory); } } QuerydslBasicTest.java ..... JPAQueryFactory queryFactory; @Autowired CriteriaBuilderFactory cbf; BlazeJPAQueryFactory blazeQueryFactory; @BeforeEach public void testEntity(){ queryFactory = new JPAQueryFactory(em); // 이건 동시성 문제를 고민하지 않아도 됨, 해결됨 blazeQueryFactory = new BlazeJPAQueryFactory(em, cbf); ..... 적용 결과 기존 QueryDSL 세팅한 것에 추가로 세팅하시면, 만료된 메소드에 대해 Blaze-persistence 객체로 대체되는데요, 기존 querydsl 클래스를 상속 받는 형태여서 QueryDSL이 제공하는 메소드를 그대로 쓸 수도 있습니다. fetchResults는 fetchPage로 바꿔서 사용할 것을 권장하고 있다는 점 참고하시면 될 것 같습니다. 추가로 내부로직이라든지 설명이 더 필요하시다면 Blaze-persistence 릴리즈 노트 와 Blaze Persistence Document 를 참고하시면 좋을 것 같습니다. 이 글에 대해 지적 및 피드백 해주시면 정말 감사하겠습니다. 감사합니다. 여담 및 고민 : 개인적으로 이 라이브러리의 내부로직을 뜯어보면서 분석하고 검증할 수 있는 역량은 부족한지라 분석 및 검증하는 방법에 대해서 팁이라든지, 아니면 blaze-persistence 사용할 시 주의해야할 점이라든지 조언해주실 수 있으시면 정말 감사드립니다. 강의를 듣던 중에 서브쿼리가 발생하는 부분에서는 정상동작하지 않는 것을 발견했습니다. @Test public void findUserDto(){ QMember memberSub = new QMember("memberSub"); List<UserDto> memberDtoList = queryFactory //이건 blazeQueryFactory가 정상 동작하지 않음 .select(Projections.fields(UserDto.class, //생성자 필드 순서에 맞게 변수를 만들어야 한다. member.username.as("name"), // member.age 대신 서브쿼리로 다 최대 나이로 찍고 싶어 ExpressionUtils.as( JPAExpressions .select(memberSub.age.max()) .from(memberSub), "age") )) .from(member) .fetch(); for (UserDto userDto : memberDtoList) { System.out.println("userDto = " + userDto); } } QueryDSL 쿼리 /* select member1.username as name, (select max(memberSub.age) from Member memberSub) as age from Member member1 */ select m1_0.username, (select max(m2_0.age) from member m2_0) from member m1_0 blaze-persistence 쿼리 /* SELECT member1.username AS name, member1.age AS generatedSubquery_1 FROM Member member1 */ select m1_0.username, m1_0.age from member m1_0 blaze-persistence generatedSubquery라 하여, 서브쿼리를 하나의 alias로 처리를 해버렸는데, 후행으로 이 generatedSubquery 에 대한 정의가 따라오질 않습니다... 왜 이런 차이가 나오는지는 모르겠지만 blaze-persistence 활용할 때는 유의해야할 것 같습니다.
자바 ORM 표준 JPA 프로그래밍 - 기본편
https://xively.tistory.com/43
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
현재 국비 학원을 수료하며 프로젝트를 마친 뒤에 김영한님 강의를 듣고 있으며 spring에 대해 이제서야 이해하려 하는 취준생입니다. 문득 제가 어떤 개발을 하고 싶은지 방향성에 대해 생각해보게 되었습니다. ->어떤 개발을 하고 싶은지 방향성에 대해 되짚어 보고 있었다 ->SQL문을 짜면서 효율적인 방법은 무엇이 있을까 고민하는 과정이 스스로 가치 있는 고민을 하고 있다는 생각이 들었다. ->데이터 처리 속도 개선에 관하여 고민하는 개발자가 되고 싶다. ->대용량 트래픽을 다루는 서비스 회사에서 성장하고 싶다. 질문 ==> 위의 4문장을 설득력 있게 말하기 위해서 취준에 뛰어드는 예비 백엔드 개발자 수준에서 할 수 있는 "공부 방향"은 무엇이 있을지 조언 해주실 수 있을까요? (특정 개념이나 강의를 추천해주셔도 감사할 것 같습니다. )