如何使用文档和例子

这份文档提供了一份关于如何通过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

你可能也发现,整个框架几乎调用了这些接口,并且每个方法都注明了类型或返回类型。

我们会鼓励并强调在你的代码中调用这些接口。因为它可以不带副作用地帮你轻松交换不同的接口。在以后的版本中,我们还会介绍这些接口新的实现方法,不过会尽可能不影响你的代码。

最新文章

  1. SSIS 通过添加脚本组件 自定义转换数据
  2. 设置MYECLIPSE的自动补全
  3. Spark RDD aggregateByKey
  4. iOS开发--应用设置及用户默认设置——转载
  5. [itint5]完全二叉树节点个数的统计
  6. hihoCoder 1041 国庆出游 (DFS)
  7. c#中的数据类型简介(枚举)
  8. ASPxGridView-为每行添加序号
  9. poj1001求幂
  10. Why attitude is more important than IQ
  11. 从PRINCE2引起项目失败的共性原因?
  12. Android studio导入eclipse项目(亲测)
  13. BigData_Jia
  14. socket-WebSocket-HttpListener-TcpListener服务端客户端的具体使用案例
  15. Ajax增删改查-----------删 改
  16. ELK安装使用教程
  17. angularJs, ui-grid 设置默认group, 及排序
  18. 着色器shaders
  19. 小橙书阅读指南(十三)——连通性算法(union-find)
  20. js压缩图片并上传,不失真,保证图片清晰度

热门文章

  1. Archlinux添加MP3播放器
  2. appframework(jqmobi) 3.0 设置
  3. PIC32MZ tutorial -- 32-bit Timer
  4. 网站实现特定某个地区访问执行跳转(js方法)
  5. PHP基于SOAP实现webservice
  6. oc中的枚举定义
  7. samba的简单用法总结
  8. 安装crab
  9. An unknown error occurred & “”的 iPhone is busy: Processing symbol files
  10. 写shell脚本速查笔记