전체 글 (121) 썸네일형 리스트형 Day37(랜덤은 테스트코드 하기 힘들다.) public void leftLabelSetting() { Random random = new Random(); orders = random.nextInt(5) + 1; leftMainPanel.add(new JLabel(orders + "개의 주문이 들어왔습니다. 순서대로 음식을 준비해주세요.")); ArrayList foodArrayList = new ArrayList(foodList); for (int i = 0; i < orders; i += 1) { int index = random.nextInt(orders - i); foodOrderList.add(foodArrayList.get(index)); foodOrderPriceSum += foodOrderList.get(i).getFoodPrice.. 6주차회고 Keep(한 주 동안 있었던일과 좋았던 어떤 것을 말합니다.) - 작성한 계획 끝날 때까지 최대한 집에 가지 않았습니다. - 안되더라도 포기하지 않고 계속 공부하고 사고했습니다. Problem(한 주 동안의 문제점을 말합니다.) - 마감시간을 지키지 못해 계속 해서 과제가 밀렸습니다. - 과제하느라 개념 공부 시간을 놓쳤습니다. - 질문하고 얻은 정보에 대해 정리하지 않았습니다. - 내 스스로 정한 프로세스를 지키지 않았습니다. Try(Problem에서의 문제점을 해결하기 위해 시도해 볼 것 들을 말합니다.) - 복습 확실히 하기. - 오류가 생기면 항상 정리하고 꼭 보기. - 오전에 개념공부 지속하기 - 안된다고 화내지말고 마음 잘 다스리기 - 준비, 입력,처리 출력 프로세스대로 사고하기 - 예상되는 .. Day36() 응집도와 결합도 응집도 - 한 모듈 내부의 처리 요소들이 서로 관련되어 있는 정도 결합도 - 서로 다른 모듈 간에 상호 의존하는 정도 또는 연관관계 추상화- 복잡한 자료, 모듈, 시스템등으로부터 핵심적인 개념 또는 기능을 간추려 낸 것. 모듈 - 외부에서 재사용할 수 있는 패키지 묶음 라이브러리 - 자바에서 미리 만들어 놓은 코드 모음 프레임워크 - 개발자가 Java 프로그래밍 언어로 애플리케이션을 만들기 위해 사용하는 미리 작성된 코드의 본문 상속 - 한 클래스가 다른 클래스의 속성을 가져오는 과정 위임 - 다른 클래스의 객체를 인스턴스 변수로 사용하고 인스턴스 메시지를 전달하는 것 list - 인덱스 없이 순차적으로 저장하고 메모리에 연속적으로 저장. 중간에 데이터 삽입/삭제가 용이하지만, 랜덤엑세스.. Day35(퀘스트 하면서 겪은 참조형타입 비교, 자바의 특징,JVM,Lamda,추상화) exam 1.자바의 특징 - 간단하다. - 객체지향적이다. - 인터프리터 언어이다. - 강력하다 - 안전하다 - 플랫폼이 독립적이다 - 멀티 쓰레딩을 지원한다. - 동적이다 2.JVM, JRE, JDK - JVM : Java로 개발한 프로그램을 컴파일하여 만들어지는 바이트코드를 실행하기 위한 가상머신 - JRE : JVM이 자바프로그램을 동작시킬 때 필요한 라이브러리 파일들과 API,JVM등 기타 파일들을 가지고 있다. 읽기만 가능 - JDK: JRE + 개발을 위해 필요한 도구(javac,java 등 )등을 포함한다. 3.람다식(익명함수) Lamda Expression=>함수를 하나의 expression(식)으로 표현한 것이다.-> 함수를 람다식으로 표현하면 메소드의 이름이 필요없다. - 코드를 간결하.. Day34(반복문을 사용하는 경우) 랜덤의 개수로 들어오는 주문의 순서대로 버튼을 누르는 게임인데 이 부분을 어떻게 구현할까에 대해서 생각하면서 들어온 주문을 모아둔 list와 사용자가 버튼을 누르는 순서를 담은 listf를 담아서 for문으로 비교를 하면 될꺼라 생각했다. for문을 사용하여 비교하는 코드를 작성했는데 i가 2이상일 경우 반복해서 결과가 나오는 것이다. 이를 해결하려고 했지만 해결하지 못했고 도움을 요청한 결과 처음부터 버튼 부분을 설계할 때 버튼은 고정된 값이니 배열로 해결해주면 간단하게 끝난다는 것이다. 물론 이렇게 아예 안된다는 것은 아니다. 이러한 상황이 야기된 이유는 배열과 list에 대해서 대충 알았기 때문이다. 개념을 공부할 때와 어떤한 부분에서 막히고 자주 사용되는 개념들을 만났을 때는 그 개념이 왜 쓰이고.. Day33(자바 컴파일 순서,반복의 3요소, 라이브러리와 framework차이, 객체지향 프로그램과 절차적 프로그램의 차이를 캡슐화 개념을 통해 설명,Value Object와 entity의 차이 ) 중복되지 않게 음식 이름을 출력하게하는 코드. Random random = new Random(); //음식 주문의 개수가 랜덤이기에 랜덤 숫자 가져온다. int orders = random.nextInt(5) + 1; leftMainPanel.add(new JLabel(orders + "개의 주문이 들어왔습니다. 순서대로 음식을 준비해주세요.")); ArrayList foodArrayList = new ArrayList(foodList); for (int i = 0; i < orders; i += 1) { int index = random.nextInt(orders - i); leftMainPanel.add(new JLabel((i+1)+". "+foodArrayList.get(index).getFoo.. Day32(입력받은 값이 비어 있지 않고, 숫자로 이루어져 있는지를 확인하는 조건문) public JButton transferAmountButton(Account sender, JTextField receiverAccountNumberTextField, JTextField transferAmountTextField, JLabel waringLabel) { JButton transferButton = new JButton("송금"); transferButton.addActionListener(event -> { String transferAmountText = transferAmountTextField.getText(); if (!transferAmountText.isEmpty() && transferAmountText.matches("\\d+")) { int transferAmount .. Day31(객체지향 프로그래밍,생성자,오퍼레이션,결합도,List와ArrayList차이점,구현체,인터페이스) 객체지향 프로그래밍 - 메세지는 객체들이 서로 협력하기 위해 사용할 수 있는 유일한 의사소통 수단입니다. - 객체가 메시지를 수신할 수 있다는 것은 객체가 메시지에 해당하는 책임을 수행할 수 있다는 것을 의미합니다. - 외부의 객체는 메시지에 관해서만 볼 수 있고 객체 내부는 볼 수 없기 때문에 자연스럽게 객체의 외부와 내부가 분리됩니다. - 독립된 객체의 상태와 행위에 대해 고민하지 말고 시스템의 기능을 구현하기 위해 객체가 다른 객체에게 제공해야하는 메시지에 대해 더욱 고민하는 것이 좋습니다. - 책임-주도 설계의 기본 아이디어는 객체들 간에 주고받는 메시지를 기반으로 적절한 역할과 책임, 협력을 발견하는 것입니다. - what/who 사이클은 어떤 행위(메시지)를 수행할지 결정하고 누가 그 행위를 .. 이전 1 ··· 8 9 10 11 12 13 14 ··· 16 다음