자연어부터 시작해서 컴퓨터 언어까지 모든 언어는 의사소통을 위한 규칙이 존재합니다. 자바스크립트 역시 다양한 어휘와 문장을 만드는 규칙이 존재합니다. 기본적으로 모든 언어는 문자를 조합하여 의미있는 단어를 만들고 단어를 조합하여 문장을 만듭니다. 자바스크립트와 같은 컴퓨터 언어도 마찬가지로 가장 저수준 문법인 어휘(Lexical)에 대한 구조를 먼저 정의하고 어휘를 이용해 표현식(Expression)과 연산자(Operator) 그리고 문장(Statement) 등을 정의하여 완벽한 프로그램을 만들 수 있습니다. 어휘 문법(Lexical Grammar)어휘 문법은 많은 사람들이 간과하고 그냥 넘어가지만, 자바스크립트를 이루고있는 가장 기본적이고 작은 단위의 규칙입니다. 가장 기본적인 만큼 가장 중요한 부분이..
어떤 것을 배울 때 그것의 역사부터 알아보는 것이 배움에 도움이 된다고 생각하여 자바스크립트의 역사를 간단히 알아보고자 합니다. 자바스크립트의 탄생자바스크립트(JavaScript)는 넷스케이프 브라우저에서 동적인 웹페이지를 구현하기 위해 1955년 넷스케이프사의 Brendan Eich가 만든 언어입니다. 처음에는 LiveScript라는 이름으로 개발되었지만 한창 인기를 끌었던 Java의 명성에 숟가락을 얹으려고 JavaScript로 이름을 바꾸게 됩니다. 두 언어는 C언어로 개발되었다는 점 외에 공통점이 매우 적지만 이름이 비슷하다는 이유로 현재까지도 큰 혼란을 야기하게 됩니다. 그 후 마이크로소프트는 익스플로러에서 구동되는 JScript를 발표하게 됩니다. JScript는 자바스크립트와 대부분 호환 가..
Node.js는 다행히도 http모듈을 기본적으로 포함하고 있으며, 개발자는 몇 줄 안되는 코드로 매우 쉽게 간단한 기능을 하는 HTTP 웹 서버를 생성할 수 있습니다.기본적인 HTTP 서버 생성하기Node.js에서 HTTP 서버를 생성하기 위해 createServer 메서드를 호출하여 Server 객체만들고 생성된 서버를 4200번 포트로 listen합니다. 브라우저 주소창에 http://localhost:4200를 입력하면 "hello world!"가 출력됩니다.놀랍게도, 이렇게 쉽게 간단한 기능을 하는 웹 서버를 만들었습니다. Node.js 서버 분석하기 클라이언트가 생성된 서버(http://localhost:4200)로 접속하면 request 이벤트가 발생하며, Node.js는 등록된 이벤트 리스..
우분투 14.04 LTS 버전에서는 기본적으로 제공하는 PHP의 버전이 5.x입니다.최근 성능이 많이 개선된 php7 버전을 설치하기 위해서는 간단하게 별도의 저장소를 추가만 하시면 됩니다. 저장소 추가 및 설치하기 sudo add-apt-repository ppa:ondrej/php sudo apt-get update sudo apt-get install php7.0 설치 확인하기 php -v # PHP 7.0.13-1+deb.sury.org~trusty+1 (cli) ( NTS ) # ... PHP 버전이 7.0으로 표시됨을 확인할 수 있습니다. MySQL과 연동하기 sudo apt-get install php7.0-mysql 아파치(Apache)와 연동하기 sudo apt-get install li..
원격접속 허용하기 카산드라를 설치하면 기본적으로 외부 클라이언트에서 원격으로 접속하는 것을 허용하지 않습니다.원격 접속을 허용하기 위해 cassandra.yaml 파일을 열어서 약간의 설정을 바꿔줍니다. 카산드라 설정파일을 엽니다. sudo vim /etc/cassandra/cassandra.yaml rpc_address와 broadcast_rpc_address 부분을 찾아서 설정을 변경해줍니다. # rpc_address: localhost rpc_address: 0.0.0.0 # broadcast_rpc_address: 1.2.3.4 broadcast_rpc_address: 1.2.3.4 rpc_address의 기본값은 localhost이며 이를 와일드카드(*)와 같은 의미인 0.0.0.0으로 설정을 ..
설치 전 요구사항 카산드라를 실행하기 위해 최신 버전의 JDK가 필요합니다. JDK 최신버전 확인하기http://openjdk.java.net/install/ 최신 버전을 확인한 후 아래의 명령어로 설치합니다. sudo apt-get install openjdk-8-jdk libjna-java 정상적으로 설치가 되었는지 확인하기 위해 버전을 출력합니다. java -version # openjdk version "1.8.0_111" 카산드라 설치하기 DataStax 저장소를 추가합니다. echo "deb http://debian.datastax.com/community stable main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list 명령어..
윈도우에서 Node.js 설치하기Node.js 홈페이지(http://nodejs.org)를 방문하여 원하는 버전의 설치 파일을 다운받습니다.별 다른 작업 없이 설치를 진행하면 설치가 완료되며 자동으로 PATH가 등록됩니다. 윈도우에서 Node.js 설치 확인하기설치가 정상적으로 되었는지 확인하기 위해서 윈도우키+R(실행창) -> cmd 를 입력하여 명령 프롬프트를 실행합니다. 명령 프롬프트 창에서 설치된 노드와 NPM의 버전을 확인하기 위해 node -v, npm -v 명령어를 차례대로 입력해줍니다.node -v # v6.2.0 npm -v # 3.8.9위와 같이 버전이 출력되면 Node.js가 정상적으로 설치되어 작동하고있다는 것입니다. 윈도우에서 노드 글로벌 패키지의 설치 경로는 %AppData%\n..
다른 데이터베이스에서는 ROW_NUMBER()함수나 RANK()함수를 제공하여 별 다른 쿼리문 없이 순위를 구할 수 있지만 MySQL에서는 아쉽게도 저런 유용한 함수들을 제공하지 않습니다. 관련 함수는 없지만 간단한 쿼리를 이용하여 원하는 열을 기준으로 순위를 구하는 기능을 만들었습니다. SELECT nick, score, rank FROM ( SELECT nick, score, @vRank := @vRank + 1 AS rank FROM member AS p, (SELECT @vRank := 0) AS r ORDER BY score DESC ) AS CNT WHERE nick = 'a'; 이 쿼리는 member 테이블의 nick 열에 있는 'a'의 순위를 반환하는 쿼리입니다.member 테이블의 모든 ..
FTP서비스를 사용하지 않는 서버에서 워드프레스 대쉬보드를 이용해 코어 버전을 업데이트하거나 플러그인을 관리하고자 할 때 FTP 정보를 입력하기 위해서 번거롭게 FTP를 설치해야하는 경우가 있습니다. 이는 워드프레스를 실행하고 있는 아파치 서버의 실행자가 www-data이기때문에 이용자에게 소유권이 있는 wordpress 디렉토리에 접근하지 못해서 발생하는 현상입니다. sudo ps -ef | grep 'apache2\|www-data' # ... # www-data 33920 33916 0 5월13 ? 00:00:02 /usr/sbin/apache2 -k start # www-data 33921 33916 0 5월13 ? 00:00:03 /usr/sbin/apache2 -k start # www-dat..
설치 전 준비사항워드프레스를 설치하기 전에 아파치 서버와 PHP와 MySQL이 설치되어있어야합니다. 이 글을 진행하기 위해 필요한 글1. 아파치 설치하기 2. PHP 설치하기 3. MySQL 설치하기 데이터베이스 생성 및 설정하기워드프레스를 설치하기 위해 데이터베이스를 생성하고 데이터베이스 사용자에게 이용 권한을 부여합니다. mysql -u root -p데이터베이스 생성을 위해 root 계정으로 MySQL에 접속합니다. CREATE DATABASE wordpress;wordpress 데이터베이스를 생성합니다. 데이터베이스 명은 임의로 정하셔도 상관 없습니다. GRANT ALL PRIVILEGES ON wordpress.* TO user@localhost;MySQL을 이용중인 user에게 wordpress..
파이썬에서 MySQL을 사용하기 위해서는 MySQL 서버가 설치되어 있어야하며 파이썬 패키지 관리 시스템(pip)을 이용하여 MySQL-python 패키지를 설치해야 합니다. 만약 pip가 설치되어있지 않거나 사용하는 방법을 모른다면 아래 글을 참고해주세요. 이 글을 진행하기 위해 필요한 글 1. pip 설치 및 사용하기 2. MySQL 설치하기 설치하기 sudo pip install mysql-python파이썬 패키지 관리자를 이용하여 파이썬을 위한 MySQL 패키지를 설치합니다. 파이썬3의 경우 mysql-python이 정상적으로 설치가 되지 않습니다. mysql-python을 완벽히 호환하는 파이썬3용 MySQL 패키지는 아래의 명령어로 설치하시면 됩니다. sudo pip3 install mysql..
설치하기sudo apt-get install phpmyadmin명령어를 실행 후 설치를 진행합니다. 설치를 진행하다 보면 서버 종류를 선택하는 옵션과 데이터베이스 관리자 비밀번호 및 phpmyadmin의 root계정 비밀번호를 설정하는 창이 차례대로 나옵니다. 자신의 서버 환경에 맞게 모두 알맞게 입력해주시면 설치가 진행됩니다. 설치 완료 후 http://localhost/phpmyadmin 로 접근이 된다면 성공적으로 설치가 완료된겁니다. 만약에, 404 Not Found에러로 인해 접근이 되지 않는다면 아파치 환경설정에 phpMyAdmin 환경설정 파일을 포함시켜 주어야합니다. phpMyAdmin Not Found 문제 해결하기아파치 설정을 변경하기 위해 아파치 설정 파일을 엽니다.sudo vim /..