본문 바로가기

-Plo story-

(67)
메모리구조 (+Java) - Code(Text) 영역 - Code 영역은 코드가 저장되는 영역이다. Code영역에 저장되는 코드들을 Cpu가 하나씩 가져가서 처리하게된다. - 데이터(data) 영역 - 프로그램의 전역(global) , 정적(static) 변수가 저장되는 영역이다. 프로그램의 시작과 동시에 할당 , 종료와 동시에 소멸된다. 프로그램의 시작부터 끝까지 메모리에 존재하는 영역이다. = java = -메서드 영역(method)- JVM이 실행되며 생기는 영역 class정보 , 전역변수 , 정적(static) 변수 -RumTimeConstantPool- 상수 정보가 저장되는 공간 - 힙(heap) 영역 - 사용자가 필요할 때 마다 직접 사용하고 관리하는 영역. 데이터의 크기가 확실하지 않고 변동이 있을 때 사용자가 직..
Spring Controller , Service , Repository , Domain , DTO = Spring Controller , Service , Repository , Domain , DTO = - Controller - Client의 요청을 받았을 때 그 요청에 대해 실제 업무를 수행하는 Service를 호출 클라이언트가 보낸 데이터가 있다면 Service를 호출할 때 전달하기 쉽게 데이터의 가공 모델의 업무 수행이 완료되면 그 결과를 바탕으로 화면을 구성하도록 View에 전달 Service : Controller의 요청을 받아 알맞은 정보를 가공 Controller에게 재전달한다. Repository를 상속받아 .findByID , .save()등의 함수 사용이 가능해진다. Repository : Entity에 의해 생성된 DB에 접근하는 메서드를 사용하기위한 interface이다. J..
항해99 2주차 회고(2) 객체지향 프로그래밍이란? 객체지향 프로그래밍 Object-Oriented Programming 프로그램의 설계 방법이자 개념의 일종이다. 프로그램의 구현에 필요한 객체를 파악하고 각각의 객체들의 역할을 정의 , 객체들간의 상호작용을 이용하여 프로그램을 만들어내는 것을 뜻한다. 객체지향 프로그래밍의 장점 1. 재사용성 : 어떤 객체(class)를 다른 객체(class)가 상속하여 프로그래밍할 때에 코드의 재사용성을 높힐 수 있다. 2. 생산성의 향상 : 잘 설계된 객체(class)를 만들어 독립적으로 재사용함으로써 생산성을 크게 높힐 수 있다. 3. 유지보수의 편의성 : 기존 기능 수정 , 새로운 기능 추가에 용이하다. 객체지향의 특징중 하나인 캡슐화로 인하여 기존 함수를 수정하더라도 주변에 미치는 영향이 최소화되며 새로운 기능 ..
항해 99 2주차 회고(1) JDK! - Java Develoment Kit - 개발자들이 jav로 프로그램을 만들 수 있도록 다양한 기능을 제공하는 java개발 kit이다. - Java Compiler - .java file을 작성 후 Compile 하게되면 JavaC는 .java 파일 -> .class 파일(JavaByteCode)로 변환시켜준다. - Java Runtime Enviroment- 자바 런타임 환경 (JRE)는 자바 클래스 라이브러리 , JVM , 자바 클래스 로더 등을 가지고 있으며 JavaC가 변환한 .class파일을 JVM에게 전달 원할하게 작동할 수 있도록 환경을 구성해준다. - J V M - Java Byte Code를 다양한 OS에 맞게 해석해주는 역할을한다. JavaByteCode는 기계어가 아니기 때문에 OS..
항해99 12,13일차 Spring 입문 = 주특기 입문 시작! = 미니프로젝트 , 알고리즘 두개 키워드의 2주가 끝나고 주특기인 Spring 입문의 1주일이 시작됐다. 쉽진 않다던 spring , 금방 익숙해지리라 믿는다. 과제 완성 파일들로 게시글을 쓰고 싶었는데 배포하는 과정에서 build를 했더니 .jar로 압축돼버렸다... 압축푸는 방법을 찾아봐야할 것 같다.. = 입문 주차 과제 영상 = 입문주차 과제영상! = Spring MVC = Model , View , Controller 패턴의 개념이다. Model 데이터 저장소와 연동하여 사용자의 데이터를 저장하거나 데이터를 출력하는 등의 일을 수행함 여러개의 데이터 변경작업(추가, 변경 , 삭제)들을 하나로 묶는 트랜잭션의 역할도 수행함 DAO class중 service에 해당됨 DAO(..
객체지향 OOP! 객체지향 프로그래밍 Object-Oriented Programming 프로그램의 설계 방법이자 개념의 일종이다. 프로그램의 구현에 필요한 객체를 파악하고 각각의 객체들의 역할을 정의 , 객체들간의 상호작용을 이용하여 프로그램을 만들어내는 것을 뜻한다. 객체지향 프로그래밍의 장점 1. 재사용성 : 어떤 객체(class)를 다른 객체(class)가 상속하여 프로그래밍할 때에 코드의 재사용성을 높힐 수 있다. 2. 생산성의 향상 : 잘 설계된 객체(class)를 만들어 독립적으로 재사용함으로써 생산성을 크게 높힐 수 있다. 3. 유지보수의 편의성 : 기존 기능 수정 , 새로운 기능 추가에 용이하다. 객체지향의 특징중 하나인 캡슐화로 인하여 기존 함수를 수정하더라도 주변에 미치는 영향이 최소화되며 새로운 기능 ..
JDK , JavaC , JRE , JVM , GC!! - Java Develoment Kit - 개발자들이 jav로 프로그램을 만들 수 있도록 다양한 기능을 제공하는 java개발 kit이다. - Java Compiler - .java file을 작성 후 Compile 하게되면 JavaC는 .java 파일 -> .class 파일(JavaByteCode)로 변환시켜준다. - Java Runtime Enviroment- 자바 런타임 환경 (JRE)는 자바 클래스 라이브러리 , JVM , 자바 클래스 로더 등을 가지고 있으며 JavaC가 변환한 .class파일을 JVM에게 전달 원할하게 작동할 수 있도록 환경을 구성해준다. - J V M - Java Byte Code를 다양한 OS에 맞게 해석해주는 역할을한다. JavaByteCode는 기계어가 아니기 때문에 OS..
Spring API @Controller public class HelloController { @GetMapping("hello") public String hello(Model model) { model.addAttribute("data", "hello!!"); return "hello"; } @GetMapping("hello-mvc") public String helloMvc(@RequestParam("name") String name, Model model) { model.addAttribute("name", name); return "hello-template"; } @GetMapping("hello-string") @ResponseBody public String helloString (@RequestParam(..