분류 전체보기
-
Daily EnglishEnglish/Expression 2019. 3. 24. 11:35
# hand-held : portable보단 작은 휴대용 - A smartphone is like a hand-held # it fits my needs : 나의 필요조건에 총족하다. - I choose one that fits my needs - Choose the schedule that best fits your needs : 너어게 가장 적합한 일정을 선택하다. # switch to ~ : ~로 변경하다 - I'm going to switch to rival brand recently # try something different : 다른 것을 시도하다. - I just wanted to try something different # image quality : 화질 # high resolutio..
-
코틀린 기본요소Kotlin 2019. 3. 20. 23:24
함수와 변수 코틀린에서 타입 선언을 생략해도 된다는 사실과 변경 가능한 데이터와 변경 불가능한 데이터에 대해 알아보자. 코틀린 문법의 특성 함수를 선언할대 fun키워드를 사용한다. 파라미터 이름 뒤에 그 파라이머의 타입을 쓴다. 나중에 보면 축약문을 많이 쓰게 되는데 타입은 축약할 수 있어도 변수명 또는 파라미터명은 생략할 수 없지 않은가? 함수를 최상위 수준에 정의할 수 있다. 자바처럼 반드시 클래스 안에 함수를 정의할 필요는 없다. 배열도 ㅇ리반적인 클래스와 마찬가지다. 코틀린에는 배열 처리를 위한 문법이 따로 존재하지 않는다. System.out.prinln 대신에 println 세미콜론(;)은 생략할수 있다. 나는 왜 버릇처럼 붙히고.. 코틀린 함수 정의 fun max(a: Int, b: Int)..
-
-
코틀린 소개Kotlin 2019. 3. 17. 21:08
코틀린의 주목적은 현재 자바가 사용되고 있는 모든 용도에 적합하면서도 더 간결하고 생상적이며 안전한 대체 어너를 제공하는 것이다. 또한 자바뿐 아니라 자바스크립트로 코틀린을 컴파일 할 수 있다. 즉 브라우저나 노드에서 실행할수도 있다는 말이다. Kotlin은 정적타입 지정언어 이지만 모든 변수의 타입을 직접 명시할 필요가 없다? Kotilin은 정작타입 언어 이기 때문에 프로그램 구성 요소의 타입을 컴파일 시점에 알 수 있고 프로그램 안에서 객체의 Field나 Method를 사용할 때마다 컴파일러가 타입을 검증해준다. 반대로 그루비, JRuby가 동적 타입 지정 언어인데 컴파일단계가 아닌 실행시점에 Method, Field접근에 대한 검증이 일어나 코드가 짧고 구데이터 구조가 유연하다. 단점으로는 이름을..
-
쿠버네티스쿠버네티스 2019. 2. 18. 12:17
# 워밍업- Iaas : Virtual Servers- CaaS : Containers- PaaS : CF Apps - 마이크로서비스 아키텍쳐(MSA) : 소프트웨어 응용 프로그램을 독립적으로 배포 가능한 서비스의 묶음 형태로 설계하는 방식- 마이크로서비스 컨셉 : 서비스등록, 관리, EndPoint, Helthcheck 등등 # 컨테이너 개념- S/W 실행에 필요한것을 패키지로 구성하여 표준화된 하나의 독립 컨테이너에 저장- VM과 달리 컨테이너는 전체 OS가 아닌 S/W 필요로 하는 라이브러리와 설정만 포함 # Linux Container- 단일 리눅스 호스트에서 컨테이너 독립실행을 위한 OS가상화 기술- 리눅스 Kernel의 cgroups, namespace를 공유- 파일 실행은 호스트에서 직접 실..
-
[SpringBoot - Step 4] 스프링 프레임워크 & DispatcherServletJava/SpringBoot 2.0 2019. 1. 13. 01:04
스프링이란? 엔터프라이즈 애플리케이션을 개발하기에 적합한 프레임워크로 객체 관리를 해주는 빈 컨테이너 프레임워크이다. 스프링 프레임워크 탄생?최초 EJB(Enterprise Java Bean)이였는데 경량화되고 간소한 컨테이너를 선호하게 되어POJO(Plain Old Java Object)가 만들어 졌다.그후 “웹 애플리케이션 컨테이너와 상관없이 독립적으로 빈의 생명주기를 관리할 수 있는 스프링 프레임워크가 만들어 졌다” IOC 패턴IoC(Inversion of Control) = 컨테이너 : 제어의 역전프로그램의 생명주기에 대한 주도권이 웹 애플리케이션 컨테이너에게 있다. 즉 객체의 생성 부터 생명주기의 관리까지 모든 객체에 대한 제어권이 바뀌었다는 뜻 IoC특징 두가지- 하이레벨 모듈은 로우레벨 모듈..
-
[SpringBoot - Step 3] Servlet/서블렛Java/SpringBoot 2.0 2019. 1. 13. 00:33
ServletServlet이란 JVM 기반에서 웹 개발을 하기 위한 명세이자 API이다. Servlet을 실행 하기 위해서는 웹 애플리케이션 컨테이너가 필요하다. Servlet 생명주기 초기화(Initialization)서블릿 인스턴스를 생성하고 리소스를 로드하는등 클래스 생성자의 초기화 작업과 동일한 역할을 수행한다.서비스(Service)클라이언트의 요청에 따라서 호출할 메서드를 결정한다.소멸(Destory)서빌릿을 언로드한다. 언로드는 런타임에러, 컨테이너 종료시 발생한다. Servlet 동작 사용자(클라이언트)가 URL을 클릭하여 HTTP Request를 Servlet Conatiner로전송한다. HTTP Request를 전송받는 Servlet Container는 HttpServletRequest,..
-
[SpringBoot - Step 2] 클래스로더 & Web appliationJava/SpringBoot 2.0 2019. 1. 12. 23:12
Class Loader"한번 작성하면 플랫폼에 상관없이 쓸수있다(Write once run anywhere)" 이특징을 실행 할 수 있는 기술이 클래스로드(Class Loader)이다.자바 코드를 작성한 후 컴파일하면 해당 코드는 JVM(Java Virtual Machine)에서 실행 가능한 상태가 된다. 이때 JVM이 클래스를 실행하기 위해서 클래스를 로딩하는 과정이 필요한데 클로스로더가 그역할을 수행한다. (JVM은 이전 Step에서 정리 했으니 참고할것 [링크]) Class Loader의 특징구조가 계층적 구조를 갖으며 상위 클래스로더에서 하위 클래스로더를 갖는 방식이다.클래스 로딩을 위임할 수 있다.클래스로더는 클래스를 로딩할 때 가능한 범위를 갖는다. 자식클래스로더는 부모 클래스로더로부터 위임받..