开发经验

基于Cocos2d的MMORPG开发经验

江枫思渺然 提交于 2019-12-05 20:54:02
这次跟大家分享的是《基于 Cocos2d-x 的回合 MMORPG 开发经验》,我们主要是以 LUA 和 C++ 来开发项目,使用两者的原因之一是 LUA 和 C++ 语法简单,并且 LUA 开发稳定性好,不容易造成崩溃,而且它支持在线更新的机制。用 LUA 开发的话,逻辑代码和资源文件会比较好,这个优点在多平台运营的时候很明显。因为你更新了一个软件之后,需要先下载平台,这个时候如果用其他软件编辑会导致所有的数据不一样。这个模式的第二个优点就是出现逻辑错误以后我们可以将错误的信息从玩家处收回来,进行错误信息的搜集。第三个优点是内存垃圾回收,以往 C++ 内存垃圾回收是很麻烦的,用 LUA 的话,你只要能够按时去清除变量,基本上不需要去担心内存的使用情况。因此 LUA 在脚本里面的使用算是比较好的。 不过这种模式也会有一些问题,比如说游戏启动时需要加载 LUA 文件,像现阶段需要加载 500 多个 LUA 文件,这是个很头痛的事情,但是不得不加载。加载 LUA 文件是需要一定时间的,现阶段大概需要 10 秒钟,整体的效率要比 C++ 低,毕竟是脚本语言,还是有一些可以优化的方案。我们现在采用的方式是把复杂数学计算的逻辑都放在 Cocos2d-x 引擎层,用 C 以及 C++ 来实现。对于需要灵活可变、利于开发维护的逻辑宜放在脚本层里面处理,这样就增加了灵活性。需要注意一点就是 LUA

互联网大厂职位内推啦!!!

岁酱吖の 提交于 2019-12-05 15:15:05
阿里巴巴大文娱事业群 Android技术专家 职位描述: 1.独立完成 android客户端程序的开发; 2.根据产品需求开发相关的移动产品; 3.验证和修正测试中发现的问题; 4.配合市场等其他部门,提供产品相关技术支持; 职位要求: 1.三年以上客户端开发经验,精通Android手机平台; 2.熟悉掌握至少一种主流手机平台编程语言(C,C++或Java等),有Java相关开发经验不少于2年; 3.精通android平台下的高性能编程及性能调优; 4.开发基础良好,理解设计模式,在项目或产品中有很好的设计实践; 5.有强烈的责任心和团队精神,善于沟通和合作;能独立完成设计和编码; 6.对Android的UI控件有实际使用和优化经验者优先;有前端开发经验者优先。 今日头条 前端开发工程师 薪资:20k-40k 15薪 职位描述: 1、负责公司云服务产品的研发工作(PC 端、to B 方向); 2、参与视频相关产品的研发工作,如音视频播放器、视频质量监控平台、webRTC 等; 3、能积极协同各个端开发公共 sdk 输出到其他业务线(js、node); 技能要求: 1、计算机、通信和电子信息科学等相关专业优先; 2、熟练掌握各种前端技术,包括 HTML/CSS/JavaScript/Node.js 等; 3、深入了解 JavaScript 语言,使用过 React 或 Vue.js

ios开发小经验--适合初学者

℡╲_俬逩灬. 提交于 2019-12-05 03:59:18
1, NSComparisonResult的值有哪些 比对的enum NSComparisonResult,不容易记忆,列粗来,看吧: 大于它的话就是一个负值哦。 typedef NS_ENUM(NSInteger, NSComparisonResult) { NSOrderedAscending = -1L, NSOrderedSame, NSOrderedDescending }; 2, initialize和load执行几次 objective c中有各种运行时, 每个类都有+ (void)initialize, 这个方法每个类只调用一次,但是: 如果它的子类没有自定义这个方法的话,它会代替子类被调用一次哦。 initialize 有可能被调用多次哦 一些一次性初始化的方法可以用这个方法来做。比如用来做程序appDelegate全局的初始化。 比如,单例 static Manager +theManager = nil; + (void) initialize { if (self == [Manager class]) { theManager = [[Manager alloc] init]; } } + (Manager *)sharedObj { return theManager; } 补充一下:今天才知道还有个+(void)load方法,据说load方法在

软件测试招聘要求汇总(苏州)

