전체 글 916

[TIZEN]1.타이젠 시작하기 (개념, 환경설정)

1. TIZEN이란? - 리눅스 기반 오픈 소스 플랫폼, 삼성/인텔을 주축으로 개발 진행중 - 스마트폰, TV, 기어 시리즈, 냉장고 등 모든 전자기기 포함 목적 - HTML/C++ 기반으로 제작 가능 2. TIZEN Core Framework - 웹 및 네이티브 프레임웍 기반 - 빠르고 가벼운 라이브러리 - Core API/ EFL API로 구성 3. EFL(Enlightment Foundation Libraries) -> Tizen Core Toolkit - 오픈소스기반의 다양한 기능을 제공하는 라이브러리 모음(Toolkit) - 웹 및 네이티브 프레임웍 기반 - 빠르고 가벼운 라이브러리 - Core API/ EFL API로 구성 - EFL을 사용한이유? : 뛰어난 성능, 적은 메모리, GUI/APP..

개발/TIZEN 2015.11.16

리팩토링은 왜 해야할까?

[리팩토링] - 겉으로 드러나는 기능은 그대로 둔 채, 알아보기 쉽고 수정하기 간편하게 소프트웨어 내부를 수정하는 작업 [리팩토링의 목적]- 소프트웨어를 더 이해하기 쉽고 수정하기 쉽게 만드는 것이다. 리팩토링을 수행하면 겉으로 드러나는 기능에 거의 영향을 주지 않은 채 소프트웨어의 코드를 간결하게 변경할 수 있다. 1. 소프트웨어 설계 개선2. 소프트웨어 이해 쉬워짐(코드 간결. 가독성 향상)3. 버그 찾기 쉬워짐4. 프로그래밍 속도 향상 * 소프트웨어 개발에 리팩토링을 적용할 땐 기능을 추가하지말고 코드만 추가해야 한다. 기능을 추가할 땐 코드를 수정하지 말고 기능만 추가해야 한다. 진행 상태를 파악하려면 테스트를 추가하고 그 테스트들이 제대로 되는지 알아내면 된다. =>리팩토링할 때는 코드를 추가하..

[Node.js]5.HTTP

1. HTTP란? -HyperText Transfer Protocal, WWW상에서 서버와 클라이언트 간에 데이터를 어떻게 주고 받을 수 있는지를 정의한 통신 규약 -Hypertext란 개별 정보들을 링크를 이용해 유기적으로 연결시킴으로써 비연속적, 비선형적 체계로 구성한 전자적 텍스트 -http://ko.wikipedia.org/wiki/HTTP 2. HTTP 모듈 - Node.js는 HTTP모듈을 기본 내장 모듈로 제공, HTTP 기반 웹 어플리케이션을 쉽게 개발할 수 있게 해줌. 3. HTTP Server - 기본소스1234567var http = require('http');http.createServer(function (req, res) { res.writeHead(200, {'Content-..

개발/Web 2015.05.23

[Node.js]3.IDE설치

1. JRE설치http://www.oracle.com/technetwork/java/javase/downloads/index.html 2. 이클립스 -NTS 설치http://sourceforge.net/projects/nodeclipse/files/Enide-Studio/ 3.샘플 프로젝트 구동 -[File]-[New]-[Node Project] 클릭 - 'HelloWorld' 입력 후 [Finish] - hello-world-server.js를 확인해 보면 http 서버를 구동시키는 파일이라는 것을 알 수 있다. - 'hello-world-server.js' 오른쪽 버튼 [Run As]-[Node Application]선택 - 아래와 같이 실행됨을 확인할 수 있다. 웹 브라우저에서 'http://127..

개발/Web 2015.05.21

[Node.js]2.설치

1. Node.js설치 - 'http://nodejs.org' 접속 후 'DOWNLOADS' 클릭 - OS에 맞는 설치파일 다운로드 후 설치파일 실행, 'Next' 클릭 - 기본값으로 두고 'Next' 클릭한 후 설치를 진행한다. 2. Node REPL - 보통 .Node.js를 '백엔트 자바스크립트'라고 말하지만 이것만으로는 이해하기가 어렵다. Node.js의 실체가 무엇인지 확인하는 최고의 방법은 NODE REPL(Read-Evaluate-Print-Loop)을 사용함으로써 Node.js의 실행환경을 경험해 보는 것이다. - Node.js는 펄, 파이썬, 루비 등과 같이 그 자체가 서버이며 실행 환경을 제공하고 있다. Node REPL을 통해 작성한 자바스크립트 코드를 직접 돌려보며 테스트를 할 수 ..

개발/Web 2015.05.21

[Node.js]1. 개념

1. 자바스크립트 - 웹 브라우저에서 실행되는 스크립트 언어, HTML로 작성된 웹 페이지에 함수 형태로 작성되는 언어 - 해석형 언어 : 컴파일할 필요 없이 소스 코드 자체가 실행 시에 인터프리터에 의해 해석되어지는 언어 2. V8 자바스크립트 엔진 - 구글에 의해 C++로 개발된 오픈 소스 자바스크립트 엔진, 크롬에 내장되어 공개 - V8은 기존의 컴파일된 바이트코드를 실행시키거나 인터프리터로 해석하는 대신, 자바스크립트를 컴파일하여 네이티브 머신 코드로 변경한 후에 실행할 수 있게 해줌. - Garbage collection 이용 : 필요 없는 객체는 수집하여 버려 V8의 고성능에 이바지 - 독립적으로 실행 가능 - 이를 개발 가능하게 한 플랫폼이 Node.js 3. Node.js - 이벤트 주도 ..

