목록language (18)
:: ADVANCE ::
[C] auto, static, extern 키워드 의미 C에서 변수는 값이 저장되는 메모리 영영기나 변수의 유효범위에 따라 구분되는데, auto, static, extern 이 세가지 키워드를 이용하여 구분할 수 있다. 1. auto ( 자동 범위 변수 )일반적인 지역 변수 형태, 블럭 안에서만 유효하며 블럭의 실행이 끝나면 소멸스택에 메모리 할당일반적으로 C에서 auto 키워드는 생략되어 있다. 아무 표시도 하지 않은 변수는 자동으로 auto와 같은 의미C++에서 auto 키워드를 사용할 경우 -> 자동 타입 추론 이라는 완전히 다른 의미를 가진다. (주의) 2. static ( 정적 변수 )블럭 안에서만 유효한 값을 가지지만 자동 변수와 같이 없어지지 않고 블럭으로 다시 돌아왔을 때 이전 값을 다시..
[Java] extends와 implements class A extends B 라고 하면클래스 A가 클래스 B를 상속받는 다는 것이고-> 순수 상속 class A implements C 라고 하면클래스 A가 클래스 C라는 인터페이스를 구현하겠다 라는 것이다.-> 구현 상속 따라서 extends 상속을 받으면 클래스 B의 메소드를 사용할 수 있고 정의 (재정의)할 필요가 없지만implements로 인터페이스 상속을 받으면 클래스 C의 메소드를 꼭 정의 해서 사용해야 한다.-> 그렇지 않으면 컴파일 에러가 발생한다.
[Java] final final의 의미는 최종적이라는 뜻을 가지고 있다. 그렇다면 final 필드는 최종적인 필드라는 뜻인데, 무슨 뜻일까? final 필드는 초기값이 저장되면 이것이 최종적인 값이 되어서 프로그램 실행 도중에 수정할 수 없다는 것이다. final 필드는 다음과 같이 선언한다. final 타입 필드 [= 초기값]; final 필드의 초기값을 줄 수 있는 방법은 딱 두가지 밖에 없다.첫번째는 필드 선언 시에 주는 방법이고,두번째는 생성자에서 주는 방법이다. 단순 값이라면 필드 선언 시에 주는 것이 제일 간단하다. 하지만 복잡한 초기화 코드가 필요하거나 객체 생성 시에 외부 데이터로 초기화해야 한다면 생성자에서 초기값을 지정해야 한다. 생성자는 final 필드의 최종 초기화를 마쳐야 하는데..
[JAR] JAR파일 JAR(Java Archive, 자바 아카이브)는 소프트웨어에서 수많은 자바 클래스 파일과 연관된 메타데이터, 리소스(텍스트, 그림 등)을 하나의 파일로 모아서 자바 플랫폼에 응용 소프트웨어나 라이브러리를 배포하기 위한 패키지 파일 포맷이다. 실제로는 ZIP 파일 포맷으로 이루어진 압축 파일이다.JDK에 포함된 jar 명령어를 이용하여 JAR 파일을 만들거나 압축을 풀 수 있다. 즉, 자바 어플리케이션을 이루는, 압축되지 않은 수 많은 파일들을 모아서 하나의 패키지로 만든 파일 포맷이다. java.util.zip 패키지에 JAR 파일을 읽고 쓰는 클래스들을 포함하고 있다. [참고] https://ko.wikipedia.org/wiki/JAR_%28%ED%8C%8C%EC%9D%BC_%..
[C++] Class 123456789101112131415class Car{private: int m_speed; int m_fuel; public: Car() { Speed(0); Fuel(0); } int Speed() { return m_speed; } void Speed(int speed) { m_speed = speed; } int Fuel() { return m_fuel; } void Fuel(int fuel) { m_fuel = fuel; }}; 12345678Car car;00401869 8D 4D F8 lea ecx,[car]0040186C E8 8F F7 FF FF call Car::Car (401000h)car.Speed(0x12345678);car.Fuel(0x11111111);0..
Native Code & Managed Code Native Code는 컴퓨터의 기계어로 동작하는 즉, OS에 의해 직접적으로 컴파일 되는 코드를 의미한다. Managed Code는 구동 시키기 위해서는 인터프리터라고 불리우는 다른 프로그램이 반드시 요구 되는 코드를 의미한다. Native Code는 작성한 코드 그대로 컴퓨터에서 구동이 된다.Managed Code는 Java Virtual Machine이나 .Net Framework와 같은 인터프리터가 필요한 코드를 의미한다. 메모리적으로 설명을 하면Native Code는 프로그래머가 직접 메모리를 할당하고, 해제해야하는 Native한 환경을 갖는 Code이고, Managed Code는 Garbage Collection이라는 것이 있어서 할당된 메모리를..
예외(Exception)이 발생한 메소드를 호출 한 곳으로 예외 객체를 넘기는 방법 (throws) 자바의 예외 처리 방법은 예외가 발생한 지점에서 try-catch 또는 try-catch-finally 블록을 이용하여 직접 처리하지 않아도 예외가 발생한 메소드를 호출한 지점으로 예외를 전달하여 처리하는 방법이 있다. 이때 사용하는 예약어가 throws 이다. [modifiers] returnType name([argType argName, ...]) [throws exceptionName1, exceptionName2,...] public class ExceptionTest { static void callDriver() throws ClassNotFoundException{ Class.forName(..
[Node.js] Web Server 구축 Node.js 설치하고Node.js cmd에서 .js 파일이 있는 폴더 찾아들어간 다음에> node name.js하면 name.js 파일이 설치? 되고 localhost:port 치면 실행된다. 기본 웹 서버 구축 예제 코드Server.js12345678var http = require('http'); var server = http.createServer(function(request, response) { response.writeHead(200, {'Content-Type': 'text/plain'}); response.end('WebServer Text\n');}).listen(8888); console.log('http.createServer test'..
[Book] 1. 웹 서버와 웹 브라우저 첫 프로젝트를 시작하면서 맡은 파트는 Chrome extension과 text mining의 키워드 추출 및 클러스터링이다.키워드 추출해야 대상이 웹 페이지이다.Java로 module을 개발하는 파트라 통신부분과 웹 프로그래밍에 대해서 알 필요가 없다고는 하지만 대상이 웹 페이지이고 첫 주 파트가 Chrome extension 이기도 해서 JavaScript와 웹 프로그래밍에 대해서 완전히 지식이 없다면 개발하나 마나일 것 같고 중구난방으로 개발해봤자 성장도 없고 단기과제와 같은 결과가 될 것같은 불안감이 든다.일단 무엇보다 인터넷에서 자료를 읽다보면 뜻을 모르는 단어들이 많다보니 이거뭐... 자료를 찾아봐도 진도가 나가질 않아 너무 답답하다. 서버파트와 웹 프로..
목차1장 웹 프로그래밍 기초 지식 1.1 자바스크립트 학습을 위한 HTML, CSS 2 1.2 자바스크립트 학습을 위한 편집 툴 8 2장 자바스크립트 기본 2.1 자바스크립트 선언 및 실행하기 12 2.2 데이터 입/출력 20 2.3 주석문, 변수와 연산자, 자료형 36 2.4 배열 ARRAY 객체 45 2.5 함수의 정의와 호출 51 2.6 자바스크립트 객체의 멤버 접근 55 2.7 이벤트 핸들러와 이벤트 처리 57 3장 제어문 익히기 3.1 IF 조건문 67 3.2 IF ELSE 조건문 68 3.3 중첩 IF ELSE 조건문 69 3.4 SWITCH 선택문 70 3.5 FOR 반복문 73 3.6 FOR IN 반복문 74 3.7 IF 문, FOR 문, WHILE 문의 비교 75 3.8 DO WHILE ..