# 2022.08.24

## 할일 및 한일

* [x] Java 세미나 참석 .
* [x] smart-green-campus(다학제간 캡스톤) 점검 참석.

## 경험 및 배움

### smart-green-campus(다학제간 캡스톤)

오늘은 2학기에 들어서기 전에 스마트 그린 캠퍼스 점검을 하였다.

건축공학과, 컴퓨터 공학과 교수님들을 비롯한 다른 조원들도 참석하여 줌으로 미팅을 하였는데, 몇 가지 개선해야 할 피드백을 들어서 기록하였다.

* 모니터와 같은 디스플레이를 구매하여 설치한 후, 실시간으로 정보를 확인하였으면 좋겠다.
* 2학기에는 각각의 결과물들의 연결보다는, 팀별로 데이터를 하드코딩해서 기술적인 면을 완성하여 결과물이 나왔으면 한다.
* 만나서 회의하는 횟수가 적으니 더 많이 토론하고 이야기를 나눠보자.

일단 나는 팀에 합류한지 얼마 되지 않아 발표는 하지 않았으나 이제 우리가 하고 있는 작업들에 대한 이해를 충분히 해야한다.

### Java 세미나 참석

오늘 자바 세미나에서 몇 가지 추가적인 정보들과 질문을 받았다.

우선 `this` 의 쓰임이나 활용에 대해 확실한 개념을 알아두어야 한다고 말씀하셨다. 뒤이어 상속, 람다식에도 `this` 가 나오는데, 그 때가 되면 헷갈리니 개념을 잘 잡아두어야 한다고 하였다.

그리고 단순한 **캡슐화**의 예로, 이번 단원에서 배웠던 getter / setter 메소드가 있다고 하였는데, 단순히 쓰임만 생각하다 보니 캡슐화의 일부라고는 생각하지 못하였는데 깨닫게 되었다.

그리고 실행 클래스로, 실행 진입점인 `main()` 메소드에서 `public static void` 는 왜 접근 제한자가 `public` 이고, 정적인 `static` 으로 선언되어 있으며, 리턴값이 `void` 인가? 라는 질문이 있어서 추가적으로 알아보았다.

* ***`public`****&#x20;****: 접근 제한자가\*\*\*\* ****`public`**** \*\*\*\*이여야만 JVM이 접근하여 프로그램을 실행시킬 수 있다.***
* ***`static`****&#x20;****:****&#x20;****`static`****&#x20;****으로 선언하는 경우엔 Java가 컴파일 하는 시점에 정의된다. 그러므로****&#x20;****`main()`****&#x20;****메소드는 프로그램의 시작점으로 프로그램이 시작되면 제일 먼저 호출되는 메소드로써 객체를 생성하지 않고 바로 작업을 수행해야 하기 때문에****&#x20;****`static`\*\*\*\* \*\*\*\*이여야 한다.***
* ***`void`****&#x20;****: 타입이\*\*\*\* ****`void`**** ****이라는 것은 반환값이 필요 없다는 의미이다. 즉, 메인 메소드를 호출하는 JVM이 반환값을 요구하지 않으니**** ****`void`**** \*\*\*\*타입을 사용한다.***

## 개선 및 목표

* Java 과제로써 "로그인 구현" 이라는 과제가 주어졌으니 천천히 구조를 설계해보자.
