CHAPTER 12

Size: px
Start display at page:

Download "CHAPTER 12"

Transcription

1 CHAPTER 12 응용계층과웹응용기법 New 데이터통신과네트워킹응용계층과웹응용기법 1/52

2 New 데이터통신과네트워킹응용계층과웹응용기법 2/ 응용계층과이메일시스템 12.4 자바와웹응용기법 12.2 응용계층 이메일시스템 이메일시스템의구성 우편함과가명확장 DHCP 기술 CGI 프로그램과자바 애플리케이션과자바애플릿 자바프로그램의특징 클래스의형식과정의 메소드 자바를이용한웹페이지작성 12.3 DHCP 란? DHCP 구조및동작 DHCP 기술 IP 대여재경신 웹과웹프로그래밍기법 12.5 HTML5 기술 HTML5 란무엇인가 HTML5 의특성 HTML5 의주요기술 새로운 API 웹과웹브라우저의기능 하이퍼텍스트전달프로토콜 (HTTP) HTML 을이용한웹페이지작성과동작 웹프로그램의동작

3 12. 1 응용계층과이메일시스템 응용계층 (application layer) 응용계층 : OSI 참조모델또는 TCP/IP 모델에서의최상위계층으로, 데이터통신을위한응용기능을제공 파일관리및전송같은 application 처리를위한프로세서사이의인터페이스기능을담당 ( 구분 ) 가상단말, 원격데이터베이스, 메일함접근기능등과같은자원이용기능과네트워크운영에필요한네트워크관리기능등으로구분 응용계층프로토콜및서비스 파일전송프로토콜 (FTP), 이메일전달프로토콜 (SMTP), 동적호스트구성프로토콜 (DHCP), 하이퍼텍스트전달프로토콜 (HTTP), 네트워크관리프로토콜 (SNMP), 도메인명서비스 (DNS), 원격로그인 (Telnet), 네트워크파일시스템 (NFS) 등 New 데이터통신과네트워킹응용계층과웹응용기법 3/52

4 12. 1 응용계층과이메일시스템 이메일시스템 이메일 ( , electronic mail) 서비스 정보전송의신속성과편의성및활용도가매우높음 최근에는웹서비스를기반으로동작하는웹메일의형태로주로이용 이메일표준 -> 1982 년에이르러 RFC 821( 전송프로토콜 ) 과 RFC 822( 메시지형식 ) 발표 그후더욱발전된기능을갖춘 X.400 표준이발표 구조가복잡하고설계상의어려움으로인해실제적인구현은되지못함 RFC 821 과 RFC 822 표준은다소수정되어 RFC 2821 과 RFC 2822 표준으로발표 다른네트워크응용서비스와구별되는점 메시지전달의지연 (delayed delivery) 을허용한다는점 이메일의메시지는전화의음성메시지와는달리, 실시간으로전달될필요가없음 메시지전달이다소지연된다하더라도보내진메시지는반드시정상적으로수신측에도달하도록함 New 데이터통신과네트워킹응용계층과웹응용기법 4/52

5 12. 1 응용계층과이메일시스템 동시처리 (Spool) 기법 메시지전달에있어서지연을허용하기위해처리속도가서로다른장치간에데이터를처리하는기법 동시처리기법은고속장치로부터나오는출력데이터를저속장치의입력으로수용할수없는경우, 보조기억장치를사용하여그데이터를임시적으로보관 전송측시간지연 [ 그림 12-1] 사용자 A 는사용자에이전트 (UA) 를이용하여메일을작성하고메시지전달에이전트 (MTA) 를통해메일을전송 UA 와 MTA 사이에서동시처리기술을사용하여메시지의시간지연에대한처리수행 New 데이터통신과네트워킹응용계층과웹응용기법 5/52

6 12. 1 응용계층과이메일시스템 이메일시스템의구성 구성요소 사용자에이전트 (UA), 우편함과동시처리 (spool) 영역, 메시지전달에이전트 (MTA), 가명확장 (alias expansion), 데이터베이스등 [ 그림 12-2] 사용자 A 가사용자 B 에게로이메일을보내는경우 1 사용자 A는인터페이스를통해 UA에접근하고, UA를이용하여이메일을작성 2 가명확장기술과 MTA 클라이언트를이용하여작성된메일을전송 3 인터넷을경유하여사용자 A의메시지는사용자 B의 MTA 서버로전달 4 MTA 서버는가명확장기술과동시처리기술을연계하여우편함에메시지를전달 5 사용자 B는 UA를이용하여우편함에접근해서보관되어있는메시지를읽음 사용자 B 가사용자 A 에게로이메일을보내는경우 1 사용자 B가인터페이스를통해 UA에접근하여 UA를이용해이메일을작성 2 가명확장기술과 MTA 클라이언트를이용하여이메일을전송 3 사용자 B의메시지는인터넷을경유하여사용자 A의 MTA 서버로전달 4 MTA 서버는가명확장기술과동시처리기술을연계하여우편함에메시지를보냄 5 사용자 A는 UA를이용하여우편함에접근해서보관되어있는메시지를읽음 New 데이터통신과네트워킹응용계층과웹응용기법 6/52

7 12. 1 응용계층과이메일시스템 New 데이터통신과네트워킹응용계층과웹응용기법 7/52 이메일시스템의구성도

8 12. 1 응용계층과이메일시스템 사용자에이전트 (UA) UA 는사용자에게이메일메시지의전송과수신을보다원활하게해주는소프트웨어패키지 ( 프로그램 ) 메시지작성 (composing), 읽기 (reading), 응답 (replying), 전방위전송 (forwarding), 우편함처리 (handing mailboxes) 등의기능을수행함 [ 그림 12-3] 명령어기반 UA 의예 ) mail, pine, elm 등 New 데이터통신과네트워킹응용계층과웹응용기법 8/52

9 12. 1 응용계층과이메일시스템 SMTP 와메시지전달에이전트 (MTA) SMTP(Simple Mail Transfer Protocol) 메시지전달에이전트 (MTA) 클라이언트와 MTA 서버를정의하는프로토콜 MTA 메시지를전달하는소프트웨어에이전트 ( 프로그램 ) 이메일전송시스템의전송과정 [ 그림 12-4] SMTP 서버 ( 또는 MTA 서버 ) 와 SMTP 클라이언트 ( 또는 MTA 클라이언트 ) 사이의메시지전달과정 ➊ SMTP 는하나의 SMTP 클라이언트를구성하고, 목적지의장치이름과 IP 주소를일치시키고, 목적지장치와메일서버까지의 TCP 연결시도 ➋ 전송프로세스는메시지의복사본을원격지의 SMTP 서버까지전송하고, 이를원격시스템의동시처리영역에저장 ➌ 수신측 SMTP 서버가메시지수신 동시처리영역에저장하였다는것이확인되면전송측 SMTP 클라이언트는복사본삭제 New 데이터통신과네트워킹응용계층과웹응용기법 9/52

10 12. 1 응용계층과이메일시스템 우편함과가명확장 메일전송시사용되는이름은장치에할당되는이름과는독립적 우편함주소는사용자의로그인식별자 ( 사용자 ID) 와동일 목적지장치이름은일반적으로도메인이름과동일하게구성 가명확장과메일전방위전송 이메일시스템은가명확장 (alias expansion) 메커니즘을포함하는메일전방위전송응용프로그램을제공 하나의메일발신자는하나또는그이상의새로운메일주소를설정하기위해메일주소에사용되는식별자를일치시키는지역사이트정보를허용 이메일프로그램은메시지및수신자의이름을전송한다음, 메시지를전송하기전에매핑 (mapping) 된버전을갖는수신자로교체하기위해서 지역가명 을요청 매핑과정을거치지않은수신자는기존의상태를유지하며, 하부메일시스템은 가명 을사용하여들어오는수신자주소를일치시킴 가명시스템을사용함으로써한사용자가여러개의메일 ID를가질수있고, 하나의 ID 를갖는수신자의그룹할당이가능 New 데이터통신과네트워킹응용계층과웹응용기법 10/52

11 12. 1 응용계층과이메일시스템 우편함과가명확장지원요소 incoming 메일과 outgoing 메일은모두전방위전송 (mail forwarder) 과정을통해전송 사용자가사용자인터페이스를통해이메일을보내면 이는메일가명목록확장과전방위전송을통해나가는메일동시처리영역으로보내져서전송이이루어짐 상대방으로부터들어오는메일을서버가받으면 서버는수신된메시지를가명목록확장과전방위전송을통해서우편함으로보냄 사용자는사용자인터페이스를통해메시지를읽게됨 가명데이터베이스가메일주소 x 를 y 로교체하면 가명확장은목적지주소를 y 로교체 New 데이터통신과네트워킹응용계층과웹응용기법 11/52

12 12. 1 응용계층과이메일시스템 이메일주소 (electronic mail address) 이메일전송시스템에서사용하는주소로, 간단하고기억하기쉽도록구성 [ 그림 12-6] 도메인이름 : 메일이전송될메일목적지의도메인이름 지역영역 (local part) : 장치상의우편함의주소 인터넷과연결되지않은경우에는가장가까운메일게이트웨이의주소를갖거나, 혹은연 결되지않은경우에대한해결방안을지원하는소프트웨어를사용해야함 New 데이터통신과네트워킹응용계층과웹응용기법 12/52

13 12. 2 DHCP 기술 DHCP 란? 개발배경 인터넷사용의급증으로 IPv4 를기반으로하는인터넷구조로는호스트주소의부족등사용자의요구를충분히충족시키기가어려움 이에대한해결책으로 IPv6 로의대체가이루어지고있으나, IPv6 가완전하게 IPv4 를대체하여 상용화되기까지는다소시간이소요될전망 한정된 IP 주소를보다효율적으로사용하는방안으로동적 IP(dynamic IP) 기법인 DHCP 기술이개발됨 DHCP(Dynamic Host Configuration Protocol) - RFC 2131 정적혹은동적으로 IP 주소를할당하는기능을정의하는프로토콜 DHCP 는디스크가없는클라이언트의부팅을위해하드웨어주소를기반으로 IP 주소를할당하는 BOOTP(RFC 951) 의연장 DHCP 클라이언트는 DHCP 서버를찾기위해 발견방송패킷요청 (discovery broadcast packet request) 라는패킷을보냄 DHCP 클라이언트와서버프로세스는방송패킷을라우터로전송하는것이아니라, 지역간전송과정을통해처리 방송패킷에대한응답으로 DHCP 서버는 DHCP 클라이언트에게하나의 IP 주소를제공 New 데이터통신과네트워킹응용계층과웹응용기법 13/52

14 12. 2 DHCP 기술 New 데이터통신과네트워킹응용계층과웹응용기법 14/52 DHCP 구조및동작 DHCP 규격은 RFC 1533, 1534, 1541, 1542 등에규정 DHCP 서버와 DHCP 클라이언트간의동작 [ 그림 12-7] DHCP 클라이언트가 IP 대여를요구하면, DHCP 서버는 IP 대여서비스를제공한다는메시지를보냄 DHCP 클라이언트가 IP 대여서비스를선택하면서버는 IP 대여확인응답 동작종료 DHCP 의첫단계 ( 대여요청및제공 ) [ 그림 12-8] DHCP 클라이언트는부팅시, IP 주소를할당받기위해네트워크 IP 주소요청패킷인 DHCPDISCOVER 를보냄 DHCPDISCOVER 패킷의내용

15 12. 2 DHCP 기술 New 데이터통신과네트워킹응용계층과웹응용기법 15/52 DHCP 구조및동작

