본문 바로가기

분류 전체보기41

우테코 프리코스 풀어보기 - 로또 GitHub - Jym-lab/java-lotto-6 Contribute to Jym-lab/java-lotto-6 development by creating an account on GitHub. github.com 이번거는 생각보다 오래 걸렸다. 바쁜 시즌이라 건들 시간이 없던 것도 한몫했지만 구조를 짜는데 집중해서 오래걸렸다. 이번에는 코드가 좀 길어졌는데 객체 지향과 MVC 패턴대로 설계하려다보니 좀 길다. 조금 귀찮더라도 코드들도 포함해서 작성해보도록 하겠다. 문제 요구사항 파악 이번 문제 요구사항도 사실 별거 없다. 1. 1000원짜리 로또를 입력 금액만큼 발행한다. 2. 로또가 발행되었으면 당첨 번호와 보너스 번호를 입력한다 3. 발행된 로또가 총 몇개가 당첨되었는지, 수익률이 얼마인지 출력.. 2023. 11. 8.
Spring Boot - POJO, JavaBean, Spring Bean 이번 포스팅엔 Bean이라는 것에 대해 공부해보자. 자주 사용하는 용어니까 좀 정확하게 이해를 하고 넘어가야겠다. Bean?? Bean이란 흔히 자바에서 사용하는 객체를 말하는 것이라고 한다. 그렇다면 모든 객체는 Bean일까? 아니다. Bean이란 IOC 컨테이너(혹은 Spring 컨테이너 같은 걸 지칭한다)에서 관리하는 객체를 뜻하거나 Java에서 관리하는 객체를 Bean이라고 한다. 여기서 객체는 POJO, JavaBean, SpringBean으로 나뉘는데 하나씩 알아보자. POJO(Plain Old Java Object) POJO는 Plain Old Java Object라고 하여 말 그대로 가장 오래된 자바의 객체다. 모든 자바로 생성하는 객체를 POJO라고 칭한다. 모든 자바 객체는 POJO다... 2023. 11. 1.
Spring Boot - 강한 결합(Tight Coupling)과 느슨한 결합(Loose Coupling) 오늘은 간단하게 인텔리제이 사용법도 익히면서 자바 개념을 익혀보자 먼저 저번 포스팅 때 만든 프로젝트를 열어준다. 처음 시작하면 기본적인 main 클래스와 패키지가 보일 것이다. 패키지는 냅두고 클래스는 삭제해준다. 지금 사용할 것이 아니라서 큰 의미가 없다. 패키지를 마우스로 잡고 우클릭이나 Alt + Insert로 새 클래스를 만들어 줄 수 있다. 자바 클래스를 새로 생성해주자. 이름은 App01MealBasicJava로 하겠다. 이제 우리가 작성한 코드를 실행하는 main 메서드가 있어야한다. 인텔리제이에서 main 메서들을 정의하는 법은 단축어로 쉽게 가능하다. 자 이제 코드를 작성해보도록 하겠다. package com.learnspringframework.learnspringframework; .. 2023. 11. 1.
Spring Boot - Java Spring Framework 시작하기 GitHub - Jym-lab/learn-spring-boot: 스프링부트 공부용 repo 스프링부트 공부용 repo. Contribute to Jym-lab/learn-spring-boot development by creating an account on GitHub. github.com 드디어 미루고 미뤄왔던 Spring을 시작하기로 했다. 자바민국에서 스프링을 미뤄왔던 이유는 여러가지 이유가 있는데 1. 생각보다 공부할 내용이 많다 나는 어떤 프레임워크나 언어를 공부할 때 좀 더 여러가지 방면을 공부하는 편이다. 간단하게 말해서 입문용 서적에는 나오지 않는 내용들을 찾아서 공부한다. 입문용 서적에 나오지 않는 이유는 저자가 일단 아무것도 모르는 사람을 이해시키기 위해서 꼭 필요한 내용만 거르고 작.. 2023. 10. 31.
우테코 프리코스 풀어보기 - 레이싱카 우테코 프리코스 문제가 업데이트 되었다. 마침 시험이라 학교 갔다가 출근도 하지 않았고, 약속 시간도 좀 남은터라 잠깐 풀어보았다. 이번에는 객체지향 답게 각자의 클래스와 메서드를 좀 더 깔끔하게 분리했다. https://github.com/Jym-lab/java-racingcar-6/tree/yjoo GitHub - Jym-lab/java-racingcar-6: Yummy2 Yummy2. Contribute to Jym-lab/java-racingcar-6 development by creating an account on GitHub. github.com 만약 제가 작성한 내용이 문제가 된다면 얼마든지 삭제할 용의가 있으니 연락 부탁드립니다. 문제 요구사항 파악 이번에는 간단한 자동차 경주 게임을 구.. 2023. 10. 27.
우테코 프리코스 풀어보기 - 숫자 야구 게임 회사에 출근하고 잠깐 시간이 비어있길래 뭔가 할 게 없을까 하다가 Github에서 지인이 우테코 프리코스를 fork한 것을 보게 되었다. 심심해서 한번 풀어보았다. 만약 제가 작성한 내용이 문제가 된다면 얼마든지 삭제할 용의가 있으니 연락 부탁드립니다. 1. 문제 파악 대충 과제를 보아하니 숫자 야구 게임을 만드는 것이 목적으로 보였다. 입력이 서로 다른 3자리 수로 제한 된 것으로 보아 131, 222 같은 입력도 IllegalArgumentException을 발생시켜야 하나? 볼과 스트라이크 개수를 어떻게 처리할지? 랜덤이나 값 입력은 어떻게 받는지? 평소에 자바를 잘 사용하지도 않으니 찾아볼 것이 많았다. 2. 풀이와 과정 친절하게도 우테코에서 지원해주는 라이브러리인 Randoms와 Console .. 2023. 10. 24.