전체 글

Heaon`s Blog
Computer Theory/Os

리눅스와 자주사용하는 쉘 명령어

이번에는 리눅스와 쉘 커맨드에 대해서 알아보고자 한다.  Linux Linux는 서버에서 일반적으로 사용하는 Os 종류 중에 하나이다. 여러 버전이 존재하며 짧지 않은 역사로 안정성과 신뢰성, 등등의 장점을 가지고 있다.  Shell 사용자가 문자를 입력해 컴퓨터에 명령할 수 있도록 하는 프로그램이다. 프롬프트(prompt)를 보여주며 사용자에게 명령을 입력받고 실행하는 역할을 한다.   Shell 작동 흐름쉘은 아래와 같은 작동흐름을 가지고 있다. 실행가능한 프로그램 이름, 인자를 입력한다.파일 시스템에서 실행 가능한 명령이 디스크 어느 부분에 있는지 찾고, fork()라는 system call을 호출함으로써 child process을 생성한다. child process에서 execl(), execvp..

Tools/Aseprite

Aseprite

Aseprite픽셀아트를 다루는데 사용하는 툴이다. 들어가면 스프라이트를 만들 수 있는 환경과, 도트를 찍을 수 있는 여러 편의적인 툴을 제공한다. 스프라이트 : 움직이는 2차원 비트맵 개체를 의미한다.    주로 사용하는 단축키 (Mac)스프라이트 관련 단축키 Cmd + N : 새 스프라이트 생성Shift + N : 새 레이어 생성Opt + N : 새 프레임 생성 작업시 자주 사용하는 단축키 Pencil (B) : 도트 찍을 때 사용하는 툴Eraser (E) : 도트를 지울 때 사용하는 툴Eyedropper (i), opt키 사용하는 것을 추천 : 스포이트 기능을 제공하는 툴, opt키를 누르면 홀드 형식으로 사용 가능Hand (H), 스페이스바 사용하는 것을 추천: 화면을 잡고 움직여 주는 툴, 스페..

Cloud/Docker

도커 허브에 push, pull을 이용하여 도커 이미지 버전 관리하기

도커 허브를 통해 push, pull을 이용하기 위해서는 로컬에 도커가 설치되어 있어야 하며, 도커 허브에 가입되어 있어야 한다. 일단 첫 번째로 도커 허브에 가입한다.  도커 허브 : https://hub.docker.com/ Docker Hub Container Image Library | App ContainerizationDeliver your business through Docker Hub Package and publish apps and plugins as containers in Docker Hub for easy download and deployment by millions of Docker users worldwide.hub.docker.com 그 다음 Create repositor..

Computer Theory/Web

호스팅(Web Hosting)

이번에는 호스팅에 대해서 알아보고자 한다.   호스팅(Hosting)호스팅이란 어떤 서비스를 빌려서 사용한다는 의미이다. 인터넷에서 호스팅이란 주로 3가지(웹 호스팅, 서버 호스팅, 쿨라우드 호스팅)의 종류로 나누어 나타내고 있다.   웹 호스팅 웹 호스팅은 여러 고객이 하나의 서버를 함께 사용하는 형태를 의미한다. 하나의 서버를 나누어 쓰기 때문에 저렴하게 이용할 수 있고 호스팅 업체의 통합 관리를 받기 편하다. 하지만 사용할 수 있는 하드웨어가 제한적이라는 단점을 가지고 있다.  서버 호스팅서버 호스팅은 고객이 단독 서버를 사용하는 형태를 의미한다. 넓은 하드웨어 공간을 사용 할 수 있고, 서버/운영 관리에 대한 직접적인 권한을 가질 수 있다. 하지만 단독으로 사용하는 만큼 높은 비용을 지불하여야 한..

Programing Language/Java

Lambda Expression

Lambda Expression람다식이란 함수를 하나의 식으로 표현한 것이다.  함수를 람다식으로 표현하면 메소드의 이름이 필요없기 때문에, 익명 함수의 한 종류라고 볼 수 있다.  // 람다 방식(매개변수, ... ) -> { 실행문 ... }// 예시() -> "Hello World!"; 해당 람다식을 통해 다음과 같은 장점을 얻을 수 있다. 불필요한 코드를 줄이고, 가독성을 높힘함수를 만드는 과정없이 한번에 처리가능하여 생산성 증대병렬 프로그래밍에 용이  Java에서 제공하는 함수형 인터페이스Java에서는 자주 사용될 것 같은 함수형 인터페이스가 이미 정의되어 있다.   Supplier 매개변수 없이 반환값만 갖는 함수형 인터페이스이다. get() 함수를 이용하여 함수를 실행한다.// 정의@Func..

FrameWork/Spring

연관관계

오늘은 연관관계에 대해서 알아보고자 한다.   연관관계연관관계란 객체와 데이터베이스 테이블을 서로 매핑(매칭)시켜주는 것을 의미한다.  방향객체들이 연관관계를 맺을 때, 한쪽에서만 참조가 가능한지 양방향에서 참조가 가능한지에 대한 방향을 의미한다. 일반적으로 DB테이블간에는 어떤 테이블을 기준으로 하든 원하는 정보를 JOIN을 사용하여 조회가 가능하기 때문에 방향이라는 개념이 없지만, 객체 지향에서는 다른 객체에서 또 다른 객체를 조회하기 위해서 조회하고자 하는 객체의 정보를 가지고 있지 않으면 조회가 불가능하기 때문에 조회를 하기 위해서 방향을 설정해주는 것이 중요하다.  단방향 : 객체들이 연관관계를 맺을 때, 한쪽에서만 참조 가능한 경우 양방향 : 객체들이 연관관계를 맺을 때, 양쪽에서 참조 가능한..

FrameWork/Spring

RestTemplate

오늘은 ResetTemplate에 대해서 알아보고자 한다.   RestTemplateRestTemplate은 Spring Framework에서 Restful HTTP 요청을 위해 제공하는 클래스이다. 주로 아래와 같은 상황때 사용한다. Spring Boot 애플리케이션이 외부 RESTful API와 상호작용해야 할 경우다양한 목적으로 다른 웹 서비스의 데이터를 가져와야할 경우복잡한 구성없이 HTTP 클라이언트를 구축하는 간단한 효율적인 방법을 원하는 경우 작동은 다음과 같이 진행된다. 1. 어플리케이션이 RestTemplate을 생성하고, URI, HTTP 메소드 등을 헤더를 담아 요청한다.2. RestTemplate는 HttpMessageConverter을 사용하여 requestEntity를 요청 메세..

Programing Language/Java

Enum

최근 프로젝트를 진행하다가 "이건 Enum으로 빼서 처리하면 좋을 것 같은데요?"라는 조언을 들었다. Enum을 자바 공부하면서 들어보긴 했는데 어떠한 점이 좋은지, 어떻게 쓰면 되는지에 대해서는 명확하게 잘 알지는 못하기에 오늘은 Java의 Enum에 대해서 알아보고자 한다.   EnumEnum은 Enumeration의 약자로 열거, 목록의 뜻을 가지고 있으며 "상수의 데이터 집합"이라고 생각하면 된다. 일반적으로 상수를 정의하는 방법은 여러 가지가 존재하는데 이는 다음과 같다.  final 상수변수를 final 제어자를 이용해 변수를 상수화 한다. 동시에 static을 사용하여 메모리에 한 번만 할당 되게 설정한다는 장점을 가지지만 접근 제어자들 때문에 가독성이 좋지 못하다는 단점이 있다. priva..

FrameWork/Spring

ComponentScan

오늘은 컴포넌트 스캔에 대해서 알아보도록 한다.   @ComponentScan컴포넌트 스캔이란 스프링이 @Configuration 에너테이션이 붙은 설정 클래스를 찾은 뒤, 빈을 등록하는 과정에서 @Component 에너테이션이 붙은 클래스를 스캔해서 스프링 빈으로 등록해 주는 것을 의미한다.  AutoAppConfig.javaimport org.springframework.context.annotation.ComponentScan;import org.springframework.context.annotation.Configuration;import org.springframework.context.annotation.FilterType;import static org.springframework.con..

JHeaon
JHeaon 개발일지