北城以北 提交于 2019-12-05 03:57:28
一、测试高级工程(15K-25K) 岗位职责: 1. 负责PC端、微服务应用的各类测试工作保证产品质量 2. 根据产品需求和设计文档,编写测试计划、测试用例 3. 根据需求完成测试环境的搭建和维护工作 4. 执行测试并确认測试结果、缺陷追踪提交测试报告 5. 参与自动化脚本编写,尝试新方法、新工具提高测试效率 岗位要求: 1. 至少5年以上测试经验,有自动化测试经优先,熟练掌握shell、 python等脚本语言,有专研新技术的偏好 2. 熟悉软件测试流程和规范,熟悉相关测试工具和管理工具(熟悉tapd优先) 3. 熟练使用SQL熟悉至少一种常见数据库具备一定的日志分析能力 4. 熟悉测试基本理论、包括黑盒、白盒测试技术 5. 熟悉功能测试和性能测试方法,并能根据目特点,设计测试策略和测试方案 6. 测试运维技术,熟悉 Jenkins、 docker、Tomcat、 maven、git等自动化集成工具。掌握些开源自动化部署集成平台优先 7. 善于与人沟通,为客户部门技术支持 二、高级测试工程师15-20K 职位描述: 1. 移动APP测试相关:功能测试,接口测试,界面自动化测试 2. 移动APP性能测试 3. 与项目相关人员就项目进度和问题进行沟通 4. 与优秀的工程师合作设计并推动测试工具与流程实现,以提高工程效率 5. 在核心技术团队中参与开发并构建接口、界面自动化框架

移动前端开发经验小结

折月煮酒 提交于 2019-12-04 15:58:35
一、概要 本文档针对移动前端开发,包括 Hybrid 里面的web页面,非 Native 应用。 二、适用 所有经验适用于:iOS6.0+, Android4.0+ 三、小结 <1>css伪类:active 如果你想使用元素的伪类来实现 按下激活 状态,那么你需要知道以下问题: iOS上的几乎任何浏览器,定义元素的伪类 :active 都是无效; Android上,Android Browser 和 Chrome 都支持伪类 :active ,其它第三方浏览器有部分不支持; 定义了 :active 并且当前浏览器环境支持,当手指在滚动或者无意间的划过时,:active 状态都会被激活; 为了规避上述所有的问题,如果需要 按下激活 状态,推荐使用 js 新增一个 className <2>清除输入框内阴影 iOS上的几乎任何浏览器输入框(input, textarea)默认有内部阴影,但无法使用 box-shadow 来清除,如果不需要阴影,可以这样关闭: input, textarea { /* 方法1: 去掉边框 */ border: 0; /* 方法2: 边框色透明 */ border-color: transparent; /* 方法3: 重置输入框默认外观 */ -webkit-appearance: none; appearance: none; } <3>圆角Bug

大众点评点餐小程序开发经验 - 概述

给你一囗甜甜゛ 提交于 2019-12-03 15:00:23
作者介绍:周中坚,美团点评工程师,4年 Web 前端开发经验,主要负责过会员卡、外卖、预订、商家平台等业务的前端开发,现在是美团点评点餐团队的一员。 如果你看过《 张小龙首次全面阐述小程序 》这篇文章,一定会对这句话有印象:"比如我们到一个餐馆,我们可能想排队或者说点一下菜,我们并不需要去下载这个餐馆的应用程序,我们只需要在餐馆扫一下它的二维码,然后就启动了这个餐馆的小程序,我们可以立即在小程序里排队或者点餐。" 没错,我们就是做张小龙在演讲时提到的"点餐"的大众点评点餐团队。我们团队在去年年底开始考虑微信小程序平台,经过快速而慎重的前期调研和讨论,紧张的开发测试,在微信同事的帮助下,"大众点评点餐"小程序于2017年1月上线。 如果你对小程序感兴趣,不妨关注一下这个专栏,我们计划在两个月内推出7篇关于小程序的专栏文章。小程序的这一系列文章是我们前端团队做小程序时积累的经验,里面不仅有小程序的原理,还有我们开发过程中遇到的问题和解决办法。 如果你对前端感兴趣,也不妨关注一下这个专栏,因为小程序只是我们团队很小的一部分产出,我们会持续创作,将我们的经验和大家分享。 功能简介 大众点评点餐小程序是一个工具,本着方便好用的初衷,我们设计的第一版的「大众点评点餐」小程序交互流程非常简单,用户可以在小程序中完成选择菜品,确认下单,追踪订单状态这个完整的点餐流程。 菜单页 购物车页 订单详情页

MySql开发经验

≡放荡痞女 提交于 2019-12-03 10:29:12
1、wait_timeout   默认288800秒(8小时)。jdbc连接池maxWait或者maxldelTime这两个参数要小于这个值,否则,当你的连接长时间没和数据库交互,服务器早就把你的连接断开了,而你的连接池还认为是有效连接,除非你设置testOnBorrow或者设置testOnReturn设置为true,这样当连接每次从连接池中取出或者放回的时候检查一下连接是否有效,不过这样会牺牲一点性能。 2、再惊喜结果集合并(union或union all)时,如不需要进行结果去重,则必须使用union all,而不能使用union ;且尽量减少进行数据集去重。 3、用in代替or。sql语句中in包含的值不应过多,应少于300个;in是范围查找,mysql内部会对in的列表值进行排序后查找,比or效率更高。 4、禁止进行字段数据类型的隐式转换,所有转换必须进行明确的数据类型转换;隐式转换会导致字段上的索引失效,最常见的隐式类型转换常见于时间类型与字符串类型之间,建议所有时间类型字段在myBatis中均以时间类型传入,或者以字符串传入然后通过时间函数转换字符串为合法的时间格式,如下: select name from table where create = DATE_FORMATE('2010010101:02:03','%Y-%m-%d %H:%i:%s'); 5

