公司地址:沙河口区黄河路620号电梯楼层14层D单元(时间已经很久了,我也无法回忆起具体的地址,约摸着讲)
ps:这家公司看起来还是很正宗的,去的时候是群面,因为作者本人嘴皮子功夫很是了得,所以在第一轮面试直接杀出来了,四天之后开始第二轮面试,面的是技术,面试官是一个穿运动服的男人(公司所有人都是正装,唯独这个人这么休闲),三十岁左右,看样子应该是后台,或者是Web端的工程师,技术都问不到点子上。
问题一:之前公司的项目框架是由你来搭建的,你是怎么做的。
答:之前公司的项目框架是严格按照MVC来进行框架搭建的,我的框架搭建思路是按照UI界面来进行的,但是之前在北京的时候和业内的朋友讨论过这个事情,一个良好的、有利于后期维护的工程,在项目初期应该按照接口的思路来进行搭建,更有利于OOP编程。
ps:这算啥问题,面了这么多家,从来没有这么问过,也是奇葩的很了。
问题二:之前公司项目是怎么做本地缓存的。
答:我们是用FMDB来实现本地缓存的,FMDB是iOS平台的SQLite数据库框架,FMDB以OC的方式封装了SQLite的C语言API,使用起来更加面向对象,省去了很多麻烦、冗余的C语言代码,对比苹果自带的Core Data框架,更加轻量级和灵活,提供了多线程安全的数据库操作方法,有效地防止数据混乱。
ps : 还捎带的问了一句关于Core Data 的事情,问我会不会,我说写过Demo,但是因为之前技术老大没有要求用这个重量级的存储机制,所以项目里并没有用Core Data。
问题三:简述一下Core Data 和FMDB的区别。
答:Core Data 是iOS5.0推出的综合型数据库,运用了对象关系映射技术,(不行,作者我也是浅知拙见,能力有限,不足以回答这个问题,就算是现在的我也没法精准的回答,我会继续研究这个问题,如有大神看到,请不吝赐教)
问题四:你又没有做过复杂页面的交互。
答:做过,一个程序员必须有强大的逻辑来完成页面的交互工作,这是一个作为iOS开发工程师最基本的技能,如果连这个都做不了还是直接回去种地吧。
我那会去面试的时候公司连UI设计图纸都没有,估计现在去的话,应该已经有成型的项目了,面试的时候应该也会有专业的技术人员来问,珍重。祝大家早日找到好工作,欢迎投稿。