不要忘记目的

如果你想开发ios或者苹果的app,网上很多网友都会建议你买一个苹果硬件——苹果电脑,一部分建议你安装黑苹果。这两种方案中前一种费用很高,后一种费时费力(甚至到最后都要转向购买apple设备上了),而且可能因为显卡驱动,网卡驱动不匹配等问题而功亏一篑。我建议使用台式机添加内存条的方式在虚拟机上运行,虚拟机还可以抽象虚拟解决很多硬件匹配问题。接下来我将谈谈为什么这样对于专注于开发app的开发者来说最划算,要记住你的目的就是要以最低的费用开发苹果平台上的app而已,别让那些无谓的东西浪费你宝贵的时间,你可是一天至少赚300块钱的人。当然这是给囊肿羞涩的开发者的建议,苹果设备还是很棒的有钱就买一个也很爽。

性能瓶颈分析

macOS非常耗费内存空间,所以他的机器常常都是8G内存起步的,而你的普通笔记本一般也就8G内存,你还要装上虚拟机给macOS分配4-6G的内存空间,你的笔记本肯定吃不消(不流畅),因为windows在没什么任务的情况下已经吃掉2-3G了。而苹果macOS至少吃掉3.5G,虚拟机需要耗费一些的内存,所以就所剩无几了。因此增加内存才是解决的最好办法。笔记增加内存不方便,所以建议使用台式机。

我本人使用的台式机配置i5-4590,8G内存,1T普通机械硬盘,核显(没有独立显卡),win7专业版,安装vmware12 pro,运行macOS10.12 不流畅,但是cpu随便应付,问题出在内存上。

win7空转(没开什么应用时,普通使用)的资源消耗如图:

打开vmware不运行macOS虚拟机时:

CPU几乎不会成为性能瓶颈,因为他的处理速度非常快,即使高峰达到80%也就瞬间回落。主要还是内存问题

运行macOS虚拟机状态(虚拟机不运行计算任务):

结论

看到这里,大家应该知道了,空载的macOS虚拟机就这么耗内存了,所以在虚拟机里运行开发工具就更是卡顿了,非常不流畅,所以增加1-2条内存条,组成16G或者24G内存就会游刃有余。一条内存条的价格也不过340元,两条也就680而已,实在是节省不少开支呢?你觉得呢?

升级补充

添加一条8G内存后,总的机器内存容量16G,表现如下

和之前相比,空闲内存还剩3-4G这样,想想看,8G的情况下和16G的情况下相比,其实8G还需要4G才能刚好流畅运行,我们添加一条内存后,卡顿的情况就不再出现了,流畅!

升级的方案还有:添加一个固态硬盘,提升文件读取速度,性能就会又上升一个层级。

好了,接下来我们终于可以安心的专注于ios的app开发了,毕竟我们的目的就是开发一个app

