如何使用文档和例子

这份文档提供了一份关于如何通过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. 67. Container With Most Water

    Container With Most Water Given n non-negative integers a1, a2, ..., an, where each represents a poi ...

  2. java 单例设计模式

    1.饿汉单例设计模式:  步骤 :   1.定义一个私有的静态成员变量来引用对象(私有的静态对象),设置对象唯一.   2.私有化构造方法,防止new对象.   3.创建一个公开的静态方法,返回上面的 ...

  3. POS管理系统之新增设备入库

    <%@ page language="java" import="java.util.*" pageEncoding="utf-8"% ...

  4. linux 源码安装

    下载源码安装包,一般为.tar.gz格式 解压源码至文件夹,linux终端进入该文件夹,安装只需三步,第四步为扫尾工作: ./configure --prefix=/usr/self/文件夹名称    ...

  5. skiplist

    §1 Skip List 介绍 Skip List是一种随机化的数据结构,基于并联的链表,其效率可比拟于二叉查找树(对于大多数操作需要O(log n)平均时间).基本上, 跳跃列表是对有序的链表增加上 ...

  6. 初学javaweb,远离各自框架

    OSCHINA 软件库有一个分类--Web框架,该分类中包含多种编程语言的将近500个项目. Web框架是开发者在使用某种语言编写Web应用服务端时关于架构的最佳实践.很多Web框架是从实际的Web项 ...

  7. 属性传值,协议传值,block传值,单例传值四种界面传值方式

    一.属性传值 对于属性传值而言,相对于其它的三种 方法来说,是最基础,最简单的一种 方法,但,属性传值 有很大的局限性,因为是适用于第一个界面向第二个界面传 值,第二个向第三个界面传值等等.N界面向N ...

  8. zabbix3.0.4监控mysql主从同步

    zabbix3.0.4监控mysql主从同步 1.监控mysql主从同步原理: 执行一个命令 mysql -u zabbix -pzabbix -e 'show slave status\G' 我们在 ...

  9. mysql之预处理语句prepare、execute、deallocate

    预制语句的SQL语法基于三个SQL语句: PREPARE stmt_name FROM preparable_stmt; EXECUTE stmt_name [USING @var_name [, @ ...

  10. OpenSSL命令系列

    1.1 ssl命令系列前言 openssl命令的格式是"openssl command command-options args",command部分有很多种命令,这些命令需要依赖 ...