如何使用文档和例子
这份文档提供了一份关于如何通过SmartFoxServer 2X(缩写SFS2X)文档掌握要点的快速教程。在使用例子和技术文档之前,我们建议先参考以下主题内容。
不管你是SmartFox开发老手,还是刚接触的新手,你都能在这里找到对你有帮助的内容来开发SFS2X。在《入门》章节会告诉你如何安装客户端和服务端,在《高级主题》章节,会提供新的extension系统,服务器API等更多相关内容。
例子
SmartFoxServer自带了许多简单和高级例子(包含的编程语言包括ActionScript 3,Objective-C,Java和C#),这些例子可以让你学习到服务器简单和有趣的特点。
每个例子不管是客户端还是服务端都自带开源代码,目的是在之前系列例子的基础上保持连续性。
Java/AS3/C#文档
一旦你知道你可以利用最新的SFS2X做什么,并且测试了相关例子,你可能就会希望开始利用API去实现一些想法。这时候,客户端的AS3/C#文档以及服务端的Java文档就可以派上用场了。
###客户端###
客户端API的主要对象是SmartFox类(AS3的在com.smartfoxserver.v2包中,C#的在Sfs2X包中,Java的在sfs2x.client包中)。它也是客户端API的主要入口。SmartFox对象可以让你管理你的事件监听器,连接服务器以及通过send()方法发送请求。
客户端框架的其他重要部分是request包(AS3的在com.smartfoxserver.v2.requests包中,C#的在Sfs2X.Requests包中,Java的在sfs2x.client.requests包中)。在这里你会找到不同的类,每个类都提供一个特定的客户端请求,例如登录请求(LoginRequest),加入房间请求(JoinRoomRequest),发送公共消息请求(SendPublicMessageRequest)等。另外还有2个独立的子包,game和buddylist(C# API的是Game和Buddylist),在这里你可以找到高级API用以建立游戏和分别管理好友列表。
###服务端###
在服务端API作为入口点的包为com.smartfoxserver.v2.api包。主要的有相关类有:
SFSApi:在这里你能找到许多公共服务器操作方法(登录,创建/删除房间,发送消息,添加用户,设置变量等)。
SFSGameApi:游戏特定API
SFSBuddyApi:好友列表特定API
提醒:在查阅Java文档过程中你有时会发现一些变量和方法没有文档注释。此外,由于文档的当前状态,除了少数例外情况之外,这样做也是故意的,这表明这些方法不能直接调用。API这个包已经封装好了那些方法,不需要我们去直接处理它们。调用它们的话可能会破坏SFS2X的正常运作。
面向接口编程
一般情况下,通过客户端和服务端的API,你会发现,该框架中所有重要的类都是由一个接口支持。
例如:
SFSZone implements Zone
SFSRoom implements Room
SFSUser implements User
SFSBuddy implements Buddy
SFSObject implements ISFSObject
SFSArray implements ISFSArray
SFSRoomVariable implements RoomVariable
SFSUserVariable implements UserVariable
你可能也发现,整个框架几乎调用了这些接口,并且每个方法都注明了类型或返回类型。
我们会鼓励并强调在你的代码中调用这些接口。因为它可以不带副作用地帮你轻松交换不同的接口。在以后的版本中,我们还会介绍这些接口新的实现方法,不过会尽可能不影响你的代码。
原文:http://www.cnblogs.com/winson-w/p/3555106.html