iOS - 技术图谱

作者: Joh蜗牛 | 来源:发表于2019-02-18 15:44 被阅读1次

一.编程语言

  • Swift
  • Objective-C
  • C++/C
  • JavaScript

二.操作系统

  • Mac OSX
  • iOS
  • watchOS
  • tvOS
  • Linux常用命令

三.开发工具

  • IDE :

1)Xcode

2)AppCode

  • 调试工具:

1)Charles——是一款代理服务器,通过过将自己设置成系统(电脑或者浏览器)的网络访问代理服务器,然后截取请求和请求结果达到分析抓包的目的。

2)Wireshark——是一个网络封包分析软件。网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。

3)Reveal——UI调试神器,用来查看任意UI布局较方便。

4)Instruments—— 一个工具集,为我们提供了强大的程序性能分析及测试能力。常用到的几种:CPU 性能测试、图形性能测试、内存性能测试。

  • 插件:

1)Alcatraz—— 插件管理工具。

2)VVDocument—— 是一个自动生成代码注释的工具,可以方便地将函数的参数名和返回值提取出来。

3)XVim —— 一个Xcode的Vim插件,可以在Xcode的编辑窗口中开启vim模式。vim模式最大的好处是可以全键盘操作,可以方便地移动光标,一级复制丶粘帖代码.XVim对于Xcode的分栏模式也有很好的支持。

5)FuzzyAutocompletePlugin —— 使用模糊的方式来进行代码自动补全。

6)KSImageNamed -Xcode —— 当你输入[UIImage imageNamed]时.会自动弹出上下文菜单,供你选择你需要输入的图片资源名称,另外在选择图片资源时,还可以在左侧预览该资源。

7)DerivedDataExterminator—— 一个清除Xcode缓存目录的插件。

8)OMColorSense—— 是一个UIColor颜色输入辅助工具,可以帮助你在编写UIColor代码时,实时浏览相应的颜色。

  • 辅助工具:

1)xScope —— 设计者工具,包括∶量度距离和角度的标尺、不同大小画面的屏幕、放大镜、精确垂直和水平标记辅助线、精确阔度, 高度和原来排成直线标记框架、找寻画面上全符合位置的交叉点。

2)ImageOptim——图片压缩工具。

3)MarkMan ——设计稿添加标注。

4)Dash——Dash 是一个免费且开源的 API 文档浏览器,能让你的 iPad 和 iPhone 在脱机的情况下即时访问超过 150 个 API 文档集。你甚至可以生成自己的文档集或请求引用文档集。

5)Deploymate——可以帮你找出你在工程中不可用、不赞成使用、已废弃的API。

6)FauxPas—— 它不仅可以有效检测Xcode项目中所有元素存在的潜在问题,还可以找出常见的错误、隐藏的bug、不良实践以及可维护性和代码风格问题,通过查找资源文件的错误,从而确保文件名参数的相关纠正效果。

7)PaintCode ——可以把绘制的矢量UI自动转化为适用于iOS/OS X的Objective-C代码。

  • 命令行工具:

1)xcodebuild——通过命令行打包。

2)xcode-select ——更改默认xcode。

3)nomad

4)xctool——替换xcodebuild。

5)fastlane ——自动打包。

  • 持续集成:

1)Jenkins——持续的软件版本发布/测试项目;监控外部调用执行的工作。

2)Travis CI——开源持续集成构建项目。

3)Bot

四.开发基础

  • UI控件
  • Storyboard & Xib
  • Core Data & Sqlite
  • Core Graphics ——绘图框架
  • Animation ——动画效果
  • Block & GCD
  • Test Case编写——测试用例
  • Framework
  • Autolayout
  • 手势识别,重力感应

五.开发进阶

  • 引用计数

  • Runtime

  • Runloop

  • 对象模型

  • Hybrid ——混合开发

  • 沙盒机制

  • AVFoundation

  • Core Text

  • 逆向与安全:

1)class dump——反编译ipa包

2)IDA Pro——交互式反汇编器专业版

3)Hopper——反汇编工具

4)Class Guard ——有效的隐藏绝大多数的类、协议、方法、属性和实例变量名

六.设计模式

  • MVC
  • MVVM
  • 通知
  • 代理
  • KVO
  • 工厂模式
  • 命令模式

七.函数式编程

  • ReactiveCocoa——RAC,是一个在KVO的基础上建立Objective-C的框架,函数式响应式框架,提供了组合和转化数据流的API。将iOS中的Action、Delegate、Target、KVO、Block,NSNotification统一共同的消息传递机制进行事件处理,属性变化,回调响应。

  • RxSwift