16 12. 2 IP DHCP 기술 New 데이터통신과네트워킹응용계층과웹응용기법 16/52 DHCP 기술 (1) 라우터가중간에있는경우라우터는 RFC 1542 를따라 DHCP 클라이언트가어떤서브네트워크에연결되어있는지를 DHCP 서버가판별할수있도록하고서브네트워크에적절한 IP 주소를할당함 다수의 DHCP 서버를가정 [ 그림 12-8] DHCP 서버들은클라이언트로부터이런요청을받으면클라이언트에게 DHCPOFFER 패킷을보냄 패킷의내용 만일모든 DHCP 서버에서응답이없다면, 9, 13, 16 초간격마다 0~1000msec 에해당하는임의시간을추가하여재시도 4 회의시도에도응답이없을경우에는포기하고, 이후 5 분마다다시 DHCP 서버에접속을시도 클라이언트로부터요청을받은모든 DHCP 서버는클라이언트에게응답을보내고, 클라이언트는그중에서한가지를선택

17 12. 2 IP DHCP 기술 New 데이터통신과네트워킹응용계층과웹응용기법 17/52 DHCP 기술 (2) 선택한 IP 주소가하나의서버에서대여하겠다고응답한것이므로다른서버에도이러한사실을알릴필요가있음 [ 그림 12-9] DHCPREQUEST 패킷의내용

18 12. 2 IP DHCP 기술 New 데이터통신과네트워킹응용계층과웹응용기법 18/52 DHCP 기술 (2)

19 12. 2 IP DHCP 기술 DHCP 기술 (3) DHCPREQUEST 패킷을 DHCP 서버가받으면 DHCPACK 을클라이언트에게전송 이러한패킷을보내는서버는클라이언트가선택한 IP 를대여하겠다고하는서버뿐임 나머지서버들은자신의대여가선택되지않음을알고다른클라이언트에게대여하기위해 IP 를보관 DHCPACK 패킷에는다음과같은내용이포함됨 New 데이터통신과네트워킹응용계층과웹응용기법 19/52

20 12. 2 IP DHCP 기술 IP 대여재경신 IP 주소의대여기간이종료되기전에 IP 주소를경신하여기간을연장하는메커니즘 대여기간이 1/2 이지난후 IP 주소를대여했던서버에 DHCPREQUEST 요청패킷전송 자신의 IP 주소를갖고있고, 어느서버가대여했는지를인지하고있어서, 정확한 IP 주소를패킷에기입할수있게됨 DHCP 서버는 IP 주소의대여기간을경신 변경된 DHCP 의추가옵션이있다면이옵션의내용을포함하여 DHCPACK 패킷전송 경신 작업 ipconfig/renew 라는명령을사용하여실행 New 데이터통신과네트워킹응용계층과웹응용기법 20/52

21 12. 3 웹과웹프로그래밍기법 웹과웹브라우저의기능 웹 (WWW) 과웹프로젝트 1989 년유럽핵물리공동연구소 (CERN) 의연구원이었던팀버너스리에의해서웹프로젝트시작 1990 년말에 NeXT 라는이름의컴퓨터에서동작하는최초의웹소프트웨어가발표 CERN 위원회에서개최한세미나와 1991 년도에개최된하이퍼텍스트학술대회에서이소프트웨어를이용한시연회 1992 년미국의슈퍼컴퓨팅센터 (NCSA) 에서 모자익 (Mosaic) 이라는이름의다중멀티플랫폼 (mutipltaform) 웹브라우저가무료배포 새로운인터넷시대 1994 년에팀버너스리는웹표준과정책지침 (guideline) 개발을목적으로하는미국비영리법인인 W3 컨소시엄 (W3C) 을창립하였고, 현재까지 W3C 를이끌며인터넷의발전에지대한공헌 정보의저장소 (repository) 라고할수있는웹은, 수많은서버로사용자가손쉽게접근하여다양한정보를얻을수있도록하게위해하이퍼텍스트구조형식을취함 웹브라우저 (web browser) 웹정보를검색하기위한프로그램 하이퍼텍스트의구조뿐만아니라각종언어의문서들을검색할수있음 브라우저의종류 : 마이크로소프트사의익스플로러, 구글사의크롬, 모질라사의파이어폭스, 애플사의사파리, 유럽의오페라등 New 데이터통신과네트워킹응용계층과웹응용기법 21/52

22 12. 3 웹과웹프로그래밍기법 웹브라우저의구조 웹브라우저의구조 [ 그림 12-11] 구성요소 : 제어기 (controller), 클라이언트프로토콜, 해석기 (interpreter) 로구분 제어기 : 입력장치부터입력을받아클라이언트프로그램을사용하여웹문서에접근 클라이언트프로토콜 : FTP, TELNET, HTTP 등이있음 해석기 : HTML, 자바 (java), 혹은자바스크립트등이사용됨 제작한홈페이지를다른사용자가검색하기위해서는웹서비스제공이가능한웹서버가필요 웹브라우저를이용해검색하고자하는웹사이트를지정하면 웹서버의정보가다시웹브라우저로전송 New 데이터통신과네트워킹응용계층과웹응용기법 22/52

23 12. 3 웹과웹프로그래밍기법 URL 이란? URL(Uniform Resource Locator) [ 그림 12-12] 웹문서가있는위치, 사용하는프로토콜, 특정웹페이지를지정하는파일명등에대한구체적인정보를나타내는표준 프로토콜 : 웹문서를검색하는 FTP, HTTP, News, TELNET 과같은클라이언트서버프로그램 호스트 : 정보가위치하고있는호스트컴퓨터 New 데이터통신과네트워킹응용계층과웹응용기법 23/52

24 12. 3 웹과웹프로그래밍기법 하이퍼텍스트전달프로토콜 (HTTP) 하이퍼텍스트 : 인터넷사용자 ( 클라이언트 ) 가필요한정보의자유로운검색을가능하도록해주는텍스트의전개방식 HTTP : 하이퍼텍스트방식의정보를교환하기위한하나의규칙 웹서버와클라이언트가상호데이터통신을하기위해사용하는하이퍼텍스트전송규약 HTTP 처리과정 : 요구 (request) 메시지와 응답 (response) 메시지로이루어짐 웹클라이언트가요구메시지를보내면 HTTP 처리과정이개시되고, 이에대한응답으로서버가응답메시지를보냄 New 데이터통신과네트워킹응용계층과웹응용기법 24/52

25 12. 3 웹과웹프로그래밍기법 요청메시지와응답메시지의구성형식 요청메시지의요청라인 (request line) : 요청유형영역, URL 영역, HTTP 버전영역으로구분 응답메시지의상태라인 (status line) : HTTP 버전영역, 상태코드, 상태서술문구 (phrase) 로구분 요청유형 : 사용하는메소드 (method) 가무엇인가에따라구분 GET : 서버로부터웹문서를요청할때사용 HEAD : 문서자체가아니라문서와관련된정보를요청할때사용 POST : 클라이언트에서웹서버로정보를전송하고자할때사용 PUT : 서버가클라이언트로문서를보낼때사용하는메소드 New 데이터통신과네트워킹응용계층과웹응용기법 25/52

26 12. 3 웹과웹프로그래밍기법 하이퍼텍스트 (hypertex) 문서를보다쉽게검색이가능하도록문서의일부를다른문서와연결 (hyperlink) 시킨텍스트 사용자가하이퍼링크로작성된임의의그림이나글자를클릭하면곧바로그글자나그림이연결된부분으로연계되도록함 일반적으로홈페이지는하이퍼링크로연결된문서들의집합으로작성됨 New 데이터통신과네트워킹응용계층과웹응용기법 26/52

27 12. 3 웹과웹프로그래밍기법 HTML(HyperText Markup Language) 웹문서를작성하는데사용되는일종의프로그램언어 HTML 문서는다른언어와달리마크업 (mark up) 언어로구성되어있어, 운영체제의종류와상관없이웹브라우저만으로도프로그램을실행할수있음 마크업 이란? 문서작성시태그 (tag) 를중심으로하여명령을내리거나지시를하는것 마크업의기본적인태그명령어 New 데이터통신과네트워킹응용계층과웹응용기법 27/52

28 12. 3 웹과웹프로그래밍기법 HTML 을이용한웹페이지작성과동작 HTML 을이용하여웹페이지를작성하려면 HTML 문서를제작할수있는편집기와 HTML 문서를볼수있는웹브라우저만있으면됨 HTML을이용하여작성된간단한프로그램 <html> : HTML 문서의시작을나타내는태그 </html> : HTML 문서의종료를나타내는태그 <html> 과 </html> 사이에있는 <head> 와 </head> : 머리글의시작과끝을나타냄 홈페이지생성 라는이름의폴더를만들고 그안에 홈페이지.html( 또는홈페이지.htm) 이라는이름의파일을생성 사용자웹브라우저에서 홈페이지.html 이란 이름의파일을읽으면웹페이지가만들어짐 [ 그림 12-15] New 데이터통신과네트워킹응용계층과웹응용기법 28/52

29 12. 3 웹과웹프로그래밍기법 웹프로그램의동작 사용자 ( 클라이언트 ) 가 HTTP 를이용하여웹서버로요구메시지를보내면, 서버는 HTTP 를이용하여 홈페이지.html 을포함하는응답메시지를전송 사용자 ( 클라이언트 ) 의브라우저는 HTML 해석기를동작시켜 홈페이지.html 의내용을화면상에나타냄 New 데이터통신과네트워킹응용계층과웹응용기법 29/52

30 12. 3 웹과웹프로그래밍기법 홈페이지배경설정 </head> 다음에 <body> -- </body> 를추가함 Bgcolor : 배경색 FFFCC : 색상기호 배경색을나타내는부분인 <body bgcolor= #FFFFCC > 구문에따라 [ 그림 12-17] 과같은배경색이나타남 New 데이터통신과네트워킹응용계층과웹응용기법 30/52

31 12. 3 웹과웹프로그래밍기법 배경화면설정과본문삽입 배경화면설정 홈페이지.html 파일이저장되어있는홈페이지폴더안에 pic 라는폴더를새로생성 pic 폴더에 back.jpg 라는파일을저장한후, <body background=#ffffcc > 에서 #FFFFCC 부분을원하는 배경그림파일명 으로변경 배경그림을지정하기위해서는 <body background= pic/back.jpg > 와같은내용을추가 본문삽입 본문은 <body> 와 </body> 사이에기록 <br> : 줄을변경하라 는의미의태그 가운데로글자를정렬하려면 <center> 와 </center> 사이에글자를기록 만일 back.jpg 라는이름의그림파일이없다면배경은흰색으로처리 New 데이터통신과네트워킹응용계층과웹응용기법 31/52

32 12. 3 웹과웹프로그래밍기법 HTML 을이용한웹페이지작성과동작 본문삽입 이와같이작성된최종 홈페이지.html 파일을실행하면 [ 그림 12-18] 에서와같은결과가나옴 글자크기바꾸기 <font size=2> 와 </font> 사이의글자크기가변함 글자크기 (font size) 는 1~7 까지선택가능함 New 데이터통신과네트워킹응용계층과웹응용기법 32/52

33 12. 3 웹과웹프로그래밍기법 글꼴바꾸기와다른문서와의연결 글꼴바꾸기 <font face=arial> 폰트 </font>, <b> 진하게 </b>, <i> 이탤릭 </i>, <u> 밑줄 </u>, <tt> 타자체 </tt> 등이있음 작성된 홈페이지글꼴.html 파일을실행하면 [ 그림 12-19] 와같은결과가나옴 다른문서와의연결 하이퍼텍스트로작성된웹문서들사이에서상호간연결 (link) 을통해보고자할때에는연결태그인 <A> 를사용 <A> : 연결속성에는 name 과 href 가있음 Name : 현재문서내에서의연결을위한것으로 <A name= 연결할경로명 > 과같은형식을가짐 href(hyperlink Reference) : 다른문서와의연결을위한것으로 <A href= 연결할경로명 > 과같은 형식으로사용 New 데이터통신과네트워킹응용계층과웹응용기법 33/52

34 12. 3 웹과웹프로그래밍기법 New 데이터통신과네트워킹응용계층과웹응용기법 34/52 HTML 을이용한웹페이지작성과동작 예제

