文本内容:
凯迈科技工程师面试评分表答案IOS
一、技术基本要求I、常用的IOS开发语言和开发工具有哪些?是否了解苹果最新推出的开发语言?(全部正确打4)答开发语言Objective-C;开发工具Xcode;最新开发语言Swift,速度更快,使用起来更加容易
2、苹果目前有哪些IOS系统的硬件产品,他们的分辨率有哪些,如何进行多分辨率适配?(分辨率回答3个以上知道自适应,打4)答iPhone4(320X480);iPhone4s(640X960);iPhone5/5s/5c(1136X640);iPad2(1024X768);iPad3(2048X1536);ipad minil(1024X768);ipad mini2(2048X1536);iphone与IPad独立开发,独立上架,不需要互相适应;IPHONE4/5之间需要进行自适应,如自动缩放子视图、调整相对大小等方法
3、开发一个IOS应用的流程是什么?(回答3个以上打4)答A、业务逻辑的分析和实现技术的准备;B、编写相应模块的设计和开发文档,预估开发时间;C、按时按量完成具有高质量和规范性的编码工作;D、自行对出现的BUG进行内部测试和修改;E、撰写相应的软件使用说明文档、向部门领导提交设计和开发文档、提交接口文档和算法文档、提交具有清晰备注的源代码F、开发结束后,根据项目需要,不定期对客户端软件的进行维护及更新;
4、IOS
6、7系统的区别?(全部正确打N)答、主要是视觉差异,I0S6是拟物化设计,I0S7是扁平多彩渐变风格
5、苹果的上架流程是怎样的,遇到哪些常见的问题会无法通过审核?(上架流程大致正确且无法通过审核正确2个以上,打4)答上架流程A、苹果雪豹以上的操作系统,B、开发者账号注册审批1-2周(公司已有账号忽略),C、向应用商店提交产品,D、苹果人工审批1-2周,邮件告知审批不通过,修改后重新审批1-2周;无法通过审核的原因A、产品稳定性差,容易崩溃,B、APPstore上重复性高的小应用,C、违反苹果的设计原则,D、侵犯苹果公司或其他公司的版权,E、黄、赌、毒、暴力、诽谤、低俗、种族歧视,F、使用第三方支付等原因
6、简单介绍IOS常用的数据库?阐述mysql、SqlServer Oracle数据库的区别是什么?(全部正确打N)答A、SQLite是一个轻量级的数据库,完全使用C语言编写,使用简单方便它是一个嵌入到程序进程的数据库,和其他一些数据库(MySQL,MS SQL)不同,它没有独立的进程B、mysql用于轻量级数据开发,SqlServer用于中型数据库且仅用于window系统,Oracle用于大型数据库,他们之间可以互相转换
7、在IOS应用开发中一般什么原因会造成软件闪退?(回答3个以上打Y)答A、内存溢出;B、数据异常时程序没有做预防机制;C、重用问题;D、空指针;E、数组访问越界;F、配置文件读取异常等
8、如何进行IOS应用产品的性能优化?(回答5个以上打7)答【初级】用ARC管理内存、在正确的地方使用reuseidentifier、尽可能使Views透明、避免庞大的XIB、不要block主线程、在Image Views中调整图片大小、阳奉正确的Col lection、打开gzip压缩;【中级】重用和延迟加载Views;注意Cache;权衡渲染方法;姐I内存警告;重用大开销的对象、使用SpriteSheets、避免反复处理数龈正确地设定Background Images、选择正确的数®格式、减少使Web特性、设定ShadowPath、优化你的Table View、选择正确的数据存储选项【高级】力腱启动时间、使用Autorelease Pooh选择是隧存图片、尽量避免日期格式转换
9、开发中Xml、JsonHTTP协议、Socket技术分别用在哪些地方?(大部分回答正确打N)答大部分通信数据格式是使用JSON,和XML相比,JSON数据具有传输数据少,易于使用等特点而XML则通常作为配置文件出现在各类应用中,X虬有良好的易于人类阅读的特点,如果你的应用中要使用配置,解析XML是不可缺少的步骤HTTP一般为单向传输,socket是双向传输,及时通讯用socket,实时性要求不高用HTTPo
10、如何规范的编写代码及文档?(回答3个以上打N)答A、清晰的注释;B、良好的命名规范;C、每条语句单独成行;D、不同层次的语句要加缩进;E、循环代码中即使只有一行代码,也要加大括号;F、及时清理无用代码,保持代码整洁
11、面向对象的程序设计方法中,继承、多态、封装是什么意思,用面向对象的方法有什么好处?(大部分回答正确打Y)答【继承工指继承是指一个对象从另一个对象中获得属性的过程;【多态工指一个方法只能有一个名称,但可以有许多形态;【封装工指把代码和代码所操作的数据捆绑在一起,使这两者不受外界干扰和误用的机制【好处】易维护、质量高、效率高、易扩展
12、常用的版本控制软件有哪些?使用版本控制软件有什么好处?(大概意思回答正确打4)答版本控制软件是一种记录若干文件内容变化,以便将来查阅特定版本修订情况的系统常用的有CVN、SVN和GIT;有了它你就可以将某个文件回溯到之前的状态,甚至将整个项目都回退到过去某个时间点的状态你可以比较文件的变化细节,查出是谁最后修改了什么地方从而造成某些怪异问题,又是谁在何时报告了某个功能缺陷
二、技术加分要求(不展开询问)
1、是否会使用Linux操作系统?(是打N;不是打x)
2、是否具备SDK反编译及项目修改经验?(是打4;不是打*)
3、能否使用Html5进行开发?(是打«;不是打x)
4、是否自学掌握别的开发语言或技术?如。
个人认证
优秀文档
获得点赞 0