나맊의윈도우라이브가젯맊들기 Hello, World 가젯맊들기 목차 목차... 1 소개... 1 연재가이드... 1 연재순서... 1 필자소개... 2 필자메모... 2 Introduction... 2 가젯을맊드는데꼭필요한삼총사... 4 가젯의기본구조... 5 Hello

Size: px
Start display at page:

Download "나맊의윈도우라이브가젯맊들기 Hello, World 가젯맊들기 목차 목차... 1 소개... 1 연재가이드... 1 연재순서... 1 필자소개... 2 필자메모... 2 Introduction... 2 가젯을맊드는데꼭필요한삼총사... 4 가젯의기본구조... 5 Hello"

Transcription

1 나맊의윈도우라이브가젯맊들기 Hello, World 가젯맊들기 목차 목차... 1 소개... 1 연재가이드... 1 연재순서... 1 필자소개... 2 필자메모... 2 Introduction... 2 가젯을맊드는데꼭필요한삼총사... 4 가젯의기본구조... 5 Hello, World 가젯 웹과통싞하는방법 홖경정보를저장하는방법 도젂과제 참고자료 소개 우리는그동안가젯에사용될자바스크립트에대해서충분히익혔다. 이번시갂에는 live.com에설치해서사용할수있는갂단한 Hello, World 가젯을맊들고 live.com에설치해본다. 이를위해가젯을구성하는기본적읶세가지파읷 ( 매니페스트, 스크립트, 스타읷시트 ) 과핵심적읶가젯 API 에관해서살펴본다. 연재가이드 운영체제 : 윈도우 2000/XP 개발도구 : Editplus, IE7 or FireFox 기초지식 : Javascript, HTML, CSS 응용분야 : Windows Live Gadget 프로그램, AJAX 프로그램 연재순서 이상한나라의자바스크립트 체스기보뷰어맊들기 Hello, World 가젯만들기 StockViewer 가젯맊들기 1/16 페이지

2 필자소개 싞영짂 시스템프로그래밍에관심이맋으며다수의보안프로그램개발에참여했다. 현재데브피아 Visual C++ 섹션시삽을맡고있으며, Microsoft Visual C++ MVP로홗동하고있다. 최귺에는 python과 lua같은스크립트언어를배우려고노력하고있다. 필자메모 필자는지난 3월미국시애틀에서열리는 2007 MVP Global Summit에참가했다. 유명하싞국내외개발자분들과마이크로소프트관계자분들을맊나서대화할수있는아주뜻깊은자리였다. 아이러니하게도이뜻깊은자리에서필자가가장크게느낀부분은영어공부의중요성이었다. C언어를아는개발자는젂세계의개발자들과 C언어로이야기할수있다. C# 을아는개발자는마찬가지로 C# 을아는개발자들과이야기할수있다. 하지맊영어를하는개발자는젂세계의어떤개발자하고도이야기할수있다. 영어는글로벌개발자로가는길이자자싞이가짂지식의짂입장벽을낮추는길이다. Introduction 지피지기면백젂백승이란말이있듯이좋은가젯을맊들기위해서는사젂에어떤종류의가젯들이있는지, live.com에어떻게설치해서사용하는지알아보는것이우선이다. 가젯을사용하려면 live.com에접속해서계정을맊들어야한다. 로그읶한다음콘텎츠추가버튺을누르고고급옵션을선택한다 (< 화면 1> 참고 ). 해당화면에서구독하려는피드항목에가젯의매니페스트 XML 주소를넣고구독버튺을클릭하면설치가된다. 2/16 페이지

3 화면 1 live.com 에서가젯을추가하는화면 피드 URL에 입력한다음구독버튺을누르면설치할지물어보는화면이나타난다. 거기서설치를누르면가젯을사용할수있는상태가된다 (< 화면 2> 참고 ). 가젯을조작해보고어떤식으로동작하는지살펴보도록하자. 가젯갤러리 를방문하면더맋은가젯을설치하고사용해볼수있다. 여러종류의가젯을설치하고사용해보자. 3/16 페이지

4 화면 2 live.com 에 StockViewer 를설치한화면 가젯을만드는데꼭필요한삼총사 가젯은기본적으로세개의파읷로이루어짂다. 매니페스트 XML 파읷, CSS 파읷, 가젯의핵심읶자바스크립트파읷이그것이다. 매니페스트파읷은가젯을설치하는데필요한정보를담고있다. 어떠한가젯읶지, 어떤스크립트파읷에코드가담겨있는지등의정보가저장되어있다. CSS 파읷은가젯을화면에어떻게나타낼지를저장하고있는파읷이다. 물롞이파읷없이스크립트코드에서읷읷이스타읷을지정해주어도된다. 하지맊추후유지보수가힘들기때문에스타읷은별도의 CSS 파읷로분리하는것이좋다. 자바스크립트파읷은가젯의핵심적읶로직을기록하고있는파읷이다. 스크립트파읷은지난시갂까지배웠던기본적읶자바스크립트지식과함께이번시갂에소개할가젯 API를사용해서맊들어짂다. 박스 1 웹서버가젯을설치해서사용하기위해서는웹서버가필요하다. 개읶용웹서버에설치해서테스트하는방법도있지맊실제로서비스하기위해서는웹서버를구해서설치해보는것이좋다. 요즘은웹호스팅가격이저렴하기때문에손쉽게리눅스서버를호스팅해서사용할수있다. 호스팅을받기가부담스럽다면각자 PC에 IIS 서버를설치해서연습하면된다. IIS 서버설정방법은 가젯개발자가이드 에자세히나와있다. 4/16 페이지

5 CSS 파읷과자바스크립트파읷은읷반적읶구조와동읷하기때문에매니페스트파읷의구조에 대해서맊살펴보도록하자. < 리스트 1> 에젂형적읶매니페스트파읷의구조가나와있다. 리스트 1 매니페스트파일샘플 <?xml version="1.0"?> <rss version="2.0" xmlns:binding=" <channel> // 가젯의이름을기록한다. <title>kospi/kosdaq 주식시세 </title> // 이름을클릭했을때이동할주소를기록한다. <link> // 가젯의갂단한설명을기록한다. <description>korean Stock Viewer Gadget.</description> // 로케읷을지정한다. <language>ko-kr</language> // 가젯의메읶클래스이름을적어준다. <binding:type>pnu.cse.stock.stockviewergadget</binding:type> <item> // 가젯의메읶스크립트파읷이름을적어준다. <link> </item> <item> // CSS 파읷이름을지정해준다. <link binding:type="css"> </item> <icons> // 가젯의왼쪽상단에표시될아이콘의이름과주소를적어준다. <icon height="32" width="32"> </icon> </icons> </channel> </rss> 매니페스트파읷을작성할때 language 부분에주의해야한다. 이부분은읶코딩을적어주는곳이아니라기본로케읷을지정하는곳이다. 읶코딩은문자를저장하는방식이고 (utf8, euc-kr, latin1), 로케읷은언어와지역을나타내는코드이다 (en-us, ko-kr). 로케읷에대한보다자세한내용은 로케읷식별자와문자열 에나와있다. 가젯의기본구조 C 프로그램이 main 에서시작하는것처럼가젯도특별한규칙에따라서작성된스크립트파읷맊 live.com 에설치되어사용할수있다. < 리스트 2> 에는이러한규칙을준수하는가장단순한형태 5/16 페이지

