3/20 WIL 3월 3째주 주간회고

송은혜·2022년 3월 20일
0

항해99 6기

목록 보기
16/34

객체 지향 프로그래밍

객체를 기반으로 하는 프로그래밍 방식이다. 쉽게 말해, 어떤 대상을 가지고 프로그래밍한다고 말할 수 있다.

예를 들어, 자동차 공장에 대해 프로그래밍을 한다면

크게 , 공장이라는 것이 있을 것이고 자동차도 여러가지 차종이 있을테니 이 공장에서 생산하는 여러 차종이 있을 것이다. 또, 자동차에는 여러 부품들도 있을 것이다.

공장이나 자동차와 같은 어떤 사물이나 대상은 물론이고, 방식 같은 것들을 하나의 대상으로 여기고 프로그래밍을 하는 것이다.

간단히 생각해본다면,

공장 class / 제네시스 class / 쏘나타 class / 그랜저 class / 재료 class / 만들어내는 방식에 대한 class 등이 있을 것이고

재료 class 안에는 재료 A / 재료 B 등을 넣어주고,

만들어내는 방식에 대한 class 에는 방식 A / 방식 B / 방식 C 등을 넣어줄 수 있을 것이다.

만약 제네시스에는 재료 A 와 방식 A를 사용한다면, 재료 class에 있는 재료 A와 방식 class에 있는 방식A 를 사용해주면되고 ,

쏘나타에는 또 쏘나타가 사용하는 재료와 방식을 각각 class에서 꺼내 사용할 수 있을 것이다.

또, 공장 class에는 각 차종들의 공통되는 부분들을 넣어서 모든 차종들에게 그 성질을 줄 수 있을 것이다.

이런 식으로 프로그래밍을 하게되면, 각각 차종들에게 필요한 것들을 각각의 차종마다 a부터 z까지 전부 입력해주지 않을 수 있다.

규모가 큰 프로젝트일 수록 객체지향 방식을 사용하면 조금 더 쉽게 관리할 수 있을 것 같다.


JVM

Java Vitural Machine 의 줄임말로, 자바 가상머신이라고 한다.

모두가 사용하는 운영체제가 같을 순 없다. 그래서 일반적으로 게임임이나 다른 어떤 프로그램들을 설치할 때 우리는 우리가 사용하는 운영체제에 맞게 다운로드를 받고 , 어떨땐 설치 방식이 조금 다르기도 하다.

JVM은 java와 운영체제 사이의 중계자 역할을 하며, 자바가 운영체제에 구애받지 않고 실행될 수 있도록 도와주는 역할을 합니다. 그래서 한 번 작성한 자바 파일은, JDK가 설치되있기만 한다면 운영체제에 관계없이어느 컴퓨터에서든 잘 실행됩니다.

또 , JVM에는 메모리를 알아서 관리해주는 가비지 컬렉터가 내장되어 있어서 사용되지 않는 객체들을 파악하여 제거하고, 힙 메모리를 관리해주는 역할까지 도와준다




어제부터 스프링 주차가 시작이 되서, 자바 개념에 대한 것들과 스프링의 아주아주 얇은 겉면 정도.. 조금 알게 된 것..? 같을까 ?..
생각보다 정말 어렵다 ㅜ 이번주에는 개인과제도 있는데 잘 마칠 수 있을까? ㅎㅎ
스프링을 이용해서 코드를 짜는 방식도 참 다양해서 어떤 방식을 따라가야 더 좋을 수 있을 것인지도 잘 모르겠다.
아직은 그게 당연한거겠지만, 처음부터 좋은 방식으로 배우기 시작하면 나중에도 좋은 방식이 몸에 베어서 좋은 코드를 작성 할 수 밖에 없지 않을까 ?

아직 잘 몰라서 이런 생각을 하는걸지도 모른다.
빨리 다시 스프링공부하러 가야겠다
나랑 친해지자 봄아 ! 🌸

0개의 댓글