FLASH+JAVA开发实时网络游戏
本文分两部分:FLASH编程 和 Java编程,此文记录的仅仅是我在探索中的一些收获,其中用了很多个人化的描述语言,并不是业界标准的用语。 :)
探索笔记:
目前国内Flash应用大部分还是在制作精美的动画方面,但据我了解早在Flash4 的时代,国外一些人就已经开始将flash技术运用于开发动态网站(和php、asp、jsp结合)和开发应用程序(象网络游戏、远程管理等应用软件)的项目中了。而直到今日,这方面在国内发展还是比较缓慢(有一部分原因是少数人掌握了关键技术,但不愿意共享出来)。因此,我将致力于推动国内flash技术在开发动态网站和开发应用程序方面的发展,并将自己亲手写的代码公布到网络中,以便于大家共享、交流。
涉及到的知识范畴:
1. socket概念
2. java编程语言
3. Flash MX ActionScript中的XMLSocket
实时网络游戏也属于大型应用程序范畴,一个关键环节就是建立实时主动通信环境(相对的,有个称为被动通。信的方式,最好的例子就是你正在用IE浏览器浏览一个网站,此时浏览器和服务器之间就是被动通信方式:如果你不点击一个连接,发送一个WEB页面请求到WEB服务器,WEB服务器是不会主动向你的浏览器发送任何页面的)。在此Socekt API就成为了首选。限于篇幅,这里不再过多解释socket的含义,只希望大家能记住一点,只要建立能够实时通信的应用程序就需要建立socket连接。
【客户端FLASH编程部分】
从mx自带的as字典中可以看出,Flash在网络通信方面得到了非常大的加强。“The XMLSocket object is useful for client-server applications that require low latency, such as real-time chat systems”注意最后的一小段话:such as real-time chat systems(译文:例如实时聊天系统)
通过调用XMLSocket方法FLASH就可以和一些由强大语言编写的服务器应用程序进行通信,进而开发出各种实时信息交流系统。所以我们的目标锁定在XMLSocket!
另外值得注意的是:有很多人一看到XMLSocket前面的XML三个字母,就觉得头疼,以为必须先熟悉甚至精通XML才能使用这个对象及其方法,但我要说的是在你不太了解XML的阶段,只要把XML信息看成是一个随意长度(>0)的字符串,把XMLSocket看成是一个只是用来发送字符串数据的对象就好办多了。
我们还是从分析代码着手,来跨进开发FLASH实时网络游戏的大门吧:
//建立XMLSocket对象
var mySocket = new XMLSocket();
mySocket.connect("12
相关文档:
首先引用一篇文章,介绍一个简单的JNI的调用的过程。 JAVA以其跨平台的特性深受人们喜爱,而又正由于它的跨平台的目的,使得它和本地机器的各种内部联系变得很少,约束了它的功能。解决JAVA对本地操作的一种方法就是JNI。 JAVA通过JNI调用本地方法,而本地方法是以库文件的形式存放的(在WINDOWS平台上是DL ......
package sort;
public class RadixSort {
// 求x 数第d位上的数字,例如12345,十位数字是4 12345/10%10=4
// d=0 表示个位 ;d=1 表示十位...依次类推
public static int digit(int d,int x){
return x/(int)Math.pow(10, d)%10;
}
public static void ra ......
Java平台提供了一个全新的集合框架。“集合框架”主要由一组用来操作对象的接口组成。不同接口描述一组不同数据类型。
Java 2集合框架图
集合接口:6个接口(短虚线表示),表示不同集合类型,是集合框架的基础。
抽象类:5个抽象类(长虚线表示),对集合接口的部分实现。可扩展为自定义集合类。
......
3.Sun HotSpot
1.4.1 JVM堆大小的调整
Sun HotSpot 1.4.1使用分代收集器,它把堆分为三个主要的域:新域、旧域以及永久域。Jvm生成的所有新对象放在新域中。一旦对象经历了一定数量的垃圾收集循环后,便获得使用期并进入旧域。在永久域中jvm则存储class和method对象。就配置而言,永久域是一个独立域并且不 ......
1. 你需要精通面向对象分析与设计(OOAOOD)、涉及模式(GOF,J2EEDP)以及综合模式。你应该了解UML,尤其是class、object、interaction以及statediagrams. 2. 你需要学习Java语言的基础知识以及它的核心类库(collections、serialization、streams、networking、multithreading、reflection、event、handling、N ......