반응형

전체 글 238

MSA와 Service Mesh

Ⅰ. 분할 독립 서비스 MSA, 서비스간 통신 제어관리 Service Mesh 개요MSA애플리케이션을 상호 독립적인 최소 구성 요소로 분할하여 구성Service Mesh서비스간 통신 제어/관리하는 MSA를 위한 인프라 계층- MSA에 Service Mesh를 활용하여 트래픽 제어 Ⅱ. MSA, Service Mesh 구성도와 구성요소가. MSA(Micro Service Architecture) 구성도와 구성요소구분구성요소설명User Interface모바일, 웹, PC다양한 환경에서 여러가지 기기를 통해 서비스 접속/이용GatewayAPI Gateway OrchestrationREST API, 로드 밸런싱, 트래픽 제어Micro ServicePolyglot Program, DB다양한 언어사용, 다양한 DB..

MVC, MVP, MVVM, MVI 디자인 패턴

Ⅰ. MVC 패턴개념도특징- 컨트롤러가 입력을 받아 모델을 업데이트하고 뷰를 선택- 컨트롤러는 뷰와 1:n 관계- 모델과 뷰 사이의 의존성 문제 발생, 앱이 커지면 유지보수 어려움구성 요소- model: 데이터 처리 담당- view: 모델을 화면에 표시, UI- controller: 사용자 입력 받아 model 업데이트 Ⅱ. MVP 패턴개념도특징- 모든 입력은 뷰로 전달, Presenter가 모델 업데이트- Presenter가 뷰와 모델 사이 매개체 역할- 뷰와 Presenter 의존성 문제구성요소- Model: 데이터 처리 담당- View: 모델을 화면에 표시, UI- Presenter: View와 Model의 매개체 Ⅲ. MVVM 패턴개념도특징- ViewModel과 데이터 바인딩을 통해 View 업데..

객체 지향 프로그래밍(OOP) 특징

Ⅰ. 소프트웨어 재사용성 향상, 객체 지향 프로그래밍의 정의- 현실세계의 개체(Entity)를 속성(Attribute)과 행위(Method) 결합 객체(Object)로 표현하여 프로그래밍 하는 기법 Ⅱ. 객체 지향 프로그래밍 특징특징개념도설명캡슐화- 서로 연관있는 속성, 기능을 캡슐로 만들어 외부로부터 보호, 접근지정- 데이터 보호, 데이터 은닉, 낮은 결합추상화- 공통 속성, 행동을 추출 이름 부여- 공통 속성 추출해 슈퍼 클래스 생성다형성- 같은 이름의 메소드나 연산자가 다른 클래스에 대해 다른 동작 수행- 오버로딩: 같은 이름에 다른 타입 재정의- 오버라이딩: 상위 Class Method 참조/재정의정보은닉- 외부에서 내부정보 알 수 없도록 정보 은닉- 외부에서 내부 정보 변경할 수 없도록 캡슐화상..

Agile 선언문과 12개의 원칙

Ⅰ. 사람 중심의 개발론, Agile 선언문 개요정의경량 개발 지지자들이 모여 효율적인 개발, 제품 중심의 개발 방법론 선언등장 배경- SW 환경 변화- 다양한 요구, 생명주기 단축- 기존 방법론의 한계  Ⅱ. Agile 선언문의 4대 가치 및 12대 원칙가. Agile 선언문의 4대 가치- 고객 만족, 의사소통 등을 중요한 가치로 선언 나. Agile 개발 방법론의 12대 원칙#원칙설명1고객 만족 추구고객 만족이 최우선 과제2요구사항 변경 수용고객의 요구사항 변경 적극 수용3짧은 배포 간격CI/CD 도구 통한 빠른 통합/배포4의사소통 중시효율적 의사소통 추구5동기부여 사람 중요상호존중 문화, 팀원 추구6면대면 대화현업 - 개발자의 대화 중시7작동하는 소프트웨어SW의 기능/비기능 관리8지속가능한 개발지속..

XP(eXtreme Programming)의 특징 및 실천 방법(Practice)

Ⅰ. 양질의 SW를 빠른 시간안에 전달, XP의 정의- 수시로 발생하는 고객 요구사항에 유연하게 대응위해 의사소통 개선, 즉각적인 피드백에 의해 SW 품질을 향상 방법론 Ⅱ. XP의 핵심 가치 및 실천 방법가. XP(eXtreme Programming)의 핵심 가치가치설명의사소통관리자, 개발자, 고객 간의 적극적 의사소통단순함부가 기능, 불필요 기능 및 구조 배제용기고객의 요구사항 변화에 능동적으로 대처피드백빠른 피드백으로 문제 해결존중구성원 상호간의 상호존중 나. XP(eXtreme Programming)의 실천 방법구분실천 방법설명개발Pair Programming다른 사람과 함께 프로그래밍,개발 공동 책임Collective Ownership개발 코드 권한과 책임 공동 소유Whole Team참여 모든 ..