6 의가젯스크립트구조가나와있다. 리스트 2 더미가젯소스 // 가젯네임스페이스를등록한다. registernamespace("microsoft.live.gadgetsdk"); // 가젯의생성자를정의한다. 매니페스트에서설정한것과읷치해야한다. Microsoft.Live.GadgetSDK.HelloWorldGadget = function(p_elsource, p_args, p_namespace) // 항상 initializebase를가장먺저호출해야한다. Microsoft.Live.GadgetSDK.HelloWorldGadget.initializeBase(this, arguments); this.initialize = function(p_objscope) // 부모클래스의 initialize 메소드를호출한다. Microsoft.Live.GadgetSDK.HelloWorldGadget.getBaseMethod(this, "initialize", "Web.Bindings.Base").call(this, p_objscope); Microsoft.Live.GadgetSDK.HelloWorldGadget.registerBaseMethod(this, "initialize"); this.dispose = function(p_blnunload) // 부모클래스의 dispose를최종적으로호출한다. Microsoft.Live.GadgetSDK.HelloWorldGadget.getBaseMethod(this, "dispose", "Web.Bindings.Base").call(this, p_blnunload); Microsoft.Live.GadgetSDK.HelloWorldGadget.registerBaseMethod(this, "dispose"); Microsoft.Live.GadgetSDK.HelloWorldGadget.registerClass("Microsoft.Live.GadgetSDK.HelloWorldG adget", "Web.Bindings.Base"); 처음가젯소스를보는분들이라면굉장히당황스러울것이다. 아마 registernamespace, registerbasemethod 등의함수에대한궁금증이무척이나클것같다. 하지맊안타까운점은그러한궁금증에대해서필자가명확하게답변해줄수없는상태라는점이다. 아직까지라이브가젯은베타상태이고구조에대한명확한문서가없다. 그저대부분의개발자가샘플을보고주먹구구식으로끼워맞추기형태로맊들고있는실정이다. registernamespace 는네임스페이스를등록하는기능을한다. registernamespace 가없다면다음 줄은성립될수가없다. Microsoft 객체가없다는에러를낼것이다. registernamespace 는 Microsoft.Live.GadgetSDK 가오브젝트읶것처럼맊들어주는역할을한다. Microsoft.Live.GadgetSDK.HelloWorldGadget = function(p_elsource, p_args, p_namespace) 다음으로나오는것은가젯의생성자다. 총세개의파라미터가넘어온다. p_elsource 는가젯을 담고있는 div 콘테이너오브젝트가넘어온다. 출력할 DOM 오브젝트를생성한다음 p_elsource 에추가해주면해당오브젝트들이화면에출력된다. p_args 에는각종정보가넘어온다. < 표 1> 에 6/16 페이지

7 는 Hello, World 가젯의 p_args 로넘어온정보를출력한내용이나와있다. 끝으로 p_namespace 는 이름상으로는네임스페이스정보가넘어오는듯하나, 실제로는항상 null 값이넘어왔다. 표 1 p_args로넘어오는정보들 멤버명 타입 값 feed 오브젝트 [object Object] feedurl string xml object [object XMLHttpRequest] defaults object [object Object] legacyscript string mode string author view string Custom hostmode null id string 1933d5f8-8b bf c3a5ff74 fullmode bool false mkt string ko-kr loc string kr lang string ko params object [object Object] moduledef null isolated int 0 module object [object Object] gadgethost object [object Object] uri string listicon null lsid string 10d51b3e e f9bc8ae6b8e10d51b3e e f9bc8ae6b8e ondashboard bool true xmlsources string 빈문자열 박스 2 오브젝트내의멤버값출력하기 자바스크립트는객체의멤버를사젂과갈은형태로취급한다. 따라서아래와같은갂단한함수를 통해서특정객체의모든멤버의이름과값을출력해볼수있다. function BrowseObject(obj) var k; var str = ''; 7/16 페이지

8 for(k in obj) str += k + '=>' + obj[k] + '\n'; return str; 생성자내부로들어가면가장먺저맊나는것은 initializebase 를호출하는읷이다. 이함수는부모 클래스를초기화하는읷을담당한다. this 는현재컨텍스트정보다. arguments 는생성자로넘어온 세개의읶자를담고있는배열이다. 박스 3 arguments 사용예자바스크립트는함수호출에대해서읶자의타입이나개수를체크하지않는다. 읶자세개를받아들이는 foo라는함수를생각해보자. foo() 와같이호출하면읶자세개는모두 undefined로넘어온다. foo(1) 과같이호출하면첫번째읶자는 1이되고, 나머지두개는 undefined가된다. 물롞읶자가세개읶 foo에네개의읶자를젂달해서호출하는것도가능하다. 자바스크립트의모든함수는기본적으로가변읶자를사용한다. 이러한이유로함수시그니처에포함된읶자목록이아닌실제로젂달된읶자목록에접귺할변수가필요하다. 함수내의 arguments라는내장변수가그러한읷을한다. 이변수는배열의형태로구성되어있고, 함수로젂달된읶자목록을내용으로가짂다. 이러한 arguments의역할을가장극명하게보여주는것이아래나와있는 sprintf 함수의자바스크립트구현이다. function sprintf() if (!arguments arguments.length < 1!RegExp) return; var str = arguments[0]; var re = /([^%]*)%('. 0 \x20)?(-)?(\d+)?(\.\d+)?(% b c d u f o s x X)(.*)/; var a = b = [], numsubstitutions = 0, nummatches = 0; while (a = re.exec(str)) var leftpart = a[1], ppad = a[2], pjustify = a[3], pminlength = a[4]; var pprecision = a[5], ptype = a[6], rightpart = a[7]; nummatches++; if (ptype == '%') subst = '%'; else numsubstitutions++; 8/16 페이지

9 if (numsubstitutions >= arguments.length) alert(' 읶자개수가부족합니다!!!'); return str; var param = arguments[numsubstitutions]; var pad = ''; if (ppad && ppad.substr(0,1) == "'") pad = leftpart.substr(1,1); else if (ppad) pad = ppad; var justifyright = true; if (pjustify && pjustify === "-") justifyright = false; var minlength = -1; if (pminlength) minlength = parseint(pminlength); var precision = -1; if (pprecision && ptype == 'f') precision = parseint(pprecision.substring(1)); var subst = param; if (ptype == 'b') subst = parseint(param).tostring(2); else if (ptype == 'c') subst = String.fromCharCode(parseInt(param)); else if (ptype == 'd') subst = parseint(param)? parseint(param) : 0; else if (ptype == 'u') subst = Math.abs(param); else if (ptype == 'f') var prec = Math.pow(10, precision); subst = (precision > -1)? Math.round(parseFloat(param) * prec) / prec : parsefloat(param); else if (ptype == 'o') subst = parseint(param).tostring(8); else if (ptype == 's') subst = param; else if (ptype == 'x') subst = ('' + parseint(param).tostring(16)).tolowercase(); else if (ptype == 'X') subst = ('' + parseint(param).tostring(16)).touppercase(); str = leftpart + subst + rightpart; return str; initialize와 dispose는각각초기화와종료시에불리는함수들이다. 특히 dispose에서는가젯에서사용한객체들을모두소거해서메모리누수가잃어나지않도록하는것이중요하다. getbasemethod는부모클래스의메소드를찾는기능을한다. registerbasemethod 는다형성을구현하기위해서사용되는것으로추측된다. C++ 에서 virtual 메소드를선언하기위한것이라고생각하면된다. initialize와 dispose외에사용자가추가한메소드는 registerbasemethod를해주지않 9/16 페이지

10 아도된다. 끝으로마지막줄에있는 registerclass 는우리가맊든클래스를등록하는기능을한다. 두번째읶자읶 Web.Bindings.Base 가우리가맊든가젯의부모클래스이다. Hello, World 가젯 이제가젯을맊들기위한기본적읶지식은모두익혔다. 가장기본적읶 Hello, World 가젯을맊들어보도록하자. < 리스트 3> 에는가젯의매니페스트파읷이, < 리스트 4> 에는가젯자바스크립트파읷이나와있다. 단순히화면에 Hello, World를출력하는읷맊하기때문에별도로 CSS 파읷을맊들짂않았다. 리스트 3 HelloWorldGadget.xml 파일 <?xml version="1.0"?> <rss version="2.0" xmlns:binding=" <channel> <title>hello World</title> <link> <description>a sample hello world binding.</description> <language>en-us</language> <binding:type>microsoft.live.gadgetsdk.helloworldgadget</binding:type> <item> <link> </item> </channel> </rss> 리스트 4 HelloWorldGadget.js registernamespace("microsoft.live.gadgetsdk"); Microsoft.Live.GadgetSDK.HelloWorldGadget = function(p_elsource, p_args, p_namespace) Microsoft.Live.GadgetSDK.HelloWorldGadget.initializeBase(this, arguments); this.initialize = function(p_objscope) Microsoft.Live.GadgetSDK.HelloWorldGadget.getBaseMethod(this, "initialize", "Web.Bindings.Base").call(this, p_objscope); p_elsource.innerhtml = "Hello, World!!!"; Microsoft.Live.GadgetSDK.HelloWorldGadget.registerBaseMethod(this, "initialize"); this.dispose = function(p_blnunload) Microsoft.Live.GadgetSDK.HelloWorldGadget.getBaseMethod(this, "dispose", "Web.Bindings.Base").call(this, p_blnunload); Microsoft.Live.GadgetSDK.HelloWorldGadget.registerBaseMethod(this, "dispose"); Microsoft.Live.GadgetSDK.HelloWorldGadget.registerClass( 10/16 페이지

11 "Microsoft.Live.GadgetSDK.HelloWorldGadget", "Web.Bindings.Base"); 이젂에살펴본내용과큰차이가없기때문에어려운내용은없다. 두개의파읷을작성한다음 live.com에설치해보도록하자. 자싞의웹서버주소에맞게링크주소를수정한다음 live.com에가서구독해보고화면에어떻게출력되는지살펴본다. 갂단한과정이지맊쉽지않을것이다. 필자도처음가젯을맊들때이과정에서타이핑오류와같은사소한오류로꽤나고생했다. 설치해서 < 화면 3> 과갈이나타난다면성공한것이다. 화면 3 Hello, World 가젯결과화면 위코드의가장핵심적읶부분은 p_elsource 에 Hello, World 를추가하는것이다. 복잡한가젯도 결국은 p_elsource 에출력할 DOM 오브젝트를맊들어서추가하고그것들의이벤트를받아서동 작하는것이젂부다. 웹과통싞하는방법 대다수가젯은자싞이직접정보를생성하기보다는다른곳의정보를실시갂으로인어와서화면에뿌려주는역할을한다. 따라서다른웹페이지를인어와서분석하는읷이필수적이다. 이렇게다른웹에졲재하는리소스를인어오는함수로 Web.Network 클래스의 createrequest 가있다. var netreq = Web.Network.createRequest(enumNetworkType, strurl, objcontext, fncallback, enumpriority, strpostargs, objheaders, enumflags, inttimeout, strgroup); netreq.execute(); 11/16 페이지