八.开源项目

  • AFNetworking & Alamofire(swift数据请求)

  • Masonry

  • SDWebImage

  • SwiftyJSON——swift中处理json数据

  • JSPatch ——热更新

  • React Native

九.包管理

  • CocoaPods

  • Carthage

  • Swift Package Manager

十.第三方服务

  • 崩溃收集:

1)Bugly—— 腾讯Bugly,为移动开发者提供专业的异常上报和运营统计,帮助开发者快速发现并解决异常,同时掌握产品运营动态,及时跟进用户反馈。

2)Crashlytics—— 专门为移动应用开者发提供的保存和分析应用崩溃信息的工具。Crashlytics 不会漏掉任何应用崩溃信息。在发生崩溃后,用户再次进入APP 并联网情况下,日志自动上传。

3)BugHD——iOS开发中很好用的崩溃分析工具,它可以统计出开发中和发布后应用中的详细崩溃信息,崩溃出现在什么地方,什么时候,崩溃了多少次等等。

  • 数据统计:

1)Google Analytics——是一个收集数据并将其分析整理成实用报告的平台,通过向每个网页插入JS跟踪代码来跟踪用户行为。这些用户信息相关的数据将会被处理后传入Google Analytics(无法修改),并在Google Analytics中生成分析报告。

2)友盟

3)MTA——腾讯移动分析是腾讯数据云,腾讯大数据战略的核心产品,提供app应用的移动统计分析,支持android/iOS平台,实现用户画像、数据可视化、数据挖掘、渠道效果分析等综合数据服务。

4)Flurry—— Flurry是一个免费为手机应用开发者对自己的应用进行统计的服务,Flurry提供了一个非常好用 的LogEvent函数, 我们可以把自己感兴趣的事件都记录下来,这样就可以对用户的行为做一个分析了。

5)AppAnnie—— App Annie是应用分析和应用市场数据的行业标准,提供操作简便的平台,助您拓展应用业务。

  • 应用分发:

1)TestFlight —— TestFlight 是苹果官方的发布测试版的软件。
2)蒲公英 —— 蒲公英app内测分发平台(pgyer.com)提供免费的苹果ios|安卓android应用app内测分发托管|ios企业签名|ios企业账号。
3)FIR —— fir.im 为开发者提供测试应用极速发布,应用崩溃实时分析、用户反馈收集等一系列开发测试效率工具服务,帮助开发者将更多精力放在产品的开发与应用的优化上。

十一.App打包上传与审核

  • Apple Developer 官网
  • itunes Connect 官网
  • IAP
  • 加急审核申请
  • 打包脚本
iOS技术图谱

相关文章

  • iOS - 技术图谱

    一.编程语言 Swift Objective-C C++/C JavaScript 二.操作系统 Mac OSX ...

  • iOS技能图谱

    一:招聘需求 二:小码哥iOS 技能图谱 三:唐巧iOS技能图谱 四:tableView 相关

  • iOS技术图谱之RAC

    ReactiveCocoa作用 在我们iOS开发过程中,当某些事件响应的时候,需要处理某些业务逻辑,这些事件都用不...

  • iOS技术图谱之KVO

    KVO 是 Cocoa 框架提供的一种键-值观察的机制,关于 KVO 的用法可以参考苹果官方文档 Key-Valu...

  • iOS技术图谱之RunLoop

    RunLoop 是 iOS 和 OSX 开发中非常基础的一个概念,这篇文章将从 CFRunLoop 的源码入手,介...

  • iOS技术图谱之Block

    一、Block的定义 约定:用法中的符号含义列举如下: return_type 表示返回的对象/关键字等(可以是v...

  • iOS技术图谱之GCD

    GCD 1、iOS中实现多线程的几种方式 在iOS中每个进程启动后都会建立一个主线程(UI线程),这个线程是其他线...

  • iOS技术图谱之NSOperation

    NSOperation 1、什么是NSOperation? NSOperation是苹果推荐使用的并发技术,它提供...

  • iOS技术图谱之NSThread

    NSThread 1、什么是NSThread? NSThread是苹果官方提供面向对象操作线程的技术,简单方便,可...

  • iOS技术图谱之runtime

    一、Runtime原理 1、Runtime是什么? runtime 简称运行时,是系统在运行的时候的一些机制,其中...

网友评论

    本文标题:iOS - 技术图谱

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