들어가며 자료구조란 데이터를 구성하고 저장하는 방식을 의미합니다. 이를 이용하면 프로그램이 데이터를 빠르게 검색하거나, 정렬하거나, 수정하거나, 추가하는 등의 작업을 수행할 수 있습니다. 예를 들어, 리스트는 데이터를 순서대로 저장하고 검색하는 데 유용하며, 트리는 계층적인 데이터를 저장하고 탐색하는 데 효과적입니다. 자료구조를 알고 있으면 데이터를 더 빠르고 효율적으로 처리할 수 있으며, 더 나은 알고리즘을 개발할 수 있습니다. 이는 메모리 사용을 최적화하며, 더 좋은 성능을 제공하는 프로그램을 만들 수 있도록 도와줍니다. 오늘은 가장 기본적인 자료구조인 스택과 큐에 대해 Javascript로 구현해 보며 자세히 알아보려 합니다. 스택, Stack 스택은 한 방향으로 데이터를 넣고 뺄 수 있는 자료구조..
함수 vs 메서드 프로그래밍을 하다 보면 함수와 메서드를 혼용해서 사용하지만 정확한 뜻은 모르고 사용하다 보니 잘못 지칭하는 경우가 발생합니다. 언뜻 보면 비슷하다고 생각할 수 있지만 정확하게 알아가기 위해 기록해보려 합니다. 함수와 메서드 모두 기능을 수행해 주는 공통점이 있습니다. 하지만 어떤 차이가 있을지 이 두 가지 개념의 차이를 프로그래밍 관점에서 정의하고 비교하며 알아보겠습니다. 함수, Function 함수란 특별한 목적이 있는 작업을 수행하기 위해서 독립적으로 만들어진 코드입니다. 사용자의 요청에 원하는 결과를 반환해 주며 이를 위해 독립적으로 존재합니다. 예를 들어 두 수를 받아 덧셈을 수행해 주는 함수, 주문번호를 만들어주는 함수, 택배를 등록해 주는 함수, 데이터베이스에 데이터를 알맞게..
만들어 놓은 코드를 재사용하는 방법? 클래스와 객체, 객체 지향 언어의 이해, 객체 지향은 보통 한 학기 정도 배우는 큰 범위의 내용입니다. 예시를 통해 간략하게 알아보겠습니다. 수강신청 프로그램을 작성한다. 어떻게 해야 할까? 수강신청이 시작부터 끝까지 순서대로 작성한다. 수강신청 관련 주체들(교수, 학생, 관리자)의 행동(수강신청, 과목 입력)과 데이터(수강 과목, 강의 과목)들을 중심으로 프로그램 작성 후 연결 두 가지 모두 가능하지만 요즘은 2번 방식이 주류를 이루고 있습니다. 이러한 기법을 객체 지향 프로그램이라고 합니다. 객체지향 프로그래밍 개요 Object-Oriented Programming, OOP 객체는 실생활에서 일종의 물건 속성(Attribute)과 행동(Action)을 가집니다. ..