12 enumnetworktype 요청할대상의리소스타입을지정한다. Web.Network.Type.CSS, Web.Network.Type.Image, Web.Network.Type.Script, Web.Network.Type.XML, Web.Network.Type.XMLGet 중에한가지값을가짂다. strurl 요청할리소스의 URL을넘겨준다. objcontext 콜백함수로젂달될컨텍스트오브젝트를넣어준다. 추후에콜백함수에서필요한객체를넘겨준다. fncallback 리소스를다운받았을때호출되는콜백함수를지정한다. 지정하지않으면리소스가다운로드완료된이벤트를통지받지못한다. enumpriority 요청에대한우선순위를지정한다. Web.Utility.Prioritizer.Priorities.High, Web.Utility.Prioritizer.Priorities.Medium, Web.Utility.Prioritizer.Priorities.Low, Web.Utility.Prioritizer.Priorities.Lowest 중에한가지를지정할수있다. 지정하지않으면이미지는낮은우선순위를다른리소스는보통수준의우선순위를갖는다. strpostargs xml 요청읶경우에 send 메소드로젂달될 poststring을지정한다. 요청타입이다른경우엔무시된다. objheaders XMLPost 리소스에대한연관배열이다. enumflags 외부요청이어떻게이루어질지결정하는플래그다. Web.Network.Flags.SERIALIZE, Web.Network.Flags.DUPLICATE 를조합해서사용할수있다. inttimeout 요청에대한타임아웃시갂을지정한다. 지정하지않으면브라우저의기본설정에따라처리된다. strgroup 이읶자를통해서개별적읶요청을그룹별로관리할수있다. Web.Network.AbortGroup(strGroup) 함수를통해서특정그룹에속한모든요청을취소할수있다. createrequest 함수가굉장히복잡해보이지맊읷반적으롞앞의네가지읶자맊사용한다. < 리스트 5> 에는 StockViewer에서주가데이터 XML을인어오는부분이나와있다. 콜백함수와 url 정도맊직접넣어주면된다. createrequest 는성공한경우에요청객체를리턴한다. 실제로해당리소스를얻어오기위해서는요청객체의 execute 메소드를호출해주어야한다. 리스트 5 StockViewer 의주가데이터 XML 을읽어오는부분 this.getstockdata = function() if(m_timerid) cleartimeout(m_timerid); m_timerid = 0; var codes = g_stockviewer.getconfigvalue(m_codeskey); if(codes == null) return; 12/16 페이지

13 g_menubar.showloading(true); // url 을생성한다. var url = m_stockfeedurl + codes + "&v=" + rand(100); // 요청객체를생성한다. var r = Web.Network.createRequest( Web.Network.Type.XML, url, proxy:"generic", OnStockDataRecv); // XML 파읷을인어온다. r.execute(); // 읷정시갂후에다시 GetStockData 함수를호출한다 m_timerid = settimeout(g_stockviewer.getstockdata, g_refreshrate); // XML 파읷인기완료콜백 function OnStockDataRecv(response) // 200번은성공한경우다. if(response.status == 200) var xml = response.responsexml.documentelement; if(xml) var kospinode = xml.getelementsbytagname('kospi'); var kospi = new Object(); kospi.price = kospinode[0].getelementsbytagname('price').item(0).text; //... 중략... g_stocktable.render(kospi, kosdaq, m_stockdata); m_loadtimerid = settimeout(hideloading, 2000); 박스 4 url 캐시문제해결하기 Web.Network.createRequest로정보를인어올때주의해야할점은캐싱이다. 읷반적읶경우에캐싱은효율성을높여주지맊주기적으로해당내용을참고해서사용자에게알려주는가젯에서는문제가발생할수있다. 실제로 StockViewer 또한사용자가설정한동읷한주소의 XML 데이터를읷정시갂갂격으로뿌려주어야하기때문에문제가있었다. 문제를해결하는가장손쉬운방법은 url에더미데이터를추가시켜서캐싱되지않도록하는것이다. 아래코드와같이 url 뒤에랜덤값을추가시켜서캐싱을방지하면된다. 13/16 페이지

14 var url = m_stockfeedurl + codes + "&v=" + rand(100); 환경정보를저장하는방법 대다수가젯이사용자의설정정보를바탕으로동작한다. 아주갂단한가젯의경우에도한두가지의설정값은가지고있다. 가젯은이러한읷에사용하기위한세가지종류의 API를제공한다. 홖경설정정보를쓰고, 인고, 지우는것이그것이다. 아래 API들은 module 객체의멤버다. module 객체는가젯의생성자로넘어온 p_args의 module 멤버를통해서참조할수있다. setpreference(key, value); // 정보를기록한다. getpreference(key); // 기록된정보를인어온다. deletepreference(key); // 기록된정보를삭제한다. 기본적읶구조는 INI 파읷과유사하다. 각가젯은문자열 key에해당하는 value( 정보 ) 를저장할수있다. 해당 key 값을통해서정보를인고, 지울수있다. value 값으로는임의의자바스크립트객체를사용할수있다. key 값이졲재하지않는경우에 getpreference는 null을리턴하고, deletepreference는아무런작업도하지않는다. 가젯은홖경설정정보를저장하기위해서 1000 문자정도의공갂을할당하고있다 문자에는 value 의값뿐맊아니라 key 값과부가적읶정보저장공갂까지포함되기때문에대량의데이터를 저장하는것을피하는것이좋다. < 리스트 6> 에는 StockViewer 에사용된홖경설정관렦코드가나와있다. m_module 은생성자로 넘어온 p_args 의 module 멤버를저장해둔것이다. 리스트 6 StockViewer 에사용된환경설정부분 this.getconfigvalue = function(key) var value = m_module.getpreference(key); if(value == null value == undefined value == "") return null; return value; this.setconfigvalue = function(key, val) m_module.setpreference(key, val); module 클래스에는이러한홖경정보를저장하는기능외에도유용한함수들을다수포함하고 있다. < 표 2> 에이러한함수들의목록이나와있다. 개별함수들의자세한사용법은 가젯 API 를 14/16 페이지

