목록전체 글 (45)
jnyblog
🤔 자바스크립트란?웹 페이지의 마크업 구조를 생성하는 html을 바탕으로 동적 변경과 이벤트 및 상호작용을 구현하는데 쓰인다. (스크립트 언어)인터프리터 방식의 언어이며 과거에는 프론트엔드 개발에만 사용했으나 현재는 백엔드 개발에도 사용할 수 있게 됐다!(Node.js)동적 타입의 언어이며 객체지향 프로그래밍과 함수형 프로그래밍 모두 가능하고 html,css와 같은 정적 언어를 동적으로 관리할 수 있으며 DOM 방식을 기반으로 웹 브라우저에서 이벤트 처리를 할 수 있다.인터프리터 방식컴파일 방식소스 코드를 한 줄씩 읽으며 즉시 번역 실행전체 소스코드를 읽은 뒤 한꺼번에 번역 실행, 컴파일시 실행 파일 저장같은 방식으로 모든 코드가 실행될때까지 반복작업코드 수정시 동일 반복 실행(전체 소스코드파일 실..
🤔 함수형 패러다임이란?함수형 패러다임이 지향하는 특징은 불변성, 선언적 성격과 사고방식을 가지고 있습니다.불변성이란? 생성된 데이터가 변하지 않아야 한다는 원칙이며 변경 작업이 이루어질 경우 원본 데이터를 복사한 뒤 복사본의 값만 변경하는 것을 의미합니다. 불변성은 임의의 변경으로부터 올 수 있는 문제점을 사전에 예방할 수 있고 규정에 맞는 프로그래밍을 도와줌으로써 예측가능한 프로그래밍을 가능하게 합니다.선언적 성격과 사고방식이란? 어떤 프로그래밍을 할 것인지에 대해서 생각하는 사고방식을 말합니다. 이는 무엇을 어떻게 할 것인지에 절차적인 부분마다 명령을 내리는 명령형 방식보다 단순하며 코드 수정에 대한 예측도 비교적 쉬운 특징을 가지고 있습니다. 명령형 사고방식과 선언형 사고방식을 비교하면?선..
🤔 절차지향 패러다임이란?절차지향형이란 순서도와 같이 일정한 조건과 순서에 따라 일정한 순번으로 처리되는 원칙이다!예를 들어 폭포수 모델처럼 한 방향으로 해결하는 흐름을 가지며 C언어가 대표적인 절차형 언어이다 절차지향형 프로그래밍 특징절차지향형 프로그래밍은 컴퓨터에서 처리하는 명령 처리구조와 가장 흡사하다. 그렇기 때문에 실행속도가 빠르다.하지만 유지보수가 어렵고 변화에 대해 유연하지 못한 단점을 가진다. 또한 대규모 처리나 서비스의 요구가 늘어나면서 이에 대한 대응이 늦어져 객체지향형 프로그래밍 패러다임을 불러오게 된 원인이기도 한다.🤔 객체지향 패러다임이란?객체지향형이란 속성과 기능으로 정의된 클래스를 사용해 문제를 처리하는 방식이다!실제 사물이나 실세계에 존재하는 개념을 속성과 기능으로 나누..
🤔 프로그래밍 패러다임이란?프로그래밍 패러다임이란 프로그래밍 문제를 해결할 수 있는 기본적이고 일반적인 접근 방식을 뜻한다!명령형 프로그래밍, 절차지향 프로그래밍, 객체지향 프로그래밍, 함수형 프로그래밍 등이 있다 명령형 프로그래밍 특징명령형 프로그래밍이란 문제를 해결하기 위해 절차형 명령어로 표현하는 방식입니다.예를 들어 이름을 입력하고 인사말+이름 출력하는 경우1) 이름을 입력받는다2) 입력된 이름을 읽는다3) 읽은 이름을 기억한 후 인사말과 결합한다4) 결과를 출력한다명령형 프로그래밍의 특징은 문제 인식과 해결, 결과 도출을 하나의 단계별로 나누며 이를 처리하는 명령형 언어로 해결하는 특징을 갖는다문제해결이름을 입력하는 단계"이름" 저장입력된 이름을 읽는 단계이름, 읽음이름과 인사말 결합하는 ..
🤔 트리란?트리는 계층적 데이터를 나타내는 자료구조 중 하나다. 나무(Tree)가 뒤집어진 형상, 최상단 노드를 루트 노드라 하며 아래로 뻗어나가는 계층형 구조를 가지고 있다. 가장 끝에 위치한 말단 노드는 나무의 잎과 같다 하여 리프노드라고 부른다. 트리 자료구조의 특징최상단인 노드와 그 밑으로 뻗어나가는 부모-자식 노드의 연결 형태로 되어있다. 트리형 자료구조의 장점은 1차원 배열로 표현할 수 있다. 루트인 0부터 시작해서 리프노드까지 계층적 순서를 가지고 배열에 저장이 가능하다. 각 트리는 전위,중위,후위 순회를 통해 조회할 수 있다1) 노드란 트리의 항목이며 저장된 데이터의 묶음을 의미한다2) 부-자 노드란 트리 내에서 계층적 구조를 가지며 이는 상위 하위 계층 구조에 따라 직접 연결된 형대..
🤔 그래프란?점과 선(정점과 간선)으로 이루어진 자료구조를 의미한다.이때 각 점인 정점(vertex)는 데이터가 저장되는 노드를 의미한다. 선인 간선(edge)는 각 정점을 연결하는 선이며 이때 이것을 링크, 브랜치라고도 한다. 그래프는 각 간선이 방향이 있는 방향그래프와 방향이 없는 무방향그래프가 있다. 방향그래프(Directed Graph)정점과 이를 연결하는 간선 사이의 방향이 일련의 순서로 정해져 있는 그래프를 의미한다.1) 각 정점은 고유한 간선을 가진다2) 정점 사이를 잇는 간선의 방향이 향하는 곳에 따라 방향성을 가진다vertexedgeS,V,U,A,BS->V, V->U, U->B, B->V, V->A, A->S 무방향그래프(UnDirected Graph)정점과 이를 연결하는 간선 사..
🤔 스택이란?선입과 선출이 한 곳에서 이루어지는 자료구조를 의미한다.스택Stack라고도 하며 한 곳에서 선입선출이 이루어지는 자료구조이다.가장 나중에 적재된 데이터가 가장 먼저 선출되므로 후입선출, Last In First Out, LIFO라고도 한다. 이때 적재되는 것을 push, 선출하는 것을 pop이라고 한다.!1) 각 데이터는 삽입시 push 된다2) 각 데이터가 차례대로 선출될 경우 이를 pop이라고 한다pushpop스택형 자료구조에서 데이터의 삽입스택형 자료구조에서 데이터의 방출 🤔 큐 자료구조란?선입과 선출이 한 곳에서 이루어지는 스택과 다르게 들어오고 나가는 곳이 두 곳으로 존재한다. 따라서 가장 먼저 적재된 데이터가 가장 먼저 나가게 되며 이를 선인선출, First In Fir..
🤔 자료구조란?자료(데이터)를 어떤 형식(구조)로 저장할 것인지 배우는 학문이다. 구조에 따라 효율성이 달라지기 때문이다!🤔 알고리즘이란?알고리즘은 이러한 자료구조로 표현된 데이터를 이용해 어떤 문제를 해결하는 과정을 도출하는 것을 말한다.예를 들어 프로그램 성능의 효율성을 향상시키거나 초기 설계시에 이를 생각하는 것 등이 해당된다! 배열Array라고도 하며 동일 타입만 저장할 수 있는 자료구조이다. (문자형, 정수형, 실수형끼리)그렇기 때문에 각 데이터 크기가 모두 동일하다 => 메모리 속 연속 공간에 저장1) 요소란 각 배열속 저장된 데이터를 의미한다(element)2) 인덱스란 요소의 위치를 나타내며 0부터 시작한다(index)3) 시간복잡도란 삽입, 삭제 등 연산을 수행하는데 소요되는 ..
데이터베이스 설계의 기초 요구사항 분석 > 개념적 설계 > 엔티티와 속성 추출 > 관계 추출 > 논리적 설계 > 물리적 설계로 이루어진다. 1) 요구사항 분석이란 고객이 원하는 구조에 대해서 기본적인 사항을 분석하는 것이다. 예를 들어 쇼핑몰에 대한 요구사항을 분석한다면 쇼핑몰 데이터베이스에 필요한 회원 아이디, 이름, 주소, 생년월일 등 가입자의 기본 필드에 대한 요구 및 파악이 필요하다. 2) 개념적 설계란 요구사항 분석을 토대로 엔티티, 속성, 관계를 위주로 설계하는 것을 말한다. 3) 엔티티와 속성 추출이란 개념적 설계의 하나로써 요구분석을 토대로 얻은 성질을 구체화 하는 과정! 쇼핑몰이라면 회원을 엔티티, 엔티티 안에 들어가는 속성은 회원번호, 이메일, 비밀번호 등의 세부 사항을 말한다 4) 관..
🤔 데이터와 데이터베이스란? 데이터는 '현실 세 계에서 관찰하거나 측정해 얻은, 가공되지 않은 사실이나 값'을 의미하며 데이터베이스란 전자적으로 저장되고 체계적인 데이터 모음을 의미한다! 🤔 DBMS란? 즉, 데이터베이스 관리 시스템 라는 소프트웨어를 사용하여 데이터를 저장, 검색 및 편집할 수 있다. 대부분 데이터베이스라는 단어는 모든 DBMS, 데이터베이스 시스템 또는 데이터베이스와 관련된 응용 프로그램을 나타내기도 한다! 🤔 데이터베이스 기본구조 현실 사물에서 존재하는 것을 데이터베이스 내의 데이터로 저장하기 위해서는 기본 적으로 각 객체를 표현하는 엔티티와 엔티티가 가진 유일무이한 속성으로 구성된다. 예를 들어 구단이라는 엔티티가 있다면 구단의 속성으로는 팀명, 구단의 연고지, 구단 코드 등이 각..