35 12. 4 자바와웹응용기법 CGI 프로그램과자바 CGI(Common Gateway Interface) 프로그램 웹페이지를동적으로작성하고자하는경우에활용할수있는매우유용한기술 CGI 기술을이용하여사용자의요구에따라다양한정보를처리하는발전된기법이개발 CGI를통해서전달된사용자의요청사항들을식별하며, 그요청사항에대한응답을생성 자동으로 HTML문서의내용을변경할수있도록하기위해서웹브라우저와웹서버간의정보전달을위한인터페이스를제공 CGI 인터페이스를이용하면사용자가원하는웹페이지의내용을변경하여보여줄수있음 자바 (java) 프로그래밍기법 적극적으로웹을사용하여사용자상호간의대화형서비스를가능하게해주는기술 1991 년선마이크로시스템 (Sun Microsystems) 에서개발시작 제임스고슬링 : 당시단순하고버그가없는가전전자제품을만드는것을목적으로소프트웨어개발에착수 초기에는 C++ 의컴파일러를확장하는방법을사용하려했으나, C++ 가특정 CPU 에따라컴파일작업이실행되어야하는속성때문에서로다른장치들을연결해야하는환경에서는적합하지못함 다양한가전제품에독립적으로적용될수있는새로운프로그래밍언어가개발필요 결과로오크 (Oak) 라는프로그래밍언어가탄생 이후오크 (Oak) 는자바 (java) 로이름변경 New 데이터통신과네트워킹응용계층과웹응용기법 35/52

36 12. 4 자바와웹응용기법 애플리케이션과자바애플릿 자바프로그램 C 나 C++ 프로그램처럼에디터를이용하여소스파일을작성하고, 자바컴파일러를이용하여실행파일을생성 자바실행파일 바이트코드 (bytecode) 라는형식을사용 이유? 하드웨어나운영체제와관계없이프로그램이실행되도록하기위해 자바로작성된응용프로그램은다양한하드웨어와운영체제에서변경없이실행가능 자바 애플릿 웹브라우저를통해서곧바로실행가능한프로그램 자바 응용프로그램 웹브라우저가없어도독립적으로실행가능한프로그램 자바소스파일의생성과컴파일, 실행과정 [ 그림 12-20] Name.java 라는자바소스파일작성 Name.java 파일을컴파일하면 Name.class 파일생성 이렇게생성된 Name.class 파일을 HTML 파일로변경하고웹브라우저를이용해실행시켜결과확인 New 데이터통신과네트워킹응용계층과웹응용기법 36/52

37 12. 4 자바와웹응용기법 자바프로그램의특징 ➊ 자바프로그램은비교적단순한구조를취하므로손쉽게프로그램을작성할수있음 자바는널리사용되는객체지향언어인 C++ 와매우유사한구조를가짐 ➋ 자바는모든것이객체로취급되는객체지향언어이지만, C++ 에서와같이전역변수와독립함수를사용하지않고객체들간의상호작용방식이적용됨 하나의객체는객체의상태를나타내는데이터변수와객체의동작을정의하기위한함수로구성 데이터와함수를객체라는단위로묶음으로써코드관리및유지가용이 중요한데이터를객체내에서처리되도록하여필요한경우에만데이터에접근이가능 ➌ 자바는특정플랫폼 (platform) 이아닌다양한네트워크환경과하드웨어에서동작이가능하도록설계됨 다양한운영체제와언어환경에서도실행이가능 자바컴파일러는 바이트코드 라는중립적인코드를사용하여플랫폼에대한독립성을유지 ➍ 높은신뢰성과안정성을고려하여설계됨 컴파일을수행할때에엄격한데이터형을검사함으로써프로그램실행시발생할수있는비정상적인동작최소화 ➎ 자바는멀티스레드 (multi-thread) 기능을제공함 멀티스레드 : 하나의프로그램안에서여러작업을동시에처리할수있는기능 ( 예 ) 웹브라우저를통해파일을다운받으면서동시에다른사이트를검색이가능하도록하는기능 New 데이터통신과네트워킹응용계층과웹응용기법 37/52

38 12. 4 자바와웹응용기법 클래스의형식 클래스정의 class 라는키워드와클래스이름, 기호 { } 를이용함 클래스형식 < > 안의내용은옵션에해당하여필요한경우에만사용 extends : 클래스를상속 implements : 인터페이스를사용 Modifiers : 정의하고자하는클래스의성질을지정해주는부분 public, final, abstract 중에서하나의값을사용함 이값에의해클래스의접근여부나상속여부등이결정됨 class 앞이공백상태이면디폴트 default 가되어 public 이선언된것으로취급 public : 다른클래스에서접근을허용한다는의미이며, 더이상서브클래스를사용하지않는경우에는 final 로선언 abstract : abstract 로선언된메소드를가질수있음 abstract 메소드는선언만있고실제내용이없는추상적인메소드로, 단지슈퍼클래스로서전체적인프레임만지정하기위해서사용되는것임 New 데이터통신과네트워킹응용계층과웹응용기법 38/52

39 12. 4 자바와웹응용기법 클래스의정의와변수 클래스정의 클래스의성질과이름과슈퍼클래스를지정한다음에는실제클래스의내부환경을정의해야함 클래스내부에는클래스변수와메소드만이들어갈수있음 클래스변수는클래스의여러가지상태에관한정보의기억장소에해당함 메소드는변수에접근하는방법이나클래스의동작방법을정의함 클래스변수정의 클래스에서는정수형, 실수형등대부분의자료형 ( 데이터형태 ) 을변수로사용할수있음 클래스변수에대한접근을제한하기위해서는 public, private, protected 와같은키워드를사용함 public 으로선언된변수 : 언제어디서나접근할수있는속성을가짐 private 로선언된변수 : 클래스내부에서만접근할수있고외부에서는접근할수가없음 protected 로선언된변수 : private 처럼클래스내부에서만접근할수있고이클래스에서상속된서브클래스에서도상속이가능하지만, 외부에서접근하는것은금지 만일 public, private, protected 중어느것도사용되지않고그대로변수가선언된다면 public 처럼외부에서접근할수있게됨 변수에대한접근을제한하는것은객체지향프로그래밍의특징중에하나인정보은닉 (hiding) 기법을구현하기위함 객체안에변수를은닉함으로써변수값이임의로변경되는것을방지할수있음 New 데이터통신과네트워킹응용계층과웹응용기법 39/52

40 12. 4 자바와웹응용기법 메소드 메소드에대한정의또한클래스에서사용했던접근제한키워드를그대로사용하면됨 메소드는함수에해당하기때문에함수가갖는속성들을그대로가짐 함수는반환값 (return) 을먼저지정하고함수이름을쓴후에매개변수들을나열하는방식을취함 testprint 메소드는 public 으로선언하여접근이가능하도록열어놓고있음 반환값은 void 로선언함으로써아무것도반환하지않는다는것을알려줌 매개변수로 x 와 y 라는 int 형자료를선언하는데, 이메소드는매개변수에 int 형값을넣은상태에서사용해야함을의미 클래스변수와메소드의성질선언 클래스변수와메소드의속성을선언할수있는또다른종류의키워드가있음 클래스변수와메소드의수명과존재유형을지정하기위한키워드 : static, final, transient, volatile static 는변수가클래스에만존재할수있도록하며, 클래스에서선언된여러개의객체들이동시에공유할수있는유일한클래스변수와메소드가됨 클래스는오직하나만존재하지만객체는원하는숫자만큼생성할수있으므로 static 이지정되지않은변수들은객체가하나선언될때마다하나씩생성됨 New 데이터통신과네트워킹응용계층과웹응용기법 40/52

41 12. 4 자바와웹응용기법 메모리할당과클래스생성자 new 연산자를이용한객체의메모리할당 객체의선언만으로는메모리가할당되지않으며, 메모리가할당되지않으면변수값을기억할수있는주소가생성되지않아메소드를사용할수없게됨 이런이유로메모리를할당하는루틴 (routine) 이필요하게되고, 객체의메모리할당을하려면 new 연산자를사용하면됨 매개변수가있는생성자를호출하는경우라면아래와같이메모리할당루틴을활용함 클래스생성자 클래스의초기화를위해제공하는메소드 반환값을지정하지않아도되지만이름은클래스와동일해야함 클래스의이름을갖는메소드가있다면, 모두생성자에속한다고볼수있음 이생성자는다른메소드처럼호출할수는없으며, 객체를선언하고메모리를할당할때자동으로호출됨 New 데이터통신과네트워킹응용계층과웹응용기법 41/52

42 12. 4 자바와웹응용기법 New 데이터통신과네트워킹응용계층과웹응용기법 42/52 자바를이용한웹페이지작성법 - 소스코드 import java.applet.* 과 import java.awt.graphics 는자바프로그램을시작하기전에 applet 이라는자바패키지와 Graphics 라는패키지를본프로그램에첨부하겠다는의미 public class hello_java extends Applet 은 Hello_java 를 Applet 에서확장하겠다는의미이므로, 이프로그램이자바애플릿프로그램임을알려줌 클래스의이름이 hello_java 임을알수있음 public void paint(graphics g) 는 paint( ) 라는함수가 Graphics g 라는인자를받아서화면상에출력하도록하는, 즉애플릿을실행해주는함수의일부분임 something s=new something(105); 는변수를 s something 의객체유형으로선언하는부분임 C++ 와는달리선언만으로는객체를생성하지못하기때문에, new 라는연산자를통해서객체를생성해야함

43 12. 4 자바와웹응용기법 자바를이용한웹페이지작성 클래스의멤버를선언하는부분 이미 hello_java 라고선언된모 (parent) 클래스로부터하위 (child) 클래스를선언하고있음 something 이라는하위클래스와메소드및변수를선언함 value 는멤버변수를의미하고, something(int value) 는멤버함수로서선언된 value 를값으로 받아수행하는코드 this.value=value; 의코드는이미생성자를통해 value 멤버에특정값 ( 예를들어 105 란값 ) 을할당 매개변수이름과클래스이름이이처럼중복되면, 이를구별하기위해서는매개변수이름을변경하는방법을선택하거나 this 라는키워드를사용하여구분 위의코드에서함수는먼저 string 변수 s 를선언함 괄호왼쪽에문자열객체 s 를지정하고, 괄호오른쪽의값을지정 반환문을사용해서 tostring 은문자열을호출함수에반환 / Something 클래스멤버변수 value 는 int 형임 자바는 int,float 등과같이기본형에대하여 tostring 함수에해당하는내장된함수를제공 tostring 함수의경우, string 식에서변수 value 를사용할때내장된함수를사용해서변수값을 int 에서 string 으로변환함 New 데이터통신과네트워킹응용계층과웹응용기법 43/52

44 12. 5 HTML5 기술 HTML5 란무엇인가 등장배경 마크업정보란 > 문서의논리구조나서식지정, 단어나구와같은요소를동일문서혹은타문서에있는다른문서요소들과연결하는방법을지정하여컴퓨터에지시하는정보를말함 HTML 은 1993 년웹표준의초안이발표된이후 HTML 2.0, 3.2, 4.0 버전이발표 1999 년 HTML 4.01 버전이출시되고, 이후웹표준은 XML 과 XHTML 로초점이옮겨갔음에도불구하고여전히웹콘텐츠는 HTML 로제공 이에따라새로운차원의웹플랫폼에대한필요성이대두되었으며, 그에따라 2004 년에 WHATWG 가결성되고, 2008 년에는 HTML5 표준의초안이발표됨 HTML5 란? 웹하이퍼텍스트응용기술워킹그룹 (WHATWG) 과 W3C HTML 워킹그룹에서개발이진행중인웹표준명세서로, 웹응용 (application) 을위한 HTML4, XHTML1 의새로운버전 ( 구조 ) HTML5 네트워크, 저장장치, 사용자, 다양한응용들과상호연동되고, 모든기기와 플랫폼에서 HTML5 기능이동작하는개방형웹플랫폼 (open web platform) 구조 [ 그림 12-21] New 데이터통신과네트워킹응용계층과웹응용기법 44/52

