GitHub - wonowonow/KioskProject Contribute to wonowonow/KioskProject development by creating an account on GitHub. github.com 오늘은 대대적인 키오스크 리팩토링을 진행하였다. 자 이제 리팩토링 시작할 차례 우선 밑에 적혀진 엄청나게 긴 것들을... Display 클래스가 역할을 충실하게 할 수 있게 다 옮겨줄 것이다. import java.util.*; public class Main { public static void main(String[] args) throws InterruptedException { Order order = new Order(); Display display = new Displa..
추상 클래스와 인터페이스 너네 둘은 왜 나눠 놓는 거냐? 추상 클래스에 메소드 밖에 없으면 인터페이스 역할을 하는 거 아닌가? 부터 시작 된 고뇌... 어제 나를 잠 못이루게했다. (오늘도 그럴듯) 추상 클래스에 메소드 밖에 없으면 인터페이스 역할을 하는 건데 인터페이스를 왜 써야 돼? 존재 이유가 뭐야? 도대체 뭔데!! 추상 클래스 추상 클래스는 말 그대로 어떤 객체의 행위를 추상화 해놓은 것이다. 그 객체가 가지고 있는 추상화 된 행위를 자식 개체는 상속을 받아서 행위를 확실하게 정의하여 사용할 수 있다. 자바에서는 오버라이딩을 이용해서 재구현 할 수 있다. 추상 클래스는 상속을 해야 진가가 발휘되는데, 상속을 한다는 점에 집중해서 밑의 그림을 보자 사람으로 예를 들자면 민수와 철수는 사람이다. 하지..
코드 처리하기 문제가 어려웠다... 결국엔 풀긴 풀었는데 문제를 정확히 이해하지 못해서 생긴 문제였다. 저거만 잡고 30분 이상 고민했었는데, 점점 알고리즘 난이도가 높아져서 알고리즘 카테고리를 새로 만들고 거기에 풀이과정 올려야겠다고 생각.. 시간 날 때마다 지금까지 풀었던 것들 업로드 할 예정입니다... 오늘 개인 프로젝트 계획 장바구니 장바구니에 상품 추가 장바구니에 담긴 상품 확인 + 장바구니 내의 상품 가격 합계 장바구니 비우기 주문 및 주문번호 출력 우선 장바구니 구현 과정 설명 장바구니에 상품 추가 void addBasket (Product orderProduct) { System.out.println(); // 여기에 주문을 추가하는 메소드가 들어갈 것 // basket에 담고 메인으로 돌..
활용할 매개변수가 많아서 처음에 되게 어려운 문제다 라고 생각했다. 나는 switch case문에서 ineq 값 별로 if 문을 넣고 eq.equals로 푸는 생각을 했다. 그렇게 생각하고 이런 코드를 짰는데... class Solution { public int solution(String ineq, String eq, int n, int m) { int answer = 0; switch (ineq) { case ">" : if ("=".equals(eq)) { answer = n >= m ? 1 : 0; } else { answer = n > m ? 1 : 0; } case "" : if ("=".equals(eq)) { answer = n >= m ? 1 : 0; } else { answer = n..
공부하는데 단어를 자꾸 까먹어서 글을 쓴다. int 타입의 a 변수, int 타입의 b변수를 받아 a+b한 값을 반환해서 int 타입의 name에 넣어주는 메소드를 만들고 설명하겠다. public int name(int a, int b) { return a+b } name(8,6); 매개변수(Parameter) (int a, int b) 메소드, 생성자를 선언할 때 () 안에 적어준다. 실제로 값을 가지고 있지 않고, 어떤 타입의 입력값이 들어올 것인지를 정의한다. 인자(Argument) name(8,6) 메소드, 생성자를 호출할 때 () 안에 적어주는 것이 인자다. 실제로 값을 가지고 있다. 8 , 6 이 부분이 인자다 이때 주의해야 할 점은 메소드, 생성자에 적혀있는 매개변수에 맞게 타입과 순서를 일..
오늘은 문자열 겹쳐쓰기가 어려웠다. 이건데.. substring을 이용해서 풀어보기로 했다. 문제의 내용 요약은 my_string 에 s 인덱스 부터 overwrite_string으로 바꾸고 나며지 my_string를 출력하면 된다. 저 s 인덱스를 어떻게 활용할지가 최대 관건이었다 substring에 s를 활용해서 답을 적었다. // substring(n,n) // // 덮어쓴 곳 끝 부터 원래 문자 끝까지 class Solution { public String solution(String my_string, String overwrite_string, int s) { String n1 = my_string.substring(0,s); String n2 = my_string.substring((s+ov..
[일기] 공부에 집중을 못했다. 진도 많이 나가려고 했는데, 공지사항으로 자영업자는 훈련장려금을 받기 어렵다는 말에 ? 아닐텐데.. 하고 계속 찾아봐야 했다. 지금은 폐업 과정을 밟고 있어서 판매 중지를 했지만.. 정산이 느려서.. 2달뒤에 할 수 있다.. 그래서.. 이거 못받으면 수익이 없음_ ㅠ 결론부터 말하자면 자영업자도 고용보험에 가입하면 훈련장려금을 받을 수 있다. 하지만.. 부캠에서는 폐업 처리를 해야 수령할 수가 있다고 해서 엄청 알아봤다. [국민내일배움카드 운영규정] 제49조 제2호 다목 [고용보험법] 제2조 제1호 나목 살펴보면 찾아볼 수 있다. 하지만 내용에는 수강 신청 전, 수강 중 이런 말이 없어서 매니저님한테 말씀드리고... 고용노동부에 전화하고... 매니저님한테 말씀드리고... ..
부트캠프를 진행하며 java 핸드북, 자바의 정석등으로 java를 연습하며 이걸 어디에 어떤 용도로 쓰는 거지? 싶었던 게 많았다. 객체 지향을 배우면서 그 갈증이 조금은 해소가 됐지만 우선 이론을 배우고 있고, 알고리즘 공부를 아직 시작 안 해서 (내일부터 시작한다) 체화가 덜되는 느낌이었다. 그래서 자바 TIL 적는 걸 조금 뒤로 미뤄두었었다. 기술은 반복 숙달이지 않는가, 핸드북을 보면서 이해 안되면 강의를 보고 강의를 봐도 이해가 안되면 자바의 정석을 보고 이해가 된 거 같아도 자바의 정석으로 한번 더 공부하고 그랬다. 근데 이번에 강의에서 나온 if문 활용이 너무 재밌어서 가져왔다 if 문으로 가위바위보 만들기 조건문인 if문으로 가위바위보를 만들 건데 가위 바위 보의 값을 받을 수 있는 sca..
대망의 팀 프로젝트 발표 날 나는 팀프로젝트가 처음이었다. 팀 프로젝트는 CRUD 구현하고 싶었던 것들 시간상 구현 못한게 많았는데 (비밀번호 일치시 삭제.. 등등) 다른 팀들 결과물 보니 구현하고 싶던 기능들을 구현했었다. 댓글 수정에는 editDoc을 써서 구현을 하시고 파이어베이스에는 난수로 doc.id를 저장하는데 CSS의 class 는 숫자로 시작하면 안돼서 'A'+doc.id 이런 방식으로 해결 하셨다는 분들도 계셨다. (CSS2에서 생긴 내용인데, 이 때문에 CSS2 업데이트 당시 많은 사이트들의 CSS가 작동을 안했었다고 한다) 보면서 와 정말 조금만 생각을 간단하게 하면 가능한 방법들이 많았다. doc.id를 모르기 전, 어느 인도 유튜브에서 파이어베이스 doc.id 난수를 특정 값으로 ..