728x90
반응형
SMALL

IT - Introduction to Computer Science 18

[IT지식] 디자인 패턴[Design pattern]이란?

📌 디자인 패턴(Design pattern)이란? - 프로그램 개발에서 빈번하게 나타나는 과제를 해결하기 위한 방법 중 하나다. - 소프트웨어 개발 과정에서 같은 실수를 반복하지 않기 위해 자신들의 시행착오를 바탕으로 특정 상황에서 발생하는 문제 패턴을 발견하고 해결방안을 기록한 것을 뜻한다. - 재이용하기 좋은 형태로 특정의 규약을 묶어서 정리하여 특정한 상황에서 구조적인 문제를 해결하는 방식이다. - 즉, 소프트웨어 설계시 또는 프로그램 개발과정에서 특정한 부분에서 빈번하게 발생하는 문제를 정리하여 상황에 따라 해결할 수 있는 해결책(패턴)을 뜻한다. - 라이브러리나 프레임워크가 도와주지 못하는 부분을 도와주는 것이 바로 디자인 패턴이다. - 디자인 패턴을 완전히 익혀 두면 어떤 코드가 스파게티 코드..

[IT지식] FTP (File Transfer Protocol) 란?

📌 FTP (File Transfer Protocol) 란? - FTP란 파일 전송 프로토콜(File Transfer Protocol)의 약자다. - 즉, 인터넷상의 컴퓨터들 간에 파일을 교환하기 위한 표준 프로토콜이다. - 기본적으로 '프로토콜'은 전자기기가 서로 통신하는 데 필요한 절차나 규칙을 뜻한다. - FTP는 TCP/IP 네트워크(인터넷)상의 장치가 파일을 전송할 때 사용하는 규칙이다. - 간단히 말해, FTP란 파일을 이동할 때 사용하는 프로토콜이다. 📌 FTP 서버란? - FTP 서버란 파일을 하나의 장치에서 다른 장치로 전송하는 소프트웨어 애플리케이션을 말한다. - 기본적으로 FTP 서버는 FTP 주소를 가지고 있고 FTP 연결을 수신하는 데 사용되는 컴퓨터라고 생각면 된다. - FTP ..

[IT지식] 샌드박스[sandbox]란?

📌샌드박스[sandbox]란? - 보호된 영역 내에서 프로그램을 동작시키는 것으로, 외부 요인에 의해 악영향이 미치는 것을 방지하는 보안 모델이다. - '아이를 모래밭(샌드박스)의 밖에서 놀리지 않는다'라고 하는 말이 어원이라고 알려져 있다. 미국 가정이나 놀이터에는 아이들이 맘껏 장난칠 수 있는 모래터가 있는데 이 모래터는 네모난 경계로 되어 있고 부모들은 아이가 그 경계를 넘어가지 않는 조건으로 맘껏 놀게 한다. - 이 모델에서는 외부로부터 받은 프로그램을 보호된 영역, 즉 '상자'안에 가두고 나서 동작시킨다. '상자'는 다른 파일이나 프로세스로부터는 격리되어 내부에서 외부를 조작하는 것은 금지되어 있다. - 즉, 외부에서 바이러스 감염이나 해킹 등의 도구로 사용이 의심되는 파일들을 받게 되면 샌드박..

[IT지식] 프로토콜(Protocol)이란?

