본문 바로가기

분류 전체보기

(7)
소프트웨어공학 중간고사 내용 핵심정리 [1장] 소개 1. 소프트웨어의 특징과 그 유형에 대하여 설명하시오. - 소프트웨어의 특징 : 비가시성, 유연성, 순응성, 변경성, 복잡성 - 유형 : 주문형 소프트웨어, 패키지 소프트웨어, 임베디드 소프트웨어 소프트웨어의 종류 특징 사용되는 카피의 수 요구되는 하드웨어 성능 개발 인력 주문형 소프트웨어 주문형으로 각자에게 맞는 프로그램을 제공하기에 사용되는 범위가 적고, 용도가 한정되어 있다. 적다 낮음 많다 패키지 소프트웨어 패키지화해서 상업적으로 판매하는 소프트웨어 (엑셀, 한컴, 워드, notion 등) 중간 높음 중간 임베디드 소프트웨어 다른 시스템에 내장된 소프트웨어 많다 낮다 적 2. 개발작업의 특징에 대하여 설명하시오. - 소프트웨어는 단순 공장에서 찍어내는 것이 아니기에 다음과 같은 어려..
람다식(Lambda)이란? 1. 람다식이란? 람다식은 익명 함수(Anonymous Function)의 한 형태로, 메서드를 하나의 식으로 간결하게 표현하는 방법이다. 2. 람다식의 장점과 단점 장점: 코드의 간결성: 람다식을 이용하면 익명 함수를 간결하게 표현할 수 있어 코드의 가독성을 높일 수 있다. 함수형 프로그래밍 지원: 람다식을 이용하여 함수를 값으로 다룰 수 있기 때문에 함수형 프로그래밍의 장점을 활용할 수 있다. 단점: 복잡한 로직의 표현: 일부 복잡한 로직은 람다식으로 표현하기 어렵거나 가독성이 떨어질 수 있다. 디버깅의 어려움 : 익명함수이기에 디버깅을 할 때 해석하기 어렵다. 3. 람다식, iterator, for 예시 람다식 예시 // 람다식 예시 import java.util.ArrayList; import j..
싱글톤 패턴이란? 싱글톤 패턴이란? 싱글톤에 대해 위키피디아는 다음과 같이 정의하고 있다. 더보기 소프트웨어 디자인 패턴에서 싱글턴 패턴(Singleton pattern)을 따르는 클래스는, 생성자가 여러 차례 호출되더라도 실제로 생성되는 객체는 하나이고 최초 생성 이후에 호출된 생성자는 최초의 생성자가 생성한 객체를 리턴한다. 이와 같은 디자인 유형을 싱글턴 패턴이라고 한다. 주로 공통된 객체를 여러개 생성해서 사용하는 DBCP(DataBase Connection Pool)와 같은 상황에서 많이 사용된다. 즉, 싱글톤 패턴은 특정 인스턴스가 오직 하나만 존재하도록 보장하는 소프트웨어 설계 패턴이다. 전역 변수를 사용하지 않고도 해당 객체를 전역적으로 접근 할 수 있게 되며 공유 자원에 대한 동시 접근을 제어할 수 있다...
프로토콜(Protocol)에 대해 알아보자 선 요약 : 프로토콜은 다른이들과의 약속이며, 어겨도 되지만 약속을 어겼을 때의 패널티를 감당해야 하기에 대부분 이 약속을 지킨다. 컴퓨터 과학분야를 공부하다 보면 프로토콜이라는 말이 자주 나온다. 이 단어는 어떤 의미로 쓰이는 말일까? 지금부터 알아가 보자. 프로토콜의 정의 한국 정보통신사전, TTA에선 프로토콜에 대하여 다음과 같이 정의하고 있다. 이 637건의 표준 용어 중 반복되는 용어가 하나 눈에 띈다. 규칙, 규악, 약속 이 3가지만 보더라도 바로 알 수 있을 것이다. 사람들과 원활한 통신을 위해서 메세지를 주고 받는 규칙의 체계이다. 프로토콜을 사용하는 이유 그렇다면 이 프로토콜은 대체 왜 사용하는 것일까? 간단한 예를 들어보자. 물을 실리콘 아이스크림 틀에다가 넣고, 삼다수 바라고 우기는 ..
디지털신호처리 1장 정리 및 리뷰(1) 이번 글은 한국공학대학교 심미선교수님의 강의와 김인택의 「 Hello 신호처리 김인택 홍릉출판사 2005 」을 바탕으로 작성했음을 밝힙니다. 최대한 이해하기 쉽게 적으나, 아직 글 쓰는 것이 미숙하여 보기 불편하실 수 있으니 양해 부탁드립니다. 비판적 내용, 피드백 적극 수용하겠습니다. 중간중간 개인적인 의견, 예시가 있으니 참고하시길 바랍니다. 목차 0. 서론 1.1 신호와 시스템 1.2 디지털 신호 처리 1.3 신호와 관련한 기초 개념 0. 서론 디지털 신호처리를 배우는 이유는 무었일까? 그 이유는 간단하다. 디지털 시대가 도래했기 때문이다. 나는 디지털세대에 태어났기 때문에 디지털이 아닌 시대는 경험하지 못하였으나, 최근에 급속도로 디지털이 우리 생활속에 스며들었기 때문에 어떤식으로 작동하는지는 알..
소프트웨어 공학의 모든 것 1장 정리 및 리뷰 이번 글은 한국공학대학교 노영주교수님의 강의와 황기태의 「 소프트웨어 공학의 모든 것 최은만 생능 2020 」을 바탕으로 작성했음을 밝힙니다. 최대한 이해하기 쉽게 적으나, 아직 글 쓰는 것이 미숙하여 보기 불편하실 수 있으니 양해 부탁드립니다. 목차 0. 서론 1.1 소프트웨어 1.2 소프트웨어 개발 작업 1.3 소프트웨어 공학의 접근법 1.4 소프트웨어 공학의 주제 1.5 관련 분야 1장을 마무리하며 (개인생각) 0. 서론 먼저 소프트웨어 공학을 시작하기 전, 소프트웨어의 주기(SW lifesycle)에 대해 알면 좋다. SW lifesycle이란? - 소프트웨어가 만들어지고, 업데이트되고, 삭제되기까지의 과정을 말한다. (소프트웨어의 데이터 처리 기능인 CRUD를 생각하면 될 것 같다.) SW li..
1장. 운영체제(OS)의 시작과 발전 이번 글은 한국공학대학교 오세춘교수님의 강의와 황기태의 「 명품 운영체제(수정판) 황기태 」을 바탕으로 작성했음을 밝힙니다. 글을 시작하기에 앞서 교제의 있는 내용을 적고, 다른이에게 설명하기 위한 나만의 방식을 추가로 작성할 계획입니다. 아직 미숙하여 글이 자유분방할 수 있으니 양해 바랍니다. 핵심 목표 1. 운영체제의 정의와 목표를 알기 2. 운영체제의 발전과정의 큰 흐름 이해하기 3. 다중프로그래밍이 가져온 운영체제의 발전과 영향 이해하기 4. 운영체제의 종류와 특징 이해하기 운영체제란? - 컴퓨터 사용자와 컴퓨터 하드웨어 사이에서 중계 역할을 하면서, 프로그램의 실행을 관리하고 제어하는 시스템 소프트웨어 - 컴퓨터가 켜질 때 처음으로 적재되어 나머지 모든 프로그램의 실행을 제어하고 사용자의 요청을..