Flash Platform의 성능 최적화
|
|
- 동준 반
- 5 years ago
- Views:
Transcription
1 ADOBE FLASH PLATFORM
2
3 iii 1 : : D : CPU Flash Player 10.1 CPU ENTER_FRAME : ActionScript 3.0 Vector Array API :
4 iv GPU : Flash Remoting : StageVideo : SQL SQL SQL :
5 1 1 : Adobe AIR Adobe Flash Player,,,... CPU ActionScript 3.0 SQL, AIR Flash Player.. Flash Player 10.1 AIR 2.5, AIR Flash Player. Flash Platform. " "..., 30, 1/30.. Adobe Flash Builder Flash Professional.. ActionScript [SWF(frameRate="24"]. MXML framerate WindowedApplication.,, enterframe. ( enterframe ), enterframe.....
6 2 : updateafterevent. updateafterevent..,.... " (elastic racetrack)". ( ).. 1/ Flash Platform. Flash Player Mental Model - The Elastic Racetrack(Ted Patrick ) Asynchronous ActionScript Execution(Trevor McCauley ) Christmann MAX ), Adobe AIR....,..??????????? CPU???.,
7 3....,. Flash Platform.. " " ,, Goldman MAX ) AIR Oliver Goldman Adobe Developer Connection )
8 4 2 :... ActionScript Shape, Sprite, MovieClip... trace(getsize(new Shape())); // output: 236 trace(getsize(new Sprite())); // output: 412 trace(getsize(new MovieClip())); // output: 440 getsize(). MovieClip Shape MovieClip. getsize(). String 4-8..
9 5 // Primitive types var a:number; trace(getsize(a)); // output: 8 var b:int; trace(getsize(b)); // output: 4 var c:uint; trace(getsize(c)); // output: 4 var d:boolean; trace(getsize(d)); // output: 4 var e:string; trace(getsize(e)); // output: 4 64 Number AVM(ActionScript Virtual Machine) // Primitive types var a:number = 8; trace(getsize(a)); // output: 4 a = Number.MAX_VALUE; trace(getsize(a)); // output: 8 String. String. var name:string; trace(getsize(name)); // output: 4 name = ""; trace(getsize(name)); // output: 24 name = "Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularized in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum."; trace(getsize(name)); // output: 1172 getsize()..
10 6.. const MAX_NUM:int = 18; const COLOR:uint = 0xCCCCCC; var area:rectangle; for (var:int = 0; i < MAX_NUM; i++) // Do not use the following code area = new Rectangle(i,0,1,10); mybitmapdata.fillrect(area,color); Rectangle.. const MAX_NUM:int = 18; const COLOR:uint = 0xCCCCCC; // Create the rectangle outside the loop var area:rectangle = new Rectangle(0,0,1,10); for (var:int = 0; i < MAX_NUM; i++) area.x = i; mybitmapdata.fillrect(area,color);. BitmapData.. var myimage:bitmapdata; var mycontainer:bitmap; const MAX_NUM:int = 300; for (var i:int = 0; i< MAX_NUM; i++) // Create a 20 x 20 pixel bitmap, non-transparent myimage = new BitmapData(20,20,false,0xF0D062); // Create a container for each BitmapData instance mycontainer = new Bitmap(myImage); // Add it to the display list addchild(mycontainer); // Place each container mycontainer.x = (mycontainer.width + 8) * Math.round(i % 20); mycontainer.y = (mycontainer.height + 8) * int(i / 20); : int Math.floor()..
11 7 Bitmap BitmapData. // Create a single 20 x 20 pixel bitmap, non-transparent var myimage:bitmapdata = new BitmapData(20,20,false,0xF0D062); var mycontainer:bitmap; const MAX_NUM:int = 300; for (var i:int = 0; i< MAX_NUM; i++) // Create a container referencing the BitmapData instance mycontainer = new Bitmap(myImage); // Add it to the display list addchild(mycontainer); // Place each container mycontainer.x = (mycontainer.width + 8) * Math.round(i % 20); mycontainer.y = (mycontainer.height + 8) * int(i / 20); 700KB,. Bitmap BitmapData.
12 8 // Create a single 20 x 20 pixel bitmap, non-transparent var myimage:bitmapdata = new BitmapData(20,20,false,0xF0D062); var mycontainer:bitmap; const MAX_NUM:int = 300; for (var i:int = 0; i< MAX_NUM; i++) // Create a container referencing the BitmapData instance mycontainer = new Bitmap(myImage); // Add it to the DisplayList addchild(mycontainer); // Place each container mycontainer.x = (mycontainer.width + 8) * Math.round(i % 20); mycontainer.y = (mycontainer.height + 8) * int(i / 20); // Set a specific rotation, alpha, and depth mycontainer.rotation = Math.random()*360; mycontainer.alpha = Math.random(); mycontainer.scalex = mycontainer.scaley = Math.random();. 48
13 9.. Array Vector. CPU. null. null..... package import flash.display.sprite; public final class SpritePool private static var MAX_VALUE:uint; private static var GROWTH_VALUE:uint; private static var counter:uint; private static var pool:vector.<sprite>; private static var currentsprite:sprite; public static function initialize( maxpoolsize:uint, growthvalue:uint ):void MAX_VALUE = maxpoolsize; GROWTH_VALUE = growthvalue; counter = maxpoolsize; var i:uint = maxpoolsize; pool = new Vector.<Sprite>(MAX_VALUE); while( --i > -1 ) pool[i] = new Sprite(); public static function getsprite():sprite if ( counter > 0 ) return currentsprite = pool[--counter]; var i:uint = GROWTH_VALUE; while( --i > -1 ) pool.unshift ( new Sprite() ); counter = GROWTH_VALUE; return getsprite(); public static function disposesprite(disposedsprite:sprite):void pool[counter++] = disposedsprite;
14 10 SpritePool. getsprite() disposesprite() SpritePool. const MAX_SPRITES:uint = 100; const GROWTH_VALUE:uint = MAX_SPRITES >> 1; const MAX_NUM:uint = 10; SpritePool.initialize ( MAX_SPRITES, GROWTH_VALUE ); var currentsprite:sprite; var container:sprite = SpritePool.getSprite(); addchild ( container ); for ( var i:int = 0; i< MAX_NUM; i++ ) for ( var j:int = 0; j< MAX_NUM; j++ ) currentsprite = SpritePool.getSprite(); currentsprite.graphics.beginfill ( 0x ); currentsprite.graphics.drawcircle ( 10, 10, 10 ); currentsprite.x = j * (currentsprite.width + 5); currentsprite.y = i * (currentsprite.width + 5); container.addchild ( currentsprite );. stage.addeventlistener ( MouseEvent.CLICK, removedots ); function removedots ( e:mouseevent ):void while (container.numchildren > 0 ) SpritePool.disposeSprite (container.removechildat(0) as Sprite ); : Sprite. SpritePool dispose().. Flash Player.. ActionScript delete ActionScript 3.0. ActionScript 3.0. : Adobe AIR Flash Player. Sprite null.
15 11 var mysprite:sprite = new Sprite(); // Set the reference to null, so that the garbage collector removes // it from memory mysprite = null; null CPU.. null.. : null. CPU. null. Adobe AIR Flash Player System.gc(). Adobe Flash Builder.. :. null removeeventlistener().. BitmapData dispose(). 1.8MB BitmapData. 1.8MB System.totalMemory. trace(system.totalmemory / 1024); // output: // Create a BitmapData instance var image:bitmapdata = new BitmapData(800, 600); trace(system.totalmemory / 1024); // output: BitmapData,. trace(system.totalmemory / 1024); // output: // Create a BitmapData instance var image:bitmapdata = new BitmapData(800, 600); trace(system.totalmemory / 1024); // output: image.dispose(); image = null; trace(system.totalmemory / 1024); // output: dispose() null. BitmapData dispose() null.
16 12 : Flash Player 10.1 AIR System disposexml(). XML XML. 25. ( ) CPU GPU Flash Player Windows Mobile Flash Player : Flash Player (4 ). 300 x KB (300*300*4/1024). 175KB. 16. (PNG, GIF, JPG) , BitmapData BitmapData. Flash Player 10.1 AIR 2.5 BitmapData. BitmapData BitmapData.. [Embed]. : Flash Player 10.1 AIR Flash Player 10.1 AIR 2.5.
17 13 Flash Player 10.1 AIR 2.5 Flash Player 10.1 AIR 2.5 BitmapData.. Flash Player 10.1 AIR 2.5. Star.
18 14 const MAX_NUM:int = 18; var star:bitmapdata; var bitmap:bitmap; for (var i:int = 0; i<max_num; i++) for (var j:int = 0; j<max_num; j++) star = new Star(0,0); bitmap = new Bitmap(star); bitmap.x = j * star.width; bitmap.y = i * star.height; addchild(bitmap). Flash Player KB Flash Player KB. BitmapData.
19 15 const MAX_NUM:int = 18; var star:bitmapdata; var bitmap:bitmap; for (var i:int = 0; i<max_num; i++) for (var j:int = 0; j<max_num; j++) star = new Star(0,0); bitmap = new Bitmap(star); bitmap.x = j * star.width; bitmap.y = i * star.height; addchild(bitmap) var ref:bitmap = getchildat(0) as Bitmap; ref.bitmapdata.pixeldissolve(ref.bitmapdata, ref.bitmapdata.rect, new Point(0,0),Math.random()*200,Math.random()*200, 0x990000); Star.. BitmapData..
20 16 setpixel(). Flash Player 10.1 AIR 2.5 8KB.. beginbitmapfill(). var container:sprite = new Sprite(); var source:bitmapdata = new Star(0,0); // Fill the surface with the source BitmapData container.graphics.beginbitmapfill(source); container.graphics.drawrect(0,0,stage.stagewidth,stage.stageheight); addchild(container); BitmapData. Star Matrix. Matrix beginbitmapfill().
21 17 var container:sprite = new Sprite(); container.addeventlistener(event.enter_frame, rotate); var source:bitmapdata = new Star(0,0); var matrix:matrix = new Matrix(); addchild(container); var angle:number =.01; function rotate(e:event):void // Rotate the stars matrix.rotate(angle); // Clear the content container.graphics.clear(); // Fill the surface with the source BitmapData container.graphics.beginbitmapfill(source,matrix,true,true); container.graphics.drawrect(0,0,stage.stagewidth,stage.stageheight); ActionScript... BitmapData.. :. Shape.
22 18 Pixel Bender. Pixel Bender..... CPU. Flash Player 10.1 AIR , CPU GPU. ( : Adobe Photoshop ). ActionScript. CPU GPU,....
23 19 Flash Player 10.1 AIR 2.5. Flash Player 9 AIR 1.0. : x x x 256, 512 x 512, 1024 x x x x x 512, 256 x 256, 128 x 128, 64 x 64. Flash Player 10.1 AIR MB(1024 x 1024) 16KB(64 x 64).. 64 x 64 4MB... 1:8 1:4/1:2/1:1. 1:1. JPEG... JPEG. :.,.,.. 3D 3D. Flash Player 10 AIR 1.5 3D. rotationx rotationy Graphics drawtriangles(). z...
24 20. AIR Flash Player AIR AIR 2.5 3D. Flash Player. API 3D. Flash Player 10 AIR 1.5 3D. drawtriangles(). 3D API,. ActionScript. rendermode GPU AIR AIR 2.5 GPU 3D. rendermode CPU CPU 3D (GPU ). Flash Player 10.1 CPU 3D. CPU 3D 3D.. 3D. CPU 3D 3D. Adobe Flash Text Engine TextField. Flash Player 10 AIR 1.5 Adobe Flash Text Engine(FTE). FTE API ActionScript 3.0 flash.text.engine. Flash Text Engine. ActionScript TextField.
25 ActionScript dispatchevent().... dispatchevent( new Event ( Event.COMPLETE ) ); Document. addeventlistener( Event.COMPLETE, onanimationcomplete );,. Event. Event.ENTER_FRAME..
26 22 3 : CPU CPU. CPU,. Flash Player 10.1 CPU Flash Player 10.1 CPU. SWF, Flash Player., :, Adobe AIR. CPU Flash Player SWF CPU. Flash Player.. SWF. SWF.. ActionScript haspriority HTML true. SWF haspriority HTML. SWF. haspriority HTML SWF 2fps 8fps. SWF. Windows Mac Flash Player 11.2 ThrottleEvent. Flash Player, ThrottleEvent. ThrottleEvent., EventDispatcher. DisplayObject. : Adobe AIR. haspriority HTML SWF. Flash Player 10.1 haspriority HTML. <param name="haspriority" value="true" />
27 CPU 23 Flash Player. CPU. SWF. SWF... haspriority false. SWF haspriority true. haspriority SWF. : CPU haspriority true Flash Player. JavaScript haspriority. haspriority 1x1 0x0 SWF. SWF. " (click to play)". haspriority. SWF haspriority false SWF haspriority false SWF haspriority false SWF SWF haspriority
28 CPU 24 SWF haspriority false SWF haspriority false SWF haspriority true SWF SWF haspriority Flash Player 10.1 AIR 2.5 CPU,.. 4 / (fps). AIR. ActionScript. Stage.frameRate 4fps, 4fps. 0 4fps (NetStream, Socket NetConnection) ms(4fps).. : Stage.frameRate 4fps SWF..... A/V 4fps. A/V.
29 CPU 25 SWF. A/V Flash Player A/V Flash Player. A/V 4fps... CPU. : ActionScript. REMOVED_FROM_STAGE ADDED_TO_STAGE... CPU. Event.ENTER_FRAME. Event.REMOVED_FROM_STAGE Event.ADDED_TO_STAGE.. // Listen to keyboard events stage.addeventlistener(keyboardevent.key_down, keyisdown); stage.addeventlistener(keyboardevent.key_up, keyisup); // Create object to store key states var keys:dictionary = new Dictionary(true); function keyisdown(e:keyboardevent):void // Remember that the key was pressed keys[e.keycode] = true; if (e.keycode==keyboard.left e.keycode==keyboard.right) runningboy.play(); function keyisup(e:keyboardevent):void // Remember that the key was released keys[e.keycode] = false; for each (var value:boolean in keys) if ( value ) return; runningboy.stop();
30 CPU 26 runningboy.addeventlistener(event.enter_frame, handlemovement); runningboy.stop(); var currentstate:number = runningboy.scalex; var speed:number = 15; function handlemovement(e:event):void if (keys[keyboard.right]) e.currenttarget.x += speed; e.currenttarget.scalex = currentstate; else if (keys[keyboard.left]) e.currenttarget.x -= speed; e.currenttarget.scalex = -currentstate; [Remove]. // Show or remove running boy showbtn.addeventlistener (MouseEvent.CLICK,showIt); removebtn.addeventlistener (MouseEvent.CLICK,removeIt); function showit (e:mouseevent):void addchild (runningboy); function removeit(e:mouseevent):void if (contains(runningboy)) removechild(runningboy);
31 CPU 27 Event.ENTER_FRAME.. CPU. // Listen to Event.ADDED_TO_STAGE and Event.REMOVED_FROM_STAGE runningboy.addeventlistener(event.added_to_stage,activate); runningboy.addeventlistener(event.removed_from_stage,deactivate); function activate(e:event):void // Restart everything e.currenttarget.addeventlistener(event.enter_frame,handlemovement); function deactivate(e:event):void // Freeze the running boy - consumes fewer CPU resources when not shown e.currenttarget.removeeventlistener(event.enter_frame,handlemovement); e.currenttarget.stop(); [ ], Event.ENTER_FRAME,. : null. CPU. CPU. Flash Player 10 AIR Loader. Flash Player 9 AIR 1.0 Loader LoaderInfo Event.UNLOAD.,. Flash Player 10 AIR 1.5 Loader unloadandstop(). SWF, SWF,. SWF unload(),. var loader:loader = new Loader(); loader.load ( new URLRequest ( "content.swf" ) ); addchild ( loader ); stage.addeventlistener ( MouseEvent.CLICK, unloadswf ); function unloadswf ( e:mouseevent ):void // Unload the SWF file with no automatic object deactivation // All deactivation must be processed manually loader.unload(); unloadandstop().
32 CPU 28 var loader:loader = new Loader(); loader.load ( new URLRequest ( "content.swf" ) ); addchild ( loader ); stage.addeventlistener ( MouseEvent.CLICK, unloadswf ); function unloadswf ( e:mouseevent ):void // Unload the SWF file with automatic object deactivation // All deactivation is handled automatically loader.unloadandstop(); unloadandstop().. SWF.. ( : ).. Event.ENTER_FRAME, Event.FRAME_CONSTRUCTED, Event.EXIT_FRAME, Event.ACTIVATE Event.DEACTIVATE. Event.ACTIVATE Event.DEACTIVATE. (Event.ACTIVATE Event.DEACTIVATE) CPU var originalframerate:uint = stage.framerate; var standbyframerate:uint = 0; stage.addeventlistener ( Event.ACTIVATE, onactivate ); stage.addeventlistener ( Event.DEACTIVATE, ondeactivate ); function onactivate ( e:event ):void // restore original frame rate stage.framerate = originalframerate; function ondeactivate ( e:event ):void // set frame rate to 0 stage.framerate = standbyframerate;
33 CPU 29.,. " " ( : MovieClip Sprite )., CPU.. mouseenabled mousechildren. // Disable any mouse interaction with this InteractiveObject myinteractiveobject.mouseenabled = false; const MAX_NUM:int = 10; // Create a container for the InteractiveObjects var container:sprite = new Sprite(); for ( var i:int = 0; i< MAX_NUM; i++ ) // Add InteractiveObject to the container container.addchild( new Sprite() ); // Disable any mouse interaction on all the children container.mousechildren = false;. CPU,. ENTER_FRAME ENTER_FRAME., Event.ENTER_FRAME. ActionScript 3.0. (DisplayObject) Event.ENTER_FRAME.. ActionScript ENTER_FRAME. ENTER_FRAME
34 CPU 30.. Stage.frameRate. ENTER_FRAME.. ENTER_FRAME.... :.,. 10fps. 1. TimerEvent updateafterevent()... // Use a low frame rate for the application stage.framerate = 10; // Choose one update per second var updateinterval:int = 1000; var mytimer:timer = new Timer(updateInterval,0); mytimer.start(); mytimer.addeventlistener( TimerEvent.TIMER, updatecontrols ); function updatecontrols( e:timerevent ):void // Update controls here // Force the controls to be updated on screen e.updateafterevent(); updateafterevent().. 10fps. ENTER_FRAME. SWF. Timer enterframe. enterframe. enterframe. enterframe.. Timer Timer.. Timer.., Timer 100. Timer Timer Timer delay., 100, 200. delay 100 Timer. timer 200..
35 CPU 31 var timer:timer = new Timer(100); timer.addeventlistener(timerevent.timer, timerhandler); timer.start(); var offcycle:boolean = true; function timerhandler(event:timerevent):void // Do things that happen every 100 ms if (!offcycle) // Do things that happen every 200 ms offcycle =!offcycle; Timer.. Timer timer true Timer stop(). enterframe Timer..,. Flash Player AIR " ".. Writing well-behaved, efficient, AIR applications(arno Gourdol ) 56 CPU. CPU,. Flash...
36 32 4 : ActionScript 3.0 Vector Array Array Vector. Vector Array. Array Vector. Array. var coordinates:array = new Array(); var started:number = gettimer(); for (var i:int = 0; i< ; i++) coordinates[i] = Math.random()*1024; trace(gettimer() - started); // output: 107 Vector. var coordinates:vector.<number> = new Vector.<Number>(); var started:number = gettimer(); for (var i:int = 0; i< ; i++) coordinates[i] = Math.random()*1024; trace(gettimer() - started); // output: 72. // Specify a fixed length and initialize its length var coordinates:vector.<number> = new Vector.<Number>(300000, true); var started:number = gettimer(); for (var i:int = 0; i< ; i++) coordinates[i] = Math.random()*1024; trace(gettimer() - started); // output:
37 ActionScript // Store the reused value to maintain code easily const MAX_NUM:int = ; var coordinates:vector.<number> = new Vector.<Number>(MAX_NUM, true); var started:number = gettimer(); for (var i:int = 0; i< MAX_NUM; i++) coordinates[i] = Math.random()*1024; trace(gettimer() - started); // output: 47 Vector API API. API API. Flash Player 10 AIR 1.5 API. API. ActionScript. API. drawpath() drawgraphicsdata() drawtriangles() : 3D drawtriangles(). ActionScript.. var container:shape = new Shape(); container.graphics.beginfill(0x442299); var coords:vector.<number> = Vector.<Number>([132, 20, 46, 254, 244, 100, 20, 98, 218, 254]); container.graphics.moveto ( coords[0], coords[1] ); container.graphics.lineto ( coords[2], coords[3] ); container.graphics.lineto ( coords[4], coords[5] ); container.graphics.lineto ( coords[6], coords[7] ); container.graphics.lineto ( coords[8], coords[9] ); addchild( container );. drawpath().
38 ActionScript var container:shape = new Shape(); container.graphics.beginfill(0x442299); var commands:vector.<int> = Vector.<int>([1,2,2,2,2]); var coords:vector.<number> = Vector.<Number>([132, 20, 46, 254, 244, 100, 20, 98, 218, 254]); container.graphics.drawpath(commands, coords); addchild( container ); drawgraphicsdata().. ActionScript 3.0. ActionScript.... MouseEvent.CLICK. const MAX_NUM:int = 10; var scenewidth:int = stage.stagewidth; var sceneheight:int = stage.stageheight; var currentapple:interactiveobject; var currentappleclicked:interactiveobject; for ( var i:int = 0; i< MAX_NUM; i++ ) currentapple = new Apple(); currentapple.x = Math.random()*sceneWidth; currentapple.y = Math.random()*sceneHeight; addchild ( currentapple ); // Listen to the MouseEvent.CLICK event currentapple.addeventlistener ( MouseEvent.CLICK, onappleclick ); function onappleclick ( e:mouseevent ):void currentappleclicked = e.currenttarget as InteractiveObject; currentappleclicked.removeeventlistener(mouseevent.click, onappleclick ); removechild ( currentappleclicked ); Apple addeventlistener(). removeeventlistener(). ActionScript 3.0 InteractiveObject. addeventlistener() removeeventlistener()..
39 ActionScript const MAX_NUM:int = 10; var scenewidth:int = stage.stagewidth; var sceneheight:int = stage.stageheight; var currentapple:interactiveobject; var currentappleclicked:interactiveobject; var container:sprite = new Sprite(); addchild ( container ); // Listen to the MouseEvent.CLICK on the apple's parent // Passing true as third parameter catches the event during its capture phase container.addeventlistener ( MouseEvent.CLICK, onappleclick, true ); for ( var i:int = 0; i< MAX_NUM; i++ ) currentapple = new Apple(); currentapple.x = Math.random()*sceneWidth; currentapple.y = Math.random()*sceneHeight; container.addchild ( currentapple ); function onappleclick ( e:mouseevent ):void currentappleclicked = e.target as InteractiveObject; container.removechild ( currentappleclicked ); addeventlistener(). Apple. onappleclick(). function onappleclick ( e:mouseevent ):void e.stoppropagation(); currentappleclicked = e.target as InteractiveObject; container.removechild ( currentappleclicked ); addeventlistener() false. // Listen to the MouseEvent.CLICK on apple's parent // Passing false as third parameter catches the event during its bubbling phase container.addeventlistener ( MouseEvent.CLICK, onappleclick, false ); false. container.addeventlistener ( MouseEvent.CLICK, onappleclick ); setvector(). BitmapData. setvector().
40 ActionScript // Image dimensions var wdth:int = 200; var hght:int = 200; var total:int = wdth*hght; // Pixel colors Vector var pixels:vector.<uint> = new Vector.<uint>(total, true); for ( var i:int = 0; i< total; i++ ) // Store the color of each pixel pixels[i] = Math.random()*0xFFFFFF; // Create a non-transparent BitmapData object var myimage:bitmapdata = new BitmapData ( wdth, hght, false ); var imagecontainer:bitmap = new Bitmap ( myimage ); // Paint the pixels myimage.setvector ( myimage.rect, pixels ); addchild ( imagecontainer ); setpixel() setpixel32() lock() unlock(). lock() unlock(). var buffer:bitmapdata = new BitmapData(200,200,true,0xFFFFFFFF); var bitmapcontainer:bitmap = new Bitmap(buffer); var positionx:int; var positiony:int; // Lock update buffer.lock(); var starting:number=gettimer(); for (var i:int = 0; i< ; i++) // Random positions positionx = Math.random()*200; positiony = Math.random()*200; // 40% transparent pixels buffer.setpixel32( positionx, positiony, 0x ); // Unlock update buffer.unlock(); addchild( bitmapcontainer ); trace( gettimer () - starting ); // output : 670 BitmapData lock() BitmapData. Bitmap BitmapData BitmapData. Bitmap BitmapData. setpixel() setpixel32() unlock(). lock() unlock(). : ( ). lock() unlock(). Flash Player.
41 ActionScript ( : getpixel(), getpixel32(), setpixel() setpixel32()).. getpixels() getvector(). Vector Vector API. indexof(), substr() substring() String. String., String.indexOf(). String. ( (xxxx) ) ( (?:xxxx) ).., "ab". "+". /(ab)+/ " "..... /(?:ab)+/ TextField += appendtext(). TextField text += appendtext(). appendtext(). += 1120ms.
42 ActionScript addchild ( mytextfield ); mytextfield.autosize = TextFieldAutoSize.LEFT; var started:number = gettimer(); for (var i:int = 0; i< 1500; i++ ) mytextfield.text += "ActionScript 3"; trace( gettimer() - started ); // output : = appendtext(). var mytextfield:textfield = new TextField(); addchild ( mytextfield ); mytextfield.autosize = TextFieldAutoSize.LEFT; var started:number = gettimer(); for (var i:int = 0; i< 1500; i++ ) mytextfield.appendtext ( "ActionScript 3" ); trace( gettimer() - started ); // output : ms ms. var mytextfield:textfield = new TextField(); addchild ( mytextfield ); mytextfield.autosize = TextFieldAutoSize.LEFT; var started:number = gettimer(); var content:string = mytextfield.text; for (var i:int = 0; i< 1500; i++ ) content += "ActionScript 3"; mytextfield.text = content; trace( gettimer() - started ); // output : 2 HTML Flash Player Timeout.. : Adobe AIR.
43 ActionScript var mytextfield:textfield = new TextField(); addchild ( mytextfield ); mytextfield.autosize = TextFieldAutoSize.LEFT; var started:number = gettimer(); for (var i:int = 0; i< 1500; i++ ) mytextfield.htmltext += "ActionScript <b>2</b>"; trace( gettimer() - started ); 29ms. var mytextfield:textfield = new TextField(); addchild ( mytextfield ); mytextfield.autosize = TextFieldAutoSize.LEFT; var started:number = gettimer(); var content:string = mytextfield.htmltext; for (var i:int = 0; i< 1500; i++ ) content += "<b>actionscript<b> 3"; mytextfield.htmltext = content; trace ( gettimer() - started ); // output : 29 : Flash Player 10.1 AIR 2.5 String..... var lng:int = 5000; var arraysprite:vector.<sprite> = new Vector.<Sprite>(lng, true); var i:int; for ( i = 0; i< lng; i++ ) arraysprite[i] = new Sprite(); var started:number = gettimer(); for ( i = 0; i< lng; i++ ) arraysprite[i].x = Math.random()*stage.stageWidth; arraysprite[i].y = Math.random()*stage.stageHeight; arraysprite[i].alpha = Math.random(); arraysprite[i].rotation = Math.random()*360; trace( gettimer() - started ); // output : 16.
44 ActionScript var lng:int = 5000; var arraysprite:vector.<sprite> = new Vector.<Sprite>(lng, true); var i:int; for ( i = 0; i< lng; i++ ) arraysprite[i] = new Sprite(); var started:number = gettimer(); var currentsprite:sprite; for ( i = 0; i< lng; i++ ) currentsprite = arraysprite[i]; currentsprite.x = Math.random()*stage.stageWidth; currentsprite.y = Math.random()*stage.stageHeight; currentsprite.alpha = Math.random(); currentsprite.rotation = Math.random()*360; trace( gettimer() - started ); // output : SWF. Math. Math.abs(). const MAX_NUM:int = ; var arrayvalues:vector.<number>=new Vector.<Number>(MAX_NUM,true); var i:int; for (i = 0; i< MAX_NUM; i++) arrayvalues[i] = Math.random()-Math.random(); var started:number = gettimer(); var currentvalue:number; for (i = 0; i< MAX_NUM; i++) currentvalue = arrayvalues[i]; arrayvalues[i] = Math.abs ( currentvalue ); trace( gettimer() - started ); // output : 70 Math.abs().
45 ActionScript const MAX_NUM:int = ; var arrayvalues:vector.<number>=new Vector.<Number>(MAX_NUM,true); var i:int; for (i = 0; i< MAX_NUM; i++) arrayvalues[i] = Math.random()-Math.random(); var started:number = gettimer(); var currentvalue:number; for (i = 0; i< MAX_NUM; i++) currentvalue = arrayvalues[i]; arrayvalues[i] = currentvalue > 0? currentvalue : -currentvalue; trace( gettimer() - started ); // output : :. ActionScript JIT.. Adobe Flex, TLF ActionScript.... for (var i:int = 0; i< myarray.length; i++). var lng:int = myarray.length; for (var i:int = 0; i< lng; i++) while. while. var i:int = myarray.length; while (--i > -1) ActionScript,. ActionScript.
46 42 5 :.. Flash Player. Flash Player [ ]. : [ ] Adobe AIR Flash Player. Adobe AIR, [ ]. MovieClip. flash.profiler.showredrawregions(). // Enable Show Redraw Regions // Blue color is used to show redrawn regions flash.profiler.showredrawregions ( true, 0x0000FF ); Adobe AIR.. CPU.... CPU.
47 43 visible false.. CPU ,....
48
49 45. StageQuality.LOW:. TV Adobe AIR. StageQuality.MEDIUM:. AIR TV AIR. StageQuality.HIGH: ( ). SWF. StageQuality.BEST:.. StageQuality.MEDIUM StageQuality.LOW. Flash Player 8 LOW. : HIGH Flash Player MEDIUM. HIGH. dpi. dpi. MEDIUM....
50 46 ( ). ( ). Flash Player 8. Flash Player 10.1 StageQuality.MEDIUM. alpha. alpha ( : ).... alpha
51 " "... CPU.. Flex " ". " "......,. Stage.frameRate ( Flex WindowedApplication.frameRate )..,..... Flex AIR 2.. visible false.
52 48 Flex spark.components. WindowedApplication. backgroundframerate. 1, Spark 1. backgroundframerate., -1.. Reducing CPU usage in Adobe AIR(Jonnie Hallman Adobe ) Writing well-behaved, efficient, AIR applications(arno Gourdol ) Grant Skinner.. FramerateThrottler Grant Idle CPU Usage in Adobe AIR and Flash Player. SWF. CPU... :.. fps ( : ),.., CPU.. Sprite. x y.,,. : AIR Packager for iphone DisplayObject.cacheAsBitmapMatrix. cacheasbitmapmatrix x 250 1KB 250KB. Sprite..
53 49 package org.bytearray.bitmap import flash.display.sprite; import flash.events.event; public class Apple extends Sprite private var destinationx:number; private var destinationy:number; public function Apple () addeventlistener(event.added_to_stage,activation); addeventlistener(event.removed_from_stage,deactivation); private function activation(e:event):void initpos(); addeventlistener (Event.ENTER_FRAME,handleMovement); private function deactivation(e:event):void removeeventlistener(event.enter_frame,handlemovement); private function initpos():void destinationx = Math.random()*(stage.stageWidth - (width>>1)); destinationy = Math.random()*(stage.stageHeight - (height>>1)); private function handlemovement(e:event):void x -= (x - destinationx)*.5; y -= (y - destinationy)*.5; if (Math.abs(x - destinationx) < 1 && Math.abs(y - destinationy) < 1) initpos(); MovieClip Sprite...
54 50 import org.bytearray.bitmap.apple; stage.addeventlistener(mouseevent.click,createapples); stage.addeventlistener(keyboardevent.key_down,cacheapples); const MAX_NUM:int = 100; var apple:apple; var holder:sprite = new Sprite(); addchild(holder); function createapples(e:mouseevent):void for (var i:int = 0; i< MAX_NUM; i++) apple = new Apple(); holder.addchild(apple); function cacheapples(e:keyboardevent):void if (e.keycode == 67) var lng:int = holder.numchildren; for (var i:int = 0; i < lng; i++) apple = holder.getchildat (i) as Apple; apple.cacheasbitmap = Boolean(!apple.cacheAsBitmap);. C ( 67). CPU... cacheasbitmap = true
55 51 Flash Player 10.1 AIR : opaquebackground, cacheasbitmap 32. 0xFF opaquebackground. cacheasbitmap. 211 x KB KB 6 42KB.
56 52 getchildat() Vector. import org.bytearray.bitmap.apple; stage.addeventlistener(keyboardevent.key_down, cacheapples); const MAX_NUM:int = 200; var apple:apple; var holder:sprite = new Sprite(); addchild(holder); var holdervector:vector.<apple> = new Vector.<Apple>(MAX_NUM, true); for (var i:int = 0; i< MAX_NUM; i++) apple = new Apple(); holder.addchild(apple); holdervector[i] = apple; function cacheapples(e:keyboardevent):void if (e.keycode == 67) var lng:int = holdervector.length for (var i:int = 0; i < lng; i++) apple = holdervector[i]; apple.cacheasbitmap = Boolean(!apple.cacheAsBitmap);,. x y. Flash Player. CPU. AIR Packager for iphone cacheasbitmapmatrix.. private function handlemovement(e:event):void alpha = Math.random(); x -= (x - destinationx)*.5; y -= (y - destinationy)*.5; if (Math.abs(x - destinationx) < 1 && Math.abs(y - destinationy) < 1) initpos();... cacheasbitmap true..
57 53... x y., CPU. Paul Trani Flash Professional ActionScript. ActionScript AIR AIR cacheasbitmapmatrix. AIR cacheasbitmapmatrix Matrix. 2D.. cacheasbitmap true, 3D. cacheasbitmapmatrix visible false. cacheasbitmapmatrix. cacheasbitmapmatrix. 2..
58 54... displayobject.cacheasbitmap = true; displayobject.cacheasbitmapmatrix = new Matrix(); cacheasbitmapmatrix,, transform.colortransform cacheasbitmap true cacheasbitmapmatrix.,. BitmapData. BitmapData. BitmapData. CPU.. BitmapApple. package org.bytearray.bitmap import flash.display.bitmap; import flash.display.bitmapdata; import flash.events.event; public class BitmapApple extends Bitmap private var destinationx:number; private var destinationy:number; public function BitmapApple(buffer:BitmapData) super(buffer); addeventlistener(event.added_to_stage,activation); addeventlistener(event.removed_from_stage,deactivation); private function activation(e:event):void initpos(); addeventlistener(event.enter_frame,handlemovement); private function deactivation(e:event):void removeeventlistener(event.enter_frame,handlemovement);
59 55 private function initpos():void destinationx = Math.random()*(stage.stageWidth - (width>>1)); destinationy = Math.random()*(stage.stageHeight - (height>>1)); private function handlemovement(e:event):void alpha = Math.random(); x -= (x - destinationx)*.5; y -= (y - destinationy)*.5; if ( Math.abs(x - destinationx) < 1 && Math.abs(y - destinationy) < 1) initpos();. BitmapApple. import org.bytearray.bitmap.bitmapapple; const MAX_NUM:int = 100; var holder:sprite = new Sprite(); addchild(holder); var holdervector:vector.<bitmapapple> = new Vector.<BitmapApple>(MAX_NUM, true); var source:applesource = new AppleSource(); var bounds:object = source.getbounds(source); var mat:matrix = new Matrix(); mat.translate(-bounds.x,-bounds.y); var buffer:bitmapdata = new BitmapData(source.width+1, source.height+1, true, 0); buffer.draw(source,mat); var bitmapapple:bitmapapple; for (var i:int = 0; i< MAX_NUM; i++) bitmapapple = new BitmapApple(buffer); holdervector[i] = bitmapapple; holder.addchild(bitmapapple); BitmapApple., BitmapApple.. smoothing true.
60 56 public function BitmapApple(buffer:BitmapData) super (buffer); smoothing = true; addeventlistener(event.added_to_stage, activation); addeventlistener(event.removed_from_stage, deactivation);. HIGH LOW. import org.bytearray.bitmap.bitmapapple; const MAX_NUM:int = 100; var holder:sprite = new Sprite(); addchild ( holder ); var holdervector:vector.<bitmapapple> = new Vector.<BitmapApple>(MAX_NUM, true); var source:applesource = new AppleSource(); var bounds:object = source.getbounds ( source ); var mat:matrix = new Matrix(); mat.translate ( -bounds.x, -bounds.y ); var buffer:bitmapdata = new BitmapData ( source.width+1, source.height+1, true, 0 ); stage.quality = StageQuality.HIGH; buffer.draw ( source, mat ); stage.quality = StageQuality.LOW; var bitmapapple:bitmapapple; for (var i:int = 0; i< MAX_NUM; i++ ) bitmapapple = new BitmapApple( buffer ); holdervector[i] = bitmapapple; holder.addchild ( bitmapapple );.. LOW. cacheasbitmap. LOW,. Event.ENTER_FRAME. Apple Event.ENTER_FRAME. CPU. BitmapApple.
61 57 package org.bytearray.bitmap import flash.display.bitmap; import flash.display.bitmapdata; public class BitmapApple extends Bitmap private var destinationx:number; private var destinationy:number; public function BitmapApple(buffer:BitmapData) super (buffer); smoothing = true;. import org.bytearray.bitmap.bitmapapple; const MAX_NUM:int = 100; var holder:sprite = new Sprite(); addchild(holder); var holdervector:vector.<bitmapapple> = new Vector.<BitmapApple>(MAX_NUM, true); var source:applesource = new AppleSource(); var bounds:object = source.getbounds(source); var mat:matrix = new Matrix(); mat.translate(-bounds.x,-bounds.y); stage.quality = StageQuality.BEST; var buffer:bitmapdata = new BitmapData(source.width+1,source.height+1, true,0); buffer.draw(source,mat); stage.quality = StageQuality.LOW; var bitmapapple:bitmapapple; for (var i:int = 0; i< MAX_NUM; i++) bitmapapple = new BitmapApple(buffer); bitmapapple.destinationx = Math.random()*stage.stageWidth; bitmapapple.destinationy = Math.random()*stage.stageHeight; holdervector[i] = bitmapapple; holder.addchild(bitmapapple); stage.addeventlistener(event.enter_frame,onframe);
62 58 var lng:int = holdervector.length function onframe(e:event):void for (var i:int = 0; i < lng; i++) bitmapapple = holdervector[i]; bitmapapple.alpha = Math.random(); bitmapapple.x -= (bitmapapple.x - bitmapapple.destinationx) *.5; bitmapapple.y -= (bitmapapple.y - bitmapapple.destinationy) *.5; if (Math.abs(bitmapApple.x - bitmapapple.destinationx ) < 1 && Math.abs(bitmapApple.y - bitmapapple.destinationy ) < 1) bitmapapple.destinationx = Math.random()*stage.stageWidth; bitmapapple.destinationy = Math.random()*stage.stageHeight; 200 Event.ENTER_FRAME... stage.addeventlistener(event.enter_frame, updategame); function updategame (e:event):void gameengine.update();. BitmapApple. package org.bytearray.bitmap import flash.display.bitmap; import flash.display.bitmapdata; import flash.display.sprite; public class BitmapApple extends Sprite public var destinationx:number; public var destinationy:number; private var container:sprite; private var containerbitmap:bitmap; public function BitmapApple(buffer:BitmapData) container = new Sprite(); containerbitmap = new Bitmap(buffer); containerbitmap.smoothing = true; container.addchild(containerbitmap); addchild(container); Sprite BitmapApple..
63 59 opaquebackground. Flash Text Engine.. TextLine ActionScript. TextLine... opaquebackground.. TextField..
64 60. preloader. wait_mc.addeventlistener( Event.ENTER_FRAME, moveposition ); var destx:number=stage.stagewidth/2; var desty:number=stage.stageheight/2; var preloader:displayobject; function moveposition( e:event ):void preloader = e.currenttarget as DisplayObject; preloader.x -= ( preloader.x - destx ) *.1; preloader.y -= ( preloader.y - desty ) *.1; if (Math.abs(preloader.y-destY)<1) preloader.removeeventlistener( Event.ENTER_FRAME, moveposition ); Math.abs(). destx desty int. int Math.ceil() Math.round(). int....
65 61 // Do not use this code var destx:number = Math.round ( stage.stagewidth / 2 ); var desty:number = Math.round ( stage.stageheight / 2);. var destx:int = stage.stagewidth / 2; var desty:int = stage.stageheight / 2;. var destx:int = stage.stagewidth >> 1; var desty:int = stage.stageheight >> 1;. TextField. wait_mc.cacheasbitmap = true;.. opaquebackground. opaquebackground opaquebackground.. wait_mc.addeventlistener( Event.ENTER_FRAME, moveposition ); wait_mc.cacheasbitmap = true; // Set the background to the color of the scene background wait_mc.opaquebackground = 0x8AD6FD; var destx:int = stage.stagewidth >> 1; var desty:int = stage.stageheight >> 1; var preloader:displayobject; function moveposition ( e:event ):void preloader = e.currenttarget as DisplayObject; preloader.x -= ( preloader.x - destx ) *.1; preloader.y -= ( preloader.y - desty ) *.1; if ( Math.abs ( preloader.y - desty ) < 1 ) e.currenttarget.removeeventlistener ( Event.ENTER_FRAME, moveposition );. LOW HIGH.
66 62 wait_mc.addeventlistener( Event.ENTER_FRAME, moveposition ); wait_mc.cacheasbitmap = true; wait_mc.opaquebackground = 0x8AD6FD; // Switch to low quality stage.quality = StageQuality.LOW; var destx:int = stage.stagewidth>>1; var desty:int = stage.stageheight>>1; var preloader:displayobject; function moveposition( e:event ):void preloader = e.currenttarget as DisplayObject; preloader.x -= ( preloader.x - destx ) *.1; preloader.y -= ( preloader.y - desty ) *.1; if (Math.abs(e.currentTarget.y-destY)<1) // Switch back to high quality stage.quality = StageQuality.HIGH; preloader.removeeventlistener( Event.ENTER_FRAME, moveposition ); TextField... BitmapData opaquebackground BitmapData.draw(). Flash Player 8( AIR 1.0). CPU..
67 63 wait_mc.addeventlistener( Event.ENTER_FRAME, moveposition ); // Switch to low quality stage.quality = StageQuality.LOW; var destx:int = stage.stagewidth >> 1; var desty:int = stage.stageheight >> 1; var preloader:displayobject; function moveposition ( e:event ):void preloader = e.currenttarget as DisplayObject; preloader.x -= ( preloader.x - destx ) *.1; preloader.y -= ( preloader.y - desty ) *.1; if ( Math.abs ( preloader.y - desty ) < 1 ) // Switch back to high quality stage.quality = StageQuality.HIGH; preloader.removeeventlistener ( Event.ENTER_FRAME, moveposition ); ( ).. LOW. HIGH. GPU Flash Player GPU Flash Player 10.1 GPU. CPU. GPU,,. GPU.. Flash Player 10.1 Pixel Bender.. Flash Player 10 GPU GPU. GPU. Flash Player 10.1 GPU. CPU ( : ). GPU. GPU wmode gpu wmode opaque transparent GPU. : Flash Player CPU... AIR GPU AIR <rendermode>gpu</rendermode>.. rendermode GPU.
68 64 GPU AIR 2.5 GPU. GPU, CPU. layer, alpha, erase, overlay, hardlight, lighten darken.. PixelBender. GPU 1024x1024. ActionScript. AIR GPU. GPU..,. GPU. AIR. GPU GPU... visible false. alpha 0. removechild().. 2 n x 2 m. 2, x x : Graphic.beginBitmapFill() repeat false.....,,... cacheasbitmap cacheasbitmapmatrix. ActionScript API(Graphics )... AIR GPU GPU Packager for iphone AIR. GPU cacheasbitmap,. cacheasbitmap cacheasbitmapmatrix GPU. GPU.
69 65 GPU GPU SWF. GPU. GPU. : SWF. SWF. HTML wmode=transparent wmode=opaque.. -. GPU.,,. GPU. GPU..,.. GPU. ( : ). GPU GPU.,... GPU GPU
70 ,.. Adobe AIR. File FileStream File.,. "Async"., File.deleteFile() File.deleteFileAsync(). FileStream FileStream. FileStream.openAsync()... FileStream. SQL SQL SQLConnection. SQLConnection.open() SQLConnection.openAsync()... SQL 78 SQL. Pixel Bender ShaderJob Pixel Bender. ShaderJob.start().. ShaderJob ( ) true start() Timer... Asynchronous ActionScript Execution(Trevor McCauley, ) Parsing & Rendering Lots of Data in Flash Player(Jesse Warden, "builder pattern green threads )
71 67 Green Threads(Drew Cummins, green threads ) greenthreads(charlie Hubbard, ActionScript green threads. greenthreads Quick Start ) " Alex Harui ) ActionScript 3 AIR. AIR XML. <initialwindow> <transparent>false</transparent> </initialwindow> transparent false( ) NativeWindowInitOptions. NativeWindow NativeWindow. // NativeWindow: flash.display.nativewindow class var initoptions:nativewindowinitoptions = new NativeWindowInitOptions(); initoptions.transparent = false; var win:nativewindow = new NativeWindow(initOptions); Flex Window Window open() false( ). // Flex window component: spark.components.window class var win:window = new Window(); win.transparent = false; win.open();.....,....
72 68 Flash Professional. Adobe Illustrator [ ]. SWF....
73 69 6 : Flash Player 10.1 AIR Flash Player 10.1 AIR 2.5 FLV ( MP4 )......,...., RAM. 4MB RAM 20MB. :. RAM. RAM. MP4. MP4... NetStream.seek() NetStream.Seek.InvalidTime. : Adobe Flash Media Server Flash Player 10.1 AIR (NetStream.bufferTime) buffertime.
74 :. NetStream.inBufferSeek true. SWF.. SWF,. SWF.
75 71 portfolio.swf infos.swf contact.swf 10KB 10KB 10KB main.swf 10KB preload.swf 40KB SWF SWF.. portfolio.swf infos.swf contact.swf main.swf preload.swf library.swf 10KB 10KB SWF. ApplicationDomain getdefinition()... SWF.,, ActionScript.
76 72 // Create a Loader object var loader:loader = new Loader(); // Listen to the Event.COMPLETE event loader.contentloaderinfo.addeventlistener(event.complete, loadingcomplete ); // Load the SWF file loader.load(new URLRequest("library.swf") ); var classdefinition:string = "Logo"; function loadingcomplete(e:event ):void var objectloaderinfo:loaderinfo = LoaderInfo ( e.target ); // Get a reference to the loaded SWF file application domain var appdomain:applicationdomain = objectloaderinfo.applicationdomain; // Check whether the definition is available if ( appdomain.hasdefinition(classdefinition) ) // Extract definition var importlogo:class = Class ( appdomain.getdefinition(classdefinition) ); // Instantiate logo var instancelogo:bitmapdata = new importlogo(0,0); // Add it to the display list addchild ( new Bitmap ( instancelogo ) ); else trace ("The class definition " + classdefinition + " is not available."); SWF. // Create a Loader object var loader:loader = new Loader(); // Listen to the Event.COMPLETE event loader.contentloaderinfo.addeventlistener ( Event.COMPLETE, loadingcomplete ); // Load the SWF file loader.load ( new URLRequest ("rsl.swf"), new LoaderContext ( false, ApplicationDomain.currentDomain) ); var classdefinition:string = "Logo"; function loadingcomplete ( e:event ):void var objectloaderinfo:loaderinfo = LoaderInfo ( e.target ); // Get a reference to the current SWF file application domain var appdomain:applicationdomain = ApplicationDomain.currentDomain; // Check whether the definition is available if (appdomain.hasdefinition( classdefinition ) ) // Extract definition var importlogo:class = Class ( appdomain.getdefinition(classdefinition) ); // Instantiate it var instancelogo:bitmapdata = new importlogo(0,0); // Add it to the display list addchild ( new Bitmap ( instancelogo ) ); else trace ("The class definition " + classdefinition + " is not available.");
77 73 SWF getdefinition(). getdefinitionbyname(). SWF. loader.swf. SWF. IO... IO_ERROR.... IO.. var loader:loader = new Loader(); loader.contentloaderinfo.addeventlistener( Event.COMPLETE, oncomplete ); addchild( loader ); loader.load( new URLRequest ("asset.swf" ) ); function oncomplete( e:event ):void var loader:loader = e.currenttarget.loader; loader.x = ( stage.stagewidth - e.currenttarget.width ) >> 1; loader.y = ( stage.stageheight - e.currenttarget.height ) >> 1;.. var loader:loader = new Loader(); loader.contentloaderinfo.addeventlistener ( Event.COMPLETE, oncomplete ); loader.contentloaderinfo.addeventlistener ( IOErrorEvent.IO_ERROR, onioerror ); addchild ( loader ); loader.load ( new URLRequest ("asset.swf" ) ); function oncomplete ( e:event ):void var loader:loader = e.currenttarget.loader; loader.x = ( stage.stagewidth - e.currenttarget.width ) >> 1; loader.y = ( stage.stageheight - e.currenttarget.height ) >> 1; function onioerror ( e:ioerrorevent ):void // Show a message explaining the situation and try to reload the asset. // If it fails again, ask the user to retry when the connection will be restored. onioerror().
78 74 Flash Remoting - Flash Remoting AMF. XML SWF. XML. Flash Remoting AMF(Action Message Format). AMF. AMF. AMF AMF.. ActionScript... Flash Remoting ZendAMF, FluorineFX, WebORB Adobe Java Flash Remoting BlazeDS. Flash Remoting. HTTP AMF ZendAMF Web ORB RubyAMF FluorineFX BlazeDS (PHP Class, Java, C#...) Flash Remoting NetConnection Flash Remoting. // Create the NetConnection object var connection:netconnection = new NetConnection (); // Connect to a Flash Remoting gateway connection.connect (" // Asynchronous handlers for incoming data and errors function success ( incomingdata:* ):void trace( incomingdata ); function error ( error:* ):void trace( "Error occured" ); // Create an object that handles the mapping to success and error handlers var serverresult:responder = new Responder (success, error); // Call the remote method connection.call ("org.yourserver.helloworld.sayhello", serverresult, "Hello there?");. Adobe Flex SDK RemoteObject Flash Remoting. : Flex SWC Adobe Flash Professional. SWC Flex SDK RemoteObject. Socket.
Analytics > Log & Crash Search > Unity ios SDK [Deprecated] Log & Crash Unity ios SDK. TOAST SDK. Log & Crash Unity SDK Log & Crash Search. Log & Cras
Analytics > Log & Crash Search > Unity ios SDK [Deprecated] Log & Crash Unity ios SDK. TOAST SDK. Log & Crash Unity SDK Log & Crash Search. Log & Crash Unity SDK... Log & Crash Search. - Unity3D v4.0 ios
More informationMasoJava4_Dongbin.PDF
JSTORM http://wwwjstormpekr Issued by: < > Revision: Document Information Document title: Document file name: MasoJava4_Dongbindoc Revision number: Issued by: < > SI, dbin@handysoftcokr
More informationDocsPin_Korean.pages
Unity Localize Script Service, Page 1 Unity Localize Script Service Introduction Application Game. Unity. Google Drive Unity.. Application Game. -? ( ) -? -?.. 준비사항 Google Drive. Google Drive.,.. - Google
More informationPowerPoint 프레젠테이션
@ Lesson 2... ( ). ( ). @ vs. logic data method variable behavior attribute method field Flow (Type), ( ) member @ () : C program Method A ( ) Method B ( ) Method C () program : Java, C++, C# data @ Program
More informationPowerPoint 프레젠테이션
@ Lesson 4 (Object) (Class) (Instance) (Method) (Constructor) Memory 1 UML 1 @ & 1 (Real World) (Software World) @ &.. () () @ & 2 (Real World) (Software World) OOA/ Modeling Abstraction Instantiation
More informationPowerPoint 프레젠테이션
Reasons for Poor Performance Programs 60% Design 20% System 2.5% Database 17.5% Source: ORACLE Performance Tuning 1 SMS TOOL DBA Monitoring TOOL Administration TOOL Performance Insight Backup SQL TUNING
More informationModern 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 informationRemote UI Guide
Remote UI KOR Remote UI Remote UI PDF Adobe Reader/Adobe Acrobat Reader. Adobe Reader/Adobe Acrobat Reader Adobe Systems Incorporated.. Canon. Remote UI GIF Adobe Systems Incorporated Photoshop. ..........................................................
More information( )부록
A ppendix 1 2010 5 21 SDK 2.2. 2.1 SDK. DevGuide SDK. 2.2 Frozen Yoghurt Froyo. Donut, Cupcake, Eclair 1. Froyo (Ginger Bread) 2010. Froyo Eclair 0.1.. 2.2. UI,... 2.2. PC 850 CPU Froyo......... 2. 2.1.
More information1
1 1....6 1.1...6 2. Java Architecture...7 2.1 2SDK(Software Development Kit)...8 2.2 JRE(Java Runtime Environment)...9 2.3 (Java Virtual Machine, JVM)...10 2.4 JVM...11 2.5 (runtime)jvm...12 2.5.1 2.5.2
More informationMAX+plus II Getting Started - 무작정따라하기
무작정 따라하기 2001 10 4 / Version 20-2 0 MAX+plus II Digital, Schematic Capture MAX+plus II, IC, CPLD FPGA (Logic) ALTERA PLD FLEX10K Series EPF10K10QC208-4 MAX+plus II Project, Schematic, Design Compilation,
More information,,,,,, (41) ( e f f e c t ), ( c u r r e n t ) ( p o t e n t i a l difference),, ( r e s i s t a n c e ) 2,,,,,,,, (41), (42) (42) ( 41) (Ohm s law),
1, 2, 3, 4, 5, 6 7 8 PSpice EWB,, ,,,,,, (41) ( e f f e c t ), ( c u r r e n t ) ( p o t e n t i a l difference),, ( r e s i s t a n c e ) 2,,,,,,,, (41), (42) (42) ( 41) (Ohm s law), ( ),,,, (43) 94 (44)
More informationLCD Display
LCD Display SyncMaster 460DRn, 460DR VCR DVD DTV HDMI DVI to HDMI LAN USB (MDC: Multiple Display Control) PC. PC RS-232C. PC (Serial port) (Serial port) RS-232C.. > > Multiple Display
More informationI T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r
I T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r I T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r Jakarta is a Project of the Apache
More informationNo Slide Title
Copyright, 2001 Multimedia Lab., CH 3. COM object (In-process server) Eun-sung Lee twoss@mmlab.net Multimedia Lab. Dept. of Electrical and Computer Eng. University of Seoul Seoul, Korea 0. Contents 1.
More information01-OOPConcepts(2).PDF
Object-Oriented Programming Concepts Tel: 02-824-5768 E-mail: hhcho@selabsoongsilackr? OOP (Object) (Encapsulation) (Message) (Class) (Inheritance) (Polymorphism) (Abstract Class) (Interface) 2 1 + = (Dependency)
More informationScene7 Media Portal 사용
ADOBE SCENE7 MEDIA PORTAL http://help.adobe.com/ko_kr/legalnotices/index.html. iii 1 : Media Portal..................................................................................................................
More information자바GUI실전프로그래밍2_장대원.PDF
JAVA GUI - 2 JSTORM http://wwwjstormpekr JAVA GUI - 2 Issued by: < > Document Information Document title: JAVA GUI - 2 Document file name: Revision number: Issued by: Issue Date:
More informationJwplayer 요즘 웹에서 동영상 재생을 목적으로 많이 쓰이는 jwplayer의 설치와 사용하기 입니다. jwplayer홈페이지 : http://www.longtailvideo.com 위의 홈페이지에 가시면 JWplayer를 다운 받으실 수 있습니다. 현재 5.1버전
Jwplayer Guide Jwplayer 요즘 웹에서 동영상 재생을 목적으로 많이 쓰이는 jwplayer의 설치와 사용하기 입니다. jwplayer홈페이지 : http://www.longtailvideo.com 위의 홈페이지에 가시면 JWplayer를 다운 받으실 수 있습니다. 현재 5.1버전까지 나왔으며 편리함을 위해서 아래를 링크를 걸어둡니다 [다운로드]
More information04_오픈지엘API.key
4. API. API. API..,.. 1 ,, ISO/IEC JTC1/SC24, Working Group ISO " (Architecture) " (API, Application Program Interface) " (Metafile and Interface) " (Language Binding) " (Validation Testing and Registration)"
More information슬라이드 1
사용 전에 사용자 주의 사항을 반드시 읽고 정확하게 지켜주시기 바랍니다. 사용설명서의 구성품 형상과 색상은 실제와 다를 수 있습니다. 사용설명서의 내용은 제품의 소프트웨어 버전이나 통신 사업자의 사정에 따라 다를 수 있습니다. 본 사용설명서는 저작권법에 의해 보호를 받고 있습니다. 본 사용설명서는 주식회사 블루버드소프트에서 제작한 것으로 편집 오류, 정보 누락
More informationSomething that can be seen, touched or otherwise sensed
Something that can be seen, touched or otherwise sensed Things about an object Weight Height Material Things an object does Pen writes Book stores words Water have Fresh water Rivers Oceans have
More informationrmi_박준용_final.PDF
(RMI) - JSTORM http://wwwjstormpekr (RMI)- Document title: Document file name: Revision number: Issued by: Document Information (RMI)- rmi finaldoc Issue Date: Status:
More information<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D313939392D382E687770>
i ii iii iv v vi 1 2 3 4 가상대학 시스템의 국내외 현황 조사 가상대학 플랫폼 개발 이상적인 가상대학시스템의 미래상 제안 5 웹-기반 가상대학 시스템 전통적인 교수 방법 시간/공간 제약을 극복한 학습동기 부여 교수의 일방적인 내용전달 교수와 학생간의 상호작용 동료 학생들 간의 상호작용 가상대학 운영 공지사항,강의록 자료실, 메모 질의응답,
More informationOrcad Capture 9.x
OrCAD Capture Workbook (Ver 10.xx) 0 Capture 1 2 3 Capture for window 4.opj ( OrCAD Project file) Design file Programe link file..dsn (OrCAD Design file) Design file..olb (OrCAD Library file) file..upd
More informationJMF3_심빈구.PDF
JMF JSTORM http://wwwjstormpekr Issued by: < > Revision: Document Information Document title: Document file name: Revision number: Issued by: JMF3_ doc Issue Date:
More informationJavascript.pages
JQuery jquery part1 JavaScript : e-mail:leseraphina@naver.com http://www.webhard.co.kr I.? 2 ......,,. : : html5 ; ; .
More informationTEL:02)861-1175, FAX:02)861-1176 , REAL-TIME,, ( ) CUSTOMER. CUSTOMER REAL TIME CUSTOMER D/B RF HANDY TEMINAL RF, RF (AP-3020) : LAN-S (N-1000) : LAN (TCP/IP) RF (PPT-2740) : RF (,RF ) : (CL-201)
More information02 C h a p t e r Java
02 C h a p t e r Java Bioinformatics in J a va,, 2 1,,,, C++, Python, (Java),,, (http://wwwbiojavaorg),, 13, 3D GUI,,, (Java programming language) (Sun Microsystems) 1995 1990 (green project) TV 22 CHAPTER
More informationPowerPoint 프레젠테이션
@ Lesson 1,..... @ 1 Green Project 1991 Oak Java 1995. 5 December '90 by Patrick Naughton, Mike Sheridan and James Gosling Embedded in various consumer electronic device 1992. 9. 3 Star 7 1993 www portability
More informationVOL.76.2008/2 Technical SmartPlant Materials - Document Management SmartPlant Materials에서 기본적인 Document를 관리하고자 할 때 필요한 세팅, 파일 업로드 방법 그리고 Path Type인 Ph
인터그래프코리아(주)뉴스레터 통권 제76회 비매품 News Letters Information Systems for the plant Lifecycle Proccess Power & Marine Intergraph 2008 Contents Intergraph 2008 SmartPlant Materials Customer Status 인터그래프(주) 파트너사
More informationThe Self-Managing Database : Automatic Health Monitoring and Alerting
The Self-Managing Database : Automatic Health Monitoring and Alerting Agenda Oracle 10g Enterpirse Manager Oracle 10g 3 rd Party PL/SQL API Summary (Self-Managing Database) ? 6% 6% 12% 55% 6% Source: IOUG
More information07 자바의 다양한 클래스.key
[ 07 ] . java.lang Object, Math, String, StringBuffer Byte, Short, Integer, Long, Float, Double, Boolean, Character. java.util Random, StringTokenizer Calendar, GregorianCalendar, Date. Collection, List,
More information03장
CHAPTER3 ( ) Gallery 67 68 CHAPTER 3 Intent ACTION_PICK URI android provier MediaStore Images Media EXTERNAL_CONTENT_URI URI SD MediaStore Intent choosepictureintent = new Intent(Intent.ACTION_PICK, ë
More information2005CG01.PDF
Computer Graphics # 1 Contents CG Design CG Programming 2005-03-10 Computer Graphics 2 CG science, engineering, medicine, business, industry, government, art, entertainment, advertising, education and
More informationConnection 8 22 UniSQLConnection / / 9 3 UniSQL OID SET
135-080 679-4 13 02-3430-1200 1 2 11 2 12 2 2 8 21 Connection 8 22 UniSQLConnection 8 23 8 24 / / 9 3 UniSQL 11 31 OID 11 311 11 312 14 313 16 314 17 32 SET 19 321 20 322 23 323 24 33 GLO 26 331 GLO 26
More informationWindows Embedded Compact 2013 [그림 1]은 Windows CE 로 알려진 Microsoft의 Windows Embedded Compact OS의 history를 보여주고 있다. [표 1] 은 각 Windows CE 버전들의 주요 특징들을 담고
OT S / SOFTWARE 임베디드 시스템에 최적화된 Windows Embedded Compact 2013 MDS테크놀로지 / ES사업부 SE팀 김재형 부장 / jaei@mdstec.com 또 다른 산업혁명이 도래한 시점에 아직도 자신을 떳떳이 드러내지 못하고 있는 Windows Embedded Compact를 오랫동안 지켜보면서, 필자는 여기서 그와 관련된
More informationchapter4
Basic Netw rk 1. ก ก ก 2. 3. ก ก 4. ก 2 1. 2. 3. 4. ก 5. ก 6. ก ก 7. ก 3 ก ก ก ก (Mainframe) ก ก ก ก (Terminal) ก ก ก ก ก ก ก ก 4 ก (Dumb Terminal) ก ก ก ก Mainframe ก CPU ก ก ก ก 5 ก ก ก ก ก ก ก ก ก ก
More informationilist.add(new Integer(1))과 같이 사용하지 않고 ilist.add(1)과 같이 사용한 것은 자바 5.0에 추가된 기본 자료형과 해당 객체 자료 형과의 오토박싱/언박싱 기능을 사용한 것으로 오토박싱이란 자바 컴파일러가 객체를 요구하는 곳에 기본 자료형
바에 제네릭스(generics)를 도입하기 위한 연구는 이미 8년 전인 1996년부터라고 한다. 실제로 자바에 제네릭스를 도입하 는 몇 가지 방안들이 논문으로 나오기 시작한 것이 1998년 초임을 감 안하면 무려 8년이 지난 후에야 자바 5.0에 전격 채택되었다는 것은 이것이 얼마나 어려운 일이었나 하는 것을 보여준다. 자바의 스펙을 결정하는 표준화 절차인
More informationAPOGEE Insight_KR_Base_3P11
Technical Specification Sheet Document No. 149-332P25 September, 2010 Insight 3.11 Base Workstation 그림 1. Insight Base 메인메뉴 Insight Base Insight Insight Base, Insight Base Insight Base Insight Windows
More informationuntitled
Push... 2 Push... 4 Push... 5 Push... 13 Push... 15 1 FORCS Co., LTD A Leader of Enterprise e-business Solution Push (Daemon ), Push Push Observer. Push., Observer. Session. Thread Thread. Observer ID.
More informationFMX M JPG 15MB 320x240 30fps, 160Kbps 11MB View operation,, seek seek Random Access Average Read Sequential Read 12 FMX () 2
FMX FMX 20062 () wwwexellencom sales@exellencom () 1 FMX 1 11 5M JPG 15MB 320x240 30fps, 160Kbps 11MB View operation,, seek seek Random Access Average Read Sequential Read 12 FMX () 2 FMX FMX D E (one
More information<4D6963726F736F667420576F7264202D205B4354BDC9C3FEB8AEC6F7C6AE5D3131C8A35FC5ACB6F3BFECB5E520C4C4C7BBC6C320B1E2BCFA20B5BFC7E2>
목차(Table of Content) 1. 클라우드 컴퓨팅 서비스 개요... 2 1.1 클라우드 컴퓨팅의 정의... 2 1.2 미래 핵심 IT 서비스로 주목받는 클라우드 컴퓨팅... 3 (1) 기업 내 협업 환경 구축 및 비용 절감 기대... 3 (2) N-스크린 구현에 따른 클라우드 컴퓨팅 기술 기대 증폭... 4 1.3 퍼스널 클라우드와 미디어 콘텐츠 서비스의
More informationORANGE FOR ORACLE V4.0 INSTALLATION GUIDE (Online Upgrade) ORANGE CONFIGURATION ADMIN O
Orange for ORACLE V4.0 Installation Guide ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE...1 1....2 1.1...2 1.2...2 1.2.1...2 1.2.2 (Online Upgrade)...11 1.3 ORANGE CONFIGURATION ADMIN...12 1.3.1 Orange Configuration
More information비긴쿡-자바 00앞부속
IT COOKBOOK 14 Java P r e f a c e Stay HungryStay Foolish 3D 15 C 3 16 Stay HungryStay Foolish CEO 2005 L e c t u r e S c h e d u l e 1 14 PPT API C A b o u t T h i s B o o k IT CookBook for Beginner Chapter
More information6주차.key
6, Process concept A program in execution Program code PCB (process control block) Program counter, registers, etc. Stack Heap Data section => global variable Process in memory Process state New Running
More informationK7VT2_QIG_v3
1......... 2 3..\ 4 5 [R] : Enter Raid setup utility 6 Press[A]keytocreateRAID RAID Type: JBOD RAID 0 RAID 1: 2 7 " RAID 0 Auto Create Manual Create: 2 RAID 0 Block Size: 16K 32K
More informationMentor_PCB설계입문
Mentor MCM, PCB 1999, 03, 13 (daedoo@eeinfokaistackr), (kkuumm00@orgionet) KAIST EE Terahertz Media & System Laboratory MCM, PCB (mentor) : da & Summary librarian jakup & package jakup & layout jakup &
More informationJMF2_심빈구.PDF
JMF JSTORM http://wwwjstormpekr Issued by: < > Document Information Document title: Document file name: Revision number: Issued by: JMF2_ doc Issue Date: Status: < > raica@nownurinet
More informationch09
9 Chapter CHAPTER GOALS B I G J A V A 436 CHAPTER CONTENTS 9.1 436 Syntax 9.1 441 Syntax 9.2 442 Common Error 9.1 442 9.2 443 Syntax 9.3 445 Advanced Topic 9.1 445 9.3 446 9.4 448 Syntax 9.4 454 Advanced
More information05-class.key
5 : 2 (method) (public) (private) (interface) 5.1 (Method), (public method) (private method) (constructor), 3 4 5.2 (client). (receiver)., System.out.println("Hello"); (client object) (receiver object)
More informationEclipse 와 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 informationuntitled
A Leader of Enterprise e-business Solution FORCS Co., LTD 1 OZ Application Getting Started 2 FORCS Co., LTD A Leader of Enterprise e-business Solution FORCS Co., LTD 3 OZ Application Getting Started 'OZ
More informationInterstage5 SOAP서비스 설정 가이드
Interstage 5 Application Server ( Solaris ) SOAP Service Internet Sample Test SOAP Server Application SOAP Client Application CORBA/SOAP Server Gateway CORBA/SOAP Gateway Client INTERSTAGE SOAP Service
More informationuntitled
A Leader of Enterprise e-business Solution FORCS Co., LTD 1 OZ Application Getting Started (ver 5.1) 2 FORCS Co., LTD A Leader of Enterprise e-business Solution FORCS Co., LTD 3 OZ Application Getting
More informationChap12
12 12Java RMI 121 RMI 2 121 RMI 3 - RMI, CORBA 121 RMI RMI RMI (remote object) 4 - ( ) UnicastRemoteObject, 121 RMI 5 class A - class B - ( ) class A a() class Bb() 121 RMI 6 RMI / 121 RMI RMI 1 2 ( 7)
More informationuntitled
Step Motor Device Driver Embedded System Lab. II Step Motor Step Motor Step Motor source Embedded System Lab. II 2 open loop, : : Pulse, 1 Pulse,, -, 1 +5%, step Step Motor (2),, Embedded System Lab. II
More informationCD-RW_Advanced.PDF
HP CD-Writer Program User Guide - - Ver. 2.0 HP CD-RW Adaptec Easy CD Creator Copier, Direct CD. HP CD-RW,. Easy CD Creator 3.5C, Direct CD 3.0., HP. HP CD-RW TEAM ( 02-3270-0803 ) < > 1. CD...3 CD...5
More informationSolaris Express Developer Edition
Solaris Express Developer Edition : 2008 1 Solaris TM Express Developer Edition Solaris OS. Sun / Solaris, Java, Web 2.0,,. Developer Solaris Express Developer Edition System Requirements. 768MB. SPARC
More informationPowerPoint 프레젠테이션
@ Lesson 3 if, if else, if else if, switch case for, while, do while break, continue : System.in, args, JOptionPane for (,, ) @ vs. logic data method variable Data Data Flow (Type), ( ) @ Member field
More information[ReadyToCameral]RUF¹öÆÛ(CSTA02-29).hwp
RUF * (A Simple and Efficient Antialiasing Method with the RUF buffer) (, Byung-Uck Kim) (Yonsei Univ. Depth of Computer Science) (, Woo-Chan Park) (Yonsei Univ. Depth of Computer Science) (, Sung-Bong
More informationMPLAB C18 C
MPLAB C18 C MPLAB C18 MPLAB C18 C MPLAB C18 C #define START, c:\mcc18 errorlevel{0 1} char isascii(char ch); list[list_optioin,list_option] OK, Cancel , MPLAB IDE User s Guide MPLAB C18 C
More information4. #include <stdio.h> #include <stdlib.h> int main() { functiona(); } void functiona() { printf("hihi\n"); } warning: conflicting types for functiona
이름 : 학번 : A. True or False: 각각항목마다 True 인지 False 인지적으세요. 1. (Python:) randint 함수를사용하려면, random 모듈을 import 해야한다. 2. (Python:) '' (single quote) 는한글자를표현할때, (double quote) 는문자열을표현할때사용한다. B. 다음에러를수정하는방법을적으세요.
More information<32303132B3E2C1A632C8B8BFF6B5E531B1DE42C7FC2E687770>
국 가 기 술 자 격 검 정 무 단 전 재 금 함 형별 제한 시간 수험번호 성 명 다음 문제를 읽고 가장 알맞은 것을 골라 답안카드의 답란 (1, 2, 3, 4)에 표기하시오 워드프로세싱 용어 및 기능 1. 다음 중 워드프로세서의 입력 기능에 대한 설명으로 옳지 1 행두 금칙 문자로는 (, [,,< 등이 있다. 2 KS X 1001 완성형 한글
More informationhd1300_k_v1r2_Final_.PDF
Starter's Kit for HelloDevice 1300 Version 11 1 2 1 2 3 31 32 33 34 35 36 4 41 42 43 5 51 52 6 61 62 Appendix A (cross-over) IP 3 Starter's Kit for HelloDevice 1300 1 HelloDevice 1300 Starter's Kit HelloDevice
More informationmanual pdfÃÖÁ¾
www.oracom.co.kr 1 2 Plug & Play Windows 98SE Windows, Linux, Mac 3 4 5 6 Quick Guide Windows 2000 / ME / XP USB USB MP3, WMA HOLD Windows 98SE "Windows 98SE device driver 7 8 9 10 EQ FM LCD SCN(SCAN)
More informationuFOCS
1 기 : 기 UF_D_V250_002 기 기 기 품 ufocs 기 v2.5.0 히기기기기기기기기기 기 Manual 기 version 기 3.2 기품 2011.7.29 히기 345-13 1 Tel : 02-857-3051 Fax : 02-3142-0319 : http://www.satu.co.kr 2010 SAT information Co., Ltd. All
More informationBuilding Mobile AR Web Applications in HTML5 - Google IO 2012
Building Mobile AR Web Applications in HTML5 HTML5 -, KIST -, UST HCI & Robotics Agenda Insight: AR Web Browser S.M.AR.T: AR CMS HTML5 HTML5 AR - Hello world! - Transform - - AR Events 3/33 - - - (Simplicity)
More informationwp1_120616.hwp
1과목 : 워드프로세싱 용어 및 기능 1. 다음 중 문서의 효력 발생에 대한 견해로 우리나라에서 채택하 고 있는 1 표백주의 2 발신주의 3 도달주의 4 요지주의 2. 다음 중 워드프로세서의 표시기능에 대한 설명으로 옳은 1 포인트는 화면을 구성하는 최소 단위로 1포인트는 보통 0.5mm이다. 2 자간이란 문자와 문자 사이의 간격을 의미하며 자간을 조절 하여
More informationAGENDA 01 02 03 모바일 산업의 환경변화 모바일 클라우드 서비스의 등장 모바일 클라우드 서비스 융합사례
모바일 클라우드 서비스 융합사례와 시장 전망 및 신 사업전략 2011. 10 AGENDA 01 02 03 모바일 산업의 환경변화 모바일 클라우드 서비스의 등장 모바일 클라우드 서비스 융합사례 AGENDA 01. 모바일 산업의 환경 변화 가치 사슬의 분화/결합 모바일 업계에서도 PC 산업과 유사한 모듈화/분업화 진행 PC 산업 IBM à WinTel 시대 à
More information2
2 3 . 4 * ** ** 5 2 5 Scan 1 3 Preview Nikon 6 4 6 7 8 9 10 22) 11 12 13 14 15 16 17 18 19 20 21 . 22 23 24 Layout Tools ( 33) Crop ( 36) Analog Gain ( 69) Digital ICE 4 Advanced ( 61) Scan Image Enhancer
More information김기남_ATDC2016_160620_[키노트].key
metatron Enterprise Big Data SKT Metatron/Big Data Big Data Big Data... metatron Ready to Enterprise Big Data Big Data Big Data Big Data?? Data Raw. CRM SCM MES TCO Data & Store & Processing Computational
More information인켈(국문)pdf.pdf
M F - 2 5 0 Portable Digital Music Player FM PRESET STEREOMONO FM FM FM FM EQ PC Install Disc MP3/FM Program U S B P C Firmware Upgrade General Repeat Mode FM Band Sleep Time Power Off Time Resume Load
More information신림프로그래머_클린코드.key
CLEAN CODE 6 11st Front Dev. Team 6 1. 2. 3. checked exception 4. 5. 6. 11 : 2 4 : java (50%), javascript (35%), SQL/PL-SQL (15%) : Spring, ibatis, Oracle, jquery ? , (, ) ( ) 클린코드를 무시한다면 . 6 1. ,,,!
More informationPowerChute Personal Edition v3.1.0 에이전트 사용 설명서
PowerChute Personal Edition v3.1.0 990-3772D-019 4/2019 Schneider Electric IT Corporation Schneider Electric IT Corporation.. Schneider Electric IT Corporation,,,.,. Schneider Electric IT Corporation..
More information목차 1. 제품 소개... 4 1.1 특징... 4 1.2 개요... 4 1.3 Function table... 5 2. 기능 소개... 6 2.1 Copy... 6 2.2 Compare... 6 2.3 Copy & Compare... 6 2.4 Erase... 6 2
유영테크닉스( 주) 사용자 설명서 HDD014/034 IDE & SATA Hard Drive Duplicator 유 영 테 크 닉 스 ( 주) (032)670-7880 www.yooyoung-tech.com 목차 1. 제품 소개... 4 1.1 특징... 4 1.2 개요... 4 1.3 Function table... 5 2. 기능 소개... 6 2.1 Copy...
More informationChap7.PDF
Chapter 7 The SUN Intranet Data Warehouse: Architecture and Tools All rights reserved 1 Intranet Data Warehouse : Distributed Networking Computing Peer-to-peer Peer-to-peer:,. C/S Microsoft ActiveX DCOM(Distributed
More informationPRO1_04E [읽기 전용]
Siemens AG 1999 All rights reserved File: PRO1_04E1 Information and S7-300 2 S7-400 3 EPROM / 4 5 6 HW Config 7 8 9 CPU 10 CPU : 11 CPU : 12 CPU : 13 CPU : / 14 CPU : 15 CPU : / 16 HW 17 HW PG 18 SIMATIC
More informationC# Programming Guide - Types
C# Programming Guide - Types 최도경 lifeisforu@wemade.com 이문서는 MSDN 의 Types 를요약하고보충한것입니다. http://msdn.microsoft.com/enus/library/ms173104(v=vs.100).aspx Types, Variables, and Values C# 은 type 에민감한언어이다. 모든
More information09-interface.key
9 Database insert(record r): boolean find(key k): Record 1 Record getkey(): Key * Record Key Database.? Key equals(key y): boolean Database insert(record r): boolean find(key k): Record * Database OK 1
More information11 템플릿적용 - Java Program Performance Tuning (김명호기술이사)
Java Program Performance Tuning ( ) n (Primes0) static List primes(int n) { List primes = new ArrayList(n); outer: for (int candidate = 2; n > 0; candidate++) { Iterator iter = primes.iterator(); while
More informationPowerPoint 프레젠테이션
Web Browser Web Server ( ) MS Explorer 5.0 WEB Server MS-SQL HTML Image Multimedia IIS Application Web Server ASP ASP platform Admin Web Based ASP Platform Manager Any Platform ASP : Application Service
More information자바 프로그래밍
5 (kkman@mail.sangji.ac.kr) (Class), (template) (Object) public, final, abstract [modifier] class ClassName { // // (, ) Class Circle { int radius, color ; int x, y ; float getarea() { return 3.14159
More informationuntitled
1 Â: ADOBE CONNECT ENTERPRISE «2006 Adobe Systems Incorporated. All rights reserved. Windows Macintosh Adobe Connect Enterprise. Adobe Systems Incorporated,,.. Adobe Systems Incorporated. Adobe Systems
More informationDomino Designer Portal Development tools Rational Application Developer WebSphere Portlet Factory Workplace Designer Workplace Forms Designer
Domino, Portal & Workplace WPLC FTSS Domino Designer Portal Development tools Rational Application Developer WebSphere Portlet Factory Workplace Designer Workplace Forms Designer ? Lotus Notes Clients
More informationExt 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 information1217 WebTrafMon II
(1/28) (2/28) (10 Mbps ) Video, Audio. (3/28) 10 ~ 15 ( : telnet, ftp ),, (4/28) UDP/TCP (5/28) centralized environment packet header information analysis network traffic data, capture presentation network
More informationWeek3
2015 Week 03 / _ Assignment 1 Flow Assignment 1 Hello Processing 1. Hello,,,, 2. Shape rect() ellipse() 3. Color stroke() fill() color selector background() 4 Hello Processing 4. Interaction setup() draw()
More information자바로
! from Yongwoo s Park ZIP,,,,,,,??!?, 1, 1 1, 1 (Snow Ball), /,, 5,,,, 3, 3, 5, 7,,,,,,! ,, ZIP, ZIP, images/logojpg : images/imageszip :, backgroundjpg, shadowgif, fallgif, ballgif, sf1gif, sf2gif, sf3gif,
More informationLab10
Lab 10: Map Visualization 2015 Fall human-computer interaction + design lab. Joonhwan Lee Map Visualization Shape Shape (.shp): ESRI shp http://sgis.kostat.go.kr/html/index.html 3 d3.js SVG, GeoJSON, TopoJSON
More information교육2 ? 그림
Interstage 5 Apworks EJB Application Internet Revision History Edition Date Author Reviewed by Remarks 1 2002/10/11 2 2003/05/19 3 2003/06/18 EJB 4 2003/09/25 Apworks5.1 [ Stateless Session Bean ] ApworksJava,
More information1부
PART 1 2 PART 01 _ SECTION 01 API NOTE SECTION 02 3 SECTION 02 GPL Apache2 NOTE 4 PART 01 _ SECTION 03 (Proyo) 2 2 2 1 2 2 : 2 2 Dalvik JIT(Just In Time) CPU 2~5 2~3 : (Adobe Flash) (Air) : SD : : : SECTION
More informationP/N: (Dec. 2003)
P/N: 5615 1451 0014 (Dec. 2003) iii 1... 1...1...1...2...3...4...4...5...6...6...7...8...8...8...9...11...11...11 2... 13...13...14...14...15...16...17...18 ... 19... 20... 20... 22... 22... 24 3 Pocket
More informationETL_project_best_practice1.ppt
ETL ETL Data,., Data Warehouse DataData Warehouse ETL tool/system: ETL, ETL Process Data Warehouse Platform Database, Access Method Data Source Data Operational Data Near Real-Time Data Modeling Refresh/Replication
More informationFileMaker 15 WebDirect 설명서
FileMaker 15 WebDirect 2013-2016 FileMaker, Inc.. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker FileMaker Go FileMaker, Inc.. FileMaker WebDirect FileMaker, Inc... FileMaker.
More informationPWR PWR HDD HDD USB USB Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl Cable PC PC DDNS (
PWR PWR HDD HDD USB USB Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl Cable PC PC DDNS (http://ddns.hanwha-security.com) Step 1~5. Step, PC, DVR Step 1. Cable Step
More information5장.key
JAVA Programming 1 (inheritance) 2!,!! 4 3 4!!!! 5 public class Person {... public class Student extends Person { // Person Student... public class StudentWorker extends Student { // Student StudentWorker...!
More informationPCServerMgmt7
Web Windows NT/2000 Server DP&NM Lab 1 Contents 2 Windows NT Service Provider Management Application Web UI 3 . PC,, Client/Server Network 4 (1),,, PC Mainframe PC Backbone Server TCP/IP DCS PLC Network
More informationDE1-SoC Board
실습 1 개발환경 DE1-SoC Board Design Tools - Installation Download & Install Quartus Prime Lite Edition http://www.altera.com/ Quartus Prime (includes Nios II EDS) Nios II Embedded Design Suite (EDS) is automatically
More informationfundamentalOfCommandPattern_calmglow_pattern_jstorm_1.0_f…
Command JSTORM http://www.jstorm.pe.kr Command Issued by: < > Revision: Document Information Document title: Command Document file name: Revision number: Issued by: Issue
More information