📌프로토콜(Protocol)이란? - 컴퓨터 사이에서도 서로 이해 할 수 있는 공용된 언어를 사용함으로써 의사소통을 하는데 프로토콜은 인간으로 따지면 언어라고 볼수있다. - 프로토콜은 원래 외교상의 언어로써 의례나 국가간에 약속을 의미하며, 통신에서는 어떤 시스템이 다른 시스템과 통신을 원활하게 수용하도록 해주는 통신 규약, 약속이다. - 프로토콜(Protocol) 는 사용 목적과 종류에 따라 여러가지의 기능을 포함하고 있다. 📌프로토콜(Protocol)의 요소 프로토콜에서는 다음 3가지 요소를 포함하고 있다. 구문(Syntax) : 데이터의 형식이나 신호로, 부호화 방법 등을 정의 의미(Semantics) : 오류 제어, 동기 제어, 흐름 제어 같은 각종 제어 절차에 관한 제어 정보를 정의 순서(Tim..

[IT지식] 프로시저(PROCEDURE)란?

📌프로시저란 - DB 에 대한 일련의 작업을 정리한 절차를 관계형 데이터베이스 관리 시스템에 저장한 것이다. - 넓은 의미로 어떠한 업무를 수행하기 위한 절차를 뜻한다. - 쿼리문을 하나의 메서드 형식으로 만들고 어떤 동작을 일괄적으로 처리하는 용도로 쓰인다. - 만약 여러 개의 칼럼을 조회하거나, 여러 개의 테이블을 조회하려고 할 때 이것을 하나의 쿼리문으로 만들려면 복잡하고 긴 쿼리문이 생성한다. 이렇게 여러 개의 쿼리를 사용할 때 일일이 긴 쿼리문을 사용하게 된다면 불편하기에 이를 프로시저에 저장하여 호출한다. - 하나의 요청으로 여러 SQL문을 실행시킬 수 있기때문에 네트워크 부하를 줄일 수 있다. - API처럼 여러 애플리케이션과 공유가 가능하다 - 특정한 기능을 변경 시 프로시저만 변경하면 되..

[IT지식] 쓰레드(Thread)란?

📌 프로세스와 쓰레드 프로세스(Process)란 단순히 말해 '실행 중인 프로그램(Program)'을 뜻한다. 프로그램을 실행하면 OS(운영체제)로부터 실행에 필요한 자원(메모리)을 할당받아 프로세스가 된다. 즉, 다시말해 사용자가 작성한 프로그램이 운영체제 의해서 메모리 공간을 할당받아 실행 중인 것을 말한다. 프로세스는 프로그램을 수행하는 데 필요한 데이터와 메모리 등의 자원, 쓰레드로 구성되어있다. 쓰레드(Thread)란 프로세스(process) 내에서 실제로 작업을 "수행하는 주체"를 의미한다. 그렇기에 모든 프로세스에는 한 개 이상의 쓰레드가 존재하여 작업을 수행한다. 각 쓰레드별로 자신만의 스택과 레지스터를 가진다. 또한, 두 개 이상의 쓰레드를 가지는 프로세스를 멀티쓰레드 프로세스(multi..

[IT지식] CSV파일이란?

📌 CSV파일이란? - CSV 란 Comma Separated Version (쉼표로 구분 된 값) 로서 컴마로 구분된 파일을 뜻한다. - 메모장으로 만들거나, excel로 만들거나 db에 있는 것들을 그냥 컴마로 구분해서 출력해서 저장해도 된다. - 엑셀과 같은 행렬(matrix) 구조의 데이터를 표현/저장 하기 쉽도록 정해놓은 포멧이다. - CSV 파일은 종종 한 파일에서 다른 파일로 데이터를 빠르게 구문 분석하는 방법으로 프로그램에서 사용된다. - CSV는 엑셀에서도 활용할 수 있고, 글꼴과 같은 서식 정보들이 없기 때문에 조금 더 원형 그대로 가공하기가 좋은 데이터 형식이다. 텍스트 에디터 등으로도 쉽게 만들 수 있다는 것도 장점이다. - 이런 형식의 DB 의 구조를 아래와 같이 index, na..

[IT지식] dll파일이란?

📌 What is dll? DLL(Dynamic Link Library)이란 "동적 링크 라이브러리"를 뜻한다. 여기서 그러면 대체 라이브러리가 뭔데? 라는 의문을 가질 수 있다. dll에 대해 알아보기 전에 먼저 라이브러리에 대해 알아보자. 📌 라이브러리란 ? - 라이브러리란 소프트웨어 개발에서 자주 쓰고 기초적인 함수들을 중복 개발하는 것을 피하기 위해 표준화된 함수 및 데이터 타입을 만들어서 모아 놓은 것이다. - 보통 Code를 보면 반복되는 기능들이 많기에 매번 다시 작성하기에 번거로울 수 있기에, 그러한 Logic을 따로 모아둔 파일이라고 볼 수 있다. 이렇게 따로 모아두면 작업 속도도 빨라지고, 작업에 대해 신뢰성 또한 확보할 수 있다. - 즉, 자주 사용되는 표준적인 함수를 매번 직접 작성..

728x90
반응형
LIST