리차드 스톨만 - 자유소프트 재단 설립

자유소프트웨어란?

개방, 공유, 참여, 진화, 재사용의 원리 원칙에 기반을 둔 소프트웨어

자유소프트웨어 사용자의 자유 =! 오픈소스 소프트웨어

 

오픈소스 소프트웨어

free - for -all 저작권 표시 자유로운 사용

keep - on 개작 저작 공개

share - alike 원저작, 개작 모두 공개. 동일조건

 

BSD, Apache 2차 저작공개 의무 없음

GPL 2.0 현재 가장 많은 오픈소스 프로젝트에서 사용되며, 매우 강력, 엄격한 적용. 상업적 이용X 조건에서 무료

GPL 3.0 2.0에 DRM 추가. 모든 법적 DRM 이익 포기.

GPL 개인은 공개 의무가 없으며, GPL 허가안에서 판매도 가능하다.

LGPL 다소 완화된 GPL 링크소스의 내부 공개 의무 X DRM 3.0과 동일

BSD, Apache License 소스코드 공개X 상표권 침해X, 저작권표시 의무, GPL과 결합가능

MPL netscape 브라우저 소스코드 공개를 위해 생긴것으로 MPL은 MPL로 배포 의무

 

오픈소스 프로젝트의 단점

개발로드맵이 없으며, 문서화 하기 어렵다.

개발 코드의 라이선스 준수를 위한 확인법으로 Fresh meat, source forge에서 확인, protex, fossology 등 오픈소스 라이선스 검증도구로 확인 가능하다.

 

최근 cloud9 , codenvy 등 클라우드 통합개발환경이 떠오르고 있다.

최신 프로그램 언어 기술 동향으로 인기있는것

자바스크립트 확장버전인 타입스크립트 : 앵귤러의 기본언어이며 MS에서 개발하였다. 컴파일 시점에서 타입체크가 일어나는 정적언어로 리펙토링, 디버깅에 유용하고 대규모 개발에서도 활용된다.

자바 9  : 모듈화 강화로 소형 디바이스에서도 최적화되어 있다.

코틀린 : 함수형 언어, jetbrain 개발

스위프트 : 애플 제품용 애플리케이션 개발에 사용된다. 코딩이 단순하며 성능이 좋다. 대화식으로 개발가능

 

개발 프레임워크

앵귤러4 : 구글에서 개발 및 유지관리하는 자바스크립트 프레임워크로 HTML DOM을 확장하여 사용자 처리 요청에 신속하다. SPA 프레임워크. 웹 페이지 실행시 주소변경없이 동적view호출한다.

리액트 : 페이스북이 개발하였으며, UI만 담당한다. 웹프론트 라이브러리를 자체제공하며 자바스크립트내 마크업코드를 지원한다.

익스프레스 : 작고유연한 Node.js의 웹애플리케이션 프레임워크로 Node.js를 위한 빠른 웹개발을 지원한다. 템플릿에 전달된 인자에 따라 HTML페이지 동적 view가능처리

 

마이크로 서비스 아키텍쳐(MSA) - 서비스별 부분 배포가 가능한 형태. 배포의 유연성 확보, 정교한 확장기능, 서비스를 작은 크기로 나누고 독립적으로 개발하여 높은 개발 생산성을 제공한다.

도커 : 리눅스 컨테이너 기술을 자동화     기존의 가상화 -> 도커

OS위에 또다른 OS가상화 -> 중간 Guest OS 불필요. 더 빠르다. 도커 이미지는 컨테이너 실행을 위한 정보를 독립적으로 가지고있어 이미지 단위로 쉽게 배포 가능하다.

 

도커의 특징

컨테이너를 활용해 개발된 애플리케이션 패키지 배포 및 관리가 용이하고 이미지를 사용하여 컨테이너 실행에 필요한 파일 실행값을 포함한다. 인프라의 요구사항과 관련없이 빠른 개발 구성. 다중 클라이언트 플랫폼을 지원한다.

 

서비스 기반 아키텍쳐(SOA) 범주안에 MSA가 속한다.

반응형

+ Recent posts