학교 공부 13

[오픈소스소프트웨어] 오픈소스 소프트웨어의 의해

용어 정의 Free Software 오픈 소스 소프트웨어라는 개념은 Free Software Foundation에서 처음 사용하였다. 자유롭게 소프트웨어를 사용할 수 있다. 사용자 권리에 중점적이고, 상업적 이용에 엄격하다. 사용자들에게 소스코드를 제공한다는 것은 소프트웨어의 발전에 많은 기회를 제공한다는 측면에서 매우 이상적이지만, 기업 입장에서는 라이센스나 지적재산권의 분장이 일어날 수 있다. Open Source Software Free Software의 문제를 해결하기 위해 탄생하여 일부 완화된 정책을 가지고 있다. 파생시킨 소프트웨어의 저작권자가 배포방식을 선정해서 공개할 수 있다. 저작자의 권리를 보호하는데 중점, 상업화 가능 공개 소프트웨어 한국 공개소프트웨어 협회에서 지원하기도 한다. 상업..

학교 공부 2021.09.01

[설계 패턴] 디자인 패턴이란?

디자인 패턴 소프트웨어를 설계할 때 자주 발생하는 문제들에 대한 재사용 가능한 해결책을 말한다. 경험이 많은 소프트웨어 엔지니어들의 해법을 잘 정리해서 이름을 부여하고 디자인적인 추상성을 주어 패턴화시키면, 이것 들이 공통 언어 역할을 하게 되어 좀 더 효율적으로 협동 작업을 할 수 있게 된다. 경험이 없는 소프트웨어 엔지니어들은 효율적이고 유용성이 좋은 디자인에 대한 해법을 빠르게 읽히고 자신이 디자인하는 시스템의 안정성과 성능을 높일 수 있다.

학교 공부 2021.09.01

[Spring] Web Architecture- 동적 페이지 / 정적 페이지

Static Pages(정적 페이지) Web server(80)을 사용한다. 과정 1. Client(브라우저, 모바일 앱)가 HTTP라는 프로토콜을 이용해서 페이지를 요청한다.(GET /path/index.html) 이 때 index.html은 누가 요청해도 항상 동일한 정적인 페이지이다. 2. 웹 서버가 요청을 받고 FileSystem에서 읽어 들여 client에 던져준다. => 웹서버가 pathname을 읽고 해당하는 파일을 client에 돌려줌ex) html, img, video Dynamic Pages(동적 페이지) Web Application Server(8080)을 활용한다. 과정 1. uid 인자가 다른 HTTP를 Web Application Server(WAS)에 보낸다. (GET /srv..

학교 공부 2021.08.30