来自莫斯科Mobius 2019的hh.ru展台的Android测验分析

12月7日至8日,面向移动开发者Mobius 2019 Moscow的会议宣告失败。 阅读报告,为来宾提供食物,抽奖,下面是对hh.ru展位的三个测验最有趣的问题的分析。





问题1
智能手机中的光传感器可测量多少物理量?


答案

套房


解说

响应统计





问题2
JMM解决的主要问题


答案

在多线程程序中,特定读取将读取什么?


解说

不幸的是,JMM没有回答“如何正确编写多线程程序”问题,但是它为我们提供了有关如何设计Java内存模型的信息,以便我们可以做出正确的决策。
“特定的写入将在多线程程序中写入什么内容?” 这不是正确的答案,因为作为程序员,我们通常对此条目的结果感兴趣。
“成为或不成为”是摘自莎士比亚著名独白《哈姆雷特》的摘录,他本来以为与多线程程序无关。
最后一个选项仍然是“特定读取将在多线程程序中读取的内容”,这是正确的答案。
关于JMM的主题,我们建议您查看Alexei Shipilev的报告“ Pragmatic JMM”


响应统计





问题3
下一个代码块的结果将是...


Observable.create<Int> { emitter -> try { throw Exception("whoa") } finally { emitter.onNext(1) } }.subscribe { print("onNext $it + ") } 


答案

onNext 1 + OnErrorNotImplementedException


解说

在create函数内部,我们调用try-finally块,在该块中引发Exception(“ whoa”)异常。 由于没有catch块,因此异常必须中断该链的执行,并将控制权传递给Observer接口的onError处理程序,该接口应已捕获到Exception(“ whoa”)。 但是有两个要点。
首先:我们有一个必须执行的finally块。 在其中,我们将字符串“ onNext 1”发送到onNext处理程序,该处理程序在控制台中显示此字符串并添加“ +”字符。
第二个:onError处理程序未在订阅函数中定义,因此RxJava引发异常“ io.reactivex.exceptions.OnErrorNotImplementedException”,并且还将其输出到控制台。 因此,我们得到字符串“ onNext 1 + OnErrorNotImplementedException”。


响应统计





问题4
下面列出的哪个android版本是developer.android.com使用最少的版本?


答案

棒棒糖5.0


解说

https://developer.android.com/about/dashboards
2019年12月10日的屏幕截图


响应统计





问题5
哪个库名称中实际上没有2?


答案

房间2


解说

Room的最新版本是2.2.2。 但是库名中没有2。
摄影机2
ViewPager2
改造2


响应统计





问题6
Kotlin中的表达式结果将是哪种类型?


 mutableListOf<Any>() + mutableListOf() 


答案

列出<任何>


解说

答案并不明显,乍一看结果是MutableList是合乎逻辑的。 我们自己最近才注意到Kotlin标准库的这种功能。 我们了解为什么会这样。
在Kotlin中,您可以使用a + b语法对集合执行二进制操作,该语法转换为a.plus(b) 。 来自Kotlin来源的MutableList的plus方法:


 public operator fun <T> Collection<T>.plus(elements: Array<out T>): List<T> { .. } 

也就是说,返回类型为列表<T>,在我们的示例中为列表<Any>。 在这种情况下,第二个mutableListOf的类型是可选的; Kotlin本身将根据加法的第一个参数推断类型。


响应统计





问题7
不存在用于UI测试Android应用程序的框架?


答案

木子


解说

Espresso是Google的图书馆。 它于2013年发布。它的语法冗长,Kakao自愿解决了这个问题
Kakao提供了使用Kotlin DSL和Espresso编写UI的便捷语法,允许您使用Page Object模式。
Kaspresso走得更远,解决了闪烁测试,登录,使用adb,与Android OS配合使用,创建屏幕截图的问题。 Kaspresso的完整评论文章
木子-不存在


响应统计





问题8
如图所示,PorterDuff.Mode是哪种混合模式?


答案

来源超过


解说

PorterDuff.Mode以Thomas Porter和Tom Duff的名字命名,他们在1984年撰写了文章“合成数字图像” ,其中包括12种将一个图像叠加到另一个图像上的操作。 PorterDuff.Mode仅允许您获取这12个操作的结果。


响应统计





问题9
标准的DatePickerDialog在Android 10上是什么样的?


答案

2


解说

1个来自Android 4.4
2来自Android 6.0及更高版本
Android 5.0的3
4-俄罗斯办公室最喜欢的家具和新年梦想礼物-挂历


响应统计





问题10
与手机制造商合作发布的首款Google Android智能手机


答案

连结一


解说

Google Nexus是Google和制造合作伙伴提供的一系列智能手机。
Nexus G1不存在,但可能会与首款android智能手机T-Mobile G1或HTC Dream混淆。
Nexus One还生产了HTC。 智能手机运行的是Android 2.1。
Galaxy Nexus是 Google和三星共同开发第三款Nexus系列智能手机。
Nexus 11专业版不存在。


响应统计





问题11
根据文档,如何在Android日志记录系统(Log.wtf())中解密缩写wtf?


答案

多么可怕的失败!


解说

文档log.wtf
摔跤联合会 -系列“南方公园”第13季的第10集。
Wtf也是Internet lang语的缩写,其解码与habr规则相反,但是您已经完全了解所有内容。


响应统计





问题12
什么是Appcompat的最新版本?


答案

1.1.0


解说

随着AndroidX的发布 Google共享了支持库并添加了一个新的androidx程序包,从1开始计数。这意味着Appcompat的最新版本现在位于androidx.appcompat:appcompat并具有最新的版本1.1.0。
com.android.support:appcompat-v7程序包中,该库仅更新为版本28.0.0。 但是版本29.0.0 RC和29.0.0从未问世。


响应统计





问题13
这就是Google Android团队所称的Android徽标。


答案

Bugdroid



响应统计





问题14
求职者的hh申请中没有什么部分?


答案

自动搜寻


解说

在2018年底,对该应用程序进行了大规模重新设计。 并且“自动搜索”已重命名为“搜索订阅”。 也就是说,目前没有名称为“自动搜索”的部分。


响应统计





问题15
Android符号是绿色的机器人。 徽标的作者被认为是Irina Block。 是什么启发了她?


答案

厕所门上的人的形象


解说

“最后,她从一个明显的人类资源中汲取了灵感:经常出现在厕所门上的普遍男女象形图。” 纽约时报


响应统计



测验分析由我们的开发人员Georgy Ryabykh georgyR完成

Source: https://habr.com/ru/post/zh-CN480950/


All Articles