45 12. 5 HTML5 기술 HTML5 의특성 호환성 (compatibility) HTML5 는기존의 HTML 문서를지원하는진화된버전 HTML5 의특성이지원되지않을경우단계적으로기능을축소시킨다는점에유의 유용성 (utility) HTML5는개발자보다도사용자를최우선으로함 XML로유효한 HTML5 코드를생성하기위해 XHTML5도만들어냄 HTML5는완벽보다는실용성이강조됨 상호운용성 (interoperability) HTML5는불필요한복잡성을최대한제거, 단순성을최우선으로하여상호운용성보장 단순함을유지하면서명확한표준이되려면상호운용성을보장하는많은규칙이필요 HTML5 표준명세서의분량은더욱늘어나게됨 보편적접근성 (universal access) HTML5 는장애가있는사용자를지원하며, 가능한한모든기기와플랫폼에서동작하도록하는미디어의독립성과전세계언어지원이라는개념으로접근하고있음 New 데이터통신과네트워킹응용계층과웹응용기법 45/52

46 12. 5 HTML5 기술 HTML5 의주요기술 (1) HTML5 를기반으로구현된앱은대부분모바일플랫폼에적용가능하며, 이미지나애니메이션, 동영상등도별도의플러그인설치가없어도구현가능 HTML5 만으로완전한인터랙티브웹을생성하지는못함 먼저 HTML5 로프레임 (frame) 을만든다음, CSS 로글꼴이나크기, 색상등의시각적요소들을추가하고, 자바스크립트로인터랙션 ( 이벤트 ) 이발생하도록하고있기때문 보다다양한이벤트를제공하고완전한인터랙티브웹을생성하기위해서는? jquery, YUI 등의자바스크립터나 Skeleton 과같은 CSS 프레임워크와 jquery Mobile, Sencha 등과같은모바일웹프레임워크의개발이요구됨 새로운차원의웹플랫폼으로서 HTML5 기술은다양한기술적요소를포함하며, 문서의구조와데이터의의미를보다명확히하기위한시멘틱요소추가 다검색엔진및문서해석기등에서웹문서판별이정확하고용이함 시멘틱요소의예 ) <section>, <article>, <aside>, <header>, <footer>, <address> 등 New 데이터통신과네트워킹응용계층과웹응용기법 46/52

47 12. 5 HTML5 기술 HTML5 의주요기술 (2) 캔버스 API 캔버스 (Canvas) : 애플맥에서대시보드위젯생성시도입된개념 이전에는어도비의드로잉 API 나 SVG(Scalable Vector Graphics), 자바스크립트등을사용하였음 캔버스 API 를사용하면그래픽, 차트, 그림, 애니메이션을동적으로생성하고처리가능 캔버스요소를웹페이지에추가하면페이지내에사각영역이생성되고, 페이지에삽입된캔버스요소는자바스크립트를이용하여그래픽, 선, 텍스트추가, 그림, 애니메이션등원하는대로조작이가능함 캔버스요소를웹페이지에추가하는예로다음코드가실행되면사각영역이생성됨 캔버스를사용하려면먼저컨텍스트데이터를얻은다음, 이를통해동작을실행시킴 캔버스 3D(WebGL) 를활용하면 3D 그래픽표현에대한지원도가능함 New 데이터통신과네트워킹응용계층과웹응용기법 47/52

48 12. 5 HTML5 기술 HTML5 의주요기술 (3) 멀티미디어캔버스 웹상에서비디오, 오디오를표현하기위한태그및 API 를지원 비디오컨테이너파일 오디오트랙, 비디오트랙, 추가적인메타데이터로구성 비디오컨테이너형식 : aviaudio video interleave, flvflash video, mp4mpeg4, mkvmatroska, ogvogg 등 비디오, 오디오요소에대한접근성에관한기술은아직미진함 웹스토리지와웹워커 웹스토리지 (web storage) 웹사이트의정보를사용자의 PC에저장할수있는메커니즘을제공 기존쿠키의용량제한및트래픽부담의단점을해소 웹워커 (web worker) 비동기백그라운드처리수행이가능한 API 를제공 멀티쓰레드웹응용프로그램개발이가능해짐 New 데이터통신과네트워킹응용계층과웹응용기법 48/52

49 12. 5 HTML5 기술 HTML5 의주요기술 (4) 응용캐쉬와서버푸시 응용캐쉬 인터넷이연결되지않은상태에서오프라인응용프로그램구현이가능하도록지원 서버푸시 (server push) 서버로부터의데이터를푸시받을수있는서버전송이벤트 (server-sent event) 제공 위치정보서비스와드래그앤드롭 위치정보서비스 지리정보및위치정보를이용할수있는 API 를제공 ( 장치종속적임 ) 드래그앤드롭 (drag & drop) 웹페이지내혹은외부개체를웹페이지로드래그, 드롭이가능한 API 를제공 New 데이터통신과네트워킹응용계층과웹응용기법 49/52

50 12. 5 HTML5 기술 New 데이터통신과네트워킹응용계층과웹응용기법 50/52 HTML5 의주요기술 예제

51 12. 5 HTML5 기술 새로운 API HTML5 는자바스크립트와함께사용할수있는다양한 API 를지정하며, 기존의문서객체모델 (DOM) 인터페이스확장 응용계층과웹응용기법 [ 그림 12-22] 가장안쪽원내부에있는기술들은초기 WHATWG HTML5 명세들 두번째원내부에는 W3C HTML5 관련기술의명세 세번째원내부에는 HTML5 관련기술들을구분 New 데이터통신과네트워킹응용계층과웹응용기법 51/52

52 Q & A New 데이터통신과네트워킹응용계층과웹응용기법 52/52

PowerPoint Presentation

PowerPoint Presentation Class - Property Jo, Heeseung 목차 section 1 클래스의일반구조 section 2 클래스선언 section 3 객체의생성 section 4 멤버변수 4-1 객체변수 4-2 클래스변수 4-3 종단 (final) 변수 4-4 멤버변수접근방법 section 5 멤버변수접근한정자 5-1 public 5-2 private 5-3 한정자없음

More information

q 이장에서다룰내용 1 객체지향프로그래밍의이해 2 객체지향언어 : 자바 2

q 이장에서다룰내용 1 객체지향프로그래밍의이해 2 객체지향언어 : 자바 2 객체지향프로그래밍 IT CookBook, 자바로배우는쉬운자료구조 q 이장에서다룰내용 1 객체지향프로그래밍의이해 2 객체지향언어 : 자바 2 q 객체지향프로그래밍의이해 v 프로그래밍기법의발달 A 군의사업발전 1 단계 구조적프로그래밍방식 3 q 객체지향프로그래밍의이해 A 군의사업발전 2 단계 객체지향프로그래밍방식 4 q 객체지향프로그래밍의이해 v 객체란무엇인가

More information

JAVA PROGRAMMING 실습 08.다형성

JAVA PROGRAMMING 실습 08.다형성 2015 학년도 2 학기 1. 추상메소드 선언은되어있으나코드구현되어있지않은메소드 abstract 키워드사용 메소드타입, 이름, 매개변수리스트만선언 public abstract String getname(); public abstract void setname(string s); 2. 추상클래스 abstract 키워드로선언한클래스 종류 추상메소드를포함하는클래스

More information

PowerPoint Presentation

