전체 글

초보 개발자의 지식 공유의 장
Apache2 폴더구조우분투는 일반적인 리눅스 배포판들과 apache의 설정이 조금 상이하다.우분투 -> apache2CentOS, RedHat -> httpd 조심하자.. 설정 디렉토리 구조/etc/apache2설정파일 루트 위치 /etc/apache2/apache2.conf기본 설정 파일로, 다른 배포판에서는 httpd.conf를 사용하지만 우분투에서는 apache2.conf를 사용한다. /etc/apache2/envvarsapache2ctl 환경설정 파일 /etc/apache2/magic파일의 시작값(magic number) 데이터베이스. 이 값에 기반해 전송하는 파일의 MIME Type을 결정한다. (가급적 수정 금지) /etc/apache2/mods-available사용가능한 Apache 모듈을..
아파치(Apache) 설치하기 apt-get(Advanced Packaging Tool) 은 우분투(Ubuntu)를 포함한 데미안계열의 리눅스에서 쓰이는 패키지 관리 명령어 도구이다. appstore와 같은 개념으로 보면 될것 같다. ssh에 접속하여 아래와 같은 명령어를 실행한다. sudo apt-get install apache2 만약에 에러가 뜬다면 appstore를 최신으로 만들어야 한다. sudo apt-get update update를 받은 후 다시 install을 실행 apache2가 정상적으로 설치되었는지 확인하려면, 아래와 같은 명령어를 사용한다. apache2 -v 정상적으로 설치가 됬으면 apache2의 버전정보가 출력될 것이다. apache2 구동 명령어는 아래와 같다. 1 2 3 ..
apply()와 call() 메서드를 사용하여 호출하기 apply(), call() 메서드는 명시적으로 함수 컨텍스트를 지정할 수 있는 메서드이다. apply() 메서드 두 개의 매개변수를 전달한다. 하나는 함수 컨텍스트로 사용할 객체, 다른 하나는 인자 값을 담은 배열이다. call() 메서드apply()메서드와 비슷하지만, 인자를 배열로 전달하지 않고 인자 목록으로 직접 전달한다. 사용방법을 살펴보자12345678910111213141516function juggle(){ var result = 0; for(var n=0; n 함수 호출시 임의의 객체를 함수 컨텍스트로 지정할 수 있다. 콜백의 함수 컨텍스트를 강제로 지정하기함수 컨텍스트로 강제 지정하는 구체적인 예제를 살펴보자일반적인 명령형 프로그래..
생성자로 호출“생성자로” 함수를 호출하려면 함수 호출 앞에 new키워드를 붙인다. 생성자의 강력함생성자로 함수를 호출하는 것은 자바스크립트만의 강력한 기능이다. 특별한 행동이 일어나기 때문이다비어있는 객체가 새로 생성된다.새로 생성된 객체는 this 매개변수로 생성자 함수에 전달되고, 따라서 생성자의 함수 컨텍스트가 된다.어떤 명시적인 반환 값이 없다면, 새로 생성된 객체가 생성자의 값으로 반환된다. 생성자의 목적은 새로 생성한 객체의 내용을 설정하고, 새 객체를 생성자의 값으로 반환하는 것이다. 12345678function Ninja(){ this.skulk = function() { return this; };} var ninja1 = new Ninja();var ninja2 = new Ninja(..
메서드로 호출 함수를 객체의 프로퍼티로 할당하고, 그 프로퍼티를 사용하여 “참조에 의한 호출”이 일어나면, 함수는 그 객체의 메서드로 호출된다.123var o = {};o.whatever = function(){};o.whatever(); // 참조에 의한 호출cs우리가 어떤 객체의 메서드로 함수를 호출하면, 그 객체는 함수 컨텍스트가 되고 함수 내에서 this 매개변수로 참조할 수 있다. 앞에서 “함수로 호출”에서 함수는 window에 “속하고”, window는 함수 컨텍스트로 설정된다. 하지만 위의 예제에서는 객체 o가 함수 컨텍스트가 된다. 다음은 함수 호출과 메서드 호출의 차이점을 나타내는 코드이다.123456789101112131415function creep{ return this; }cree..
함수의 호출_1 (함수로의 호출) 함수가 호출되는 방식은 코드 작동 방식에 큰 영향을 미치는데, 특히 this 매개변수가 어떻게 설정되는지를 결정한다. (Javascript를 파고들면 정말 중요해진다.) 함수를 호출하는 데에는 실제로 네 가지 다른 방법이 있다. 함수로 호출. 복잡할 것 없이 익숙한 방식으로 함수를 호출한다. 메서드로 호출. 함수 호출과 객체는 서로 묶여있는데, 이는 객체 지향 프로그래밍을 가능케 한다. 생성자로 호출. 이는 새로운 객체를 생성한다.함수의 apply()나 call()메서드를 통해 호출한다. 함수로 호출 일반적인 호출 방법으로 다른 호출 메커니즘(메서드, 생성자, apply/call)과 구분하기 위한 것이다. 메서드, 생성자, apply/call를 통해 함수를 호출하지 않는..
자바스크립트 함수에서 argument와 this인자(argument)에서 함수의 매개변수(parameter) 함수를 호출할 때 인자 목록을 제공하면, 이 인자들은 함수를 정의할 때 지정한 매개변수에 각 매개변수의 순서대로 할당된다. (첫 번째 인자는 첫 번째 매개변수에 할당, 두 번째 인자는 두 번째 매개변수에 할당) 자바스크립트는 인자 개수와 매개변수의 개수가 다르더라도 에러가 발생하지 않는다. => 매개변수보다 많은 인자가 제공되었다면, ‘남은’ 인자들은 매개변수에 할당되지 않는다. function whatever(a, b, c) { … } whatever(1, 2, 3, 4, 5)를 호출하면 인자 1, 2, 3은 각각 a, b, c 에 할당 되며, 인자 4, 5는 어떤 매개변수에도 할당되지 않는다...
자바스크립트 함수 자바스크립트는 함수형 언어이다. 그만큼 자바스크립트에서 함수는 중요한 역할을 한다. 자바스크립트에서 자바는 1종 객체(first-class object)이다. 이는 함수가 자바스크립트 객체와 같은 지위를 가지며, 일반적으로 다른 자바스크립트 객체처럼 취급할 수 있다는 것을 의미한다. 자바에서 컬렉션 정렬을 수행하는 명령문 12345Arrays.sort(values, new Comparator(){ public int compare(Integer value1, Integer value2){ Return value2 - value1; }});Colored by Color Scriptercs 함수형 접근 방식을 사용한 자바스크립트 코드 1values.sort(function(value1, v..
final 필드와 상수 final 필드final의 의미는 최종적이라는 뜻을 갖고 있다. Final 필드는 초기값이 저장되면 이것이 최종적인 값이 되어서 프로그램 실행 도중에 수정할 수 없다. final 필드의 초기값을 줄 수 있는 방법은 두가지이다. 첫 번째는 필드 선언시에 초기값을 주는 방법이며, 두 번째는 생성자를 통해 초기값을 주는 방법이다. (만약 초기화되지 않은 final 필드를 그대로 남겨두면 컴파일 에러가 발생한다.) 상수(static final)일반적으로 불변의 값을 상수라고 부른다. 불변의 값을 저장하는 필드를 자바에서는 상수(constant)라고 부른다. final 필드는 한 번 초기화되면 수정할 수 없는 필드이지만, final 필드를 상수라고 부르진 않는다. 왜냐하면 불변의 값은 객체..
정적멤버와 static정적(static)은 ‘고정된’이라는 의미를 가지고 있다.정적 멤버는 클래스에 고정된 멤버로서 객체를 생성하지 않고 사용할 수 있는 필드와 메서드를 말한다. 정적 멤버 선언1234567public class 클래스{ // 정적 필드 static 타입 필드 // 정적 메소드 static 리턴 타입 메소드() {… }}cs 정적필드, 정적 메소드는 클래스에 고정된 멤버이므로 클래스 로더가 클래스(바이트 코드)를 로딩해서 메소드 메모리 영역에 적재할 때 클래스별로 관리된다. (클래스 로딩이 끝나면 바로 사용할 수 있음) 인스턴스 필드 => 객체마다 가지고 있어야할 데이터 정적 필드 => 객체마다 가지고 있을 필요성이 없는 공용적인 데이터 일 경우 각각에 맞게 사용하면 된다. 123456p..
깡냉쓰
평범한 개발자 노트