본문 바로가기

Dev.World

(61)
[개발상식] 16. 웹 서버란? 웹 프로그래밍이란?웹 프로그래밍의 첫번째 특징은 한 대의 컴퓨터에서 처리하지 않는다는 것이다.어떠한 경우에도 반드시 서버와 클라이언트가 존재한다.웹 애플리케이션이란 HTTP/HTTPS라는 프로토콜을 통하여 요구된 기능을 제공하는 것이다.HTTP를 통한 클라이언트의 요청에 대해, 웹 애플리케이션이 반환하는 응답에 의해 제공되는 데이터는크게 두 가지 종류이다.하나는 정적 콘텐츠이고, 다른 하나는 동적 콘텐츠이다.정적 콘텐츠란 누가 언제 요구하더라도 동일한 내용이 반환되는 데이터를 말한다.HTML, JavaScript, CSS가 기술된 것, 이미지, 등이 포함된다.이 데이터들은 해당 웹 페이지 및 웹 서비스의 제공자가 사전에 준비해 둔 서버 측에 배치한 것이다.동적콘텐츠란 누가, 언제, 어떻게 요구했는지에 따..
#JAVA Framework JDBC, myBatis JDBC란?(Java Database Connectivity)데이터베이스에 접근하여 SQL문을 실행하기 위한 자바 라이브러리(API)를 말한다.썬에서 RDBMS에 접근하여 SQL문을 실행하기 위한 자바 라이브러리를 만들어 표준으로 제공한 것이다.구현 클래스가 거의 없고 대부분이 인터페이스로 이루어져 있다.그렇기 때문에 어느 DB를 사용하더라도 동일한 코드를 작성할 수 있고DB를 교체하더라도 코드를 수정하는 작업은 거의 없다. iBatisSQL에 기반한 데이터베이스와 자바, .NET, 루비 등을 연결시켜주는 역할.JDBC를 대체하는 영속성 프레임워크iBatis 개발자들이 구글코드로 이동하고 그 후 버전 이름이 myBatis로 바뀜 myBatisMyBatis는 개발자가 지정한 SQL, 저장프로시저, 그리고 ..
[그들이 쓰는 언어] 10. P2P서비스 P2P 서비스인터넷 상의 정보를 검색엔진을 거쳐 찾아야 하는 기존 방식과는 달리인터넷에 연결된 모든 개인 컴퓨터로부터 직접 정보를 제공받는 검색은 물론 다운로드까지 할 수 있는 서비스이다.이전의 인터넷 검색은 인터넷 사용자들이 검색엔진이라는 전문검색업체에 접속해 주제어를 입력하여 정보를 구했다.등록된 수백만 개의 웹사이트로부터 검색엔진은 가장 적절한 정보를 찾아냈다.찾아낸 정보는 빠르고 편리한 서비스에도 불구하고추출된 정보가 웹사이트에 게재된 내용에 한정되어 있고 웹사이트 접속에 실패하기도 한다.이와 대조적으로 P2P는 인터넷에 접속한 개별 사용자들의 컴퓨터를 검색해서 원하는 파일을 추출해 준다.즉 실시간으로 현재 인터넷상에 접속해 있는 사용자의 컴퓨터내의 파일을 검색하기 때문에원하는 파일이 검색될 경우..
[그들이 쓰는 언어] 9. 웹 2.0 이란 웹2.0단순한 웹 사이트의 집합체가 웹 1.0이었다면웹 애플리케이션을 제공하는 하나의 완전한 플랫폼을 웹 2.0이라고 지칭한다.개방, 창며, 공유가 웹 2.0의 대표적인 키워드 이며 사용자가 정보의 소비자이자 생산자가 되는 인터넷 통합 환경을 의미한다.웹 2.0의 기술적 기반은 복잡하고 여전히 진화 중이나, 여기에는 서버 소프트웨어와 콘텐츠 신디케이션, 메시징 프로토콜, 표준 기반의 브라우저, 다양한 클라이언트 애플리케이션 등을 포함한다. (비표준 브라우저에 대한 플러그인이나 확장은 보통 지양된다) 이와 같이 차별화되지만 상호 보완적인 접근은 기존의 웹사이트에 기대했던 것을 뛰어넘어, 정보의 저장, 창조, 전파의 능력을 갖춘 웹 2.0을 규정한다.-Wiki 웹 2.0의 기본적인 목적은 사람들을 다양하고 ..
[그들이 쓰는 언어] 8. 바인딩 바인딩: 속성과 개체 사이 또는 연산과 기호 사이와 같은 연관이다. 이름을 속성에 연관시키는 과정. 바인딩이 일어나는 시간을 바인딩 시간이라고 부른다.바인딩이란 함수 호출과 실제 함수를 연결하는 방법이다.각종 값들이 확정되어 더 이상 변경할 수 없는 구속(bind)상태가 되는 것.함수를 호출하는 부분에 함수가 위치한 메모리 번지를 연결시켜 주는 것.프로그램 소스에 쓰인 각종 내부요소 혹은 속성(성격)을 확정 짓는 과정을 의미. Ex) 변수의 데이터 형이 무엇인지 결정이 과정이 컴파일 시에 이루어지면 정적 바인딩Ex1) C언어에서는 컴파일 시간에 변수의 데이터 형이 정해지므로 정적 바인딩프로그램 실행 시 이루어지면 동적 바인딩Ex2) 자바스크립트는 실행할 때 값에 따라 변수의 데이터 형이 정해지므로 동적 ..
[개발상식] 15. 클라우드 컴퓨팅이란? 클라우드 컴퓨팅클라우드 컴퓨팅은 서버, 스토리지, 데이터베이스 및 광범위한 애플리케이션 서비스를인터넷을 통해 간단하게 액세스할 수 있는 방법을 제공한다. 전기 공급 및 소비의 패러다임이 과거의 자가발전에서 현재의 중앙발전으로 바뀌었듯이IT 자원의 소비 형태도 이렇게 변환될 것이다.그러한 소비 형태가 바로 클라우드 컴퓨팅이다.IT분야 미래학자 Nicholas Carr - Big Switch 에서 클라우드 컴퓨팅 혁명과 함께 제 2의 디지털 시대가 다가오고 있다. - 빌게이츠 클라우드 컴퓨팅이란쉽게 말해서 서버 가상화 기술가상 라우터를 기반으로 한 네트워크 가상화 기술스토리지 클라우드를 위한 분산 스토리지 및 파일 동기화 기술클라우드 운영관리를 담당하는 stack기술 및 사용자 권한 관리 등을 포괄한다. 클..
[그들이 쓰는 언어] 7.런타임이란? 런타임(runtime)런타임은 프로그램이 실행되고 있는 때 존재하는 곳을 말한다.즉, 컴퓨터 내에서 프로그램이 기동되면, 그것이 바로 그 프로그램의 런타임이다.일부 프로그래밍 언어에서는, 어떠한 재사용 가능한 프로그램들이나 루틴들이 런타임 라이브러리로서하나의 꾸러미로 만들어진다.이러한 루틴들은 어떠한 프로그램이 실행될 때 거기에 연결되어, 그 프로그램에 의해 사용될 수 있다.프로그래머들은 때로 컴파일 할 때 프로그램 내에 삽입된 것과,런타임 때 삽입된 것을 구분하는데,전자를 컴파일타임이라고 부른다. 수년동안, 전문 기고가들은 런타임을 하나의 전문 용어로 인정하지 않았으나, 이 용어는 점차 일반적인 용법에 슬며시 포함되었다. 단순히 말해서 런타임이란프로그래밍 언어가 구동되는 환경이라고 이해를 하면 된다.J..
[개발상식] 14. XML이란? XMLExtensible Markup Language 의 약자로,마크업 언어를 정의하기 위한 언어, 확장이 가능한 언어이다. HTML과의 비교HTML과 흡수한 markup language이지만 Tag를 정의할 수 있고 데이터를 기술할 수 있는 마크업 언어이다.XML은 데이터가 무엇인지에 초점을 맞춰 데이터를 기술하기 위해 고안되었고HTML은 데이터가 어떻게 보일지에 초점을 맞춰 데이터를 표시하기 위해 고안되었다.때문에XML은 데이터를 구조화시키는데 사용되고HTML은 동일한 데이터를 표시하고 꾸미는데 사용된다. 탄생배경XML이란 전자적으로 데이터를 교환하기 위한 표준이다.HTML의 한계를 극복하고 SGML의 복잡함을 해결하는 방안으로써 탄생하였다.웹 상에서 구조화된 문서를 전송 가능하도록 설계된 표준화된 ..