전체 글562 [Software Engineering] Chapter 05. 아키텍처 설계 아키텍처(Architecture) 소프트웨어 시스템의 각 하위 시스템의 관계를 표현하는 구조의 집합 하나의 시스템은 여러 개의 하위 시스템(sub-system, Module, Component ...)으로 구성되어있음 설계 단계의 결과물이 SW 아키텍처 아키텍처 설계 과도하게 복잡한 설계는 지양해야 함 결합도와 응집도 아키텍처 설계 시, 각 모듈은 응집도가 높아야 하고, 결합도는 낮아야 한다. 모듈의 '독립성'을 판단하는 지표 why? 좋은 설계의 지표. 높은 유지보수성과 가독성 확보 결합도(Coupling, 의존도) : 어떤 모듈이 다른 모듈에 의존하는 정도 응집도(Cohesion) : 모듈 내부 간 연관 정도 응집도를 높인다 : 하나의 모듈은 하나의 목적에만 집중하여 동작하도록 해야 한다. 결합도를 .. 2023. 2. 23. [Software Engineering] Chapter 04. 프로세스 - 요구사항 분석단계 Software Development Lift Cycle Business Requirements (요구사항) Customer Pain points(WHY) + Scope + Benefit 예) 쇼핑몰 (Pain point) 고객이 상품을 찾을 수 없어서 구매를 못하고 있다. (Scope) 전체 상품 검색 (Benefit) 고객 경험을 증대시키고, 궁극적으로 매출 향상 Requirements (요구명세 + 요구분석) 실제 구현하려면 매우 상세한 기능 분석 필요 이 기능이 원하는 기능이 맞는지 명확히 도장을 찍을 필요가 있음 예) 쇼핑몰 쇼핑몰 상단에 검색창 제공 상품 타이틀, 상품 제공자 검색 기능 제공 상품 타이틀, 상품 제공자, 전체 검색 옵션 제공 검색 시간은 1초 내외 응답시간 유지 어떻게 상세하게.. 2023. 2. 23. [Programmers] (2022 KAKAO BLIND RECRUITMENT) Lv 2. 주차 요금 계산 https://school.programmers.co.kr/learn/courses/30/lessons/92341 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(fees, records) { records = records.reduce( (acc, el) => { const record = el.split(" "); acc[record[2]].push(record[0] + " " + record[1]); return acc; }, { IN: [], OUT: [] } ); parking = records.IN.reduce((.. 2023. 2. 22. [Programmers] (2018 KAKAO BLIND RECRUITMENT) Lv 2. [3차] n진수 게임 https://school.programmers.co.kr/learn/courses/30/lessons/17687 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(n, t, m, p) { const max = m * (t - 1) + p; const answer = []; let numbers = ""; let value = 0; while (numbers.length < max) numbers += (value++).toString(n); let i = 0; while (answer.length < t) { if ((i %.. 2023. 2. 22. [Network & Web] Chapter 01. OSI 7 레이어와 프로토콜 컴퓨터 네트워크? 말 그대로 컴퓨터 간 통신 컴퓨터 : any Device 네트워크 == 통신 : 정보(Data)를 주고 받는 것 데이터를 보내는 주체 -> 받는 주체 사이에 데이터를 어떻게 하면 잘 보내고 받을 수 있을지 OSI 7 계층(Layer) & Protocol 전체적인 통신의 동작 과정을 이해하기 위해서 Protocol과 OSI 7 Layer를 기본적으로 이해하고 있어야 함 Protocol 이란? Peer Layer 간 통신을 위한 규약 OSI 7 Layer 국제표준화기구(ISO)에서 개발한 추상화 된 모델로, 시스템(컴퓨터)간 통신을 위해 필요한 계층화된 아키텍처 계층 구조 : 하나의 큰 로직을 여러 개의 작은 단계로 나눠서, 각 단계별로 구현 각 계층은 본인 계층 기준으로 하위 계층의 기능.. 2023. 2. 21. [System Software] Chapter 01. 시스템 소프트웨어와 리눅스 Computer System의 구성 Hardware : 컴퓨터의 자원, CPU, Memory, I/O Devices Operating System : 다양한 응용 프로그램과 다중 사용자를 지원하기 위해 하드웨어를 관리하고 통제하는 프로그램 Applications(Application Program, 응용프로그램) : OS와 관련되지 않은 나머지 모든 프로그램 Users : 사람, 다른 컴퓨터 등 Software의 종류 모든 소프트웨어는 System Software와 Application Software 둘 중 하나에 속한다. Application Software : OS와 관련되지 않은 나머지 모든 프로그램 System Software : OS와 관련된 프로그램이지만, Kernel에 꼭 필요한 것은 아닌.. 2023. 2. 21. [Operating System] Chapter 01. 운영체제란 Computer System의 구성Hardware : 컴퓨터의 자원, CPU, Memory, I/O DevicesOperating System : 다양한 응용 프로그램과 다중 사용자를 지원하기 위해 하드웨어를 관리하고 통제하는 프로그램Applications(Application Program, 응용프로그램) : OS와 관련되지 않은 나머지 모든 프로그램Users : 사람, 다른 컴퓨터 등 운영체제 : 다양한 응용 프로그램과 다중 사용자를 지원하기 위해 하드웨어를 관리하는 프로그램(Software)하드웨어를 관리하기 위한 소프트웨어사용자와 하드웨어 사이의 인터페이스사용자가 프로그램을 효율적이고 편리하게 사용할 수 있도록 환경을 제공함예) Windows, Mac, Linux ... 운영체제의 역할자원 관리.. 2023. 2. 21. [Data Structure] 비선형 - Heap(힙) Heap(힙) Binary Tree(이진트리) 최소 힙 : 부모의 키 값이 자식의 키 값보다 작거나 같다. 루트 노드의 키 값이 트리의 최솟값 최대 힙: 부모의 키 값이 자식의 키 값보다 크거나 같다. 루트 노드의 키 값이 트리의 최댓값 최대 힙 → 힙 정렬 알고리즘 → 우선순위 큐 2023. 2. 21. [Data Structure] 비선형 - Tree(트리) 트리 구조는 맨 위의 사진과 같이 하나의 뿌리로부터 시작되어서 가지가 여러 갈래로 뻗어있는 자료 구조를 말한다. 트리 구조가 어디서 많이 봤다고 하면 착각은 아니다. 스포츠를 좋아하는 사람이라면 많이 봤을 것이라고 생각되는 토너먼트 대진표도 트리 구조이다. 아래서부터 차례로 올라가서 가장 꼭대기까지 가는 것이 토너먼트이다. 트리구조는 반대로 위의 뿌리 노드부터 시작해서 아래로 내려가는 구조다. Tree (트리) 노드로 이루어진 비선형 자료 구조 그래프가 계층적 구조를 가진 형태 최상위 노드(루트)를 가지고 있음 상위 노드를 부모(parent) 노드, 하위 노드를 자식(child) 노드라 한다. 노드(node)들과 노드들을 연결하는 간선(edge)들로 구성되어 있다. 트리에는 사이클(cycle)이 존재할 .. 2023. 2. 21. [Data Structure] 비선형 - Graph(그래프) Graph(그래프) 객체 간의 연결을 시각화한 것으로 정점(Vertex)간의 관계를 표현하는 자료구조 단순히 노드(N, node)와 그 노드를 연결한 간선을 하나로 모아놓은 자료 구조. 즉, 연결되어 있는 객체간의 관계를 표현할 수 있는 자료구조이다. nodes/vertices(노드) 사이에 edge(엣지)가 있는 collection directed(방향) 그래프는 일방통행 undirected(무방향) 그래프는 양방향 → 소셜 미디어 네트워크를 나타내는 데 사용 → 검색 엔진에 의해 웹 페이지 및 링크를 나타내는 데 사용 → GPS에서 위치와 경로를 나타내는 데 사용 그래프의 용어 정점(vertex) : 그래프를 형성하는 노드 간선(edge) : 그래프에서 노드 간의 연결 (정점 간에 '선') - 아크라.. 2023. 2. 21. 이전 1 ··· 36 37 38 39 40 41 42 ··· 57 다음