如何使用文档和例子

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

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

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

[SmartFoxServer概述]使用文档的更多相关文章

  1. Django2文档-入门概览

    Django 概览 Django 是设计是为了使通用的Web开发任务变得快速而又简单, 一下是如何使用Django编写数据库驱动的Web应用程序的非正式概述. 这个文档的目标是给你足够的技术细节来理解 ...

  2. 翻译qmake文档(一) qmake指南和概述

    翻译qmake文档 目录 英文文档连接: http://qt-project.org/doc/qt-5/qmake-manual.html http://qt-project.org/doc/qt-5 ...

  3. gene框架文档 - 概述

    欢迎使用Gene框架 最新版本:V1.2.2 开源地址:https://github.com/sasou/php-gene 作者:sasou 文档地址:http://php-gene.com/doc ...

  4. iOS Foundation 框架概述文档:常量、数据类型、框架、函数、公布声明

    iOS Foundation 框架概述文档:常量.数据类型.框架.函数.公布声明 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业 ...

  5. 001-Java®语言规范、Java平台标准版文档、JVM概述

    一.概述 相关api地址:JDK10   JDK 9   JDK 8   JDK 7   JDK 6 Java语言和虚拟机规范: https://docs.oracle.com/javase/spec ...

  6. 007-elasticsearch5.4.3【一】概述、Elasticsearch 访问方式、Elasticsearch 面向文档、常用概念

    一.概述 Elasticsearch 是一个开源的搜索引擎,建立在一个全文搜索引擎库 Apache Lucene™ 基础之上. Elasticsearch 也是使用 Java 编写的,它的内部使用 L ...

  7. API概述,使用步骤和Scanner概述及其API文档的使用

    API概述 API(Application Programming Interface),应用程序编程接口.Java API是一本程序员的 字典 ,是JDK中提供给 我们使用的类的说明文档.这些类将底 ...

  8. VS2010/MFC编程入门之三十九(文档、视图和框架:概述)

    前面几节讲了菜单.工具栏和状态栏的使用,鸡啄米本节开始将为大家讲解文档.视图和框架的知识. 文档.视图和框架简介 在VS2010/MFC编程入门之三十四(菜单:VS2010菜单资源详解)创建的单文档工 ...

  9. VS2010-MFC(文档、视图和框架:概述)

    转自:http://www.jizhuomi.com/software/221.html 前面几节讲了菜单.工具栏和状态栏的使用,本节开始将为大家讲解文档.视图和框架的知识. 文档.视图和框架简介 在 ...

随机推荐

  1. pH 值与曝气对硝化细菌硝化作用的影响

    http://wenku.baidu.com/view/c2723434eefdc8d376ee325d.html 摘要: 目的 探讨硝化细菌最佳工作条件,为应用和生产提供依据. 方法 通过人工调节液 ...

  2. 一个CString的实现 拷贝构造函数的应用

    class CString { public: CString (char* s); CString(); ~CString(); private: char *str; int len; stati ...

  3. STL之分配器allocator

    简单介绍下STL中的分配器allocators. allocators我们一般不会直接接触到,甚至可能并不清楚它的存在,简单的来说,它就是一个幕后工作者,我的印象中它的作用主要在于为容器分配一定的空间 ...

  4. 2016-08-16: copy-and-swap

    #include <algorithm> // std::copy #include <cstddef> // std::size_t #include <stdio.h ...

  5. Xcode常用的快捷键有哪些?

    作者:吴白 原文链接:http://www.jianshu.com/p/de7806f6143b 手指在键盘上飞速跳跃,终端上的代码也随着飞舞,是的这确实很酷.优秀的程序员总是这么一群人,他们不拘于现 ...

  6. vim总结

    1.vim基础用法 注:该思维导图来自笔者<Linux就该这么学>读书笔记. 移动光标: 命令 描述 k 向上移动光标(移动一行) j 向下移动光标(移动一行) h 向左移动光标(移动一个 ...

  7. Python 之WEB前端插件

    1.Font Awesome ---- 设计字体,图标 2.EasyUI ---- 各种功能 3.JqueryUI ---- 类似EasyUI 4.bootstrap ---- 必须引入JQuery( ...

  8. “数学口袋精灵”第二个Sprint计划(第十天)总结

    第二阶段Sprint完成情况: 目标:完成一个小游戏 情况:ui基本完成. 代码基本也完成了,部分未完善. 音乐方面有点小bug,正在完善. 具体运行结果(截图): 首页: 游戏界面(可以计算多个运算 ...

  9. 论velocity在不同后台语言下的不同

    第一家公司使用asp.net开发的,本人从事前端工作.当时用velocity写模板程序记得也没配置啥,我就记得写了rewrite,html页面里头直接写的velocity. 现在公司用的java开发的 ...

  10. SQL Server 查询处理中的各个阶段(SQL执行顺序)

    SQL 不同于与其他编程语言的最明显特征是处理代码的顺序.在大数编程语言中,代码按编码顺序被处理,但是在SQL语言中,第一个被处理的子句是FROM子句,尽管SELECT语句第一个出现,但是几乎总是最后 ...