本系列文章是基于Nokia Series 60和Symbian OS技术,指导开发者在现在的Series 60移动电话终端上开发高级的移动游戏。

  Symbian操作系统简介

  Symbian操作系统是所有Symbian OS电话共享的应用编程接口( API)技术的公共核心。 这个核心被命名为"通用技术"(generic technology,简称为GT),它被分成不同的版本。 GT包括一个多任务核心、通讯、数据管理和图表中间件,低级图形用户界面框架和应用程序引擎。

  象智能电话这样的小型手持设备,通常是资源非常紧张的设备。 这种设备的尺寸和制造费用限制了可用的存储器,处理速度和电池寿命。 尽管以上这些资源缺乏,但是这些设备还是需要能够稳定运行相当长的一段时间,甚至数个月。 一旦出现资源溢出的错误,对于系统来说重要的事情就是返回到前一个稳定的状态,而不失去任何重要的数据。 这使得完全地捕捉和处理每个运行错误对于系统和应用程序来说是非常重要的。

  由于资源溢出而出现的错误,和所有的运行期错误一样被称为异常。 在标准的C++中,这些异常是使用try-catch-throw机制处理的,但是因为它造成了代码长度的负面影响,所以Symbian OS提供了它自己的称为trap harness的机制。

  Symbian开发他们自己的异常处理程序的另一个原因是开发Symbian OS的时候,try - catch - throw机制还不是C++标准的一部分。trap- harness的概念是使用一个TRAP宏把可能引发异常的函数封装起来。这个宏可用于捕获多个函数,并且这些函数可以嵌套。万一出现一个异常,导致异常的函数的执行就会通过User::Leave函数终止,相当于标准的C++异常处理中的throw。这被称为一个leave(离开),它将返回程序执行到结束的TRAP宏,在那里相应的恢复动作可以被执行。

  Symbian OS还提供一个工具,以便清除异常。一个cleanupstack被用于引用只被一个自动变量引用,并且如果出现一个leave的时候需要被释放的对象。TRAP宏将销毁cleanupstack中自动变量分配的内存。

  Symbian OS提供一个用于在单一线程之内非抢先式多任务处理技术的系统。这个包括活动对象和活动调度程序的系统的设计目标是降低运行时间成本和解决与优先计划线程冲突的同步问题。Symbian OS中的每个应用程序由一个活动调度程序和一个或多个活动对象组成。这个调度程序封装一个需要异步的服务和依照它们的优先权安排活动对象的等待循环。活动对象封装实际的异步服务。

基于Nokia S60的游戏开发之一相关推荐

  1. 基于Nokia S60的游戏开发之二

    把基于Series 60的智能电话作为一种游戏设备 本章将深入研究Series 60和Symbian OS,描述它们作为一个游戏平台的特性.此外,智能电话的需求和限制也将被讨论. 需求 与许多其它用于 ...

  2. MMO游戏War Riders宣布将于基于区块链的游戏开发公司Immutable集成

    可赚取加密货币的MMO游戏War Riders宣布,将于基于区块链的游戏开发公司Immutable集成,合作将使玩家可免Gas的铸造和交易,并扩大War Riders的用户. 文章链接:https:/ ...

  3. 实验项目三:基于A*搜索算法迷宫游戏开发

    基于A*搜索算法迷宫游戏开发 由于这一个不太完美,重新写了一个基于python的程序. 一.前言 二.基本流程 三.界面设计 四.迷宫随机生成 五.移动迷宫与尾迹生成 六.A*迷宫自动寻路 七.附加 ...

  4. JAVA基于J2ME的手机游戏开发和实现——贪吃蛇

    随着通信技术的发展和手机的普及,手机游戏的开发技术越来越为人们所关注.以J2ME为开发平台,利用Java提供强大工具,不但可以在手机上实现静态HTML技术所无法实现的计算处理.数据存储.与服务器的通信 ...

  5. 基于Java的移动游戏开发入门(来自51CTO论坛)

    一. 引言 近来,移动游戏在提供个人娱乐方面变得越来越流行.这种流行使得移动游戏给手机用户,游戏出版商和手持设备制造者带来丰厚的利润:移动游戏,在给游戏开发者和相关人员带来无数商机的同时,处于极为重要 ...

  6. 计算机软件实习日志(三)基于 A*搜索算法迷宫游戏开发

    文章目录 界面展示 前言 一.实验要求? 二.实验准备 三.设计思路 1.A*算法的理解 算法描述 简化搜索区域 简化地图 概述算法步骤 进一步解释 具体寻路过程 F值计算方式: 2.开发思路 使用Q ...

  7. 实验三、基于A*搜索算法迷宫游戏开发

     实验要求 1. 迷宫游戏是非常经典的游戏,在该题中要求随机生成一个迷宫,并求解迷宫. 2. 要求游戏支持玩家走迷宫,和系统走迷宫路径两种模式.玩家走迷宫,通过键盘方向键控制,并在行走路径上留下痕迹: ...

  8. 基于A*搜索算法迷宫游戏开发

    程序设计分析 迷宫难度: 迷宫长宽:尺寸越大,生成的地图越难 迷宫生成算法:地图难度:kruskai算法>随机深度优先算法>prim算法>递归分割算法 功能 增加状态栏显示状态信息 ...

  9. 基于FPGA的Bubble 游戏开发

    1.为了节约算法资源消耗,玩家发射的泡泡数量有限,统一为20个炮弹. 2.为了体现不同速度下的难度,弱化鼠标的作用,发送泡泡会左右快速或者慢速移动,然后瞄准后,用户发射泡泡. 3.为了将程序量控制在1 ...

最新文章

  1. WEB接口测试之Jmeter接口测试自动化 (二)(数据分离)
  2. 程序员养生攻略,你值得拥有
  3. 蓝牙核心规范5.1:革新精确定位技术
  4. Win32 一个helloworld对话框
  5. python:遍历文件夹下的所有文件
  6. 计算机图形学---简单光照明模型知识汇总
  7. 使用FFmpeg进行360全景视频格式转换:filter v360
  8. leetcode刷题方法
  9. jquery高级之妙味云课堂笔记
  10. 你真的了解Web Component吗?
  11. 12月18日科技资讯|支付宝、微信回应3D面具破解人脸识别;ofo 否认「发币」;Kafka 2.4.0 发布
  12. mysql占用内存过高_MySQL内存消耗过高问题处理
  13. OSChina 周五乱弹 ——程序员脱单攻略!
  14. discuz插件,discuz采集插件,discuz插件工具
  15. Python-sklearn库的安装
  16. ALTER TABLE 表结构变更
  17. Camstar ODS功能数据梳理
  18. python+django大学生心理健康测试咨询网站
  19. 2020考研数学经验(数学一)
  20. 雷鸟X2:开启可量产全彩MicroLED光波导AR眼镜新起点

热门文章

  1. ElasticSearch模糊查询(中文检索)
  2. 2022图书出版行业营销白皮书
  3. 2020品牌情商指数报告
  4. 用OKR拆解法,做产品规划
  5. 提到这点,人人都不想当产品经理了
  6. python项目之当当网
  7. pythonweb开发工作内容_我的第一个python web开发框架(5)——开发前准备工作(了解编码前需要知道的一些常识)...
  8. python 结构数组_Python-“结构数组”
  9. 作者:司恩哲(1985-),男,现就职于中国人民银行征信中心数据部,主要研究方向为数据挖掘。...
  10. 【程序设计】程序错误类型