Language/JAVA
4주차 과제 : live-study dash board 만들기
과제 1. live-study 대시 보드를 만드는 코드를 작성하세요. 깃헙 이슈 1번부터 18번까지 댓글을 순회하며 댓글을 남긴 사용자를 체크 할 것. 참여율을 계산하세요. 총 18회에 중에 몇 %를 참여했는지 소숫점 두자리가지 보여줄 것. Github 자바 라이브러리를 사용하면 편리합니다. 깃헙 API를 익명으로 호출하는데 제한이 있기 때문에 본인의 깃헙 프로젝트에 이슈를 만들고 테스트를 하시면 더 자주 테스트할 수 있습니다. github api 가져오기 maven dependency로 가져왔습니다. Github 자바 라이브러리에서 GitHub객체를 가져옵니다 1. 아이디와 패스워드를 입력하는 방식 (not recommended) 2. 개인 토큰을 이용해 연결하는 방식 토큰을 이용해서 가져와 봅시다. ..
5주차 과제 : 메소드 정의하는 방법
메소드란? Method 클래스가 만들어지기 전에 기능만 담당했던것을 function이라하고 클래스의 필드와 함께 관련된 기능을 담당하는 것을 메서드라고 한다. (하는 일은 같지만 관점이 바뀌며 용어가 달라졌다.) 객체의 동작에 해당하는 중괄호 { } 블록이다. 중괄호 블록은 이름을 가지는데 이것이 메소드의 이름이다. 메서드를 실행하면 블록 내의 모든 코드들이 일괄적으로 실행된다. 필드를 읽고 수정하는 역할부터 다른 객체를 생성해서 활용하는 등 다양한 역할을 수행한다. 객체간의 데이터 전달의 수단으로 사용된다. 외부로 부터 매개값을 받을 수 있고 실행 후 어떤 값을 리턴할 수도 있다. 선언부(리턴타입, 메서드이름, 매개변수선언)와 실행 블록으로 구성된다. 메서드의 선언부를 메서드 시그너처(signature..
5주차 과제 : 클래스 정의하는 방법
클래스란 ? 객체(Object)라는 상태와 행동을 가지는 주체를 만드는 틀 또는 설계도의 의미로 사용된다. 클래스는 필드(field) 생성자(constructor) 메소드(method)로 구성되어있다. 이 요소들은 생략되거나 복수 개가 작성될 수 있다. public Class ClassName { // 필드 (field) int fieldName; // 생성자 (constructor) ClassName() { ... } // 메소드 (method) void methodName() { ... } } Field 필드는 객체의 고유 데이터, 부품 객체, 상태 정보를 저장하는 곳 선언 형태는 변수(Variable)와 비슷하지만 필드는 변수라고 부르지 않는데 그 이유는 변수는 생성자와 메소드내에서만 사용되고 생성..
5주차 과제: 클래스
목표 자바의 Class에 대해 학습하세요. 학습할 것 (필수) 클래스 정의하는 방법 객체 만드는 방법 (new 키워드 이해하기) 메소드 정의하는 방법 생성자 정의하는 방법 this 키워드 이해하기 마감일시 2020년 12월 19일 토요일 오후 1시까지. 과제 (Optional) int 값을 가지고 있는 이진 트리를 나타내는 Node 라는 클래스를 정의하세요. int value, Node left, right를 가지고 있어야 합니다. BinrayTree라는 클래스를 정의하고 주어진 노드를 기준으로 출력하는 bfs(Node node)와 dfs(Node node) 메소드를 구현하세요. DFS는 왼쪽, 루트, 오른쪽 순으로 순회하세요. 객체 지향 프로그래밍 부품들을 제작하고 조립하여 완성된 제품을 만들 듯이, ..
4주차 과제 : JUnit 5
과제 0. JUnit 5 학습하세요. 인텔리J, 이클립스, VS Code에서 JUnit 5로 테스트 코드 작성하는 방법에 익숙해 질 것. 이미 JUnit 알고 계신분들은 다른 것 아무거나! 더 자바, 테스트 강의도 있으니 참고하세요~ junit.org/junit5/docs/current/user-guide/ JUnit 5 User Guide Although the JUnit Jupiter programming model and extension model will not support JUnit 4 features such as Rules and Runners natively, it is not expected that source code maintainers will need to update all..
3주차 과제 : (optional) Java 13. switch 연산자
(optional) Java 13. switch 연산자 기존 자바에도 switch 문은 존재했다. public enum Day { SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY; } // ... int numLetters = 0; Day day = Day.WEDNESDAY; switch (day) { case MONDAY: case FRIDAY: case SUNDAY: numLetters = 6; break; case TUESDAY: numLetters = 7; break; case THURSDAY: case SATURDAY: numLetters = 8; break; case WEDNESDAY: numLetters = 9; break; d..