최종 프로젝트 아쉬운점
·
팀 프로젝트
이번 프로젝트를 진행하면서 아쉬운점배포를 진행하면서 ROOT 권한이 없는 호스팅을 진행하여페이지에서 WebSocket을 사용하지 못한 부분이 아쉽니다. 다음에 배포를 진행한다면 WebSocket을 사용할 수 있도록ROOT 권한이 있는 서버 호스팅을 하거나 윈도우 PC를 서버로서 사용할 수 있도록 설정을 해봐야 할 것 같습니다. 프로젝트 PPT를 올려본다.
[Java] UnsupportedClassVersionError
·
카테고리 없음
UnsupportedClassVersionError 는실행 환경 JVM 버전보다 더 높은 버전의 Java Class 파일을 컴파일하려해서 발생한다. 각 Java Class File Version을 확인해보자.JDK VersionBytecode VersionJava 1.045.0Java 1.145.3Java 1.246.0Java 1.347.0Java 1.448.0Java 549.0Java 650.0Java 751.0Java 852.0Java 953.0Java 1054.0Java 1155.0Java 1256.0Java 1357.0Java 1458.0Java 1559.0Java 1660.0Java 1761.0Java 1862.0Java 1963.0Java 2064.0Java 2165.0Java 2266.0Ja..
[Java] Garbage Collection(GC)
·
추가 공부/Java
가비지 컬렉션(Garbage Collection)이란?자바의 메모리 관리 방법 중의 하나로 JVM(자바 가상 머신)의Heep 영역에서 동적으로 할당했던 메모리 중필요 없게 된 메모리 객체(garbage)를 모아 주기적으로 제거하는 프로세스를 말합니다. C/C++ 언어에서는 가비지 컬렉션이 없어 프로그래머가수동으로 메모리 할당과 해제를 일일이 해줘야한다. 반면 Java에서는 가비지 컬렉터가 메모리 관리를 대행해주기 때문에 Java 프로세스가 한정된 메모리를 효율적으로 사용할수 있게하고개발자 입장에서 메모리 관리, 메모리 누수 문제를 관리하지 않고 개발할 수 있다. 가비지 컬렉션 단점자동으로 처리해준다 해도 메모리가 언제 해제되는지 정확하게 알 수 없어 제어하기 힘들다.가비지 컬렉션이 동작하는 동안에는 다른..
[Java] OOP 네가지 특징(추상화/캡슐화/상속/다형성)
·
카테고리 없음
OOP 란?객체지향 프로그래밍을 말한다.기본존에 만들었던 내용을 재사용할 수 있다는 장점이 있다.프로그램을 독립된 단위인 객체들의 모임으로 보고각각 객체는 메시지를 주고 받고 데이터를 처리한다. OOP의 네가지 특징추상화 - 핵심 코드 확인불필요한 부분을 숨김인터페이스와 구현을 분리 구현객체에 의존하지 않고 추상객체인인터페이스에 의존함으로써 구현 코드를 숨깁니다.interface DiscountPolicy{ //할인되는 가격 반환 public int discount(Member member, int price); }class RateDiscountPolicy implements DiscountPolicy{ //상품 가격의 10%를 할인하여 할인되는 가격을 반환 @Override publi..
[Java] Final keyword
·
추가 공부/Java
Final keyword 란?Java에서는 불변성을 확보할 수 있도록 Final keyword를 제공하고 있다클래스나 변수에 final을 붙이면 처음 정의된 상태가 변하지 않는 것을 보장한다는 의미다.Java에서 변수들은 기본적으로 가변적인데 변수에 final 키워드를 붙여 참조값을 변경 못하도록"불변성"을 확보할 수 있다. Final keyword 종류final class다른 클래스에서 상속하지 못한다.final method다른 메서드에서 오버라이딩하지 못한다.final variable변하지 않는 상수값이 되어 새로 할당할 수 없는 변수가 된다.혼동할 수 있는 두 가지를 보자.finallytry-catch or try-catch-resource 구문을 사용할 때, 정상적으로 작업을 한 경우와 에러가 발..
[JAVA] Generic
·
추가 공부/Java
제네릭은 자바에서 안정성을 맡고 있다고 할 수 있다. 다양한 타입의 객체들을 다루는 메서드나 컬렉션 클래스에서 사용하는 것으로, 컴파일 과정에서 타입체크를 해주는 기능이다. 객체의 타입을 컴파일 시에 체크하기 때문에 객체의 타입 안전성을 높이고 형변환의 번거로움을 줄여준다. 자연스럽게 코드도 더 간결해진다. 예를 들면, Collection 에 특정 객체만 추가될 수 있도록, 또는 특정한 클래스의 특징을 갖고 있는 경우에만 추가될 수 있도록 하는 것이 제네릭이다. 이로 인한 장점은 collection 내부에서 들어온 값이 내가 원하는 값인지 별도의 로직처리를 구현할 필요가 없어진다. 또한 api 를 설계하는데 있어서 보다 명확한 의사전달이 가능해진다.
[JAVA] Annotation
·
카테고리 없음
어노테이션이란?본래는 주석이란 뜻으로 인터페이스를 기반으로 한 문법이다.주석과는 그 역할이 다르지만 주석처럼 코드에 달아 클래스에 특별한 의미를 부여하거나 기능을 주입할 수 있다.어노테이션에는 크게 세 가지 종류가 존재한다.내장되어 있는 built-in annotation어노테이션의 정보를 나타내기 위한 Meta annotation개발자가 직접 만들어 내는 Custom Annotation이있다built-in annotation 은 상속받아서 메소드를 오버라이드 할 때 나타나는 @Override 어노테이션이 대표적인 예시다.어노테이션의 동작 대상을 결정하는 Meta-Annotation 에도 여러 가지가 존재한다.https://docs.spring.io/spring-framework/reference/tes..
[Java] Collection Framework
·
추가 공부/Java
Java Collection 란?컬렉션은 다수의 데이터, 프레임워크는 표준화된 프로그래밍 방식을 의미한다.데이터 그룹을 저장하는 클래스들을 표준화한 설계이다. Collection Framework 에는 List, Map, Set 인터페이스를 기준으로 여러 구현체가 존재한다.이런 Collection을 사용하는 이유는다수의 Data를 다루는데 표준화된 클래스들을 제공해 주고DataStructure를 직접 구현하지 않고 편하게 사용할 수 있기 때문이다.또한 배열과 다르게 객체를 보관하기 위한 공간을 미리 생성하지 않아도 되므로상황에 따라 객체의 수를 동적으로 정할 수도 있다. ListList 인터페이스를 직접 @Override 를 통해 사용자가 정의하여 사용할 수도 있으며, 대표적인 구현체로는 ArrayLis..
개발자가 되고 싶은 곰
'분류 전체보기' 카테고리의 글 목록 (7 Page)