iOS 程序員面試筆試寶典

蔣信厚

  • 出版商: 機械工業
  • 出版日期: 2018-10-31
  • 售價: $414
  • 貴賓價: 9.5$393
  • 語言: 簡體中文
  • 裝訂: 平裝-文庫
  • ISBN: 7111609271
  • ISBN-13: 9787111609278
  • 相關分類: Apple Developer面試技巧
  • 立即出貨 (庫存 < 4)

買這商品的人也買了...

商品描述

本書針對當前各大IT企業面試筆試中的特性與側重點,精心挑選了近3年多家典型IT企業的iOS面試筆試真題,由於這些企業涉及業務包括系統軟件、搜索引擎、電子商務、手機軟件、安全關鍵軟件等領域,所以面試筆試真題非常具有代表性與參考性。
同時,本書對這些題目進行了合理的劃分與歸類,並進行了庖丁解牛式的分析與講解,針對試題中涉及的部分重點、難點問題,本書都做了適當地擴展與延伸,力求對知識點的講解清晰而不紊亂,全面而不囉唆。
不僅如此,本書除了對iOS的基礎語言知識進行深度剖析以外,還針對數據庫、設計模式等相關知識的面試筆試做了非常詳細的介紹。
讀者學習本書能夠獲取到求職的知識,更有針對性地進行求職準備,終能夠收穫一份滿意的工作。

目錄大綱

前言

面試筆試經驗技巧篇

經驗技巧1如何巧妙地回答面試官的問題2 
經驗技巧2如何回答技術性問題3 
經驗技巧3如何回答非技術性問題5 
經驗技巧4如何回答快速估算類問題5 
經驗技巧5如何回答算法設計問題6 
經驗技巧6如何回答系統設計題9 
經驗技巧7如何解決求職中的時間衝突問題11 
經驗技巧8如果面試問題曾經遇見過,是否要告知面試官12 
經驗技巧9被企業拒絕後是否可以再申請12 
經驗技巧10如何應對自己不會回答的問題13 
經驗技巧11如何應對面試官的“激將法”語言13 
經驗技巧12如何處理與面試官持不同觀點這個問題14 
經驗技巧13什麼是職場暗語15 
經驗技巧14名企iOS工程師行業訪談錄18 
經驗技巧15 iOS開發的前景如何20 
經驗技巧16如何選擇iOS開發語言20 
經驗技巧17 React Native和Weex重要嗎21 
經驗技巧18企業對iOS開發者的要求有哪些22 
經驗技巧19 iOS開發招聘有哪些 要求24 
經驗技巧20 iOS技術崗位面試精選27
 
面試筆試技術攻克篇

第1章iOS開發基礎概念35 
1.1概念35 
1.1.1什麼是“應用瘦身”35
1.1.2什麼是Cocoa和Cocoa Touch36 
1.1.3什麼是謂詞36 
1.1.4什麼是響應者鏈38 
1.1.5什麼是“懶加載”39 
1.1.6類工廠方法是什麼40 
1.1.7 App ID和Bundle ID有什麼不同40 
1.1.8什麼是糖衣語法40 
1.2其他43 
1.2.1什麼是SpriteKit和SceneKit43 
1.2.2 iOS應用的生命週期回調方法主要有哪些43 
1.2.3 iOS應用有哪幾種不同狀態?分別表示什麼含義44 
1.2.4 UIButton到NSObject之間的繼承關係是怎樣的45 
1.2.5 Git和SVN有什麼異同45 

第2章Objective-C語言基礎47 
2.1 Objective-C語言基礎特性47 
2.1.1 Objective-C的優缺點有哪些47 
2.1.2相對於Objective-C而言,Swift有什麼新特性48 
2.1.3 Foundation對象與Core Foundation對像有什麼區別52 
2.1.4 Objective-C中的類方法和實例方法有什麼本質區別和聯繫53 
2.1.5子類初始化時為什麼要調用self = [super init]54 
2.1.6 #import與#include以及#import<>與#import" "各有什麼區別54
2.1.7 Objective-C中@class代表什麼54 
2.1.8 Objective-C中有二維數組嗎?如何實現55 
2.1.9在Objective-C的數組或字典中,添加nil對象會有什麼問題55 
2.1.10 Objective-C中的可變和不可變類型是什麼56 
2.2數據類型57 
2.2.1在Objective -C中,常量有哪幾種類型57 
2.2.2 Objective-C中數據類型的限定詞有哪些58 
2.2.3 Objective-C中的NSInteger類型和C語言中的int類型有什麼區別59 
2.2.4 NSNumber與NSInteger有什麼區別59 
2.3運算符和表達式60 
2.3.1在Objective-C中,前置運算和後置運算有什麼區別60 
2.3.2整型值和浮點值在賦值操作中如何相互轉換61 

第3章Objective-C語言的高級特性63 
3.1 Objective-C中的屬性63 
3.2 Objective-C語言的多態性72 
3.2.1什麼叫多態72 
3.2.2重載、重寫和隱藏的區別是什麼74 
3.2.3 Objective-C和Swift中有重載嗎74 
3.3 Objective-C語言的動態性75 
3.3.1什麼是編譯時與運行時79
3.3.2所謂的Objective-C是動態運行時語言是什麼意思79 
3.3.3 Objective-C中的id類型指的是什麼?id、nil代表什麼82 
3.3.4一般的方法method和Objective-C中的選擇器selector有什麼區別83 
3.3.5什麼時候會報unrecognized selector錯誤83 
3.3.6什麼是目標-動作機制83 
3.3.7在runtime中類與對像如何表示84 
3.3.8如何打印一個類中所有的實例變量85 
3.3.9如何使用runtime動態添加一個類87 
3.3.10如何在Category中增加屬性(關聯對象)88 
3.3.11如何理解消息傳遞機制89 
3.3.12如何理解消息轉發機制91 
3.3.13 isKindOfClass和isMemberOfClass有什麼區別與聯繫94 
3.3.14 Objective-C有私有方法嗎?有私有變量嗎94 
3.4 Objective-C中的類別與擴展機制96 
3.4.1類別與其他特性(類擴展和繼承)有什麼區別97 
3.4.2 Objective-C中類別特性的作用及其局限性是什麼97 
3.4.3類別和類擴展如何使用98 
3.4.4為什麼類別只能添加擴展方法而不能添加屬性變量101 
3.5 Method Swizzling魔法102
3.5.1 Method Swizzling的應用場景有哪些102 
3.5.2如何使用runtime進行方法交換105 
3.6其他問題107 
3.6.1 C和Objective-C如何混用107 
3.6.2 Swift和Objective-C如何互調107 
3.6. 3 Objective-C對象可以被copy的條件是什麼109 
3.6.4 Objective-C等同性中的字符串相等如何判斷110 
3.6.5一個Objective-C對像如何進行內存佈局(考慮有父類的情況)111

第4章Cocoa Touch框架相關112 
4.1 UITableView112 
4.1.1 UITableViewCell的複用原理是怎麼樣的112 
4.1.2能否在一個視圖控制器中嵌入兩個tableView控制器114 
4.1.3一個tableView是否可以關聯兩個不同的datasource數據源115 
4.1.4如何對UITableView的滾動加載進行優化,防止卡頓116 
4.2 UI視圖117 
4.2.1 viewDidLoad和viewDidAppear的區別是什麼117 
4.2.2 frame和bounds有什麼區別1