본문 바로가기

전체 글331

[Lv.1] 프로그래머스 - 햄버거 만들기 : Java 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr   이해하기햄버거가 쌓이는 모양을 생각하면 stack을 사용해야 하는 것까지는 떠올릴 수 있는데, 구현이 항상 어렵다. ingredient의 값을 하나씩 가져와서 일단 stack에 push만약 stack의 사이즈가 4보다 크거나 같아지면 들어있는 값을 확인해서 햄버거 순서대로 쌓였는지 확인햄버거 순서는 위에서부터 1 - 3 - 2 - 1 stack.get(stack.size() -1)이 1이고stack.get(stack.size() -2)이 3이고stack.get(stack.size() -3)이 2이고stack... 2024. 5. 10.
[Lv.1] 프로그래머스 - 성격 유형 검사하기 : Java 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr   이해하기처음 문제를 봤을 때 Map으로 풀어야하나 했지만 구현 방법이 잘 떠오르지 않아서 노가다로 풀었다.class Solution { public String solution(String[] survey, int[] choices) { StringBuffer sb = new StringBuffer(); int[][] arr = new int[4][2]; for (int i = 0; i = 5) { arr[0][.. 2024. 5. 10.
[CS] Ch.1 디자인 패턴과 프로그래밍 패러다임 : 싱글톤 패턴, 팩토리 패턴, 전략 패턴 1.1 디자인 패턴프로그램을 설계할 때 발생했던 문제점들을 객체 간의 상호 관계 등을 이용하여 해결할 수 있도록 하나의 '규약' 형태로 만들어 놓은 것 1.1.1 싱글톤 패턴하나의 클래스에 오직 하나의 인스턴스만 가지는 패턴으로, 보통 데이터베이스 연결 모듈에 많이 사용된다. 장점 하나의 인스턴스를 만들어 놓고 해당 인스턴스를 다른 모듈들이 공유하며 사용하기 때문에 인스턴스를 생성할 때 드는 비용이 줄어듦 단점 의존성이 높아짐   자바스크립트의 싱글톤 패턴자바스크립트에서는 리터럴 {} 또는 new Object로 객체를 생성하게 되면 다른 어떤 객체와도 같지 않기 때문에 이 자체만으로 싱글톤 패턴을 구현할 수 있다.const obj = { a: 27}const obj2 = { a: 27}con.. 2024. 5. 9.
[Reservation] Member 회원가입 & 로그인 기능 구현 MemberEntityMemberEntity는 위와 같이 구성하였다.memberKey는 Role(권한)을 판단하기 위하여 추가해주었다. BaseEntity도 만들어 extends해주었기에 실제로 Member는 다음과 같이 생성된다.  RoleRole(권한)은 두 가지가 있다.MANAGER("ROLE_MANAGER")CUSTOMER("ROLE_CUSTOMER")Role을 반환하는 fromKey 함수는 파라미터로 key를 받아서 권한 타입의 적절성 여부를 판단한다. public static Role fromKey(String key) { return Arrays.stream(values()) .filter(o -> o.getKey().equals(key)) .. 2024. 5. 1.
[Reservation] build.gradle과 application.yml 설정 build.gradleplugins { id 'java' id 'org.springframework.boot' version '3.2.5' id 'io.spring.dependency-management' version '1.1.4'}group = 'com.zerobase'version = '0.0.1-SNAPSHOT'java { sourceCompatibility = '17'}repositories { mavenCentral()}dependencies { implementation 'org.springframework.boot:spring-boot-starter' implementation 'org.springframework.boot:spring-boot-starter-web' implementati.. 2024. 5. 1.
[프로그래머스] 코딩 기초 트레이닝 Lv.0 클리어! 2024. 4. 30.