美文网首页
面试总结

面试总结

作者: 无神 | 来源:发表于2018-03-18 10:01 被阅读28次

    这两天面试了几家公司,现对面试中问到的题进行一下总结。

    1.开发中使用过哪些加密算法?

    到目前为止开发中使用过的加密算法,后来想想其实也就那么几个。

    1. AES
    2. DES
    3. 3DES
    4. RSA

    加密其实我们只是针对一些敏感数据,密码之类的进行加密。因为加密是耗时的。

    2.给你一个通讯录包含三个字段(姓名、电话号、聊天记录)你能用它来做什么?

    在我看来,一个通讯录就是一个数据库,我能想到的就是对它进行增删改查根据聊天记录,分析出主人的交际关系,从事的行业

    3.给你一张很大的图片你怎么传输?

    一张大图,一次肯定是传不完的。首先应该对这张图片进行压缩其次进行分片传输
    分片传输又分为并发传输串行传输。并发传输需要加入标记,保证数据传输以后的顺序,并发传输速度快。串行传输能直接保证数据的有序性,但是传输速度慢。

    4.使用多线程做过什么?

    对于多线程的使用,我印象最深的就是发布作品的时候,多张图片并发上传,而且上传以后要保证图片的显示是有序的。我使用的是GCDdispatch_group_asyncdispatch_get_global_queue组合的方式,在所有的图片上传完成以后,再在dispatch_group_notify的block中,对发布作品进行后续的操作。

    5.这个是现场出题,拿出他们公司的App,让你体验一下,问你如何进行优化?

    拿过面试官手中的手机,点击了他们App的一个模块,发现页面加载很慢。加载完了以后发现是一个列,面试官问我如何进行优化。我根据以往的经验,进行了如下的优化。

    1. 开启AFNetWorkingGZip压缩面试官说这个他们已经做了
    2. 进行数据缓存。但是面试官说他们这个列表的更新是不定的,有可能某条数据在不确定的时间需要进行更新。数据缓存的方案也失败了。
    3. 分页的pagesize改小一点。这一条得到面试官的认可。因为我操作的时候发现他们每次请求的数据条数有点多,超过20条了。其实分页的pagesize应该适中,每次返回的数据条数够大屏手机的一屏就可以了。这样的话,网络的响应速度就能提升一些了。
    4. 使用Webp对加载的图片进行压缩。这是我后来想到的,这样也能减少数据量,提高响应速度。提升App整体的用户体验。

    通讯录那题是个开发性问题,有什么不同的见解的欢迎留言讨论。

    相关文章

      网友评论

          本文标题:面试总结

          本文链接:https://www.haomeiwen.com/subject/fifeqftx.html