开发IOS应用真的一定要买苹果电脑设备吗?的更多相关文章

  1. 新买苹果电脑,mac系统中小白应该了解哪些东西?

    本文旨在分享新买了mac电脑,应该做哪些设置,帮助苹果电脑小白轻松上手使用mac电脑,当然,新电脑肯定是需要安装各种软件,这里,小编推荐一下可以看看小编写的mac软件装机必备Mac 装机必备软件推荐, ...

  2. 开发ios的语言

    iOS发展这么多年了,很多第三方语言都向开发一种自己的iOS,于是多种跨平台诞生了! Object-c.swift: 当然是开发iOS的首先,毕竟是苹果自己的东西,也是最流行.最适合开发ios的,无论 ...

  3. 没有苹果电脑打包iOS平台的 Ionic 2程序——《Ionic 2 实例开发》更新内容

    没有苹果电脑打包iOS平台的 Ionic 2程序--<Ionic 2 实例开发>更新内容春节刚过,祝各位新的一年里万事如意,一帆风顺.<Ionic 2 实例开发>在这段时间里更 ...

  4. Xamarin开发IOS系列教程一:安装黑苹果

    经过一番思想挣扎和斗争之后,最终还是选择采用Xamarin来开发跨平台移动应用,好处和优点大家可以搜索其它博文,因为家里面穷加上谈了恋爱,就不买苹果了,开发阶段在Windows上面直接搞定哈,时候不早 ...

  5. 无比迅速敏捷地开发iOS超精美控件

    目录 前言 设计 编码 PaintCode 前言 自从人生第一篇博客<iOS中的预编译指令的初步探究>问世以来 浏览量竟然达到了360多,(路过的大神勿笑!)这些浏览量使我兴奋异常但又令我 ...

  6. 开发iOS应用程序需要的工具和编程技术

    似乎每个iOS应用开发学习者都是从这篇文章开始写博客的,我也不例外,也从这里写吧,内容雷同,但绝对是原创.因为一直相信,通过自己的理解写出来,是掌握技术一个很好的途径. Xcode苹果最为优秀的集成开 ...

  7. vs2017开发IOS(vs2017 xamarin 连接mac)

    这两天突然记起巨软的Visual Studio 2017 好像有说可以用C#开发IOS和Android应用,所以就自己去尝试了下生成过程. 相对与IOS来说,Android的生成过程还是比较容易的没有 ...

  8. 苹果电脑获取Android Studio的发布版SHA1和开发版SHA1

    最近开始转战安卓,准备把我在苹果上的应用也在安卓上来一波,其中就遇到一个问题就是最牛天气(iOS和微信小程序都已经有了,就差安卓的了)引用的百度的定位功能,需要填写发布版SHA1和开发版SHA1,作为 ...

  9. delphi_xe开发ios环境的安装与设置

     http://wenku.baidu.com/link?url=NE3xJOZiLppdxCbXJX3W0vyLHv6uA_U8uamjx9NJIIcxnfuC2P9eWx3d6Xwco-ugS8G ...

随机推荐

  1. ECharts 高度宽度自适应(转载)

    最近在写一个地图类的应用,用的是echarts的图表,然而一上来就一脸懵逼,如果父级容器的height/width属性设置为百分比的形式,那么echarts就会warning,且不能正常的生成图表.所 ...

  2. C#委托与事件--后续补充

    委托.事件补充 针对昨天文章 委托:让方法可以跟简单对象一样作为参数进行传递,也就是将方法作为参数进行封装. 方法:本质就是代码段 其实也好理解,目的就是为了封装,多态,既然简单对象如int i可以做 ...

  3. Mysql 远程登录及常用命令

    第一招.mysql服务的启动和停止 net stop mysql net start mysql 第二招.登陆mysql 语法如下: mysql -u用户名 -p用户密码 键入命令mysql -uro ...

  4. mysql3 - 常规数据检索、常见操作与函数

    一.常规数据检索 二.常见操作与函数

  5. poj1011 && uva307 DFS + 剪枝

    将木棒从大到小排列,保证每次的选择都是最长可选的木棒. 剪枝: 1 . 如果第 i 根木棒被选择却无法成功拼接,那么后面与其长度相同的也不能选择. 2 . 如果第 cnt + 1 根木棒无法成功拼接, ...

  6. 5.3 存储器、I/O和配置读写请求TLP

    本节讲述PCIe总线定义的各类TLP,并详细介绍这些TLP的格式.在这些TLP中,有些格式对于初学者来说较难理解.读者需要建立PCIe总线中与TLP相关的一些基本概念,特别是存储器读写相关的报文格式. ...

  7. Davinci DM6446开发攻略-UBOOT-2009.03移植2 nand flash的烧写

      很长一段时间没有更新博客了,是因为要推出新开发方案和做好客户服务工作,忙得不易乐乎.有关DAVINCI U-BOOT的移植,以前写过一篇u-boot-1.3.4(2008年的),其实和这个u-bo ...

  8. ffmpeg tutorial01 再分析

    如下图

  9. Microsoft+R:Microsoft R Open (MRO)安装和多核运作

    每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 本文转载于公众号大猫的R语言课堂,公众号作者使 ...

  10. CWnd *和HWnd转换

      CWnd *和HWnd转换 CWnd*得到HWnd CWnd    wnd;   HWND    hWnd; hWnd    =    wnd.m_hWnd;           //    or ...