본문 바로가기

Software Engineering14

Functional Programming Functional Programming 개념 함수형 프로그래밍 자료처리를 함수의 계산으로 취급하고 상태와 가변 데이터를 피하는 프로그래밍 명령형 프로그래밍과 대조되는 선언형 프로그래밍 패러다임을 따른다. 프로그래밍 패러다임 명령형 프로그래밍 상태를 변경하는 관점을 강조하는 방식 어떻게 프로그래밍할 것인지를 설명하는 방식 객체 지향 객체들의 집합으로 상호작용하는 프로그래밍 절차 지향 수행되어야 할 과정을 설명하는 프로그래밍 선언형 프로그래밍 어떻게 할 것인지 보다 무엇을 할 것이지를 설명하는 방식 함수형 프로그래밍 순수함수를 조합하고 소프트웨어를 만드는 방식 함수형 프로그래밍 등장 배경 명령형 프로그래밍에서 복잡한 코드의 가독성과 유지보수를 위해 고안 모든 문제를 순수함수로 나누어 문제를 해결하는 방식 .. 2023. 5. 17.
Computer Structure Computer Structure 개념 컴퓨터 구성 하드웨어 컴퓨터를 구성하는 물리적인 장치 중앙처리장치(CPU), 기억장치, 입출력 장치 소프트웨어 컴퓨터를 동작시키는 명령의 집합 시스템소프트웨어(OS, compiler), 응용소프트웨어(워드, 한글) 하드웨어 중앙처리장치(CPU) 주기억장치에서 명령과 데이터를 가져와 연산을 처리하는 역할 비교 및 연산을 하는 산술논리연산장치 명령어 해석 및 실행을 하는 제어장치 용량은 적고 속도는 빠른 기억장치인 레지스터 기억장치 데이터를 저장하는 장치 주기억장치 RAM, ROM 등이 해당 프로그램에 필요한 데이터를 임시로 저장 휘발성 메모리 보조기억장치 하드디스크나 SSD 등이 해당 주기억장치에 비해 속도는 느리지만 영구적으로 데이터를 저장할 때 사용 입출력장치 입.. 2023. 5. 16.
Von Neumann Architecture Von Neumann Architecture 개념 폰 노이만 구조 존 폰 노이만이 개발한 내장 메모리 순차 처리 방식 프로그램과 데이터를 하나의 메모리에 저장하여 사용하는 방식 데이터는 읽고 쓰기가 가능하나, 명령어는 읽기만 가능 CPU와 하나의 메모리를 사용하는 현대 컴퓨터 구조에서 사용하는 모델 장단점 장점 하드웨어의 재배치가 필요 없어 소프트웨어 교체만 하면 된다. 범용성이 뛰어나 현대 컴퓨터 모델로 많이 사용한다. 단점 메모리와 CPU를 연결하는 버스가 하나이기 때문에 여러 작업을 동시에 처리하지 못한다. 이 때문에 순차적 처리를 하는 방식을 사용하여 고속 병렬처리가 불가능하다. CPU가 명령어를 읽는 동시에 메모리에 있는 데이터에 접근이 불가능 해결법 Harvard architecture(하버드.. 2023. 5. 14.
UI/UX UI/UX 개념 UI User Interface 사용자가 앱을 사용할 때 마주하는 디자인, 레이아웃, 기술적 부분들 디자인의 구성요소로 폰트, 색, 글 간격 등을 의미 기술적인 부분들은 반응형이나 애니메이션 효과를 의미 사용할 때 UI에 불편함이 없고 만족도가 높은 쪽으로 설계 UX User eXperience 앱을 사용하는 사용자들의 경험을 분석하여 효율적인 방향으로 프로세스가 진행되도록 하는 것 통계 자료 등의 데이터를 분석하여 사용자들의 상황과 시점에 맞게 변화 터치 화면이나 사용자 선택 flow 차이점 UI는 UX를 기반으로 시각적인 요소에 집중 UX는 UI를 사용하는 사용자의 경험을 분석하여 보완하는 것이 초점 상관관계 UX를 바탕으로 사용자들의 니즈를 파악 니즈를 바탕으로 UI를 업그레이드 U.. 2023. 5. 5.