CS 7

[CS] 알아야 하는 개념들

▶ 프로그램 / 프로세스 1. 정적 프로그램 (Static Program) 프로그램은 컴퓨터에서 실행 할 수 있는 파일을 통칭한다.지금 내 작업표시줄에 있는 애들이 다 프로그램이다.아직 파일을 실행하지 않은 상태이기 때문에 정적 프로그램(Static Program),줄여서 프로그램(Program) 이라고 부른다. 실행 중인 프로그램. 컴퓨터가 수행하는 하나의 작업 단위.우리가 브라우저를 열어 웹사이트를 보는 것도 하나의 프로세스다. ▶ 프로세싱 (Processing)데이터를 처리하고 변환하는 과정.프로그램이 실행중인 것을 프로세싱중이라고 한다.문서 편집 프로그램에서 글씨를 입력하고 수정하는 과정이 프로세싱이다. ▶ 멀티테스킹 (Multitasking)하나의 시스템 또는 cpu가 여러 작업을 동시에 수행하..

CS 2024.08.01

[CS] OOP 객체지향 프로그래밍

OOP (Object-Oriented Programming, 객체지향 프로그래밍) 1. 객체 지향프로그램을 '객체' 하나하나의 모임으로 구성하는 방식.추상화하고자 하는 객체의 모습을 가상의 공간에 구체화하며 설계해 나가는것.어떤 대상을 소스코드로 그리기 위한 컴퓨터 공학적 사고 방식을 의미한다.  2. 객체 (Instance, 인스턴스) 객체 = 속성인 데이터 + 행동인 메서드 를 함께 묶은 개념현실세계에 있는 어떤 대상을 추상화 한 것을 의미한다.물체, 생물등의 명사가 객체라고 생각하면 될듯. 감정이나 생각들도 객체로 표현할 수 있음.  3. 클래스 (Class) 객체를 생성하기 위한 템플릿 = 클래스객체를 생성하기 위해 어떤 속성과 방법의 집합을 추상화하여 표현한것을 의미한다.클래스 안에는 함수, 변..

CS 2024.07.30

[CS] 소프트웨어 설계

소프트웨어 개발 방법론말그대로 소프트웨어를 개발하기 위해서 어떤 방법으로 개발해 나가는지에 대한 개념 1. 폭포수 방법론하향식 방법으로 가장 오래된 개발 방법'계획 → 설계 → 개발 → 시험 → 유지보수' 순차적으로 진행하며SDLC(소프트웨어 개발 생명 주기)가 굉장히 길다따라서 매우 큰 규모의 프로젝트에 적합하고이미 진행된 작업에대해서는 변경 및 수정이 어렵다ex) 원전,미사일 등 큰 시스템 2. 애자일 방법론반복적이고 점진적으로 개발하는 방법'계획 → 설계 → 개발 → 시험 → 유지보수' 순차적으로 진행하되SDLC(소프트웨어 개발 생명 주기)가 굉장히 짧으며여러번 반복하며 점진적으로 개발해 나간다따라서 이해관계자의 피드백을 빠르게 반영할 수 있으나개발 계획을 세우기 어려울 수 있다ex) 스타트업, 세..

CS 2024.07.29

[CS] 컴파일러/인터프리터/메모리영역

컴파일러와 인터프리터  컴파일러와 인터프리터는 이름그대로 소스코드를 실행 가능한 형태로 번역하는 도구. 고급 프로그래밍 언어로 작성된 소스코드를 기계어로 번역 및 실행하기 위한 프로그램이다. 1. 컴파일러소스코드 전체를 분석하고 그다음 기계어로 번역 후 실행한다. C, JAVA와 같은 언어는 컴파일러에 의해 컴파일(기계어로 번역)되고 실행됨.  2. 인터프리터한줄씩 소스코드를 번역하고 실행한다.Python, javascript와 같은 언어들이 인터프리터에 의해 번역 및 실행됨.  3. 컴파일러와 인터프리터 차이점3-1. 실행방식컴파일러 : 소스코드를 전체적으로 번역해서 기계어로 변환을 한 후에 실행 파일을 생성. 프로그램 실행 전에 번역이 이뤄짐.인터프리터 : 소스코드를 한줄씩 읽고 번역하면서 즉시 실행..

CS 2024.07.28

[CS] 자료형/자료구조

CS (Computer Science, 컴퓨터 과학) 자료형 (data type): 프로그래밍에서 값이 가질 수 있는 데이터의 종류. 데이터가 저장되는 형식.자료형을 통해 컴퓨터는 해당 값이 어떻게 해석되고 처리되어야 하는지 알 수 있다.  주요 자료형 (8가지) 1. 정수형 (integer): 정수값을 저장함 5, -3, 100#   2. 실수형 (float): 실수값, 즉 소수점을 포함한 값 -0.5, -2.0, 3.141592#   3. 문자열 (string): 문자들의 집합. 큰따옴표나 작은따옴표로 싸인 텍스트 "hi", 'dino'#   4. 불리언 (boolean) : 논리연산에서 사용됨 True, False#   5. 리스트 (list) : 여러 값을 순서대로 저장함. 대괄호 []로 감싸고 ..

CS 2024.07.26

[CS] 운영체제

OS(Operating System, 운영체제)▶ 운영체제 목적운영체제는 사용자가 컴퓨터를 조작/제어할 수 있게하고 작업의 편의성을 제공하는 시스템 소프트웨어.CPU, 메모리, 네트워크 등 하드웨어 자원을 효율적으로 관리사용자와 컴퓨터 간의 상호작용을 위한 인터페이스를 제공응용 프로그램을 실행하고 관리, 프로그램 간의 상호작용 지원시스템 자원과 데이터 보안 유지, 시스템 안정성 보장▶ 운영체제 성능 지표처리능력 : 일정 시간동안 시스템이 처리할 수 있는 작업량. ex) 웹서버가 얼마나 많은 요청을 처리할 수 있는지.반환시간 : 작업이 시스템에 들어와서부터 완료될 때까지 걸린 시간. ex) 사용자가 요청한 작업이 얼마나 빨리 완료되는지 응답 속도.사용가능도 : 요청이 있을 때 즉시 사용 가능한 정도. ex..

CS 2024.07.26

[CS] 하드웨어 - 컴퓨터구조

CS (Computer Science, 컴퓨터 과학)컴퓨터 구조 - 하드웨어 기본내용더보기1. Mainboard (메인보드)2. CPU(Central Processing Unit, 중앙처리장치)2-1. CPU 주요 구성 요소          -  ALU(Arithmetic Logic Unit, 산술논리장치)           -  CU(Control Unit, 제어장치)          -  Register(레지스터)           -  Cache Memory(캐시메모리)2-2. CPU 동작           -  컴퓨터 언어 변환           -  명령어 수행 단계2-3. CPU 성능           -  Clock(클럭)           -  Core(코어)3. GPU(Graphic Pr..

CS 2024.07.26