개발/Web 2015.05.21

메모_

[C] char *str와 char str[] 의 차이 C/C++ 2014/06/06 15:54 http://blog.naver.com/chhh92/220022245722 전용뷰어 보기 ​char *str와 char str[]은 문자열을 담기위해 사용합니다. 용도는 같더라도 담는 방법이 다릅니다. 잘 알고 상황에 맞게 문자열을 담으면 되겠습니다. 당연한 소리지만, char *str는 포인터고 char str[]는 배열입니다. 얼핏 보면 둘다 문자열을 담거나 작업할때 쓰여서 같아보일지라도, char *str도 char str[]처럼 "선언과 동시에 초기화"를 할 경우 확실하게 차이가 납니다. 우선 역할을 보면 char *str은 주소를 담고, char str[]은 값을 담습니다. 만약 선언과 동시에 초기화..

개발/Algorithm 2015.04.08

알고리즘 메모

- 잘하는 사람과 못하는 사람의 생산성 차이가 스무배- 대부분 컴퓨터 과학 교육 과정이 프로그래밍의 기술과 지식을 가르칠 뿐, 그것을 스스로 응용할 수 있는 능력을 주지 못하기 때문.- 대부분의 교과서에서는 발전 과정의 최종 결과물인 복잡한 개념과 도구를 먼저 제시하고, 그 개념의 이론에 대해 설명한 뒤, 곧장 연습문제를 풀도록 합니다. -> 이러한 방법은 학문 발전의 결과물에 대한 체계적인 지식을 학생에게 주입하는 데는 좋을지 몰라도, 문제의 답을 슷로 고안할 수 있는 학생을 기르기에는 턱없이 부족합니다. : 프로그래밍은 어려운 만큼 재미있는 작업이기도 합니다. 문제를 푸는 것도 그렇습니다. 문제가 풀리지 않을 때의 괴로움은 문제가 풀렸을 때의 기쁨과 그 과정에서 얻은 통차을 자신의 것으로 만들었을 때..

개발/Algorithm 2015.03.31

[대전 맛집] 서구 월평동 가마솥순두부 두부사랑

대전 맛집 가마솥 순두부 두부사랑 안녕하세요?대전 서구 월평동에 위치한 순두부 맛집을 소개하겠습니다.겉모습은 허름하지만 맛집의 포스가 느껴지는데요, 식당 안은 6테이블 정도 있는 작은 순두부 전문 식당입니다. 안에 들어가면 간단한 메뉴판이 눈에 들어오는데요.메뉴는 두부 전문점답게 두부요리로만 이루어져 있습니다. 단일 메뉴로 파는 모습이 전문 음식점 같아 더 믿음이 갔습니다.부부로 보이시는 두 분이 직접 만든 두부로 장사를 하신다고 합니다. 테이블의 전체적인 모습입니다.특별한 반찬은 보이지 않지만 집에서 먹는 집밥처럼 편하고 맛있게 먹을 수 있습니다.저희는 몇번씩 리필해서 먹었답니다^^ 뜨끈뜨끈한 순두부찌개가 나오자마자 군침이 돌았는데요.큼직큼직한 두부가 너무 먹음직스럽죠? 위치는 대전 청사 터미널에서 5..

취미/일상 2015.03.30

동적 계획법(Dynamic Programming)_1.개념

1. 동적 계획법(Dynamic Programming)이란?분할 정복과 같은 접근방식을 갖고 있습니다. 처음 주어진 문제를 더 작은 문제들로 나눈 뒤 각 조각의 답을 계산하고, 이 답들로부터 원래 문제에 대한 답을 계산해 내기 때문입니다. 차이가 발생하는 부분은 문제를 나누는 방식입니다. 부분문제가 여러번 사용될 수 있을 때 여러번 중복 계산하는 것이 아닌, 한번만 계산하고 저장해둬 재활용해 사용합니다. (a)서로 연관이 없는 부분문제 (b)서로 의존하고 있는 부분문제 (a)는 서로 연관이 없어 단순히 재귀 호출을 통해 문제를 풀어도 한 부분문제를 한 번만 해결합니다. (b)는 부분문제가 서로 의존하고 있어, 단순 재귀로 풀면 중복 계산이 많아집니다. 예를 들면 cde는 abcde를 해결할 때, cdef..

개발/Algorithm 2015.03.26

6. Matrices

행렬은 공간상의 한 점을 변환시킬 수 있는 수학적 도구이며, 행렬의 곱을 통해 여러 변환을 한꺼번에 적용할 수 있습니다. 1. 행렬 구조체 - D3DMATRIX : 4행 4열을 가지는 구조체 변수 typedef struct _D3DMATRIX { union { struct { float _11, _12, _13, _14; float _21, _22, _23, _24; float _31, _32, _33, _34; float _41, _42, _43, _44; }; float m[4][4]; }; } D3DMATRIX; - D3DXMATRIX : D3DMATRIX를 상속한 행렬 클래스, 행렬에 관한 오버로딩 연산자를 가집니다. #ifdef __cplusplus typedef struct D3DXMATRIX..

개발/Graphics 2014.10.20
반응형