프로젝트 자원 최적화 방법 2가지 설명하고 비교하시오

Ⅰ. 프로젝트 일정 변경 가능한 자원 평준화 개요정의 - 특정 자원에 과도한 부하가 걸리는 것을 방지하기 위해 일정을 평준화하여 자원 최적화하는 기법개념도적용 사례- 핵심 인력의 활용 시점이 제한적인 경우- 스케줄 조정이 가능한 경우- 일정과 원가의 트레이드 오프 영향을 고려하여 프로젝트 상황에 맞게 적용 Ⅱ. 프로젝트 일정 변경 불가한 자원 평활화 개요정의일정 지연을 방지하기 위해 자원을 균형있게 투입하여 프로젝트 CP 활동 지연 방지 기개념도적용 사례- 반드시 납기 일정 준수해야하는 경우- 자원 사용이 고르게 배분되지 않은 경우- 일반적으로 자원 평준화 이후 자원 평활화 수행 Ⅲ. 자원 평준화와 자원 평활화 비교구분자원 평준화자원 평활화목표자원 수요/공급 균형균일한 자원 활용일정 지연일정 지연 가능(..

[Python] Files (파일 관련)

이번 포스팅에서는 파이썬으로 파일을 읽고, 쓰기 등 간단한 파일 관련된 코드에 대해 정리 해보겠습니다. Reading 파일 읽기는 with open 구문으로 읽고자하는 파일을 지정한 후 read() 구문을 이용해서 할 수 있습니다. with open('file.txt', 'r') as file: content = file.read() print(content) Writing 파일 읽기와 마찬가지로 작성하고자 하는 파일 명을 with open 구문으로 저정한 후 write()를 활용하면 됩니다. with open('file.txt', 'w') as file: file.write('Hello!') Appending 이미 있는 파일에 붙여쓰기를 하기 위해서는 'a' 옵션으로 파일을 지정한 후 write()를 ..

[인터넷] 브라우저와 그 작동 원리

브라우저란? 브라우저는 사람들이 가장 많이 사용되는 소프트웨어입니다. 인터넷 익스플로러, 크롬, 파이어폭스, 사파리 등 브러우저를 통해 우리는 주소창에 서버 도메인을 입력하여 손쉽게 인터넷 서비스를 이용합니다. 브라우저의 주요 기능은 사용자가 선택한 자원을 서버에 요청하고 이를 화면에 표시해주는 것 입니다. 여기서 자원은 보통 HTML 문서를 뜻하지만 PDF나 이미지 등의 다른 형태일 수도 있습니다. 사용자는 URI(Uniform Resource Identifier)에 의해 정해진 자원의 주소를 이용해서 요청할 수 있습니다. 브라우저의 기본 구조 우리가 사용하는 브라우저는 다음과 같은 요소들로 구성되어 있습니다. 사용자 인터페이스 - 사용자가 접근할 수 있는 영역으로, URI를 입력하는 주소 표시줄, 이..

[인터넷] HTTP란?

HTTP (HyperText Transfer Protocol) 서버와 클라이언트가 인터넷에서 데이터를 주고 받기 위한 프로토콜입니다. HTTP 동작 방식 HTTP는 서버 / 클라이언트 모델을 따릅니다. 클라이언트가 서버에 요청을 보내면 서버는 요청에 맞는 응답을 클라이언트에게 보냅니다. connect: 클라이언트가 원하는 서버에 접속 request: 클라이언트가 서버에게 원하는 요청을 보냄 response: 서버가 요청에 대한 결과를 클라이언트에게 보내고 응답 close: 응답이 끝나면 서버와 클라이언트 연결 종료 (Stateless) HTTP 특징 TCP/IP를 이용하는 응용 프로토콜이다. 비연결성 프로토콜이다. 따라서 클라이언트의 이전 상태를 서버가 알 수 없다는 단점이 있다. (이를 해결하기 위해 ..

[인터넷] - 인터넷의 작동 원리

인터넷이 무엇인지는 다들 알고 있을거라 생각합니다. 그렇다면 우리가 사용하는 인터넷이 어떻게 구성되어 있으며 어떻게 동작하는지에 대해서 알아보도록 하겠습니다. TCP/IP TCP/IP는 컴퓨터와 컴퓨터간의 통신을 위한 규약으로 정의할 수 있습니다. 2개의 프로토콜로 이루어져있으며 IP 프로토콜 위에 TCP 프로토콜이 놓여있습니다. IP 네트워크상 컴퓨터의 고유 주소입니다. 192.168.2.1 같은 형식의 총 4바이트로 이루어져 있습니다. TCP 클라이언트와 서버간 데이터를 신뢰성있게 전달하기 위해 만들어진 프로토콜입니다. 데이터 교환을 안정적으로 순서대로 처리할 수 있게하여 에러를 방지합니다. 인터넷이란, 각 컴퓨터들간 TCP/IP 통신 프로토콜을 이용하여 서로 데이터를 주고 받도록 구성된 네트워크입니..

반응형