如何使用文档和例子

这份文档提供了一份关于如何通过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. 35. Binary Tree Level Order Traversal && Binary Tree Level Order Traversal II

    Binary Tree Level Order Traversal OJ: https://oj.leetcode.com/problems/binary-tree-level-order-trave ...

  2. 【caffe-windows】 caffe-master 之 matlab接口配置

    平台环境: win10 64位 caffe-master  vs2013 Matlab2016a 第一步: 打开\caffe-master\windows下的CommonSettings.props文 ...

  3. Oracle 表分区

    从以下几个方面来整理关于分区表的概念及操作: 表空间及分区表的概念 表分区的具体作用 表分区的优缺点 表分区的几种类型及操作方法 对表分区的维护性操作 1.表空间及分区表的概念 表空间: 是一个或多个 ...

  4. display:none与visibility: hidden的区别

    display:none和visibility: hidden都能把网页上某个元素隐藏起来,但两者有区别: display:none ---不为被隐藏的对象保留其物理空间,即该对象在页面上彻底消失. ...

  5. openldap自定义schema

    参考官方文档 13. Schema Specification http://www.verydemo.com/demo_c161_i74426.html https://oskb.wordpress ...

  6. 44. 普通对象建一个用户方法,提交时报:失败:建立业务逻辑对象失败:业务逻辑定义更新到数据库失败:ORA-00904: "DEFVERSION": 标识符无效

    LBBIZPROCESSDEFSLBHISTORYBIZPROCESSDEFSLBHISTORYMULTIWFDEFSDESIGNLBHISTORYWORKFLOWDEFSDESIGNLBMULTIW ...

  7. C++ 用libcurl库进行http通讯网络编程

    使用libcurl完成http通讯,很方便而且是线程安全,转载一篇比较好的入门文章 转载自 http://www.cnblogs.com/moodlxs/archive/2012/10/15/2724 ...

  8. web测试特别点

    1.浏览器的后退按钮  提交表单一条已经成功提交的记录,back后再提交,看系统会如何处理.  检查多次使用back健的情况在有back的地方,back,回到原来的页面,再back,重复几次,看是否会 ...

  9. eclipse 配置scala开发环境

    最近在学习spark相关知识.准备搭建eclipse开发环境.在安装过程中遇到的问题记录下来. 首先在scala网站上下载了scalaIDE:http://scala-ide.org/download ...

  10. Aborting commit: 'XXX' remains in conflict

    Aborting commit: 'XXX' remains in conflict 错误   本地也删除了一个文件夹,用svn 的repo-brower 删除了服务器上的对应的文件夹 ,再次comm ...