본문 바로가기

개념 공부

(21)
webkit 엔진이란? 웹킷(영어: WebKit)은 웹 브라우저를 만드는 데 기반을 제공하는 오픈 소스 응용 프로그램 프레임워크이다. 원래는 Mac OS 10의 사파리 웹 브라우저 엔진으로 사용하기 위해 컨커러 브라우저의 KHTML 소프트웨어 라이브러리에서 가져온 것이었으나 지금은 옴니웹, 시이라, 아로라, 미도리, 유즈블, iCab, 어도비 통합 런타임, 휴대 전화(아이폰 포함), 노키아의 Series 60 브라우저, 구글의 안드로이드 플랫폼에 사용되고 있다. 한편 웹킷은 트롤테크(Trolltech)의 Qt 4.4에 기본 포함되어 있지만 KDE 프레임워크에 기반을 두는 KDE 프로젝트는 머지 않아 KHTML의 초기 버전을 사용할 것임을 밝혔다. Acid2 테스트를 통과하였으며 2008년 3월에는 웹킷 최신버전이 Acid3 테..
에지 케이스란? +에지 케이스란? 엣지 케이스란 알고리즘이 처리하는 데이터의 값이 알고리즘의 특성에 따른 일정한 범위를 넘을 경우에 발생하는 문제를 가리킨다. 예를 들면 fixnum이라는 변수의 값이 -128 ~ 127의 범위를 넘는 순간 문제가 발생하는 경우가 있을 수 있다. 어떤 분모가 0이 되는 상황처럼 데이터의 특정값에 대해 문제가 발생하는 경우도 마찬가지다. 엣지 케이스는 알고리즘의 특성에 따라 개발자가 면밀히 검토하여 예상할 수 있는 문제다. 이런 문제는 디버그가 쉽기도 하고 테스트를 통해 미리 방지하기도 쉽다. 비슷한 상황을 가리키는 용어로 경계 케이스(boundary case)가 있다. 반대개념:코너케이스 코너 케이스는 여러 가지 변수와 환경의 복합적인 상호작용으로 발생하는 문제다. 예를 들어 fixnum..
Parsing이란? +Parsing이란? 언어학에서 parsing은 구문 분석이라고도하며 문장을 그것을 이루고 있는 구성 성분으로 분해하고 그들 사이의 위계 관계를 분석하여 문장의 구조를 결정하는 것으로 프로그래밍에선 데이터를 조립해 원하는 데이터를 빼내는 프로그램을 하는것을 의미합니다. 그러니까 컴퓨터 과학에서 parsing은 일련의 문자열을 의미있는 token(어휘 분석의 단위) 으로 분해하고 그것들로 이루어진 Parse tree를 만드는 과정. 프로그램을 compile하는 과정에서 특정 프로그래밍 언어가 제시하는 문법을 잘 지켜서 작성하였는지 compiler가 검사하는 것 ex) XML parser는 XML 문서가 XML 문법에 맞게 작성되었는지 검사 XML 문서를 읽고 해석하여 태그명, 속성명, 속성값 및 엘리먼트 ..
regex란? +regex란? 정규 표현식(正規表現式, 영어: regular expression, 간단히 regexp[1] 또는 regex, rational expression)[2][3] 또는 정규식(正規式)은 특정한 규칙을 가진 문자열의 집합을 표현하는 데 사용하는 형식 언어이다. 정규 표현식은 많은 텍스트 편집기와 프로그래밍 언어에서 문자열의 검색과 치환을 위해 지원하고 있으며, 특히 펄과 Tcl은 언어 자체에 강력한 정규 표현식을 구현하고 있다. 컴퓨터 과학의 정규 언어로부터 유래하였으나 구현체에 따라서 정규 언어보다 더 넓은 언어를 표현할 수 있는 경우도 있으며, 심지어 정규 표현식 자체의 문법도 여러 가지 존재하고 있다. 현재 많은 프로그래밍 언어, 텍스트 처리 프로그램, 고급 텍스트 편집기 등이 정규 표현..
Xhtml이란? +Xhtml이란? XHTML은 EXtensible HTML을 의미합니다. XHTML은 HTML과 거의 비슷하지만, 문법의 적용이 조금 더 엄격한 특징을 가지고 있습니다. 좀 더 엄격한 버전인 XHTML을 사용하는 이유 오늘날 웹 콘텐츠는 기존의 PC 위주의 환경에서 벗어나 여러 다양한 플랫폼에서 더욱 많이 이용되고 있습니다. 따라서 부정확한 HTML 문법을 지원하는 데 필요한 자원이 부족한 환경이 점차 생겨나기 시작합니다. XHTML 문서는 하나의 XML 문서로서 문법적으로 정확하므로, 표준 XML 라이브러리를 이용한 자동화된 처리가 가능해집니다. +xhtml과 html5의 차이점 XHTML1.0은 HTML5가 나오기 이전의 가장 최신의 HTML 문서 규격이다. 단순하게 HTML4를 업그레이드한 것이 아..
메소드란? +메서드(method)란? 자바를 포함한 객체 지향 프로그래밍 언어에서 클래스 내부에서 정의된 함수 (객체의 함수)를 메소드라고 한다. 기본적으로는 함수와 유사한 의미로 사용된다. C++등에서 함수라는 단어가 주로 쓰인다면, 메소드는 Java 관련해서 주로 사용된다. 같은 객체 지향 언어지만 자바의 경우 함수를 독립적으로 사용할 수 없고, 클래스 내부에서만 정의될 수 있기 때문에 내부 외부 구분할 필요가 없다보니 그냥 메소드라고 한다. 메소드(method) 또는 멤버 함수(member function)는 객체 지향 프로그래밍에서 객체과 관련된 서브 루틴 (또는 함수)이며 데이터와 멤버 변수에 대한 접근 권한을 갖는다. 클래스 기반 언어에서 클래스 내부에 정의되어 있다. 메소드는 프로그램이 실행되고있을때 ..
플러그인이란? + 플러그인이란? HTML 플러그인이란 웹 브라우저의 표준 기능을 확장해 주는 프로그램을 의미합니다. 가장 널리 알려진 플러그인으로는 Java Applet, Flash Player, Pdf Reader 등이 있습니다. 이러한 플러그인은 object 요소나 embed 요소를 사용하여 HTML 문서에 추가할 수 있습니다. 응용 프로그램에서도 플러그인이 있는데 이에 대한 플러그인의 예는 다음과 같습니다. 이메일 클라이언트는 플러그인을 사용하여 이메일을 암호화하고 암호를 푼다. (Pretty Good Privacy) 그래픽 소프트웨어는 플러그인을 사용하여 파일 형식을 지원하고 그림을 처리한다. (어도비 포토샵) 미디어 플레이어는 플러그인을 사용하여 파일 형식을 지원하고 필터를 적용한다. (푸바2000, GStr..
html dom이란? + html dom이란? DOM(Document Object Model)은 웹 페이지에 대한 인터페이스입니다. 기본적으로 여러 프로그램들이 페이지의 콘텐츠 및 구조, 그리고 스타일을 읽고 조작할 수 있도록 API를 제공합니다. 웹 브라우저가 원본 HTML 문서를 읽어들인 후, 스타일을 입히고 대화형 페이지로 만들어 뷰 포트에 표시하기까지의 과정을 “Critical Rendering Path”라고 합니다. Understanding the Critical Rendering Path 에서 다루듯이 이 과정은 여러 단계로 나누어져 있지만, 이 단계들을 대략 두 단계로 나눌 수 있습니다. 첫 번째 단계에서 브라우저는 읽어들인 문서를 파싱하여 최종적으로 어떤 내용을 페이지에 렌더링할지 결정합니다. 그리고 두 번째 ..