入门chrome插件开发教程和经验总结,一篇就搞掂!

守給你的承諾、 提交于 2019-12-03 01:35:00
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接: https://blog.csdn.net/weixin_44244857/article/details/85232668 前言 关于chrome extension的开发经验总结或说明文档等资料很多,很多人在写,然而,我也是一员。但是,也许这篇文章,可能给你一些不一样的感受。 这里介绍的是80%你要开发扩展会碰到的问题 前面部分大多数是一些基础介绍,和别人的资料大同小异,但是用的是通俗的语言或者我自己理解来描述的,不是拷贝官方的描述,不然的话,你干脆看官方文档就好啦,干嘛还来我这里折腾对吧,也许这些通俗的描述,更方便你理解(当然不排除也会有官方的话语) 后面部分多为一些我在项目中总结的方法,这部分就是在别人的资料可能看不到的地方了,当然,这些方法也许不通用,因为毕竟是基于我项目里的,但是尽量总结一套方法出来。 废话不多说,咱们开始吧… 目录 WHAT 最基本组成 manifest.json background script content script popup 基础的通信机制 content script与background的通信 popup与background的通信 popup与content script的通信 插件iframe网站与插入网页的通信

程序员简历应该怎么写?

匿名 (未验证) 提交于 2019-12-03 00:34:01
说到程序员简历,这两个月,我看过不下 10,000份简历。。。 答主不是HR,也不是技术负责人,但是在网站的运营工作中,每天最开心的事情就是研究候选人的简历了~~ 这些人中,有BAT的资深大牛程序员,也有90后程序员小鲜肉;有人到中年的程序员渴望去创业公司突破瓶颈,也有身在硅谷的程序员自降薪水寻求回国机会。。。 那么问题来了,为什么看上去差不多的技术和资历,有人可以一个月收到二三十个offer,有人只有寥寥几个? 答案与简历相关。虽然技术有高有低、资历有深有浅,个人客观情况在短时间无法改变(经历造假可鄙),但是,如何将它们呈现在简历中是有技巧的。 回答题主的问题「程序员简历应该怎么写」?我认为, 程序员就应该拿技术说话,「技术总结」是一份程序员简历的重中之重。 除了大神和大牛,普通的程序员如果能在叙述中中体现自己的风格,在技术总结中展示鲜明的个人形象,会更吸引公司的注意,拿到更多的面试邀请。 技术总结的风格多种多样,举几个栗子: (这些栗子都是答主随手摘的,非真实!!!请轻拍~) 最普通的技术总结 资历深厚长篇大论型 牛人极简型 硅谷Geek风 卖萌型 小结: 1、尽量避免主观表述,少一点语义模糊的形容词, 除非是大公司大牛,已经有成果撑腰,否则慎用「熟悉… …」、「使用过… …」 2、多一点表意清楚,语气肯定的数量词、名词、成果描述。 一定要将自己的优势和期望明晰地表达出来

高级java开发工程师 VC

匿名 (未验证) 提交于 2019-12-02 21:53:52
点击打开链接 岗位职责: 1. 主要负责公司 java 服务器端项目开发 ; 2. 根据需求进行需求分析和开发设计 , 按期完成项目需求 , 确保项目进度与质量; 3 . 具有责任心,善于学习沟通 . 任职要求: 1 、计算机以及计算机相关专业本科生 , 有 5~10 年的开发经验, java 基础扎实 , 拥有良好编码习惯 , 技术学习、业务理解和逻辑思维能力强; 2 、优秀的分析问题,解决问题能力,乐于解决具有挑战性的问题 ; 3 、精通算法、数据结构、多线程编程、 NIO 、网络编程 ; 4 、熟练使用常见的开源框架 , 如 :spring mvc 、 spring boot 、 spring cloud 、 mybatis 、 dubbo 等 , 熟悉实现原理; 5 、掌握常用加密算法和网络安全知识 ; 6 、掌握分布式开发 , 消息队列 , 分布式缓存 , 熟练使用 sql 和优化,有大型分布式、高并发、高负载、高可用系统设计、开发和调优经验 ; 7 、 掌握常用的设计模式 , 并能够熟练的运用;能够制定开发规范 , 抽 象基础业务开发组件 , 重构旧的业务系统 ; 8 、 理解区块链原理 , 了解现存开源区块链框架及解决方案,有相关的经验优先考虑录用。 转载请标明出处: 高级java开发工程师 VC 文章来源: 高级java开发工程师 VC