PowerPoint Presentation public class SumTest { public static void main(string a1[]) { int a, b, sum; a = Integer.parseInt(a1[0]); b = Integer.parseInt(a1[1]); sum = a + b ; // 두수를더하는부분입니다 System.out.println(" 두수의합은 " + sum +

More information

슬라이드 1

슬라이드 1 -Part3- 제 4 장동적메모리할당과가변인 자 학습목차 4.1 동적메모리할당 4.1 동적메모리할당 4.1 동적메모리할당 배울내용 1 프로세스의메모리공간 2 동적메모리할당의필요성 4.1 동적메모리할당 (1/6) 프로세스의메모리구조 코드영역 : 프로그램실행코드, 함수들이저장되는영역 스택영역 : 매개변수, 지역변수, 중괄호 ( 블록 ) 내부에정의된변수들이저장되는영역

More information

PowerPoint Presentation

PowerPoint Presentation 객체지향프로그래밍 클래스, 객체, 메소드 ( 실습 ) 손시운 ssw5176@kangwon.ac.kr 예제 1. 필드만있는클래스 텔레비젼 2 예제 1. 필드만있는클래스 3 예제 2. 여러개의객체생성하기 4 5 예제 3. 메소드가추가된클래스 public class Television { int channel; // 채널번호 int volume; // 볼륨 boolean

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 CHAPTER 13. HTML5 위치정보와드래그앤드롭 SVG SVG(Scalable Vector Graphics) 는 XML- 기반의벡터이미지포맷 웹에서벡터 - 기반의그래픽을정의하는데사용 1999 년부터 W3C 에의하여표준 SVG 의장점 SVG 그래픽은확대되거나크기가변경되어도품질이손상되지않는다. SVG 파일에서모든요소와속성은애니메이션이가능하다. SVG 이미지는어떤텍스트에디터로도생성하고편집할수있다.

More information

Microsoft Word - src.doc

Microsoft Word - src.doc IPTV 서비스탐색및콘텐츠가이드 RI 시스템운용매뉴얼 목차 1. 서버설정방법... 5 1.1. 서비스탐색서버설정... 5 1.2. 컨텐츠가이드서버설정... 6 2. 서버운용방법... 7 2.1. 서비스탐색서버운용... 7 2.1.1. 서비스가이드서버실행... 7 2.1.2. 서비스가이드정보확인... 8 2.1.3. 서비스가이드정보추가... 9 2.1.4. 서비스가이드정보삭제...

More information

2009년 상반기 사업계획

2009년 상반기 사업계획 웹 (WWW) 쉽게배우는데이터통신과컴퓨터네트워크 학습목표 웹서비스를위한클라이언트 - 서버구조를살펴본다. 웹서비스를지원하는 APM(Apache, PHP, MySQL) 의연동방식을이해한다. HTML 이지원하는기본태그명령어와프레임구조를이해한다. HTTP 의요청 / 응답메시지의구조와동작원리를이해한다. CGI 의원리를이해하고 FORM 태그로사용자입력을처리하는방식을알아본다.

More information

제11장 프로세스와 쓰레드

제11장 프로세스와 쓰레드 제9장자바쓰레드 9.1 Thread 기초 (1/5) 프로그램 명령어들의연속 (a sequence of instruction) 프로세스 / Thread 실행중인프로그램 (program in execution) 프로세스생성과실행을위한함수들 자바 Thread 2 9.1 Thread 기초 (2/5) 프로세스단위작업의문제점 프로세스생성시오버헤드 컨텍스트스위치오버헤드

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 Power Java 제 7 장클래스와객체 이번장에서학습할내용 객체지향이란? 객체 메시지 클래스 객체지향의장점 String 클래스 객체지향개념을완벽하게이해해야만객체지향설계의이점을활용할수있다. 실제세계는객체로이루어진다. 객체지향이란? 실제세계를모델링하여소프트웨어를개발하는방법 절차지향과객체지향 절차지향프로그래밍 (procedural programming): 문제를해결하는절차를중요하게생각하는방법

More information

<4D F736F F F696E74202D20C1A63038C0E520C5ACB7A1BDBABFCD20B0B4C3BC4928B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20C1A63038C0E520C5ACB7A1BDBABFCD20B0B4C3BC4928B0ADC0C729205BC8A3C8AF20B8F0B5E55D> Power Java 제 8 장클래스와객체 I 이번장에서학습할내용 클래스와객체 객체의일생직접 메소드클래스를 필드작성해 UML 봅시다. QUIZ 1. 객체는 속성과 동작을가지고있다. 2. 자동차가객체라면클래스는 설계도이다. 먼저앞장에서학습한클래스와객체의개념을복습해봅시다. 클래스의구성 클래스 (class) 는객체의설계도라할수있다. 클래스는필드와메소드로이루어진다.

More information

gnu-lee-oop-kor-lec06-3-chap7

gnu-lee-oop-kor-lec06-3-chap7 어서와 Java 는처음이지! 제 7 장상속 Super 키워드 상속과생성자 상속과다형성 서브클래스의객체가생성될때, 서브클래스의생성자만호출될까? 아니면수퍼클래스의생성자도호출되는가? class Base{ public Base(String msg) { System.out.println("Base() 생성자 "); ; class Derived extends Base

More information

Microsoft PowerPoint - chap06-2pointer.ppt

Microsoft PowerPoint - chap06-2pointer.ppt 2010-1 학기프로그래밍입문 (1) chapter 06-2 참고자료 포인터 박종혁 Tel: 970-6702 Email: jhpark1@snut.ac.kr 한빛미디어 출처 : 뇌를자극하는 C프로그래밍, 한빛미디어 -1- 포인터의정의와사용 변수를선언하는것은메모리에기억공간을할당하는것이며할당된이후에는변수명으로그기억공간을사용한다. 할당된기억공간을사용하는방법에는변수명외에메모리의실제주소값을사용하는것이다.

More information

Network Programming

Network Programming Part 5 확장된 Network Programming 기술 1. Remote Procedure Call 2. Remote Method Invocation 3. Object Request Broker 2. Java RMI

More information

슬라이드 1

슬라이드 1 정적메모리할당 (Static memory allocation) 일반적으로프로그램의실행에필요한메모리 ( 변수, 배열, 객체등 ) 는컴파일과정에서결정되고, 실행파일이메모리에로드될때할당되며, 종료후에반환됨 동적메모리할당 (Dynamic memory allocation) 프로그램의실행중에필요한메모리를할당받아사용하고, 사용이끝나면반환함 - 메모리를프로그램이직접관리해야함

More information

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D313939392D382E687770>

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D313939392D382E687770> i ii iii iv v vi 1 2 3 4 가상대학 시스템의 국내외 현황 조사 가상대학 플랫폼 개발 이상적인 가상대학시스템의 미래상 제안 5 웹-기반 가상대학 시스템 전통적인 교수 방법 시간/공간 제약을 극복한 학습동기 부여 교수의 일방적인 내용전달 교수와 학생간의 상호작용 동료 학생들 간의 상호작용 가상대학 운영 공지사항,강의록 자료실, 메모 질의응답,

More information

Windows 8에서 BioStar 1 설치하기

Windows 8에서 BioStar 1 설치하기 / 콘텐츠 테이블... PC에 BioStar 1 설치 방법... Microsoft SQL Server 2012 Express 설치하기... Running SQL 2012 Express Studio... DBSetup.exe 설정하기... BioStar 서버와 클라이언트 시작하기... 1 1 2 2 6 7 1/11 BioStar 1, Windows 8 BioStar

More information

Microsoft PowerPoint - web-part03-ch20-XMLHttpRequest기본.pptx

Microsoft PowerPoint - web-part03-ch20-XMLHttpRequest기본.pptx 과목명 : 웹프로그래밍응용교재 : 모던웹을위한 JavaScript Jquery 입문, 한빛미디어 Part3. Ajax Ch20. XMLHttpRequest 2014년 1학기 Professor Seung-Hoon Choi 20 XMLHttpRequest XMLHttpRequest 객체 자바스크립트로 Ajax를이용할때사용하는객체 간단하게 xhr 이라고도부름 서버

More information

JAVA PROGRAMMING 실습 05. 객체의 활용

JAVA PROGRAMMING 실습 05. 객체의 활용 public class Person{ public String name; public int age; } public Person(){ } public Person(String s, int a){ name = s; age = a; } public String getname(){ return name; } @ 객체의선언 public static void main(string

More information

다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) <% RequestDispatcher dispatcher = request.getrequestdispatcher(" 실행할페이지.jsp");

다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) <% RequestDispatcher dispatcher = request.getrequestdispatcher( 실행할페이지.jsp); 다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) RequestDispatcher dispatcher = request.getrequestdispatcher(" 실행할페이지.jsp"); dispatcher.forward(request, response); - 위의예에서와같이 RequestDispatcher

More information

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 (   ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각 JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( http://java.sun.com/javase/6/docs/api ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각선의길이를계산하는메소드들을작성하라. 직사각형의가로와세로의길이는주어진다. 대각선의길이는 Math클래스의적절한메소드를이용하여구하라.

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 HTML5 웹프로그래밍입문 1 장. 인터넷과웹환경의발전 목차 1.1 인터넷의역사 1.2 HTML의발전 1.3 인터넷의기본개념 1.4 웹브라우저의종류 소스코드실행사이트 주소 : http://webclass.me/html5_2e 폴더 ch02/ ~ ch14/ 에각장의예제가있어서실행결과확인및소스보기가가능합니다. 1.1 인터넷의역사 1.1.1 인터넷의발전과정 1.1.2

More information

1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과

1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과 1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과 학습내용 1. Java Development Kit(JDK) 2. Java API 3. 자바프로그래밍개발도구 (Eclipse) 4. 자바프로그래밍기초 2 자바를사용하려면무엇이필요한가? 자바프로그래밍개발도구 JDK (Java Development Kit) 다운로드위치 : http://www.oracle.com/technetwork/java/javas

More information

<4D F736F F F696E74202D20C1A63236C0E520BED6C7C3B8B428B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20C1A63236C0E520BED6C7C3B8B428B0ADC0C729205BC8A3C8AF20B8F0B5E55D> Power Java 제 26 장애플릿 이번장에서학습할내용 애플릿소개 애플릿작성및소개 애플릿의생명주기 애플릿에서의그래픽컴포넌트의소개 Applet API의이용 웹브라우저상에서실행되는작은프로그램인애플릿에대하여학습합니다. 애플릿이란? 애플릿은웹페이지같은 HTML 문서안에내장되어실행되는자바프로그램이다. 애플릿을실행시키는두가지방법 1. 웹브라우저를이용하는방법 2. Appletviewer를이용하는방법

More information

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Function) 1. 함수의개념 입력에대해적절한출력을발생시켜주는것 내가 ( 프로그래머 ) 작성한명령문을연산, 처리, 실행해주는부분 ( 모듈 ) 자체적으로실행되지않으며,

More information

JVM 메모리구조

JVM 메모리구조 조명이정도면괜찮조! 주제 JVM 메모리구조 설미라자료조사, 자료작성, PPT 작성, 보고서작성. 발표. 조장. 최지성자료조사, 자료작성, PPT 작성, 보고서작성. 발표. 조원 이용열자료조사, 자료작성, PPT 작성, 보고서작성. 이윤경 자료조사, 자료작성, PPT작성, 보고서작성. 이수은 자료조사, 자료작성, PPT작성, 보고서작성. 발표일 2013. 05.

More information

Microsoft PowerPoint - 04-UDP Programming.ppt

Microsoft PowerPoint - 04-UDP Programming.ppt Chapter 4. UDP Dongwon Jeong djeong@kunsan.ac.kr http://ist.kunsan.ac.kr/ Dept. of Informatics & Statistics 목차 UDP 1 1 UDP 개념 자바 UDP 프로그램작성 클라이언트와서버모두 DatagramSocket 클래스로생성 상호간통신은 DatagramPacket 클래스를이용하여

More information

PowerPoint Presentation

PowerPoint Presentation Package Class 1 Heeseung Jo 목차 section 1 패키지개요와패키지의사용 section 2 java.lang 패키지의개요 section 3 Object 클래스 section 4 포장 (Wrapper) 클래스 section 5 문자열의개요 section 6 String 클래스 section 7 StringBuffer 클래스 section

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 제 5 장생성자와접근제어 1. 객체지향기법을이해한다. 2. 클래스를작성할수있다. 3. 클래스에서객체를생성할수있다. 4. 생성자를이용하여객체를초기화할수 있다. 5. 접근자와설정자를사용할수있다. 이번장에서만들어볼프로그램 생성자 생성자 (constructor) 는초기화를담당하는함수 생성자가필요한이유 #include using namespace

More information

Microsoft PowerPoint - 2강

Microsoft PowerPoint - 2강 컴퓨터과학과 김희천교수 학습개요 Java 언어문법의기본사항, 자료형, 변수와상수선언및사용법, 각종연산자사용법, if/switch 등과같은제어문사용법등에대해설명한다. 또한 C++ 언어와선언 / 사용방법이다른 Java의배열선언및사용법에대해서설명한다. Java 언어의효과적인활용을위해서는기본문법을이해하는것이중요하다. 객체지향의기본개념에대해알아보고 Java에서어떻게객체지향적요소를적용하고있는지살펴본다.

More information

이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론

이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론 이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론 2. 관련연구 2.1 MQTT 프로토콜 Fig. 1. Topic-based Publish/Subscribe Communication Model. Table 1. Delivery and Guarantee by MQTT QoS Level 2.1 MQTT-SN 프로토콜 Fig. 2. MQTT-SN

More information

설계란 무엇인가?

설계란 무엇인가? 금오공과대학교 C++ 프로그래밍 jhhwang@kumoh.ac.kr 컴퓨터공학과 황준하 9 강. 클래스의활용목차 멤버함수의외부정의 this 포인터 friend 선언 static 멤버 임시객체 1 /17 9 강. 클래스의활용멤버함수의외부정의 멤버함수정의구현방법 내부정의 : 클래스선언내에함수정의구현 외부정의 클래스선언 : 함수프로토타입 멤버함수정의 : 클래스선언외부에구현

More information

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx #include int main(void) { int num; printf( Please enter an integer "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 을 작성하면서 C 프로그램의

More information

XSS Attack - Real-World XSS Attacks, Chaining XSS and Other Attacks, Payloads for XSS Attacks

XSS Attack - Real-World XSS Attacks, Chaining XSS and Other Attacks, Payloads for XSS Attacks XSS s XSS, s, May 25, 2010 XSS s 1 2 s 3 XSS s MySpace 사건. Samy (JS.Spacehero) 프로필 페이지에 자바스크립트 삽입. 스크립트 동작방식 방문자를 친구로 추가. 방문자의 프로필에 자바스크립트를 복사. 1시간 만에 백만 명이 친구등록. s XSS s 위험도가 낮은 xss 취약점을 다른 취약점과 연계하여

More information

게시판 스팸 실시간 차단 시스템

게시판 스팸 실시간 차단 시스템 오픈 API 2014. 11-1 - 목 차 1. 스팸지수측정요청프로토콜 3 1.1 스팸지수측정요청프로토콜개요 3 1.2 스팸지수측정요청방법 3 2. 게시판스팸차단도구오픈 API 활용 5 2.1 PHP 5 2.1.1 차단도구오픈 API 적용방법 5 2.1.2 차단도구오픈 API 스팸지수측정요청 5 2.1.3 차단도구오픈 API 스팸지수측정결과값 5 2.2 JSP

More information

PowerPoint Presentation

PowerPoint Presentation 객체지향프로그래밍 인터페이스, 람다식, 패키지 ( 실습 ) 손시운 ssw5176@kangwon.ac.kr 예제 1. 홈네트워킹 public interface RemoteControl { public void turnon(); // 가전제품을켠다. public void turnoff(); // 가전제품을끈다. 인터페이스를구현 public class Television

More information

Microsoft PowerPoint 웹 연동 기술.pptx

Microsoft PowerPoint 웹 연동 기술.pptx 웹프로그래밍및실습 ( g & Practice) 문양세강원대학교 IT 대학컴퓨터과학전공 URL 분석 (1/2) URL (Uniform Resource Locator) 프로토콜, 호스트, 포트, 경로, 비밀번호, User 등의정보를포함 예. http://kim:3759@www.hostname.com:80/doc/index.html URL 을속성별로분리하고자할경우

More information

PowerPoint Presentation

PowerPoint Presentation WordPress 를이용한웹사이트만들기 2015 년 한지웅 WordPress 를이용한웹사이트만들기 Day 1 Day 2 Day 3 Day 4 Day 5 1. 웹사이트제작기초 HTLM 기본 CSS 기본 WordPress 개론 ( 웹사이트구축툴 ) 2. 웹호스팅 / 웹사이트구축 웹호스팅업체선택 cpanel 설정 WordPress 설치 3. WordPress 기초활용

More information

PowerPoint Template

PowerPoint Template JavaScript 회원정보 입력양식만들기 HTML & JavaScript Contents 1. Form 객체 2. 일반적인입력양식 3. 선택입력양식 4. 회원정보입력양식만들기 2 Form 객체 Form 객체 입력양식의틀이되는 태그에접근할수있도록지원 Document 객체의하위에위치 속성들은모두 태그의속성들의정보에관련된것

More information

Microsoft PowerPoint - chap01-C언어개요.pptx

Microsoft PowerPoint - chap01-C언어개요.pptx #include int main(void) { int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 프로그래밍의 기본 개념을

More information

0. 들어가기 전

0. 들어가기 전 컴퓨터네트워크 14 장. 웹 (WWW) (3) - HTTP 1 이번시간의학습목표 HTTP 의요청 / 응답메시지의구조와동작원리이해 2 요청과응답 (1) HTTP (HyperText Transfer Protocol) 웹브라우저는 URL 을이용원하는자원표현 HTTP 메소드 (method) 를이용하여데이터를요청 (GET) 하거나, 회신 (POST) 요청과응답 요청

More information

Microsoft PowerPoint - Chapter 6.ppt

Microsoft PowerPoint - Chapter 6.ppt 6.Static 멤버와 const 멤버 클래스와 const 클래스와 static 연결리스트프로그램예 Jong Hyuk Park 클래스와 const Jong Hyuk Park C 의 const (1) const double PI=3.14; PI=3.1415; // 컴파일오류 const int val; val=20; // 컴파일오류 3 C 의 const (1)

More information

Microsoft PowerPoint - web-part01-ch10-문서객체모델.pptx

Microsoft PowerPoint - web-part01-ch10-문서객체모델.pptx 과목명 : 웹프로그래밍응용교재 : 모던웹을위한 JavaScript Jquery 입문, 한빛미디어 Part1. JavaScript / Ch10. 문서객체모델 2014년 1학기 Professor Seung-Hoon Choi 10 문서객체모델 문서객체모델 (Document Object Model, DOM) 웹브라우저가 HTML 페이지를인식하는방식 document

More information

혼자서일을다하는 JSP. 이젠일을 Servlet 과나눠서한다. JSP와서블릿의표현적인차이 - JSP는 <html> 내에서자바를사용할수있는수단을제공한다. - 서블릿은자바내에서 <html> 을작성할수있는수단을제공한다. - JSP나서블릿으로만웹페이지를작성하면자바와다양한코드가

혼자서일을다하는 JSP. 이젠일을 Servlet 과나눠서한다. JSP와서블릿의표현적인차이 - JSP는 <html> 내에서자바를사용할수있는수단을제공한다. - 서블릿은자바내에서 <html> 을작성할수있는수단을제공한다. - JSP나서블릿으로만웹페이지를작성하면자바와다양한코드가 혼자서일을다하는 JSP. 이젠일을 Servlet 과나눠서한다. JSP와서블릿의표현적인차이 - JSP는 내에서자바를사용할수있는수단을제공한다. - 서블릿은자바내에서 을작성할수있는수단을제공한다. - JSP나서블릿으로만웹페이지를작성하면자바와다양한코드가웹페이지내에뒤섞여있어서웹페이지의화면설계가점점어려워진다. - 서블릿이먼저등장하였으나, 자바내에

More information

PowerPoint Presentation

PowerPoint Presentation Package Class 3 Heeseung Jo 목차 section 1 패키지개요와패키지의사용 section 2 java.lang 패키지의개요 section 3 Object 클래스 section 4 포장 (Wrapper) 클래스 section 5 문자열의개요 section 6 String 클래스 section 7 StringBuffer 클래스 section

More information

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc NTAS and FRAME BUILDER Install Guide NTAS and FRAME BUILDER Version 2.5 Copyright 2003 Ari System, Inc. All Rights reserved. NTAS and FRAME BUILDER are trademarks or registered trademarks of Ari System,

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 System Software Experiment 1 Lecture 5 - Array Spring 2019 Hwansoo Han (hhan@skku.edu) Advanced Research on Compilers and Systems, ARCS LAB Sungkyunkwan University http://arcs.skku.edu/ 1 배열 (Array) 동일한타입의데이터가여러개저장되어있는저장장소

More information

6강.hwp

6강.hwp ----------------6강 정보통신과 인터넷(1)------------- **주요 키워드 ** (1) 인터넷 서비스 (2) 도메인네임, IP 주소 (3) 인터넷 익스플로러 (4) 정보검색 (5) 인터넷 용어 (1) 인터넷 서비스******************************* [08/4][08/2] 1. 다음 중 인터넷 서비스에 대한 설명으로

More information

17장 클래스와 메소드

17장 클래스와 메소드 17 장클래스와메소드 박창이 서울시립대학교통계학과 박창이 ( 서울시립대학교통계학과 ) 17 장클래스와메소드 1 / 18 학습내용 객체지향특징들객체출력 init 메소드 str 메소드연산자재정의타입기반의버전다형성 (polymorphism) 박창이 ( 서울시립대학교통계학과 ) 17 장클래스와메소드 2 / 18 객체지향특징들 객체지향프로그래밍의특징 프로그램은객체와함수정의로구성되며대부분의계산은객체에대한연산으로표현됨객체의정의는

More information

The Pocket Guide to TCP/IP Sockets: C Version

The Pocket Guide to  TCP/IP Sockets: C Version 인터넷프로토콜 03 장 도메인네임시스템과주소 패밀리 (IPv4-IPv6 서비스 ) 1 목차 제 3 장도메인네임시스템과주소패밀리 3.1 도메인네임주소를숫자주소로매핑하기 3.2 IP 버전에무관한주소-범용코드의작성 3.3 숫자주소에서도메인네임주소획득하기 2 getaddrinfo() 를활용한주소 범용 (Generic) 코드 주소범용 (Generic) 코드란? 주소버전

More information

Microsoft PowerPoint - Supplement-03-TCP Programming.ppt [호환 모드]

Microsoft PowerPoint - Supplement-03-TCP Programming.ppt [호환 모드] - Socket Programming in Java - 목차 소켓소개 자바에서의 TCP 프로그램작성방법 주요클래스와메소드 HTTP 프로토콜을이용한예제 에코프로그램 Q/A 에코프로그램 - EchoServer 에코프로그램 - EchoClient TCP Programming 1 소켓소개 IP, Port, and Socket 포트 (Port): 전송계층에서통신을수행하는응용프로그램을찾기위한주소

More information

ThisJava ..

ThisJava .. 자바언어에정확한타입을추가한 ThisJava 소개 나현익, 류석영 프로그래밍언어연구실 KAIST 2014 년 1 월 14 일 나현익, 류석영 자바언어에정확한타입을추가한 ThisJava 소개 1/29 APLAS 2013 나현익, 류석영 자바 언어에 정확한 타입을 추가한 ThisJava 소개 2/29 실제로부딪힌문제 자바스크립트프로그램분석을위한요약도메인 나현익,

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 인터페이스 배효철 th1g@nate.com 1 목차 인터페이스의역할 인터페이스선언 인터페이스구현 인터페이스사용 타입변환과다형성 인터페이스상속 디폴트메소드와인터페이스확장 2 인터페이스의역할 인터페이스란? 개발코드와객체가서로통신하는접점 개발코드는인터페이스의메소드만알고있으면 OK 인터페이스의역할 개발코드가객체에종속되지않게 -> 객체교체할수있도록하는역할 개발코드변경없이리턴값또는실행내용이다양해질수있음

More information

Spring Boot

Spring Boot 스프링부트 (Spring Boot) 1. 스프링부트 (Spring Boot)... 2 1-1. Spring Boot 소개... 2 1-2. Spring Boot & Maven... 2 1-3. Spring Boot & Gradle... 3 1-4. Writing the code(spring Boot main)... 4 1-5. Writing the code(commandlinerunner)...

More information

Microsoft PowerPoint - 11주차_Android_GoogleMap.ppt [호환 모드]

Microsoft PowerPoint - 11주차_Android_GoogleMap.ppt [호환 모드] Google Map View 구현 학습목표 교육목표 Google Map View 구현 Google Map 지원 Emulator 생성 Google Map API Key 위도 / 경도구하기 위도 / 경도에따른 Google Map View 구현 Zoom Controller 구현 Google Map View (1) () Google g Map View 기능 Google

More information

PowerPoint Presentation

PowerPoint Presentation public class SumTest { public static void main(string a1[]) { int a, b, sum; a = Integer.parseInt(a1[0]); b = Integer.parseInt(a1[1]); sum = a + b ; // 두수를더하는부분입니다 System.out.println(" 두수의합은 " + sum +

More information

JAVA PROGRAMMING 실습 02. 표준 입출력

JAVA PROGRAMMING 실습 02. 표준 입출력 # 왜생겼나요..? : 절차지향언어가가진단점을보완하고다음의목적을달성하기위해..! 1. 소프트웨어생산성향상 객체지향소프트웨어를새로만드는경우이미만든개체지향소프트웨어를상속받거나객체를 가져다재사용할수있어부분수정을통해소프트웨어를다시만드는부담줄임. 2. 실세계에대한쉬운모델링 실세계의일은절차나과정보다는일과관련된많은물체들의상호작용으로묘사. 캡슐화 메소드와데이터를클래스내에선언하고구현

More information

[Brochure] KOR_TunA

[Brochure] KOR_TunA LG CNS LG CNS APM (TunA) LG CNS APM (TunA) 어플리케이션의 성능 개선을 위한 직관적이고 심플한 APM 솔루션 APM 이란? Application Performance Management 란? 사용자 관점 그리고 비즈니스 관점에서 실제 서비스되고 있는 어플리케이션의 성능 관리 체계입니다. 이를 위해서는 신속한 장애 지점 파악 /

More information

Microsoft PowerPoint - C++ 5 .pptx

Microsoft PowerPoint - C++ 5 .pptx C++ 언어프로그래밍 한밭대학교전자. 제어공학과이승호교수 연산자중복 (operator overloading) 이란? 2 1. 연산자중복이란? 1) 기존에미리정의되어있는연산자 (+, -, /, * 등 ) 들을프로그래머의의도에맞도록새롭게정의하여사용할수있도록지원하는기능 2) 연산자를특정한기능을수행하도록재정의하여사용하면여러가지이점을가질수있음 3) 하나의기능이프로그래머의의도에따라바뀌어동작하는다형성

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Web server porting 2 Jo, Heeseung Web 을이용한 LED 제어 Web 을이용한 LED 제어프로그램 web 에서데이터를전송받아타겟보드의 LED 를조작하는프로그램을작성하기위해다음과같은소스파일을생성 2 Web 을이용한 LED 제어 LED 제어프로그램작성 8bitled.html 파일을작성 root@ubuntu:/working/web# vi

More information

4 장클래스와객체 클래스와객체 public과 private 구조체와클래스객체의생성과생성자객체의소멸과소멸자생성자와소멸자의호출순서디폴트생성자와디폴트소멸자멤버초기화멤버함수의외부정의멤버함수의인라인함수선언 C++ 프로그래밍입문

4 장클래스와객체 클래스와객체 public과 private 구조체와클래스객체의생성과생성자객체의소멸과소멸자생성자와소멸자의호출순서디폴트생성자와디폴트소멸자멤버초기화멤버함수의외부정의멤버함수의인라인함수선언 C++ 프로그래밍입문 4 장클래스와객체 클래스와객체 public과 private 구조체와클래스객체의생성과생성자객체의소멸과소멸자생성자와소멸자의호출순서디폴트생성자와디폴트소멸자멤버초기화멤버함수의외부정의멤버함수의인라인함수선언 C++ 프로그래밍입문 1. 클래스와객체 추상데이터형 : 속성 (attribute) + 메서드 (method) 예 : 자동차의속성과메서드 C++ : 주로 class

More information

Secure Programming Lecture1 : Introduction

Secure Programming Lecture1 : Introduction Malware and Vulnerability Analysis Lecture4-1 Vulnerability Analysis #4-1 Agenda 웹취약점점검 웹사이트취약점점검 HTTP and Web Vulnerability HTTP Protocol 웹브라우저와웹서버사이에하이퍼텍스트 (Hyper Text) 문서송수신하는데사용하는프로토콜 Default Port

More information

설계란 무엇인가?

설계란 무엇인가? 금오공과대학교 C++ 프로그래밍 jhhwang@kumoh.ac.kr 컴퓨터공학과 황준하 6 강. 함수와배열, 포인터, 참조목차 함수와포인터 주소값의매개변수전달 주소의반환 함수와배열 배열의매개변수전달 함수와참조 참조에의한매개변수전달 참조의반환 프로그래밍연습 1 /15 6 강. 함수와배열, 포인터, 참조함수와포인터 C++ 매개변수전달방법 값에의한전달 : 변수값,

More information

1장.indd

1장.indd Data Communication Data Communication CHAPTER 01 Data Communication CHAPTER 01 10 CHAPTER 01 11 Data Communication 12 CHAPTER 01 \ \ 13 Data Communication 14 CHAPTER 01 15 Data Communication 데이터 통신 [그림

More information

Microsoft PowerPoint - 03-TCP Programming.ppt

Microsoft PowerPoint - 03-TCP Programming.ppt Chapter 3. - Socket in Java - 목차 소켓소개 자바에서의 프로그램작성방법 주요클래스와메소드 HTTP 프로토콜을이용한예제 에코프로그램 에코프로그램 - EchoServer 에코프로그램 - EchoClient Q/A 1 1 소켓소개 IP,, and Socket 포트 (): 전송계층에서통신을수행하는응용프로그램을찾기위한주소 소켓 (Socket):

More information

<322EBCF8C8AF28BFACBDC0B9AEC1A6292E687770>

<322EBCF8C8AF28BFACBDC0B9AEC1A6292E687770> 연습문제해답 5 4 3 2 1 0 함수의반환값 =15 5 4 3 2 1 0 함수의반환값 =95 10 7 4 1-2 함수의반환값 =3 1 2 3 4 5 연습문제해답 1. C 언어에서의배열에대하여다음중맞는것은? (1) 3차원이상의배열은불가능하다. (2) 배열의이름은포인터와같은역할을한다. (3) 배열의인덱스는 1에서부터시작한다. (4) 선언한다음, 실행도중에배열의크기를변경하는것이가능하다.

More information

Network seminar.key

Network seminar.key Intro to Network .. 2 4 ( ) ( ). ?!? ~! This is ~ ( ) /,,,???? TCP/IP Application Layer Transfer Layer Internet Layer Data Link Layer Physical Layer OSI 7 TCP/IP Application Layer Transfer Layer 3 4 Network

More information

TTA Journal No.157_서체변경.indd

TTA Journal No.157_서체변경.indd 표준 시험인증 기술 동향 FIDO(Fast IDentity Online) 생체 인증 기술 표준화 동향 이동기 TTA 모바일응용서비스 프로젝트그룹(PG910) 의장 SK텔레콤 NIC 담당 매니저 76 l 2015 01/02 PASSWORDLESS EXPERIENCE (UAF standards) ONLINE AUTH REQUEST LOCAL DEVICE AUTH

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 Power Java 제 20 장패키지 이번장에서학습할내용 패키지의개념 패키지로묶는방법 패키지사용 기본패키지 유틸리티패키지 패키지는연관된클래스들을묶는기법입니다. 패키지란? 패키지 (package) : 클래스들을묶은것 자바라이브러리도패키지로구성 ( 예 ) java.net 패키지 네트워크관련라이브러리 그림 20-1. 패키지의개념 예제 패키지생성하기 Q: 만약패키지문을사용하지않은경우에는어떻게되는가?

More information

Microsoft PowerPoint - e pptx

Microsoft PowerPoint - e pptx Import/Export Data Using VBA Objectives Referencing Excel Cells in VBA Importing Data from Excel to VBA Using VBA to Modify Contents of Cells 새서브프로시저작성하기 프로시저실행하고결과확인하기 VBA 코드이해하기 Referencing Excel Cells

More information

2 단계 : 추상화 class 오리 { class 청둥오리 extends 오리 { class 물오리 extends 오리 { 청둥오리 mallardduck = new 청둥오리 (); 물오리 redheadduck = new 물오리 (); mallardduck.swim();

2 단계 : 추상화 class 오리 { class 청둥오리 extends 오리 { class 물오리 extends 오리 { 청둥오리 mallardduck = new 청둥오리 (); 물오리 redheadduck = new 물오리 (); mallardduck.swim(); 인터페이스적용 오리객체설계하기 ) 청둥오리, 물오리를설계하세요. 1 단계 : 필요한객체설계 class 청둥오리 { class 물오리 { 청둥오리 mallardduck = new 청둥오리 (); 물오리 redheadduck = new 물오리 (); mallardduck.swim(); mallardduck.fly(); mallardduck.quack(); redheadduck.swim();

More information

Microsoft PowerPoint - ch02_인터넷 이해와 활용.ppt

Microsoft PowerPoint - ch02_인터넷 이해와 활용.ppt 컴퓨터 활용과 실습 원리를 알면 IT가 맛있다 chapter 2. 윈도우XP, 한글25, 엑셀23, 파워포인트23 인터넷 이해와 활용 www.hanb.co.kr -1- 학습목표 목차 통신과 네트워크의 개념 통신과 네트워크 컴퓨터 통신망 인터넷정의및역사 인터넷주소체계 인터넷 정의와 역사 인터넷 주소 웹서비스의정의및특징 웹 서비스 웹 브라우저의 기능 웹 브라우저

More information

A Dynamic Grid Services Deployment Mechanism for On-Demand Resource Provisioning

A Dynamic Grid Services Deployment Mechanism for On-Demand Resource Provisioning C Programming Practice (II) Contents 배열 문자와문자열 구조체 포인터와메모리관리 구조체 2/17 배열 (Array) (1/2) 배열 동일한자료형을가지고있으며같은이름으로참조되는변수들의집합 배열의크기는반드시상수이어야한다. type var_name[size]; 예 ) int myarray[5] 배열의원소는원소의번호를 0 부터시작하는색인을사용

More information

Microsoft PowerPoint - additional01.ppt [호환 모드]

Microsoft PowerPoint - additional01.ppt [호환 모드] 1.C 기반의 C++ part 1 함수 오버로딩 (overloading) 디폴트매개변수 (default parameter) 인-라인함수 (in-line function) 이름공간 (namespace) Jong Hyuk Park 함수 Jong Hyuk Park 함수오버로딩 (overloading) 함수오버로딩 (function overloading) C++ 언어에서는같은이름을가진여러개의함수를정의가능

More information

iii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다.

iii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다. Eclipse 개발환경에서 WindowBuilder 를이용한 Java 프로그램개발 이예는 Java 프로그램의기초를이해하고있는사람을대상으로 Embedded Microcomputer 를이용한제어시스템을 PC 에서 Serial 통신으로제어 (Graphical User Interface (GUI) 환경에서 ) 하는프로그램개발예를설명한다. WindowBuilder:

More information

WebRTC 플러그인이 필요없는 웹폰 새로운 순수 VoIP 클라이언트 기반의 최신 WebRTC 기술은 기존 레가시 자바 클라이언트를 대체합니다. 새로운 클라이언트는 윈도우/리눅스/Mac 에서 사용가능하며 Chrome, Firefox 및 오페라 브라우저에서는 바로 사용이

WebRTC 플러그인이 필요없는 웹폰 새로운 순수 VoIP 클라이언트 기반의 최신 WebRTC 기술은 기존 레가시 자바 클라이언트를 대체합니다. 새로운 클라이언트는 윈도우/리눅스/Mac 에서 사용가능하며 Chrome, Firefox 및 오페라 브라우저에서는 바로 사용이 WebRTC 기능이 채택된 ICEWARP VERSION 11.1 IceWarp 11.1 은 이메일 산업 부문에 있어 세계 최초로 WebRTC 음성 및 비디오 통화 기능을 탑재하였으며 이메일 산업에 있어 최선두의 제품입니다. 기업의 필요한 모든 것, 웹 브라우저 하나로 가능합니다. WebRTC 플러그인이 필요없는 웹폰 새로운 순수 VoIP 클라이언트 기반의 최신

More information

Javascript

Javascript 1. HTML 이란? HTML 은 Hyper Text Mark Up Language 의약자로예약되어있는각종태그라는명령어를이용하여웹페이지를작성할때사용하는언어입니다. 2. HTML 의기본구조 < 태그 > 내용 < 태그속성 = 변수 > 내용

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 실습문제 Chapter 05 데이터베이스시스템... 오라클로배우는데이터베이스개론과실습 1. 실습문제 1 (5 장심화문제 : 각 3 점 ) 6. [ 마당서점데이터베이스 ] 다음프로그램을 PL/SQL 저장프로시져로작성하고실행해 보시오. (1) ~ (2) 7. [ 마당서점데이터베이스 ] 다음프로그램을 PL/SQL 저장프로시져로작성하고실행해 보시오. (1) ~ (5)

More information

<4D F736F F F696E74202D2036C0CFC2B05FB0B4C3BCC1F6C7E2C7C1B7CEB1D7B7A1B9D62E707074>

<4D F736F F F696E74202D2036C0CFC2B05FB0B4C3BCC1F6C7E2C7C1B7CEB1D7B7A1B9D62E707074> 객체지향프로그램밍 (Object-Oriented Programming) 1 C++ popular C 객체지향 (object oriented) C++ C : 상위계층언어특징 + 어셈블리언어특징 C++ : 소프트웨어개발플랫폼에객체지향개념제공 객체지향 : 자료와이들자료를어떻게다룰것인지따로생각하지않고단지하나의사물로생각 형 변수가사용하는메모리크기 변수가가질수있는정보

More information

Spring Data JPA Many To Many 양방향 관계 예제

Spring Data JPA Many To Many 양방향 관계 예제 Spring Data JPA Many To Many 양방향관계예제 오라클자바커뮤니티 (ojc.asia, ojcedu.com) 엔티티매핑 (Entity Mapping) M : N 연관관계 사원 (Sawon), 취미 (Hobby) 는다 : 다관계이다. 사원은여러취미를가질수있고, 하나의취미역시여러사원에할당될수있기때문이다. 보통관계형 DB 에서는다 : 다관계는 1

More information

HTML5가 웹 환경에 미치는 영향 고 있어 웹 플랫폼 환경과는 차이가 있다. HTML5는 기존 HTML 기반 웹 브라우저와의 호환성을 유지하면서도, 구조적인 마크업(mark-up) 및 편리한 웹 폼(web form) 기능을 제공하고, 리치웹 애플리케이 션(RIA)을

HTML5가 웹 환경에 미치는 영향 고 있어 웹 플랫폼 환경과는 차이가 있다. HTML5는 기존 HTML 기반 웹 브라우저와의 호환성을 유지하면서도, 구조적인 마크업(mark-up) 및 편리한 웹 폼(web form) 기능을 제공하고, 리치웹 애플리케이 션(RIA)을 동 향 제 23 권 5호 통권 504호 HTML5가 웹 환경에 미치는 영향 이 은 민 * 16) 1. 개 요 구글(Google)은 2010년 5월 구글 I/O 개발자 컨퍼런스에서 HTML5를 통해 플러 그인의 사용이 줄어들고 프로그램 다운로드 및 설치가 필요 없는 브라우저 기반 웹 플랫폼 환경이 점차 구현되고 있다고 강조했다. 그리고 애플(Apple)은 2010년

More information

임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과

임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과 임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과 System call table and linkage v Ref. http://www.ibm.com/developerworks/linux/library/l-system-calls/ - 2 - Young-Jin Kim SYSCALL_DEFINE 함수

More information

미쓰리 파워포인트

미쓰리 파워포인트 computer & internet 07. FRAME TAG FRAME? 프레임이란? : 웹페이지를수직이나수평으로여러개영역으로나누어다른웹문서가들어갈수있도록구성할수있음. 이때나누어진각각의창을프레임이라고함. 2 FRAME 문서의구조 HTML 문서에서 태그기능을 프레임문서구조에서는 이대신함 일반웹페이지구조 ..

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 Power Java 제 11 장상속 이번장에서학습할내용 상속이란? 상속의사용 메소드재정의 접근지정자 상속과생성자 Object 클래스 종단클래스 상속을코드를재사용하기위한중요한기법입니다. 상속이란? 상속의개념은현실세계에도존재한다. 상속의장점 상속의장점 상속을통하여기존클래스의필드와메소드를재사용 기존클래스의일부변경도가능 상속을이용하게되면복잡한 GUI 프로그램을순식간에작성

More information

1. 객체의생성과대입 int 형변수 : 선언과동시에초기화하는방법 (C++) int a = 3; int a(3); // 기본타입역시클래스와같이처리가능 객체의생성 ( 복습 ) class CPoint private : int x, y; public : CPoint(int a

1. 객체의생성과대입 int 형변수 : 선언과동시에초기화하는방법 (C++) int a = 3; int a(3); // 기본타입역시클래스와같이처리가능 객체의생성 ( 복습 ) class CPoint private : int x, y; public : CPoint(int a 6 장복사생성자 객체의생성과대입객체의값에의한전달복사생성자디폴트복사생성자복사생성자의재정의객체의값에의한반환임시객체 C++ 프로그래밍입문 1. 객체의생성과대입 int 형변수 : 선언과동시에초기화하는방법 (C++) int a = 3; int a(3); // 기본타입역시클래스와같이처리가능 객체의생성 ( 복습 ) class CPoint private : int x, y;

More information

Microsoft PowerPoint - aj-lecture1.ppt [호환 모드]

Microsoft PowerPoint - aj-lecture1.ppt [호환 모드] 인터넷과웹서비스 개발환경구성, JSP 기본구조 인터넷과 WWW(World Wide Web) 인터넷은 TCP/IP 기반의네트워크가전세계적으로확대되어하나로연결된 네트워크의네트워크 WWW(World Wide Web) 는인터넷기반의서비스중하나 이름프로토콜포트기능 WWW http 80 웹서비스 524730-1 2019 년봄학기 3/11/2019 박경신 Email SMTP/POP3/IMAP

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 05 장 CSS3 선택자 1. 선택자개요 2. 기본선택자 3. 속성선택자 4. 후손선택자와자손선택자 5. 반응 / 상태 / 구조선택자 CSS 블록을생성할수있다. 선택자를이해하고적절한선택자를활용할수있다. 1 선택자개요 CSS3 선택자 특정한 HTML 태그를선택할때사용하는기능 선택한태그에원하는스타일이나스크립트적용가능 그림 5-1 CSS 블록 CSS 블록 style

More information

제이쿼리 (JQuery) 정의 자바스크립트함수를쉽게사용하기위해만든자바스크립트라이브러리. 웹페이지를즉석에서변경하는기능에특화된자바스크립트라이브러리. 사용법 $( 제이쿼리객체 ) 혹은 $( 엘리먼트 ) 참고 ) $() 이기호를제이쿼리래퍼라고한다. 즉, 제이쿼리를호출하는기호

제이쿼리 (JQuery) 정의 자바스크립트함수를쉽게사용하기위해만든자바스크립트라이브러리. 웹페이지를즉석에서변경하는기능에특화된자바스크립트라이브러리. 사용법 $( 제이쿼리객체 ) 혹은 $( 엘리먼트 ) 참고 ) $() 이기호를제이쿼리래퍼라고한다. 즉, 제이쿼리를호출하는기호 제이쿼리 () 정의 자바스크립트함수를쉽게사용하기위해만든자바스크립트라이브러리. 웹페이지를즉석에서변경하는기능에특화된자바스크립트라이브러리. 사용법 $( 제이쿼리객체 ) 혹은 $( 엘리먼트 ) 참고 ) $() 이기호를제이쿼리래퍼라고한다. 즉, 제이쿼리를호출하는기호 CSS와마찬가지로, 문서에존재하는여러엘리먼트를접근할수있다. 엘리먼트접근방법 $( 엘리먼트 ) : 일반적인접근방법

More information

PowerPoint Template

PowerPoint Template 16-1. 보조자료템플릿 (Template) 함수템플릿 클래스템플릿 Jong Hyuk Park 함수템플릿 Jong Hyuk Park 함수템플릿소개 함수템플릿 한번의함수정의로서로다른자료형에대해적용하는함수 예 int abs(int n) return n < 0? -n : n; double abs(double n) 함수 return n < 0? -n : n; //

More information

Microsoft PowerPoint 자바-기본문법(Ch2).pptx

Microsoft PowerPoint 자바-기본문법(Ch2).pptx 자바기본문법 1. 기본사항 2. 자료형 3. 변수와상수 4. 연산자 1 주석 (Comments) 이해를돕기위한설명문 종류 // /* */ /** */ 활용예 javadoc HelloApplication.java 2 주석 (Comments) /* File name: HelloApplication.java Created by: Jung Created on: March

More information

Eclipse 와 Firefox 를이용한 Javascript 개발 발표자 : 문경대 11 년 10 월 26 일수요일

Eclipse 와 Firefox 를이용한 Javascript 개발 발표자 : 문경대 11 년 10 월 26 일수요일 Eclipse 와 Firefox 를이용한 Javascript 개발 발표자 : 문경대 Introduce Me!!! Job Jeju National University Student Ubuntu Korean Jeju Community Owner E-Mail: ned3y2k@hanmail.net Blog: http://ned3y2k.wo.tc Facebook: http://www.facebook.com/gyeongdae

More information

API STORE 키발급및 API 사용가이드 Document Information 문서명 : API STORE 언어별 Client 사용가이드작성자 : 작성일 : 업무영역 : 버전 : 1 st Draft. 서브시스템 : 문서번호 : 단계 : Docum

API STORE 키발급및 API 사용가이드 Document Information 문서명 : API STORE 언어별 Client 사용가이드작성자 : 작성일 : 업무영역 : 버전 : 1 st Draft. 서브시스템 : 문서번호 : 단계 : Docum API STORE 키발급및 API 사용가이드 Document Information 문서명 : API STORE 언어별 Client 사용가이드작성자 : 작성일 : 2012.11.23 업무영역 : 버전 : 1 st Draft. 서브시스템 : 문서번호 : 단계 : Document Distribution Copy Number Name(Role, Title) Date

More information

Microsoft PowerPoint - Java7.pptx

Microsoft PowerPoint - Java7.pptx HPC & OT Lab. 1 HPC & OT Lab. 2 실습 7 주차 Jin-Ho, Jang M.S. Hanyang Univ. HPC&OT Lab. jinhoyo@nate.com HPC & OT Lab. 3 Component Structure 객체 (object) 생성개념을이해한다. 외부클래스에대한접근방법을이해한다. 접근제어자 (public & private)

More information

HLS(HTTP Live Streaming) 이용가이드 1. HLS 소개 Apple iphone, ipad, ipod의운영체제인 ios에서사용하는표준 HTTP 기반스트리밍프로토콜입니다. 2. HLS 지원대상 - 디바이스 : iphone/ipad/ipod - 운영체제 :

HLS(HTTP Live Streaming) 이용가이드 1. HLS 소개 Apple iphone, ipad, ipod의운영체제인 ios에서사용하는표준 HTTP 기반스트리밍프로토콜입니다. 2. HLS 지원대상 - 디바이스 : iphone/ipad/ipod - 운영체제 : HLS(HTTP Live Streaming) 이용가이드 1. HLS 소개 Apple iphone, ipad, ipod의운영체제인 ios에서사용하는표준 HTTP 기반스트리밍프로토콜입니다. 2. HLS 지원대상 - 디바이스 : iphone/ipad/ipod - 운영체제 : ios 3.0 이상 - 콘텐츠형식 : MP4 (H264,AAC ), MP3 * 디바이스별해상도,

More information

C++ Programming

C++ Programming C++ Programming 클래스와데이터추상화 Seo, Doo-okok clickseo@gmail.com http://www.clickseo.com 목 차 객체지향프로그래밍 클래스와객체 2 객체지향프로그래밍 객체지향언어 (Object-Oriented Language) 프로그램을명령어의목록으로보는시각에서벗어나여러개의 독립된단위, 즉 객체 (Object) 들의모임으로파악

More information

Microsoft PowerPoint - additional06.ppt [호환 모드]

Microsoft PowerPoint - additional06.ppt [호환 모드] 보조자료 6.Static 멤버와 const 멤버 클래스와 const 클래스와 static 연결리스트프로그램예 Jong Hyuk Park 클래스와 const Jong Hyuk Park 복습 : Const 키워드왜사용? C 의 const (1) const double PI=3.14; PI=3.1415; // 컴파일오류 const int val; val=20; //

More information

오버라이딩 (Overriding)

오버라이딩 (Overriding) WindowEvent WindowEvent 윈도우가열리거나 (opened) 닫힐때 (closed) 활성화되거나 (activated) 비활성화될때 (deactivated) 최소화되거나 (iconified) 복귀될때 (deiconified) 윈도우닫힘버튼을누를때 (closing) WindowEvent 수신자 abstract class WindowListener

More information

. 스레드 (Thread) 란? 스레드를설명하기전에이글에서언급되는용어들에대하여알아보도록하겠습니다. - 응용프로그램 ( Application ) 사용자에게특정서비스를제공할목적으로구현된응용프로그램을말합니다. - 컴포넌트 ( component ) 어플리케이션을구성하는기능별요

. 스레드 (Thread) 란? 스레드를설명하기전에이글에서언급되는용어들에대하여알아보도록하겠습니다. - 응용프로그램 ( Application ) 사용자에게특정서비스를제공할목적으로구현된응용프로그램을말합니다. - 컴포넌트 ( component ) 어플리케이션을구성하는기능별요 . 스레드 (Thread) 란? 스레드를설명하기전에이글에서언급되는용어들에대하여알아보도록하겠습니다. - 응용프로그램 ( Application ) 사용자에게특정서비스를제공할목적으로구현된응용프로그램을말합니다. - 컴포넌트 ( component ) 어플리케이션을구성하는기능별요소로써안드로이드시스템에서는 Activities, Services, Content Providers,

More information

01장 웹 개요와 실습 환경 구축

01장 웹 개요와 실습 환경 구축 01 장 웹개요와실습환경구축 목차 1. 인터넷과웹소개 2. 웹의동작원리 3. 보조웹표준기술소개 4. HTML5 주요기능소개 5. 실습환경구축 학습목표 1. 웹의개념과특징을이해한다. 2. 웹의동작원리를이해한다. 3. 대표적인웹표준기술의특징을이해한다. HTML5, CSS3, 자바스크립트 4. 웹프로그래밍을위한개발환경을구축한다. 1. 인터넷과웹소개 인터넷 (Internet)

More information