便打告,敝司 iOS 研工程位有一位置,要求和 隔壁 topic 差不多,只是薪倍而且可程。
感的已都是基得不能再基的了,只有了考察面者的搜索和能力稍有些偏。因目改用 Swift 用不上些了所以便出 V2EX 社的各位考下意。目主要考察以下:
下面是面:
BCLayoutAxis
with following values:For debugging, we need string representations ("none", "horizontal", "vertical", "all") instead of original integer values. Use a graceful approach to represent them.
Declare a constant named kBCMyConstant
of NSString
type with value of myConstantValue
, public and private.
@interface MyObject : NSObject @property (nonatomic, assign, readonly) BOOL favorited; @end
Given an NSArray
instance containing several MyObject
objects, put the objects of which favorited
property are YES
into a new NSArray
instance.
NSArray *myArray = @[@"a", @"b", @"c", @"a", @"d"];
Create a new NSArray
instance from myArray
containing @"a"
, @"b"
, @"c"
, @"d"
only.
NSDate
instance is in this month- (void)myMethod; - (void)bc_myMethod;
@property (nonatomic, copy) NSString *myProperty;
Stack, framework, address, class, function, line.
1 karnaugh 2016-07-01 12:58:31 +08:00 恩。。。然而看不懂英文啊。。。 |
![]() | 2 PrideChung 2016-07-01 13:23:06 +08:00 第一题还真是懵逼了,平时都用 snippet 自动展开 |
![]() | 3 ichanne 2016-07-01 13:27:46 +08:00 via iPhone 手写真的有点难度,可以用 Xcode 就没那么难了 |
4 a412739861 2016-07-01 13:33:16 +08:00 Xcode 里面现找呗…… 感觉如果是手写,全跪,如果是开着 Xcode 连着网,还是基本能做些的,就是有些其实根本不知道原有。 |
5 a412739861 2016-07-01 13:33:44 +08:00 @a412739861 缘由……该死的输入法 |
![]() | 6 Elethom OP |
![]() | 7 Elethom OP @PrideChung 第一是考察不把 None 置零,不用 mask 。 |
![]() | 8 XDDD 2016-07-01 13:41:22 +08:00 @Elethom NSOption 的话根本没有 none 和 all 吧, none 用 0 , all 用 horizontal | vertical |
9 a412739861 2016-07-01 13:42:36 +08:00 ![]() 那 1 的话, UIView 的 autosizingMask 就有吧。 2 的话, Masonry 有吧, NSLayoutConstraint+MASDebugAdditions.h 10.也有现成的[array valueForKeyPath:@"@unionOfArrays.self"],么不是 Runtime 虽然不理解,但是 swizzle 可以照着 AFNetworking 抄吧 感觉大部分还行吧,开源库里有挺多用到了的,当然我不一定都能写出来,比如最后一个…… |
11 a412739861 2016-07-01 13:45:39 +08:00 @a412739861 10 的 order 要稍微加一点,这个只是删除重复,之前做到过。 all 我觉得是可以用 horizontal | vertical 的,不过 NSOption 里面不能这么写的吧。 |
![]() | 12 loveuqian 2016-07-01 13:57:38 +08:00 ![]() 好难。。。 我们还是来聊聊 UI 吧 |
![]() | 13 iyeatse 2016-07-01 14:07:59 +08:00 除了 framework 需要 google 以外其它都可以手写,这样的大概是个什么价位= =? |
![]() | 14 kera0a 2016-07-01 14:17:16 +08:00 不难吧, 一个正常的开发,应该在 XCODE 里答对上面所有题 - -。 |
![]() | 15 blackfire 2016-07-01 14:19:22 +08:00 via iPhone 没感觉有多为难………遇到这样的面试题我直接就转身走 |
![]() | 17 jeremaihloo 2016-07-01 14:32:13 +08:00 其实英语还好,就是繁体字为难我了,根本看不懂 |
![]() | 19 kideny 2016-07-01 15:32:18 +08:00 在台服 WOW 混了好多年的表示,繁体字什么的很简单。。。。比英语简单多了。 |
![]() | 20 Elethom OP @XDDD 考答案是: typedef NS_OPTIONS(NSUInteger, BCLayoutAxis) { BLayoutAxisNOne= 0, BCLayoutAxisHorizOntal= 1 << 0, BCLayoutAxisVertical = 1 << 1, BCLayoutAxisAll = (BCLayoutAxisHorizontal | BCLayoutAxisVertical), }; |
![]() | 21 Elethom OP ![]() @a412739861 首先,每都可以拓展呀。比如一 variadic method ,分怎理有 nil termination 和有 nil termination 的情呢?或者 reverse 排序,不用 reverse object enumerator 呢?是只手排序? Filter array 不用 NSPredicate 呢?不用 KVC collection operators 呢?是只手 filter ? 其次,面也看你是否熟使用工具。是否 Xcode 一自定 snippet 都有、配色都用的默呢?不用 Alfred 呢?打 Alfred 後不自切到英文入法呢? Alfred 有有自定的 Stack Overflow 搜索指令呢? |
![]() | 22 Elethom OP @loveuqian 好呀,聊聊: * 有哪些要素影平衡?它的先是? * 有哪些可以用於情感的手段? * 你 affordance 的, Norman 引入界的 affordance 概念和 Gibson 提出的有哪些同? * 在中利用 distributed cognition 降低知成本有哪些要?怎合起使用? * 用一 app 例,它在 accessibility 上有哪些可改的空? * RTL 的 UI ,要做哪些特的理?有哪些地方不做特的理? * 做 user research 的手段有哪些?各有什缺? * 做用查卷提的技巧有哪些?有哪些要避免的提方式? * 摸式屏幕上的交互有哪些天生的缺陷?分怎弱它的影? |
![]() | 23 chmlai 2016-07-01 16:50:09 +08:00 taijiandanle |
![]() | 25 kidneyband 2016-07-01 17:11:27 +08:00 @Elethom 有点咄咄逼人了。 |
![]() | 27 Troevil 2016-07-01 17:17:03 +08:00 能联网 我也能做 , 哈哈 , 虽然不做 iOS |
28 muziki 2016-07-01 17:28:22 +08:00 看这个咄咄逼人的气势,港台来的? 繁体字混着英文看着好不舒服,要不就全英文,要不就中文,又不是那些专业名词都没有中文释义。 |
![]() | 29 vincentxue 2016-07-01 17:42:42 +08:00 确实很基础,让我来尝试回答一下。 |
![]() | 30 vincentxue 2016-07-01 18:04:27 +08:00 ![]() |
![]() | 31 Elethom OP se@vincentxue 不。 6 是可以直接起成「 @"a" @"b"」的,如果性能比在意 format 也量少用。 7 是指: https://en.wikipedia.org/wiki/Percent-encoding 有趣敝司看看? |
![]() | 32 Elethom OP @vincentxue 不。 6 是可以直接起成「 @"a" @"b"」的,如果性能比在意 format 也量少用。 7 是指: https://en.wikipedia.org/wiki/Percent-encoding 有趣敝司看看? |
![]() | 33 PrideChung 2016-07-01 19:12:38 +08:00 @Elethom 能用 Xcode 的话第一题就是送分啊,随便找个系统框架定义的 Options 拷过来改改就完了 |
![]() | 34 vincentxue 2016-07-01 20:03:45 +08:00 @Elethom 噢你说的那种我一般分行拼接的时候才这么写。原来 7 是说 URL encoding ,受教了。 另外我觉得第三题那种如果是对外的还是加上类名什么比较好,我一般只有在内部才会用 k 开头,外部都是类似于系统那样。估计你只是为了出题这样做吧。 我还是想问问 Runtime Section 中的第 3 题下面的注解是什么意思? 兴趣是有啊,然而我走不了。 我之前在论坛看过你们公司的招聘贴,也看到你对英文水平的解释,这一个我是不符合的。虽然我公司是中美两地的,每天都要读写英文邮件,然而要做到 [速度能和母一致,可以流作保不出不符合 native speakers 的法;的,能不用字幕完整地看懂 WWDC 、做日常交流不生解] 我自认为还是有差距的,我还常常要查字典,有时候要用翻译器。其他的倒是都符合。 其实我早就想找一个可以 Remote 的工作,不是我懒得去上班,而是患有 IBS 导致我时常腹部不适。然而我现在走不了,我公司所有的产品的 iOS 项目都是我一个人单挑,如果我走了,公司的运营会受很大的影响。而且招聘一个懂音视频流和底层处理的靠谱 iOS 比较难,就算招到了也没那么快上手,所以一时半会儿也走不了。 你们还处于天使轮,即使 double 了隔壁的薪资,可能还是不太够我目前的收入。在你们团队中我的价值没有那么重要,不值我现在的价钱。我有一定的经济压力,所以对薪资还是有硬性的要求。 很可惜就这么错失了一个 Remote 工作的面试机会。。。 |
![]() | 35 wezzard 2016-07-01 20:07:05 +08:00 那 public 和 private 不啊, C 言的概念是 extern 和 static ,具 pub 不 public 跟 .h 文件在建到 public header folder 是 project header folder 是 private header folder 有啊 (逃 |
36 edward9941 2016-07-01 20:39:11 +08:00 第三题我认为如果 extern 的话一定要加前缀,在.m 中如果不 extern 一定要写上 static ,实际上是一个 C 的知识,我司出现很多次其他业务线有同名的造成编译失败。 |
![]() | 37 wezzard 2016-07-01 20:44:01 +08:00 @vincentxue Runtime section 下的也是基本的 API 用哦 第一大街了,想不到年不 swizzle 的…… 第二: property_copyAttributeValue(property, "T") 然後解析得的字符串(返回值用完後要 free 掉是一陷阱 第三:在方法 [NSThread +callStackSymbols] 就行了 |
![]() | 38 vincentxue 2016-07-01 22:06:08 +08:00 via iPhone |
![]() | 39 green15 2016-07-01 22:31:40 +08:00 via Android 英语是个坑…… |
![]() | 40 wezzard 2016-07-01 22:54:17 +08:00 @vincentxue 哈哈,我看帖子看位了,上有一人不 runtime section 下的,我以是你的,就 @ 你然後了。 |
41 runner 2016-07-01 23:03:29 +08:00 很 cool 的试题 |
![]() | 42 so898 2016-07-01 23:22:37 +08:00 看了一眼题目表示一题都不会,好慌 然后看了一眼答案,原来都用过啊……看来看不懂的是英语…… 不过要是能用 xcode + stackoverflow 的话,解题应该不是啥问题 那个 constant 看着很有感想……嗯,还是 Swift 好 |
![]() | 43 so898 2016-07-01 23:27:08 +08:00 说起来,考了单例而不考 Delegate 、 Block 、 Notification 啥的,也没有考线程相关的内容,感觉整套考题语法内容偏多啊 没有 iOS 或者 Mac UIKit 相关有点测不出实战做 App 能力的感觉 有点光测了基础不够实用的感觉 大胆猜测一下,出题者应该是从 C/C++一步步转过来的,现在应该主要做 Frameworks 或者核心方法实现 |
44 enjoeq 2016-07-02 00:30:00 +08:00 不用 Google ,不用 Xcode ,我都能手动做出几道题,加上 Google 、 Xcode 和 StackOverflow 的话,我相信我能把全部都搞定,除了第 4 题看不懂题目之外,好吧,我是英语渣。 |
45 jamescheng 2016-07-02 00:56:28 +08:00 www.hackerrank.com 无聊的人可以去这个网站去做题...哈哈 |
![]() | 47 Elethom OP @vincentxue 一年超 400k ,好害。 qwq |
48 jukka 2016-07-02 08:51:21 +08:00 via iPhone 不用在意吐槽啦,这个是对你们自己负责,也是对面试者负责。 :) |
![]() | 49 vincentxue 2016-07-02 10:24:11 +08:00 via iPhone @Elethom 不是厉害的原因,拿命换的。如果你们不加班,那算下来时薪也差不多了。我经常要工作到至少晚上 10 点,忙的时候凌晨过后。当然都不是公司强制的,活太多时间太少。这也是我稍微有点不爽的地方,虽然我很爱写代码,但是没有学习的时间了。我又没别的爱好。等经济压力小的时候我还是要考虑考虑换工作了。 |
![]() | 50 Elethom OP @vincentxue 不加班。除了有程的同事早晚要接送孩子工作不同以外,都是 10:00-10:30 上班, 19:30 下班,中午午休一小。除了上偶看守著基本上 19:30 下班,不到 20:00 公司就看不到人了。 其你可以考一份不加班的工作再接外包,然工作短但安排能自由些。 |
![]() | 51 Elethom OP 不,午休是一半小。 |
![]() | 52 kepenj 2016-07-02 15:37:50 +08:00 第一反应打开了 Google 是什么鬼...看来板砖搬的有点久了(手动滑稽。。。 |
![]() | 53 Geoion 2016-07-03 02:29:11 +08:00 手不听使唤已经打开了 google |
![]() | 54 vincentxue 2016-07-03 03:57:39 +08:00 via iPhone @Elethom 我对外包实在是没兴趣,不喜欢不专业的人。很久很久以前接过一次外包,我就被恶心到了。可能是没遇到专业的,然而给我留下了不好的印象。而且拿着老板的薪水接外包貌似不太好,心里过不去。 我前天买了 iMac 5k ,今天下午就应该到货了。已经考虑跟公司申请远程工作,我认为应该是可以允许的。如果不允许就先辞职但一时也走不了,公司慢慢招人,我也慢慢找一个,不过薪水肯定是要降低了。目前市场看样子最多 30k 左右就封顶了,我自认为没那个自信要这个数。 |
![]() | 55 nevercry 2016-07-20 23:45:55 +08:00 |