※ 제 블로그의 포스트들은 제가 부족하여 공부하기 위해서 작성하는 것입니다. 잘못된 부분이나 추가해야할 내용이 있다면 언제든지 댓글 부탁드리겠습니다. 팩토리 패턴(Factory Pattern) 이란객체 생성을 캡슐화(Encapsulation)한다. 구상 클래스(Concrete Class)가 아닌 추상 클래스(Abstract Class)나 인터페이스에 맞춰서 코딩할 수 있게 해주는 강력한 기법이다. 구상 클래스에 대한 불필요한 의존성을 줄여줌으로써 느슨한 결합(Loose Coupling)을 지향한다. 1. '추상화된 것에 의존하도록 만들어라. 구상클래스에 의존하지 않도록 만든다.’ 법칙에 기인한 패턴 > 의존성 뒤집기 원칙 (DIP : Dependency Inversion principle)2. '바뀔 수..
인덱스는 개발자분들이라면 한번 쯤은 보셨거나 면접에서 질문을 받으신 적이 있는 주제이실겁니다. 저 역시 SQLD를 준비할 때 인덱스 관련 문제를 풀었던 기억이 있습니다. 인덱스가 얼마나 중요하길래 이렇게 자주 언급되지는 알아보도록 하겠습니다. ※ 제 블로그의 포스트들은 제가 부족하여 공부하기 위해서 작성하는 것입니다. 잘못된 부분이나 추가해야할 내용이 있다면 언제든지 댓글 부탁드리겠습니다. 인덱스(INDEX) 란인덱스 = 색인 = 정렬 = 목차RDBMS의 검색 속도를 높이기 위해 사용하는 기술이다. 인덱스 키를 기준으로 정렬된 데이터를 메모리에 파일 형태로 생성한다. 이후 우선적으로 인덱스 파일을 검색하기 때문에, 테이블 풀스캔을 하지 않아서 검색 성능이 향상된다. - B-Tree(Balanced Tre..
※ 이 게시글은 ASP.NET에 관련하여 자주 업데이트 될 예정입니다. .NET Framework웹 서비스 및 기타 응용 프로그램의 작성, 배포 및 실행을 위한 환경을 의미한다. 거의 모든 종류의 프로그램을 개발할 수 있도록 만들어진 크고 포괄적인 개발 프레임워크이다. └ ASP.NET : 웹 응용 프로그램을 만들기 위해 특별히 설계된 .NET Framework의 한 부분 CLR (Common Language Runtime) : 공통 언어 런타임 Framework 클래스 및 ASP.NET의 세 가지 주요 부분으로 구성되어지는 환경을 의미한다. .NET 타입들의 위치를 지정하고, 로드하고, 관리하는 역할을 담당한다. 자동으로 메모리를 관리해 주고, 언어를 통합할 수 있도록 하는 것이다. CTS (Commo..
HTTP 란 ?HyperText Transfer Protocol 의 약자이고, 인터넷 상에서 HTML 문서와 같은 데이터를 주고 받기 위한 프로토콜(규약)이다. 서버-클라이언트 모델을 따르는 애플리케이션 레벨의 프로토콜로 TCP/IP(OSI 4계층) 위에서 작동한다. HTML 뿐만아니라 이미지, 동영상, 오디오, 텍스트 문서 등 종류를 가리지 않고 전송 가능하다. 이름 그대로 하이퍼텍스트를 기반으로 데이터를 전송하겠다는 말이다. 간단히 말하면 링크기반으로 데이터에 접속하겠다는 의미이다. *Protocol(프로토콜)이라는 것은 일종의 대화 규칙이다. 즉, 어떤 형식으로 데이터를 주고받을 것인지 정의한 통신 규약을 말한다. 그런데 누군가가 네트워크에서 신호를 가로채어 본다면 내용이 노출될 수 있다. HTTP..
다른 프로그래밍 언어는 접근제한자가 있다. 그러나 자바스크립트에선 접근 제한자가 따로 없으므로, 클로저와 컨텍스트의 개념을 이용하여 변수와 메소드에 접근 제한자를 구현한다. 접근 제한자 (Access modifier) - 외부로부터 클래스 혹은 클래스 멤버들(메소드, 속성, 이벤트, 필드)로의 접근을 제한할 때 사용하는 예약어 - public, protected, private, default 등 클로저 (Closure) - 함수 + 함수를 둘러싼 환경(Lexical environment)- 같은 환경을 공유하지 않고, 자신의 고유 환경(블록)을 가진 상태로 외부 함수에 의해 호출되는 함수를 만드는 것 - 클로저 구현 방법 : 함수에서 함수를 반환 하도록 함 * 모듈 패턴 (Module Pattern) ..
0. HTTP 의 특징 (1) Stateless 프로토콜클라이언트의 상태 정보를 가지지 않는 서버 처리 방식이다. 클라이언트와 첫번째 통신에서 데이터를 주고 받았다 해도, 두번째 통신에서 이전 데이터를 유지하지 않는다. (2) Connectionless 프로토콜클라이언트가 서버에 요청(Request)을 했을 때,그 요청에 맞는 응답(Response)을 보낸 후 연결을 끊는 처리방식이다.+) HTTP 1.1 버전에서 연결을 유지하고, 재활용 하는 기능이 Default 로 추가되었다. (keep-alive 값으로 변경 가능) But, 실제로는 데이터 유지가 필요한 경우가 많다. 정보가 유지되지 않으면, 매번 페이지를 이동할 때마다 로그인을 다시 하거나, 상품을 선택했는데 구매 페이지에서 선택한 상품의 정보가..
1. 싱글톤 (Singleton) 이란? Ensure a class has only one instance and provide a global point of access to it. - 해당 클래스의 인스턴스가 하나만 생성이 되는것을 보장하고, 어디서든지 그 인스턴스에 접근이 가능하도록 만드는 패턴- 어플리케이션이 시작될 때, 어떤 클래스가 최초 한번만 메모리를 할당하고(Static) 그 메모리에 인스턴스를 만듬 = 그 이후에 생성자 시도한다면, 최초에 생성된 객체를 리턴하도록 함 (getInstance()) = 객체가 다른 방법으로 생성되지 않도록 생성자를 Private로 구현한다. 2. 사용되는 곳 - 추상 팩토리, 빌더, 프로토타입 패턴을 구현할 때에 싱글톤을 사용할 수 있음- 퍼사드 객체(Fa..
SOLID 란? : 객체지향에서 꼭 지켜야 할 5개의 원칙을 말합니다. 5원칙 각각의 이니셜을 따서 SOLID 라고 부릅니다. 좋은 객체지향 설계를 위해서는 SOLID 원칙을 따르는 것이 좋습니다. 물론 어떤 이론이나 원리를 현실에서 딱 맞게 적용하는 것은 어렵지만, 기본 원리를 숙지한 후에 적용하려고 노력하는 것과 아예 모르는 상태로 구현하는 것과는 많은 차이가 있을 것입니다. 또한 이 원칙들을 기반으로 디자인 패턴을 공부한다면 왜 이 패턴을 사용하고 유명한 지 알기 쉽습니다. 1. S - SRP : Single Responsibility Principle - 단일 책임의 원칙THERE SHOULD NEVER BE MORE THAN ONE REASON FOR A CLASS TO CHANGE.하나의 클래..
1. OSI 7계층 이 모형을 이용하면 특정 네트워킹 시스템에서 일어나는 일을 계층을 활용해 시각적으로 쉽게 설명할 수 있다. 덕분에 네트워크 관리자는 어떤 문제의 원인이 어디에 있는지 범위를 좁힐 수 있다. 예를 들어 물리적인 문제인지 아니면 응용프로그램과 관련이 있는지 쉽게 파악할 수 있다. 이는 컴퓨터 프로그래머에게도 도움이 된다. 응용프로그램 개발 시 다른 어떤 계층에 작업이 필요한지 쉽게 파악할 수 있기 때문이다. IT 기업은 고객에게 신제품을 설명할 때 OSI 모형을 많이 활용한다. 해당 제품이 어떤 계층에서 작동하는지 아니면 “스택 전체에 걸쳐” 작동하는지 설명한다. OSI 모델은 1970년대에 등장한 2가지 별도 모형을 1983년에 합쳐 1984년에 처음 공개됐다. OSI 모형을 설명할 때..
React.js 란? 프레임워크가 아닌 라이브러리다. 유저 인터페이스를 만들기 위한 라이브러리 : A javascript Library for Building User Interface - 프레임워크(틀) : 필요한 기능이 대부분 구현되어 있다. : 배틀 안에서 기능을 채워넣기 때문에, 벗어나기가 어렵고 보통 1가지만 사용하게 된다. 개발자가 사용하지 않을 기능들도 전부 구현되어 있어서, 상황에 따라 무거울 수 있다. Application 개발시 코드의 품질, 필수적인 코드, 알고리즘, 암호화, 데이터베이스 연동 같은 기능들을 제공한다. 즉, 필요한 기능들이 구성 되어있는 뼈대(구조)를 제공하며, 개발 구조나 설계 시 제공되는 인터페이스의 집합이다. 완성된 어플리케이션은 아니지만, 프로그래머가 어느정도 ..
- Total
- Today
- Yesterday