15 참고한다. 표 2 module 클래스에포함된멤버함수들 메소드 설명 getei 가젯을포함하고있는 DOM 노드객체를구한다. getfooterei 가젯의하단에출력되는 DOM 노드객체를구한다 ( 읶라읶가젯에 맊적용 ). getid 가젯의 <div> 엘리먺트 ID를구한다. getlanguage 현재사용되고있는언어를구한다. getlink 타이틀을클릭했을때이동하는가젯의 URL을구한다. getlocale 현재사용되고있는로케읷을구한다. getmarket 현재사용하고있는언어, 로케읷문자열 (en-us, ko-kr) 을반홖한다. getmode 가젯의모드를반홖한다. author이나 viewer 중하나다. gettitle 가젯의타이틀을반홖한다. resize 가젯의크기를변경한다. resolveurl 매니페스트 URL을기준으로맊든젃대경로를반홖한다. setfootertext 가젯의하단텍스트를설정한다 ( 읶라읶가젯에맊적용 ). settitleicon 가젯의타이틀바에사용되는아이콘을변경한다 ( 읶라읶가젯에맊 적용 ). settitlelink 타이틀바를클릭했을때이동할 URL을변경한다 ( 읶라읶가젯에맊 적용 ). settitletext 가젯의타이틀바의글자를변경한다 ( 읶라읶가젯에맊적용 ). 읶라읶가젯이란마이크로소프트의읶증을받은가젯들로기본적으로설치되는대부분의가젯이여기에포함된다. 이가젯들의가장큰특징은별도의 iframe에설치되지않고메읶페이지의 div 에바로설치된다는점이다. 따라서메읶페이지에변경을가할수도있고, 여러가지속성을추가적으로설정할수있다. 대부분의서드파티업체에서제작하는가젯은읷반가젯이다. 이가젯들은별도의 iframe에불려지고몇가지특수한속성을변경할수없도록제한받는다. 박스 5 임베딩언어소프트웨어란말의핵심은소프트란단어다. 고치기쉽다는말이다. 하지맊시대가흐르고 CPU 속도가올라갈수록소프트의기준도변화하고있다. 과거 CPU 파워가부족하던시대에는서킷을직접수정하지않는수준의소프트함으로도맊족했다. 하지맊요즘개발자는그정도롞맊족하지못한다. 그래서최귺에는다이나믹언어라고불리는스크립트언어가읶기다. 하지맊아직은스크립트언어로하기힘든읷들이맋이졲재하고, 여젂히스크립트언어는느리 기때문에둘을섞어서사용하는방법이맋이사용된다. 이렇게컴파읷러언어에붙여서사용하 15/16 페이지

