본문 바로가기

Programming310

[Javascript] 명명된 인수 이번에 소개할 방식은 명명된 인수입니다. 명명된 인수는 함수를 호출할 때 이름을 명시할 수 있는 인수를 말합니다. 1. 명명된 인수 명명된 인수는 서론에서 이야기 한 대로 함수를 호출할 때 이름이 명시가능한 인수를 말합니다. 실제 사용예를 보면 다음과 같이 인수를 객체형으로 전달되는 인수들을 명명된 인수라고 이야기합니다. getSum({ num1: 10, num2: 100 }); 그럼 객체 리터럴로 전달하는 명명된 인수에는 어떤 장점이 있길래 사용하는 것 일까요? 명명된 인수는 다음과 같은 장점들을 가집니다. 생략가능한 인수의 표현이 쉽다. 인수의 순서 변경이 쉽다. 인수가 많아도 코드를 해석하기 쉽다. 위의 장점에 따라 명명된 인수는 아래 코드와 같은 표현도 가능합니다. getSum({ num1: 10.. 2022. 1. 15.
[Javascript] function 명령과 Function 명령/함수 리터럴 study-repo를 만들면서 함수에 대한 내용들이 부족하다고 느끼게 되어 2~3개의 포스트에서 함수에 대한 내용을 다시 다뤄보려고 합니다. function 명령과 Function 명령/함수 리터럴은 작동시 동작에서 차이점을 보입니다. 이번 포스트에서는 이들이 어떤식으로 동작하는지 그 차이점을 분석해보려고 합니다. 1. function 명령 우선 function 명령에 대해 알아보겠습니다. function 명령에 의한 함수 선언을 다시 살펴보면 다음과 같습니다. function(인수, ...) { } 다음과 같은 코드를 생각해봅시다. 일반적인 프로그래밍 사고에 따르면 아래의 코드는 에러를 내보내야합니다. 왜냐하면 함수가 먼저 호출되고 그 이후에 선언/정의 되었기 때문입니다. 하지만 실행해보면 정삭적으로 .. 2022. 1. 14.
[Javascript] Proxy 객체 Proxy 객체는 ES2015부터 추가된 객체입니다. 프록시(Proxy)라는 단어의 뜻인 대리, 대신 처럼 무언가를 대신하는 역할을 하는 객체입니다. 1. Proxy 객체 Proxy 객체는 객체의 기본적인 동작의 새로운 동작을 정의할 때 사용하는 객체입니다. 새로운 동작이라는 것은 기존의 객체를 조작하는 행위를 할 때 로그를 찍어준다거나, 객체를 열거할 때 추가적인 가공을 한다거나 하는 식으로 사용자가 제작한 어플리케이션에서 객체의 독자적인 새로운 동작을 정의한다는 것 입니다. 프록시 객체를 이용하면 객체 내부를 건드리지 않고 새로운 동작을 구현할 수 있습니다. 프록시 객체는 다음과 같이 사용합니다. new Proxy(타겟, 핸들러); 타겟은 조작을 추가할 대상 객체, 핸들러는 타깃의 조작을 정의하는 객.. 2022. 1. 14.
데이터 모델 1. 데이터 모델 데이터 모델은 현실세계의 요소들을 인간, 컴퓨터가 이해하도록 단순화시켜 추상화한 모형을 의미합니다. 스키마를 논리적으로 표현하기 위해 데이터 모델을 이용하게 됩니다. 고양이를 가지고 데이터 모델링을 하면, 특성으로 종, 털의 색상 정도가 올 수 있겠고, 값은 종의 값으로 노르웨이 숲, 러시안 블루와 같은 값을 갖고, 털의 색상의 값으로는 황금색, 하얀색, 검은색과 같은 값을 가지게 됩니다. 이처럼 현실세계의 요소를 가지고 이해하기 쉽게 추상화 시킨것을 데이터 모델이라고 합니다. 2. 데이터 모델의 세 가지 종류 데이터 모델에는 개념, 논리, 물리 데이터 모델 3가지로 구분할 수 있습니다. 개념 데이터 모델 개념 데이터 모델은 요소를 인간이 이해할 수 있는 정보 구조로 표현하는 데이터 모.. 2022. 1. 13.
스키마 Schema 1. 스키마 Schema 스키마(Schema)는 데이터베이스에서 자료구조(개체 Entity, 속성 Attribute, 관계 Relationship), 표현 방법, 관계 등을 명세한 것을 말합니다. DBMS는 설정에 따라서 스키마를 생성하며, DB를 조작할 때 이 스키마에 따라서 명령을 수행하게 됩니다. 스키마의 특징은 다음과 같습니다. 컴파일되어 데이터 사전에 저장된다. 현실 세계의 한 요소를 표현하는 것으로써 특정 데이터 모델을 이용해서 만든다. 인스턴스에 의해 규정된다. 시간에 따라 불변한다. 데이터의 구조적 특성이다. 스키마는 내부 스키마, 개념 스키마, 외부 스키마의 3개의 계층으로 나누어져 있습니다. 내부 스키마 Internal Schema 내부 스키마는 데이터베이스의 물리적 구조를 정의한 스키.. 2022. 1. 12.
[Javascript] 자바스크립트 테스트 도구 Jasmine Jasmine은 자바스크립트 테스트 프레임워크입니다. 애플리케이션 규모가 갈수록 커지고 있는 상황에서 소프트웨어 공학 분야에서 테스트의 중요성을 날로 커지고 있습니다. 테스트를 직접 만들어 수행할 수도 있지만 프레임워크의 힘을 빌린다면 보다 간편하게 테스트를 작성하고 실시할 수 있게됩니다. 그래서 이번에는 자스민을 소개해드리려고 합니다. (작성 시점 기준 jasmine 4.0.0을 사용했습니다.) 1. 자스민 설치 서론에서 자스민이 무엇인지 설명했으니 바로 설치를 시작하겠습니다. 링크에서 자스민 .zip파일을 다운받아주세요. 그 다음 압축풀기해서 나온 파일들을 프로젝트 작업공간으로 복사 붙여넣기 하면 됩니다. spec과 src 폴더 내부에 자스민에서 제공하는 예시 테스트 코드가 있는데 이 코드들은 삭제해.. 2022. 1. 12.
300x250