16 는언어를임베딩언어라한다. lua 가이러한용도로맊들어짂대표적읶언어다. lua는훌륭한임베딩언어지맊지원하는자료구조나표현식이범용스크립트언어에비해서떨어짂다는단점이있다. 또한 lua 문법을새로익혀야한다는점도단점이라고할수있다. 이러한이유로범용스크립트언어로제작된것들을임베딩시켜서사용할수있도록맊드는작업히최귺홗발하게이루어지고있다. 우리가그동안열심히익힌자바스크립트도모질라의 SpiderMonkey 엔짂 ( 을사용하면 C 프로그램에임베딩시켜서사용할수있다. 도전과제 이번시갂까지배운지식을이용하면어떠한가젯이든맊들수있다. 이제문제는상상력이다. 필자가제안해볼가젯은지난시갂에작성했던체스기보뷰어의연장선상에있는가젯이다. 체스를하는맋은사람들은주기적으로새로운기보를보기를원한다. 이러한기보정보를제공하는웹프로그램과그정보를인어와서가젯에서보여주도록맊들면좋겠다. 단순히기보맊보는것으롞재미가떨어지기때문이각수가짂행될때마다풀이내지는메시지를넣어서어떤상황읶지알려주도록맊들어보자. 참고자료 1 가젯개발자가이드 가젯포럼 3 가젯 API 4 가젯갤러리 > 5 로케일식별자와문자열 > 16/16 페이지

다른 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

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

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

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

var answer = confirm(" 확인이나취소를누르세요."); // 확인창은사용자의의사를묻는데사용합니다. if(answer == true){ document.write(" 확인을눌렀습니다."); else { document.write(" 취소를눌렀습니다.");

var answer = confirm( 확인이나취소를누르세요.); // 확인창은사용자의의사를묻는데사용합니다. if(answer == true){ document.write( 확인을눌렀습니다.); else { document.write( 취소를눌렀습니다.); 자바스크립트 (JavaScript) - HTML 은사용자에게인터페이스 (interface) 를제공하는언어 - 자바스크립트는서버로데이터를전송하지않고서할수있는데이터처리를수행한다. - 자바스크립트는 HTML 나 JSP 에서작성할수있고 ( 내부스크립트 ), 별도의파일로도작성이가능하다 ( 외 부스크립트 ). - 내부스크립트 - 외부스크립트

More information

SOFTBASE XFRAME DEVELOPMENT GUIDE SERIES HTML 연동가이드 서울특별시구로구구로 3 동한신 IT 타워 1215 호 Phone Fax Co

SOFTBASE XFRAME DEVELOPMENT GUIDE SERIES HTML 연동가이드 서울특별시구로구구로 3 동한신 IT 타워 1215 호 Phone Fax Co SOFTBASE XFRAME DEVELOPMENT GUIDE SERIES 2012.02.18 서울특별시구로구구로 3 동한신 IT 타워 1215 호 Phone 02-2108-8030 Fax 02-2108-8031 www.softbase.co.kr Copyright 2010 SOFTBase Inc. All rights reserved 목차 1 장 : HTML 연동개요...

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

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

17장 클래스와 메소드

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

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

금오공대 컴퓨터공학전공 강의자료

금오공대 컴퓨터공학전공 강의자료 C 프로그래밍프로젝트 Chap 14. 포인터와함수에대한이해 2013.10.09. 오병우 컴퓨터공학과 14-1 함수의인자로배열전달 기본적인인자의전달방식 값의복사에의한전달 val 10 a 10 11 Department of Computer Engineering 2 14-1 함수의인자로배열전달 배열의함수인자전달방식 배열이름 ( 배열주소, 포인터 ) 에의한전달 #include

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

3. 저장위치를 바탕화면으로 설정하고, 저장을 하고, 실행을 합니다. 4. 바탕화면에 아이콘이 생성되고 아이콘을 더블 클릭합니다. 5. 실행을 클릭하여 프로그램을 설치합니다. 다음버튼을 클릭하고, 사용권 계약에서는 예를 클릭합 니다. 6. 암호 입력창이 뜨면 기본 암호

3. 저장위치를 바탕화면으로 설정하고, 저장을 하고, 실행을 합니다. 4. 바탕화면에 아이콘이 생성되고 아이콘을 더블 클릭합니다. 5. 실행을 클릭하여 프로그램을 설치합니다. 다음버튼을 클릭하고, 사용권 계약에서는 예를 클릭합 니다. 6. 암호 입력창이 뜨면 기본 암호 쉽고 간단한 스마트폰 앱 제작하기 우리가 읷반적으로 사용하고 있는 용어 응용 소프트웨어(application software)는 넓은 의미에서는 운영 체제 위에서 실행되는 모든 소프트웨어를 뜻합니다. 앱(APP) 이라고 줄여서 말하기도 하고, 어플, 어플리케이션 이라고도 합니다. 해당 앱만 설치하면 갂편하게 읶터넷 뱅킹도 이용하고 버스나 지하철 노선이나 차량

More information

Microsoft PowerPoint - ch09 - 연결형리스트, Stack, Queue와 응용 pm0100

Microsoft PowerPoint - ch09 - 연결형리스트, Stack, Queue와 응용 pm0100 2015-1 프로그래밍언어 9. 연결형리스트, Stack, Queue 2015 년 5 월 4 일 교수김영탁 영남대학교공과대학정보통신공학과 (Tel : +82-53-810-2497; Fax : +82-53-810-4742 http://antl.yu.ac.kr/; E-mail : ytkim@yu.ac.kr) 연결리스트 (Linked List) 연결리스트연산 Stack

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

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 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

어댑터뷰

어댑터뷰 04 커스텀어댑터뷰 (Custom Adapter View) 커스텀어댑터뷰 (Custom Adapter View) 커스텀어댑터뷰 (Custom Adatper View) 란? u 어댑터뷰의항목하나는단순한문자열이나이미지뿐만아니라, 임의의뷰가될수 있음 이미지뷰 u 커스텀어댑터뷰설정절차 1 2 항목을위한 XML 레이아웃정의 어댑터정의 3 어댑터를생성하고어댑터뷰객체에연결

More information

웰비아닷컴에서보앆프로그래머로읷하고있다. 시스템프로그래밍에관심이맋으며다수의 PC 보앆프로그램개발에참여했다. 현재데브피아 Visual C++ 섹션시삽과 Microsoft Visual C++ MVP 로홗동하고있다. C 와 C++, Programming 에관한이야기를좋아한다.

웰비아닷컴에서보앆프로그래머로읷하고있다. 시스템프로그래밍에관심이맋으며다수의 PC 보앆프로그램개발에참여했다. 현재데브피아 Visual C++ 섹션시삽과 Microsoft Visual C++ MVP 로홗동하고있다. C 와 C++, Programming 에관한이야기를좋아한다. 다시시작하는윈도우프로그래밍 핶들과콜백메커니즘 목차 목차... 1 소개... 1 연재가이드... 1 필자소개... 1 필자메모... 2 Introduction... 2 핶들이뭔가요?... 3 메모리할당을이용한방법... 3 핶들테이블을이용한방법... 6 핶들사용의모듞것... 8 콜백이뭔가요?... 9 콜백함수사용시주의해야할점... 10 콜백함수설계원칙... 11

More information

PowerPoint Template

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

More information

Windows Hook Revealed1

Windows Hook Revealed1 나만의윈도우라이브가젯만들기 이상한나라의자바스크립트 Windows Live 가젯은웹에서동작하는갂단한프로그램이다. 가젯제작을위해서가장중요 한것은자바스크립트와브라우저의 DOM 구조를이해하는것이다. 이번시갂에는자바스 크립트의특징과자바스크립트로 DOM 구조를조작하는방법을소개한다. 목차 목차... 1 연재가이드... 1 연재숚서... 2 필자소개... 2 필자메모...

More information

@ p a g e c o n te n tt y p e = " te x t/ h tm l;c h a rs e t= u tf- 8 " fo r (in t i= 0 ; i< = 1 0 ; i+ + ) { o u t.p rin tln (" H e llo W o rld " + i + " < b r/> " ); = re s u lt + re s u lts u m ()

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

API 매뉴얼

API 매뉴얼 PCI-DIO12 API Programming (Rev 1.0) Windows, Windows2000, Windows NT and Windows XP are trademarks of Microsoft. We acknowledge that the trademarks or service names of all other organizations mentioned

More information

3장

3장 C H A P T E R 03 CHAPTER 03 03-01 03-01-01 Win m1 f1 e4 e5 e6 o8 Mac m1 f1 s1.2 o8 Linux m1 f1 k3 o8 AJAX

More information

호출 (calling) 의예술 윈도우프로그래밍테크닉 호출 (calling) 의예술 목차 목차... 1 License... 1 소개... 1 연재가이드... 1 필자소개... 2 필자메모... 2 Introduction... 2 함수호출규약 (calling convent

호출 (calling) 의예술 윈도우프로그래밍테크닉 호출 (calling) 의예술 목차 목차... 1 License... 1 소개... 1 연재가이드... 1 필자소개... 2 필자메모... 2 Introduction... 2 함수호출규약 (calling convent 윈도우프로그래밍테크닉 목차 목차... 1 License... 1 소개... 1 연재가이드... 1 필자소개... 2 필자메모... 2 Introduction... 2 함수호출규약 (calling convention)... 3 cdecl 호출규약... 4 stdcall 호출규약... 4 fastcall 호출규약... 5 thiscall 호출규약... 6 x64

More information

Microsoft PowerPoint - web-part02-ch15-문서객체조작.pptx

Microsoft PowerPoint - web-part02-ch15-문서객체조작.pptx 과목명 : 웹프로그래밍응용교재 : 모던웹을위한 JavaScript Jquery 입문, 한빛미디어 Part2. jquery Ch15. 문서객체조작 2014년 1학기 Professor Seung-Hoon Choi 15 문서객체조작 문서객체조작 자바스크립트만으로문서객체모델을다루려면복잡함 jquery를이용하면쉽게다룰수있다. 이책에서가장중요한부분 15.1 문서객체의클래스속성추가

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

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

쉽게 풀어쓴 C 프로그래밍

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

More information

A Hierarchical Approach to Interactive Motion Editing for Human-like Figures

A Hierarchical Approach to Interactive Motion Editing for Human-like Figures 단일연결리스트 (Singly Linked List) 신찬수 연결리스트 (linked list)? tail 서울부산수원용인 null item next 구조체복습 struct name_card { char name[20]; int date; } struct name_card a; // 구조체변수 a 선언 a.name 또는 a.date // 구조체 a의멤버접근 struct

More information

쉽게 풀어쓴 C 프로그래밍

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

More information

Microsoft PowerPoint 세션.ppt

Microsoft PowerPoint 세션.ppt 웹프로그래밍 () 2006 년봄학기 문양세강원대학교컴퓨터과학과 세션변수 (Session Variable) (1/2) 쇼핑몰장바구니 장바구니에서는사용자가페이지를이동하더라도장바구니의구매물품리스트의내용을유지하고있어야함 PHP 에서사용하는일반적인변수는스크립트의수행이끝나면모두없어지기때문에페이지이동시변수의값을유지할수없음 이러한문제점을해결하기위해서 PHP 에서는세션 (session)

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

JUNIT 실습및발표

JUNIT 실습및발표 JUNIT 실습및발표 JUNIT 접속 www.junit.org DownLoad JUnit JavaDoc API Document 를참조 JUNIT 4.8.1 다운로드 설치파일 (jar 파일 ) 을다운로드 CLASSPATH 를설정 환경변수에서설정 실행할클래스에서 import JUnit 설치하기 테스트실행주석 @Test Test 를실행할 method 앞에붙임 expected

More information

Microsoft PowerPoint - C++ 5 .pptx

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

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

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

임베디드시스템설계강의자료 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

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

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

More information

Web Scraper in 30 Minutes 강철

Web Scraper in 30 Minutes 강철 Web Scraper in 30 Minutes 강철 발표자 소개 KAIST 전산학과 2015년부터 G사에서 일합니다. 에서 대한민국 정치의 모든 것을 개발하고 있습니다. 목표 웹 스크래퍼를 프레임웍 없이 처음부터 작성해 본다. 목표 웹 스크래퍼를 프레임웍 없이 처음부터 작성해 본다. 스크래퍼/크롤러의 작동 원리를 이해한다. 목표

More information

chap 5: Trees

chap 5: Trees 5. Threaded Binary Tree 기본개념 n 개의노드를갖는이진트리에는 2n 개의링크가존재 2n 개의링크중에 n + 1 개의링크값은 null Null 링크를다른노드에대한포인터로대체 Threads Thread 의이용 ptr left_child = NULL 일경우, ptr left_child 를 ptr 의 inorder predecessor 를가리키도록변경

More information

ThisJava ..

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

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

로거 자료실

로거 자료실 redirection 매뉴얼 ( 개발자용 ) V1.5 Copyright 2002-2014 BizSpring Inc. All Rights Reserved. 본문서에대한저작권은 비즈스프링 에있습니다. - 1 - 목차 01 HTTP 표준 redirect 사용... 3 1.1 HTTP 표준 redirect 예시... 3 1.2 redirect 현상이여러번일어날경우예시...

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

Microsoft PowerPoint - web-part01-ch05-함수.pptx

Microsoft PowerPoint - web-part01-ch05-함수.pptx 과목명 : 웹프로그래밍응용교재 : 모던웹을위한 JavaScript Jquery 입문, 한빛미디어 Part1. JavaScript / Ch05. 함수 2014년 1학기 Professor Seung-Hoon Choi 5. 1 익명함수 함수 코드의집합을나타내는자료형 형식 var 함수이름 = function( ) { }; function( ) { } 부분은이름이없는익명함수임

More information

Microsoft PowerPoint - chap06-1Array.ppt

Microsoft PowerPoint - chap06-1Array.ppt 2010-1 학기프로그래밍입문 (1) chapter 06-1 참고자료 배열 박종혁 Tel: 970-6702 Email: jhpark1@snut.ac.kr 한빛미디어 출처 : 뇌를자극하는 C프로그래밍, 한빛미디어 -1- 배열의선언과사용 같은형태의자료형이많이필요할때배열을사용하면효과적이다. 배열의선언 배열의사용 배열과반복문 배열의초기화 유연성있게배열다루기 한빛미디어

More information

12 강. 문자출력 Direct3D 에서는문자를출력하기위해서 LPD3DXFONT 객체를사용한다 LPD3DXFONT 객체생성과초기화 LPD3DXFONT 객체를생성하고초기화하는함수로 D3DXCreateFont() 가있다. HRESULT D3DXCreateFont

12 강. 문자출력 Direct3D 에서는문자를출력하기위해서 LPD3DXFONT 객체를사용한다 LPD3DXFONT 객체생성과초기화 LPD3DXFONT 객체를생성하고초기화하는함수로 D3DXCreateFont() 가있다. HRESULT D3DXCreateFont 12 강. 문자출력 Direct3D 에서는문자를출력하기위해서 LPD3DXFONT 객체를사용한다. 12.1 LPD3DXFONT 객체생성과초기화 LPD3DXFONT 객체를생성하고초기화하는함수로 D3DXCreateFont() 가있다. HRESULT D3DXCreateFont( in LPDIRECT3DDEVICE9 pdevice, in INT Height, in UINT

More information

<4D F736F F F696E74202D203137C0E55FBFACBDC0B9AEC1A6BCD6B7E7BCC72E707074>

<4D F736F F F696E74202D203137C0E55FBFACBDC0B9AEC1A6BCD6B7E7BCC72E707074> SIMATIC S7 Siemens AG 2004. All rights reserved. Date: 22.03.2006 File: PRO1_17E.1 차례... 2 심벌리스트... 3 Ch3 Ex2: 프로젝트생성...... 4 Ch3 Ex3: S7 프로그램삽입... 5 Ch3 Ex4: 표준라이브러리에서블록복사... 6 Ch4 Ex1: 실제구성을 PG 로업로드하고이름변경......

More information

안드로이드기본 11 차시어댑터뷰 1 학습목표 어댑터뷰가무엇인지알수있다. 리스트뷰와스피너를사용하여데이터를출력할수있다. 2 확인해볼까? 3 어댑터뷰 1) 학습하기 어댑터뷰 - 1 -

안드로이드기본 11 차시어댑터뷰 1 학습목표 어댑터뷰가무엇인지알수있다. 리스트뷰와스피너를사용하여데이터를출력할수있다. 2 확인해볼까? 3 어댑터뷰 1) 학습하기 어댑터뷰 - 1 - 11 차시어댑터뷰 1 학습목표 어댑터뷰가무엇인지알수있다. 리스트뷰와스피너를사용하여데이터를출력할수있다. 2 확인해볼까? 3 어댑터뷰 1) 학습하기 어댑터뷰 - 1 - ArrayAdapter ArrayAdapter adapter = new ArrayAdapter(this, android.r.layout.simple_list_item_1,

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 제 3 장함수와문자열 1. 함수의기본적인개념을이해한다. 2. 인수와매개변수의개념을이해한다. 3. 함수의인수전달방법 2가지를이해한다 4. 중복함수를이해한다. 5. 디폴트매개변수를이해한다. 6. 문자열의구성을이해한다. 7. string 클래스의사용법을익힌다. 이번장에서만들어볼프로그램 함수란? 함수선언 함수호출 예제 #include using

More information

SIGIL 완벽입문

SIGIL 완벽입문 누구나 만드는 전자책 SIGIL 을 이용해 전자책을 만들기 EPUB 전자책이 가지는 단점 EPUB이라는 포맷과 제일 많이 비교되는 포맷은 PDF라는 포맷 입니다. EPUB이 나오기 전까지 전 세계에서 가장 많이 사용되던 전자책 포맷이고, 아직도 많이 사 용되기 때문이기도 한며, 또한 PDF는 종이책 출력을 위해서도 사용되기 때문에 종이책 VS

More information

<4D F736F F F696E74202D20C1A63034B0AD202D20C7C1B7B9C0D3B8AEBDBAB3CABFCD20B9ABB9F6C6DBC0D4B7C2>

<4D F736F F F696E74202D20C1A63034B0AD202D20C7C1B7B9C0D3B8AEBDBAB3CABFCD20B9ABB9F6C6DBC0D4B7C2> 게임엔진 제 4 강프레임리스너와 OIS 입력시스템 이대현교수 한국산업기술대학교게임공학과 학습내용 프레임리스너의개념 프레임리스너를이용한엔터티의이동 OIS 입력시스템을이용한키보드입력의처리 게임루프 Initialization Game Logic Drawing N Exit? Y Finish 실제게임루프 오우거엔진의메인렌더링루프 Root::startRendering()

More information

(Microsoft PowerPoint - 07\300\345.ppt [\310\243\310\257 \270\360\265\345])

(Microsoft PowerPoint - 07\300\345.ppt [\310\243\310\257 \270\360\265\345]) 클래스의응용 클래스를자유자재로사용하자. 이장에서다룰내용 1 객체의치환 2 함수와클래스의상관관계 01_ 객체의치환 객체도변수와마찬가지로치환이가능하다. 기본예제 [7-1] 객체도일반변수와마찬가지로대입이가능하다. 기본예제 [7-2] 객체의치환시에는조심해야할점이있다. 복사생성자의필요성에대하여알아보자. [ 기본예제 7-1] 클래스의치환 01 #include

More information

Microsoft PowerPoint - Chap12-OOP.ppt

Microsoft PowerPoint - Chap12-OOP.ppt 객체지향프로그래밍 (Object Oriented Programming) 12 장강사 강대기 차례 (Agenda) 멤버에대한동적메모리할당 암시적 / 명시적복사생성자 암시적 / 명시적오버로딩대입연산자 생성자에 new 사용하기 static 클래스멤버 객체에위치지정 new 사용하기 객체를지시하는포인터 StringBad 클래스 멤버에포인터사용 str static 멤버

More information

쉽게 풀어쓴 C 프로그래밍

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

More information

MF3010 MF Driver Installation Guide

MF3010 MF Driver Installation Guide 한국어 MF 드라이버설치설명서 사용자소프트웨어 CD-ROM................................................ 1.................................................................... 1..............................................................................

More information

SOFTBASE XFRAME DEVELOPMENT GUIDE SERIES ActiveX 컴포넌트가이드 서울특별시구로구구로 3 동한신 IT 타워 1215 호 Phone Fax

SOFTBASE XFRAME DEVELOPMENT GUIDE SERIES ActiveX 컴포넌트가이드 서울특별시구로구구로 3 동한신 IT 타워 1215 호 Phone Fax SOFTBASE XFRAME DEVELOPMENT GUIDE SERIES 2012.02.18 서울특별시구로구구로 3 동한신 IT 타워 1215 호 Phone 02-2108-8030 Fax 02-2108-8031 www.softbase.co.kr Copyright 2010 SOFTBase Inc. All rights reserved 목차 1 장 : ActiveX

More information

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

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

More information

아이콘의 정의 본 사용자 설명서에서는 다음 아이콘을 사용합니다. 참고 참고는 발생할 수 있는 상황에 대처하는 방법을 알려 주거나 다른 기능과 함께 작동하는 방법에 대한 요령을 제공합니다. 상표 Brother 로고는 Brother Industries, Ltd.의 등록 상

아이콘의 정의 본 사용자 설명서에서는 다음 아이콘을 사용합니다. 참고 참고는 발생할 수 있는 상황에 대처하는 방법을 알려 주거나 다른 기능과 함께 작동하는 방법에 대한 요령을 제공합니다. 상표 Brother 로고는 Brother Industries, Ltd.의 등록 상 Android 용 Brother Image Viewer 설명서 버전 0 KOR 아이콘의 정의 본 사용자 설명서에서는 다음 아이콘을 사용합니다. 참고 참고는 발생할 수 있는 상황에 대처하는 방법을 알려 주거나 다른 기능과 함께 작동하는 방법에 대한 요령을 제공합니다. 상표 Brother 로고는 Brother Industries, Ltd.의 등록 상표입니다. Android는

More information

슬라이드 1

슬라이드 1 2007 년 2 학기윈도우게임프로그래밍 제 7 강프레임속도의조절 이대현 핚국산업기술대학교 학습내용 프레임속도의조절 30fps 맞추기 스프라이트프레임속도의조절 프레임속도 (Frame Rate) 프레임속도란? 얼마나빨리프레임 ( 일반적으로하나의완성된화면 ) 을만들어낼수있는지를나타내는척도 일반적으로초당프레임출력횟수를많이사용핚다. FPS(Frame Per Sec)

More information

API - Notification 메크로를통하여어느특정상황이되었을때 SolidWorks 및보낸경로를통하여알림메시지를보낼수있습니다. 이번기술자료에서는메크로에서이벤트처리기를통하여진행할예정이며, 메크로에서작업을수행하는데유용할것입니다. 알림이벤트핸들러는응용프로그램구현하는데있어

API - Notification 메크로를통하여어느특정상황이되었을때 SolidWorks 및보낸경로를통하여알림메시지를보낼수있습니다. 이번기술자료에서는메크로에서이벤트처리기를통하여진행할예정이며, 메크로에서작업을수행하는데유용할것입니다. 알림이벤트핸들러는응용프로그램구현하는데있어 메크로를통하여어느특정상황이되었을때 SolidWorks 및보낸경로를통하여알림메시지를보낼수있습니다. 이번기술자료에서는메크로에서이벤트처리기를통하여진행할예정이며, 메크로에서작업을수행하는데유용할것입니다. 알림이벤트핸들러는응용프로그램구현하는데있어서가장중요한부분이라고도할수있기때문입니다. 1. 새로운메크로생성 새메크로만들기버튺을클릭하여파일을생성합니다. 2. 메크로저장 -

More information

5장. JSP와 Servlet 프로그래밍을 위한 기본 문법(완성-0421).hwp

5장. JSP와 Servlet 프로그래밍을 위한 기본 문법(완성-0421).hwp 1 0 1.7 6 5 'A ' '/ u 4 4 2 2 ' " JS P 프로그래밍 " A ', 'b ', ' 한 ', 9, \ u d 6 5 4 ' c h a r a = 'A '; 0 1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0 9 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 < % @ p a g e c o n te n

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Programming Languages 모듈과펑터 2016 년봄학기 손시운 (ssw5176@kangwon.ac.kr) 담당교수 : 임현승교수님 모듈 (module) 관련있는정의 ( 변수또는함수 ) 를하나로묶은패키지 예약어 module과 struct end를사용하여정의 아래는모듈의예시 ( 우선순위큐, priority queue) # module PrioQueue

More information

Studuino소프트웨어 설치

Studuino소프트웨어 설치 Studuino 프로그래밍환경 Studuino 소프트웨어설치 본자료는 Studuino 프로그래밍환경설치안내서입니다. Studuino 프로그래밍 환경의갱신에따라추가 / 수정될수있습니다. 목차 1. 소개... 1 2. Windows... 2 2.1. 프로그래밍환경설치... 2 2.1.1. 웹설치버전설치방법... 2 2.2. Studuino 프로그래밍환경실행...

More information

Research & Technique Apache Tomcat RCE 취약점 (CVE ) 취약점개요 지난 4월 15일전세계적으로가장많이사용되는웹애플리케이션서버인 Apache Tomcat에서 RCE 취약점이공개되었다. CVE 취약점은 W

Research & Technique Apache Tomcat RCE 취약점 (CVE ) 취약점개요 지난 4월 15일전세계적으로가장많이사용되는웹애플리케이션서버인 Apache Tomcat에서 RCE 취약점이공개되었다. CVE 취약점은 W Research & Technique Apache Tomcat RCE 취약점 (CVE-2019-0232) 취약점개요 지난 4월 15일전세계적으로가장많이사용되는웹애플리케이션서버인 Apache Tomcat에서 RCE 취약점이공개되었다. CVE-2019-0232 취약점은 Windows 시스템의 Apache Tomcat 서버에서 enablecmdlinearguments

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

Ext JS À¥¾ÖÇø®ÄÉÀ̼ǰ³¹ß-³¹Àå.PDF

Ext JS À¥¾ÖÇø®ÄÉÀ̼ǰ³¹ß-³¹Àå.PDF CHAPTER 2 (interaction) Ext JS., HTML, onready, MessageBox get.. Ext JS HTML CSS Ext JS.1. Ext JS. Ext.Msg: : Ext Ext.get: DOM 22 CHAPTER 2 (config). Ext JS.... var test = new TestFunction( 'three', 'fixed',

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

untitled

untitled 시스템소프트웨어 : 운영체제, 컴파일러, 어셈블러, 링커, 로더, 프로그래밍도구등 소프트웨어 응용소프트웨어 : 워드프로세서, 스프레드쉬트, 그래픽프로그램, 미디어재생기등 1 n ( x + x +... + ) 1 2 x n 00001111 10111111 01000101 11111000 00001111 10111111 01001101 11111000

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 CHAPTER 14. HTML5 웹스토리지, 파일 API, 웹소켓 웹스토리지 웹스토리지 (web storage) 는클라이언트컴퓨터에데이터를저장하는메카니즘 웹스토리지는쿠키보다안전하고속도도빠르다. 약 5MB 정도까지저장이가능하다. 데이터는키 / 값 (key/value) 의쌍으로저장 localstorage 와 sessionstorage localstorage 객체

More information

JAVA PROGRAMMING 실습 05. 객체의 활용

JAVA PROGRAMMING 실습 05. 객체의 활용 2015 학년도 2 학기 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

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

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

게시판 스팸 실시간 차단 시스템 오픈 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

다시시작하는윈도우프로그래밍 프로세스이야기 목차 목차... 1 소개... 1 연재가이드... 1 필자소개... 1 필자메모... 2 Introduction... 3 프로세스의시작함수... 4 프로세스생성하기... 5 프로세스상태알아내기... 7 프로세스종료하기... 9

다시시작하는윈도우프로그래밍 프로세스이야기 목차 목차... 1 소개... 1 연재가이드... 1 필자소개... 1 필자메모... 2 Introduction... 3 프로세스의시작함수... 4 프로세스생성하기... 5 프로세스상태알아내기... 7 프로세스종료하기... 9 다시시작하는윈도우프로그래밍 프로세스이야기 목차 목차... 1 소개... 1 연재가이드... 1 필자소개... 1 필자메모... 2 Introduction... 3 프로세스의시작함수... 4 프로세스생성하기... 5 프로세스상태알아내기... 7 프로세스종료하기... 9 현재프로세스정보... 11 도젂과제... 12 참고자료... 12 소개 Windows라는욲영체제에서프로세스의의미와그것을다루는방법에대해서살펴본다.

More information

학습목차 2.1 다차원배열이란 차원배열의주소와값의참조

학습목차 2.1 다차원배열이란 차원배열의주소와값의참조 - Part2- 제 2 장다차원배열이란무엇인가 학습목차 2.1 다차원배열이란 2. 2 2 차원배열의주소와값의참조 2.1 다차원배열이란 2.1 다차원배열이란 (1/14) 다차원배열 : 2 차원이상의배열을의미 1 차원배열과다차원배열의비교 1 차원배열 int array [12] 행 2 차원배열 int array [4][3] 행 열 3 차원배열 int array [2][2][3]

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. 매뉴얼안내 운영체제 (OS) 환경 윈도우드라이버준비 윈도우드라이버설치 Windows XP/Server 2003 에서설치 Serial 또는 Parallel 포트의경우.

목차 윈도우드라이버 1. 매뉴얼안내 운영체제 (OS) 환경 윈도우드라이버준비 윈도우드라이버설치 Windows XP/Server 2003 에서설치 Serial 또는 Parallel 포트의경우. 소프트웨어매뉴얼 윈도우드라이버 Rev. 3.03 SLP-TX220 / TX223 SLP-TX420 / TX423 SLP-TX400 / TX403 SLP-DX220 / DX223 SLP-DX420 / DX423 SLP-DL410 / DL413 SLP-T400 / T403 SLP-T400R / T403R SLP-D220 / D223 SLP-D420 / D423

More information

슬라이드 1

슬라이드 1 핚국산업기술대학교 제 14 강 GUI (III) 이대현교수 학습안내 학습목표 CEGUI 라이브러리를이용하여, 게임메뉴 UI 를구현해본다. 학습내용 CEGUI 레이아웃의로딩및렌더링. OIS 와 CEGUI 의연결. CEGUI 위젯과이벤트의연동. UI 구현 : 하드코딩방식 C++ 코드를이용하여, 코드내에서직접위젯들을생성및설정 CEGUI::PushButton* resumebutton

More information

슬라이드 1

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

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

설계란 무엇인가?

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

More information

Microsoft PowerPoint - ch07 - 포인터 pm0415

Microsoft PowerPoint - ch07 - 포인터 pm0415 2015-1 프로그래밍언어 7. 포인터 (Pointer), 동적메모리할당 2015 년 4 월 4 일 교수김영탁 영남대학교공과대학정보통신공학과 (Tel : +82-53-810-2497; Fax : +82-53-810-4742 http://antl.yu.ac.kr/; E-mail : ytkim@yu.ac.kr) Outline 포인터 (pointer) 란? 간접참조연산자

More information

adfasdfasfdasfasfadf

adfasdfasfdasfasfadf C 4.5 Source code Pt.3 ISL / 강한솔 2019-04-10 Index Tree structure Build.h Tree.h St-thresh.h 2 Tree structure *Concpets : Node, Branch, Leaf, Subtree, Attribute, Attribute Value, Class Play, Don't Play.

More information

유니티 변수-함수.key

유니티 변수-함수.key C# 1 or 16 (Binary or Hex) 1:1 C# C# (Java, Python, Go ) (0101010 ). (Variable) : (Value) (Variable) : (Value) ( ) (Variable) : (Value) ( ) ; (Variable) : (Value) ( ) ; = ; (Variable) : (Value) (Variable)

More information

Modern Javascript

Modern Javascript ES6 - Arrow Function Class Template String Destructuring Default, Rest, Spread let, const for..of Promises Module System Map, Set * Generator * Symbol * * https://babeljs.io/ Babel is a JavaScript compiler.

More information

<4D F736F F F696E74202D B3E22032C7D0B1E220C0A9B5B5BFECB0D4C0D3C7C1B7CEB1D7B7A1B9D620C1A638B0AD202D20C7C1B7B9C0D320BCD3B5B5C0C720C1B6C0FD>

<4D F736F F F696E74202D B3E22032C7D0B1E220C0A9B5B5BFECB0D4C0D3C7C1B7CEB1D7B7A1B9D620C1A638B0AD202D20C7C1B7B9C0D320BCD3B5B5C0C720C1B6C0FD> 2006 년 2 학기윈도우게임프로그래밍 제 8 강프레임속도의조절 이대현 한국산업기술대학교 오늘의학습내용 프레임속도의조절 30fps 맞추기 스프라이트프레임속도의조절 프레임속도 (Frame Rate) 프레임속도란? 얼마나빨리프레임 ( 일반적으로하나의완성된화면 ) 을만들어낼수있는지를나타내는척도 일반적으로초당프레임출력횟수를많이사용한다. FPS(Frame Per Sec)

More information

Lab 3. 실습문제 (Single linked list)_해답.hwp

Lab 3. 실습문제 (Single linked list)_해답.hwp Lab 3. Singly-linked list 의구현 실험실습일시 : 2009. 3. 30. 담당교수 : 정진우 담당조교 : 곽문상 보고서제출기한 : 2009. 4. 5. 학과 : 학번 : 성명 : 실습과제목적 : 이론시간에배운 Singly-linked list를실제로구현할수있다. 실습과제내용 : 주어진소스를이용해 Singly-linked list의각함수를구현한다.

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

Design Issues

Design Issues 11 COMPUTER PROGRAMMING INHERIATANCE CONTENTS OVERVIEW OF INHERITANCE INHERITANCE OF MEMBER VARIABLE RESERVED WORD SUPER METHOD INHERITANCE and OVERRIDING INHERITANCE and CONSTRUCTOR 2 Overview of Inheritance

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

11장 포인터

11장 포인터 누구나즐기는 C 언어콘서트 제 9 장포인터 이번장에서학습할내용 포인터이란? 변수의주소 포인터의선언 간접참조연산자 포인터연산 포인터와배열 포인터와함수 이번장에서는포인터의기초적인지식을학습한다. 포인터란? 포인터 (pointer): 주소를가지고있는변수 메모리의구조 변수는메모리에저장된다. 메모리는바이트단위로액세스된다. 첫번째바이트의주소는 0, 두번째바이트는 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

슬라이드 1

슬라이드 1 인텐트, 서비스 시작하면서 2 목차 읶텐트 서비스 알림 방송수싞자 알람 인텐트 (Intent) 3 의도 또는 의향 이라는뜻일종의메시지전달메커니즘 컴포넌트간의사소통하는수단 예 ) 액션으로 Intent.ACTION_VIEW 를포함하는읶텐트읶경우 : 다른컴포넌트에게무엇읶가보여주는처리를요청함 독립적읶컴포넌트들을서로연결된하나의시스템으로구성해주는효과 구성요소 액션 :

More information

Chapter 4. LISTS

Chapter 4. LISTS 6. 동치관계 (Equivalence Relations) 동치관계 reflexive, symmetric, transitive 성질을만족 "equal to"(=) 관계는동치관계임. x = x x = y 이면 y = x x = y 이고 y = z 이면 x = z 동치관계를이용하여집합 S 를 동치클래스 로분할 동일한클래스내의원소 x, y 에대해서는 x y 관계성립

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

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

Visual Basic 반복문

Visual Basic 반복문 학습목표 반복문 For Next문, For Each Next문 Do Loop문, While End While문 구구단작성기로익히는반복문 2 5.1 반복문 5.2 구구단작성기로익히는반복문 3 반복문 주어진조건이만족하는동안또는주어진조건이만족할때까지일정구간의실행문을반복하기위해사용 For Next For Each Next Do Loop While Wend 4 For

More information

<4D F736F F F696E74202D2036C0CFC2B05FB0B4C3BCC1F6C7E2C7C1B7CEB1D7B7A1B9D62E707074>

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

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