程序员为什么要使用或推荐Mac OS X?[关闭]


61

我在Mac和Windows上都工作了一段时间。但是,我仍然很难理解为什么程序员会热情地选择Mac OS X而不是Windows和Linux?

我知道有些程序员更喜欢Windows和Linux,但是我要问的是只使用Mac OS X的程序员,因为他们认为Mac OS X最适合程序员。

有人可能会说Mac OS X拥有漂亮的UI,并且基于nix,但是Linux可以做到。尽管Windows不是基于nix的,但是除了Cocoa / Objective-C之外,您几乎可以在任何平台或语言上进行开发。

是仅在Mac OS X上可用的应用程序吗?这真的值得吗?
是开发iPhone应用程序吗?
是否因为您需要每2年升级一次Windows(向后兼容性较低)?

我知道为什么在多媒体/娱乐行业工作的人们会使用Mac OSX。但是,我不知道Mac OS X在Windows上有什么优点。如果您每天在Mac上进行开发,并且比其他任何事物都更喜欢Mac,那么能否给我带来Mac在Windows / Linux之上的优点?也许您可以在Mac上做的某些事情在Windows / Linux上做不到那么轻松?

我不是在这里尝试做另一台Mac vs. Windows。我试图找到可以在Mac上完成但在Windows上无法做到的轻松程度,但我做不到的事情。因此,我正在寻求帮助。


118
程序员是否会热情选择Windows和Linux上的Mac OS X?我不确定问题的前提,因为我从来不知道有这样的问题。我知道使用OS X的唯一程序员就是那些开发iPhone应用程序的程序员。
Carson63000

17
@ Carson63000:在过去的五年左右的时间里,有很多以前的Linux用户切换到Mac OSX。我也碰巧是使用OS X的程序员,而不是iPhone开发人员。(当然,我已经使用Mac超过15年了,但仍然如此。)
mipadi

28
@ Carson63000:每次我参加开发者大会或黑客马拉松时,我只会看到Macbook。大约5台Macbook到1台Windows笔记本电脑(如今很少见linux)。这些事件不一定是为了开发下一个iPhone或Mac应用程序。即使我去参加Android会议,我所看到的只是macbook。我问那些事件的人们为什么他们使用Macbook,而大多数人通常认为拥有Macbook只是“酷”,或者不知道Windows可以做同样的事情甚至更好。不过,当我看到Linux时,我会很兴奋。联想笔记本电脑上的Linux!
codingbear

26
@codingbear:也许参加会议的人更多是市场营销人员,或者是更多以客户为导向的员工,他们往往拥有“很酷”的东西。我认识的大多数程序员讨厌Mac,有些则讨厌Mac,但是在许多行列中都有时尚受害者。
2011年

8
-1。在阅读您对某些答案的评论时,我没有任何答案会被您接受的感觉,那么您为什么问这个问题?
jprete 2011年

Answers:


74

我已经在我的开发机上使用MacOS X大约半年了,除了iPhone / OSX开发人员(他们别无选择,对吗?),我绝对不建议开发人员将其推荐给开发人员。

我已经用Ubuntu取代了OSX。显然,我并不是唯一从OSX切换回Linux的人

您在Linux上理所当然的所有工具都不存在,也很难在OSX上使用:

  • 安装开源软件:如果幸运的,可以使用MacPort。15年前,安装MacPorts就像Linux。它下载软件包并进行编译。没有二进制包。要Qt吗?保留5个小时进行编译。如果您不走运,则没有适用于所需软件的MacPort。然后,您必须下载源代码并进行编译(欢迎使用1980年代的版本)。有时OSX 10.5的编译说明可在10.6上使用,有时则不会。
  • 为了使事情变得更有趣,MacPorts还有其他替代方案,例如Homebrew和以前的Fink。它们根本不兼容,并且一次使用多个不保证完全混乱并使OSS无法使用。
  • 多屏支持:嗨,在寻找IDE的菜单吗?它在主屏幕上,而不是您正在使用的屏幕上。您可以为此获得la脚的 “解决方案”,称为SecondBar。这将是丑陋的,无响应的,并且有时会显示一堆“ N / A”而不是菜单。但是正是OSX,所以当您能拥有眼花can乱时,谁会在乎人体工程学。我的意思是,如果您希望为关心HCI的ppl设计界面,则无论如何都将选择Linux或Win7。(更新:这似乎终于在Mavericks中得到解决,即使最近两年我被无数次告知这将与“ Mac方式”相矛盾。)
  • 体面的终端:您几乎没有其他选择,包括默认的Terminal.app,iTerm和许多其他选择。它们都没有完整的功能集(与Linux中的默认控制台相比),它们每个都至少具有以下问题之一(例如,行换行混乱,没有制表符支持或UTF-8问题)。
  • 包含GCC 4.2 ...但是等等,为什么它不理解GCC 4.2 x86_64标志,如-march=native?正如Jano所指出的,这是一个错误。确切地说,只有OSX错误。但是在OSX上,与Linux不同,您不能指望Apple实际向后移植该修补程序并在软件更新中发布它。因此,您回到正题了— OSX是一个小众系统,它使您作为开发人员的生活更加艰辛,而主流系统(如Linux)使其变得更容易。
  • 使用X11的任何软件?OSX现在具有X11支持。外观与UI的其余部分完全不一致。不好意思
  • 是否想在Finder中查看普通的UNIX目录结构?没办法,这就像魔术,不允许普通用户看到……。您当然可以通过从CLI执行的少量加密命令来激活它。我的意思是,对于Windows用户,像Windows中那样具有“显示隐藏文件”复选框,这会让Macuser感到困惑...
  • 最新的Java-抱歉,您不能拥有,Apple讨厌Java,并且会做任何事情来证明它是劣等技术。这意味着保持它过时并且不应用任何更新。即使这意味着将其用户暴露于特洛伊木马中
  • “安全吗?我们不需要讨厌的安全!” 。MacOS X是所有主流OS(包括Windows的家庭版)中安全最低的。它掉到黑客的受害者一年一年后一年后它仍然是这样。而且,至少有5年以来,没有病毒的OSX神话是不正确的。对于第三方产品,它也不会变得更好:

运行Skype的Mac用户容易受到 自我传播的攻击,使攻击者可以不受限制地访问系统。Skype的其他客户端(例如Windows和Linux)不容易受到此漏洞的影响。

更新:OSX的安全性似乎越来越糟

在最新的Lion安全更新Mac OS X 10.7.3中,Apple意外打开了加密区域之外的调试日志文件,该日志文件以明文形式存储用户的密码


5
@philosodad:不正确?关于事实,该应用程序的菜单位于“主”屏幕上,而不是位于打开该应用程序的同一屏幕上,这是不准确的吗?不,我不想每次切换应用程序时都切换主屏幕,我不会陷入那种“思维不同”的情况。
vartec

12
@vartec:您的帖子中有几处错误。终端没有您声称的缺陷。MacPorts不是OS软件的唯一选择(例如,许多OS软件都提供.dmg文件,并且还有自制软件)。您声称无法修复的错误的链接显示该错误已解决。您可以显示带有简单标志更改的隐藏文件夹并查看您的结构,也可以从终端打开/ var并在查找器中浏览。安全专家想要一台Mac(这是Pwn2Own衡量的标准)的事实实际上并没有说明安全性。
philosodad 2011年

4
@philosodad:对不起,您显然无法分辨现实与“现实畸变场”。至于GCC中的错误,是的,它已在GCC 4.3中解决。OSX 10.6的任何软件更新中均未包含该软件。换句话说,OSX中的错误仍然存​​在。家酿?抱歉,我们不是1990年代。看目录结构是“简单标志更改”吗?更多MacTruth,实际上,它需要从CLI运行加密命令。
vartec

16
@vartec我已经阅读了您对这个问题的许多其他评论。显然,您对Mac和任何不喜欢OS的人都有个人偏见。基本上,可以归结为这一点:您在此处编写的内容至少在一项方面实际上是不准确的,并且在安全方面几乎是FUD。我认为这次讨论没有成果,我在这里结束了我的参与。-1因事实不准确而停留。
philosodad 2011年

5
@philosodad:“无法编写简短的脚本,使用基本的终端命令或安装许多免费的自动化应用程序之一,这些操作将使右键单击不会转化为操作系统故障”,如果我不愿意的话了解上下文,我想说的是1990年代初期的一些GNU fanboi的引言。
vartec

67

免责声明:我使用自己确定对自己最合适的东西。这些原因就是我在这里列出的原因。在任何情况下都不可能找到“最适合程序员”,而且我认为没有人会认为自己找到了这个选择。

这是一个基于Unix的操作系统,在强大的硬件上安装了出色的用户界面。随着苹果的成长,硬件变得越来越便宜,并利用它们的购买力来确保优质组件的价格越来越低。

我使用Mac是因为:

  • 基于Unix的操作系统
    • Terminal是具有所有标准Unix实用程序的bash shell
    • 内置SSH!
    • 预先装有可在Unix上运行的软件:SVN,PHP,Apache2等。
    • 我发现在开发中使用Unix文件系统要舒适得多。
  • 出色的用户界面 -以我的拙见,您无法击败Mac的可用性。我喜欢我每天使用的Mac专用应用程序-邮件,Adium,Textmate
  • 出色的操作系统 -不能拖累(大多数)应用程序的安装-拖放。该/Library文件夹井井有条,如果我必须深入研究首选项,复制应用程序的支持文件,安装新的“首选项窗格”,则很容易找到我需要的文件夹。谈到系统偏好设置-Mac的另一个强大功能。
  • 对其他应用程序的强大支持 -IntelliJ IDEA在Mac上和任何地方都一样出色。Skype。铬。火狐浏览器。Adobe套件。
  • 出色的硬件 -我使用的是价格为1200美元的13英寸Macbook Pro(台式电脑为外部24英寸显示器)。比我在高端Windows台式机上的同事便宜,而且我没有遇到处理问题或内存问题(这些天我们俩都没有)。而且您无法超越Apple笔记本电脑的质量(在笔记本电脑上进行开发是一个不同的问题,但是我不能没有一个人-会议,无线Skype通话或我刚离开公司时将工作带回家的免费无线上网和10小时的电池寿命!)
  • 最后,我没有使用任何Microsoft堆栈技术进行开发,因此我在那方面并不感到局限。

我不认为有任何东西我不能在Windows上做的。上面列出了一些事情,总之,这些只是使Mac成为首选选项。如果您正在寻找奇异的东西,那么我觉得有些任务可以在Mac上轻松完成:

  • (如上所述,可能是最大的)终端> Putty + Cygwin + Powershell
  • 将所有内容迁移到新计算机
  • 卸载应用程序或安装多个版本的应用程序(通常是浏览器)

41
我仍然对“硬件”观点不服气。苹果的购买力并没有真正传递给消费者更低的价格-它补贴了几乎免费赠送该操作系统的成本(如果您使用的是定价过高的硬件)。
Anon。

79
我不同意“出色的用户界面-以我的拙见,您无法击败Mac的可用性。” 我使用Mac已有3年,但3年后我仍然忍不住使用它,这是最令人沮丧的事情。UI的最大问题是您无法完全最大化窗口,如果您单击鼠标不放,您最终将进入桌面。这没什么用,Linux / Windows正确地理解了这个概念,OSX失败了。
菲尔

7
@codingbear这不是进行激烈的战争辩论的地方,但我将简要说明您的观点:1) UI 主观的,但是您将免费软件公司与一家以设计闻名的价值3,000亿美元的公司竞争,每个设计师和开发人员都有数百名。2) Mail,Adium,Textmate仅适用于Mac。当然,我知道其他人都在Windows上,这就是重点。它们在Mac上和任何地方都一样出色。3)没有内存问题,实际上少于具有相同RAM的Windows。4)硬件?我会再次检查$ 1200 MBP。您无法将预算计算机与MBP进行比较。
妮可

9
@codingbear:尚无一个公平的比较。我也可以以更低的价格购买具有类似规格的台式机。这并不意味着我最终会与MBP在同一台计算机附近。电池寿命,尺寸,重量以及所有其他因素都很重要。规格也不完全相同。您可能会为Apple“品牌”多付1或200美元,但请考虑一下您会得到什么。一件事的优质服务。就在今天,我将4岁的MBP带回Apple Store,以免费更换有缺陷的组件。我从未购买延长保修。尝试与戴尔。
科迪·格雷

23
正如线程中进一步提到的那样,这不是圣战争论的地方。如果您想辩论Apple或Dell机器的优缺点,请聊天。谢谢。
亚当李尔

35

对我来说,与Linux相比的主要好处是它们可以一起工作,尤其是在笔记本电脑上。视频,无线,暂停/恢复,而无需查找和配置正确的驱动程序,确定所拥有的芯片组等。在Linux上所有这些功能都可以实现,但是当您只想完成一些工作时,这很麻烦。


34
Linux非常适合那些知道自己在做什么的人;)
encodingbear 2011年

8
@matt:配置IP打印机,您可能需要查找驱动程序,具体取决于产品和型号,您可能无法运行高清视频(13英寸MBP,过去两代)。Safari经常崩溃,尤其是当我有打开了50多个标签页和16多个实例,您说得太多吗? “在幕后看。”对于开发,动手学习和学习很多东西,Linux最好,没有禁止
。– aqua

36
@codingbear:有了工作和家庭,您会学会在事情正常的时候欣赏。
LennyProgrammers 2011年

45
@aqua不要将开发系统管理混淆。我是一名开发人员,坦率地说,我不喜欢摆弄系统设置。
柯克·布罗德赫斯特

6
不知道为什么人们总是谈论Linux和Wifi的不良体验。我从来没有ONCE有使用Linux + WIFI的问题
Darknight

23

不要小看硬件。

一旦习惯了触控板,您就不想再回头了!两根手指,您可以向任何方向滚动...


...但是对于UNIX开发而言,每行有80个经典字符规则,除了垂直方向还需要滚动什么方向?
vstrien 2011年

@vstrien,我不了解您,但是我经常使用Chrome之类的浏览器。

12
个人喜好确定。我鄙视Mac触控板。使用大约一个小时就可以了,但是之后就开始变得很烦人了。如果要在任何时间使用MacBook,请插入鼠标!
Brian Knoblauch

4
不过,它有一个缺点。当我按下ThinkPad上的触摸板无法单击时,我会感到非常沮丧。
Ferruccio

1
@Brian,是新的不带按钮的触控板还是旧的不带按钮的触控板?

22

无论是否开发人员,无论经验丰富与否,聪明的人或与大多数人相比,大多数人都更喜欢美学。Macs很好,但完全不值得他们提供那种支持。显然,并没有令人信服的理由在运行Linux或Windows的PC上使用Mac,但人们极力尝试找到一些理由来购买Mac。我不明白为什么人们不说他们购买Mac是因为它漂亮时尚。没有错。我什至承认我之所以使用Linux,部分原因是它在开发人员中很流行。我们所有人都倾向于我们认为“酷”的东西。


5
-1这是什么,但 “清晰”,有没有令人信服的理由。我不太确定您是否如此有信心,以至于您知道买家的头脑中哪些人显然与您没有共同的品味(您提到使用Linux)。
妮可

5
在这个问题之下,有很多充分的理由使Mac与时尚无关。也有很好的理由不买一个。哪个引人注目取决于个人。人们之所以不说他们购买Mac是因为它漂亮时尚,是因为这不是通常的原因。(我之所以喜欢Linux,是因为我在那里感觉更舒服。我总是更喜欢MS Windows上的访客。它在开发人员中很流行,这很不错,因为这意味着我可以使用的东西更多。)
David Thornley

1
+1美学之美绝对是吸引用户体验的诱人原因。
Korey Hinton 2013年

19

Mac具有令人敬畏的UI的所有Unix功能。


我从来不明白为什么人们这么说,iPhone的UI很棒,但是OSx非常普通。它更加注重细节,但我认为它没有Ubuntu更好。
toc777

14
用户界面是主观的。就个人而言,在Ubuntu,Mac OSX或Windows 7(我经常使用的OS)的GUI中,我没有很大的偏爱,但是由于命令行和命令行实用程序的使用更为方便,所以我将Mac和Linux的UI等级提高了。与大多数其他公司不同,苹果公司一直致力于使UI变得更好,因此,如果他们没有很多人喜欢的UI,这将是令人惊讶的。
David Thornley

8
人们总是说Mac具有所有UNIX功能。确实如此,事实并非如此。事实是Mac UNIX是非标准的。每个开源软件包在OSX和Linux上的构建方式都不同。配置; 使; make install在OSX上总是存在Linux上不存在的陷阱。Homebrew可能是OSX上最好的软件包管理器,但仍然很糟糕。为了进行开发,我每次都会通过OSX发行任何Linux发行版。
2011年

5
@Apreche我部分地认为这实际上是“ Unix”开发人员成为“ GNU / Linux”开发人员的标志。FreeBSD也有类似的问题:软件需要额外的打包/修补程序,因为它们使用GNU / Linux特有的功能。

1
@AndrewDunn OS X文件系统布局不是很标准吗?您可能是说内核兼容Unix,但这不是完整的系统及其工具。
Andres F.

14

我曾经是OS X的早期采用者和Mac的长期支持者,但是我得出的结论是,它们仍然不能很好地开发机器,尤其是在企业环境中。

我曾在学校使用过它们,并在第二张桌子上工作了一段时间(很少使用,我有95%的时间在Unix终端上,但是当我有机会使用它时,我总是很喜欢它,大部分时间是用于图形操作)。我最终决定购买我的第一台Mac(当OS X首次问世时)。但是,不到一年,我对此感到非常沮丧,以至于我廉价出售了它。硬件看上去很漂亮,但价格便宜。OS X令人沮丧。我尝试做的大多数* nix东西都起作用了,但是其余部分以微妙的方式被破坏了。在Mac应用程序中,旋转的厄运球彻底毁灭了太多集。

我有时会继续使用/仍然使用一个,但实际上仅用于Mac专用任务。我会定期跳回一看,以了解当前的最新状态。Java支持一直很薄弱并且落后很长时间。好像他们才刚刚被赶上来。它不断变得更好,但是与Linux或Windows相比,使用一个进行开发工作是很痛苦的。OS X和硬件一样反复令人失望(主要是过热问题,但是多年来,我还拥有在无线电发射器附近等情况时会自动打开和关闭的显示器。在PC上“根本不会发生”的东西) 。我希望有一天它们是一个不错的选择,但还没有到那儿。


1
看看情况是否会发生变化(不是来自Apple而是来自Oracle的Java新版本),这将非常有趣。

我不能肯定地说,但是基于最近我一直在与一个相当严重的错误(MS JDBC驱动程序和JVM之间发生冲突),Apple似乎一直在使用OpenJDK。困扰OpenJDK的错误,也困扰Mac OS X Java的安装,而针对Solaris和Windows的Oracle官方版本对我们来说则正常工作。希望Oracle的Mac OS X JVM即将面世,以便我们可以升级这些Mac。早期的JVM也可以使用,但是Apple以其无穷的智慧不允许人们回滚补丁……Argh。
Brian Knoblauch

13

我现在在Mac(特别是Macbook Pro)上使用Mac的主要原因是我的软件开发人员需要:

  1. 很棒的硬件。上班时感觉很棒,电池续航力很棒,而且屏幕也很漂亮。哦,触控板也很好。

  2. Unix。它基于Unix,对于Ruby开发非常有用。我也有我的终端。

  3. 也可以很好地运行Windows。我可以使用Bootcamp在本地运行Windows操作系统,也可以使用Parallels在VM中运行它。因此,对于Windows开发,我也可以在Macbook Pro上完成所有操作。我想,如果您是Ubuntu的忠实拥护者,也可以安装它。


11

减少对解释语言的头痛。预先安装了Python,perl,ruby和prolog(就像在大多数* NIX系统上一样)。界面比许多Linux系统好得多,恕我直言。尝试构建系统特定的C程序时确实会出现头痛(有人尝试在OS X的C中构建自己的线程调度程序吗?不好玩)。在Windows上,未预安装python,perl和prolog。许多Windows都附带了您从未使用过的* ware。话虽这么说,我在Mac上并没有使用很多预安装的应用程序(我不使用邮件,通讯簿,字体簿,Garageband,iPhoto,iDVD,iWeb,TextEdit等)。Mac提供了安装Windows的灵活性,而反之则不成立(MS没错……怪苹果,在这里)。

简而言之,它提供了Linux发行版中提供的许多出色的编程实用程序和语言,并抛弃了Windows的烦恼,同时提供了世界一流的,灵活的UI。但是,我会在质疑为什么人们只喜欢OS X进行常规编程的问题上表示同意。对此不是很好。

无论是Windows,OS X还是Linux版本,我都倾向于使用现有的工具或最佳工具来完成这项工作。


1
阿们,您的最后一点。一旦知道了开发环境的通用工具是什么,我认为并没有太大的区别。人们已经想出了如何轻松地在Windows上安装Python,PHP,Sandbox-Apache等,因为Mac OSX的优势看上去不像以前那么好。
codingbear

3
但是,在Windows上,您可以用很短的时间解决许多原因。Windows确实预装了很多废话,但是我可以删除它。您引用的解释语言可以在几分钟内安装。我写了很多C ++代码,因此我在Windows上使用VS。在我输入的MacBook上,在质量和易用性方面,我什至没有什么可以接近VS。我非常喜欢Mac,但是在Windows上进行开发的时间要轻松得多。
Ed S.

@Ed:我实际上是在Linux环境中进行C(“严重”)开发的。你是完全正确的。我只是在说明为什么其他人更喜欢使用Mac进行开发的原因。Windows确实支持python和perl(不确定prolog),但它对命令行并不友好(仅我个人观点)。与bash提示符相比,在bash shell中工作必须更加舒适,而Mac提供了更好的选择。
Aqua

不,这件事并没有那么友好,您是对的。我希望能够将更多的开发工作切换到Mac,我发现它真的很痛苦。我有点被宠坏了。
Ed S.

3
不要使用预装的版本。它们已过时,未打补丁且具有“改进”,例如每当抛出异常时就会弹出的烦人的弹出窗口。例如Python的社区的建议是很清楚的:下载的Python,python.org/download/mac
vartec

9

我可以想象,唯一的原因是开发iphone应用程序。但是,否则OSX基本上是Unix……而Unix / Linux在大多数情况下都是免费的,因此我看不到任何其他原因。


5
此外,MacBook Pro是相当不错的硬件。如果您的雇主买得起它,为什么不买它呢:)如果您愿意,您也可以在上面运行Linux。
9000

4
唯一原因吗?
妮可

4
@aqua可以想象为什么“程序员使用或推荐Mac OS X”的唯一原因是因为他们想开发iPhone应用程序?那是一个原因,但是唯一的原因呢?真?
妮可

2
@ DKuntz2:内核本身和OS X的许多底层组件都是开放源代码的-即,根本没有“锁定”。
mipadi

2
@ DKuntz2:我很惊讶互联网上的人有时会争论什么。首先,内核开源的,而苹果负责大部分的主要修改它。无论如何,您并没有说苹果没有编写大多数代码。您认为OS X(尤其是内核)已“锁定”,这显然是错误的。
mipadi

7

事实是,这并不重要。

如果您真的想提高程序员的工作效率,请不要再想着让窗口制作所有这些花哨的东西有多酷,并学会使用命令行工具,出色的脚本语言出色的编辑器

无论选择哪种操作系统,您都将看到生产率的提高。

当您了解到这些是您无法使用的真正有用的工具时,您会忘记Mac OS的花哨的东西和炒作。


我发现Windows终端/ CMD非常弱
465544 2012年

@Nikhil您是否尝试过电源外壳?另外,GIT外壳程序(或等效程序)可以轻松地免费为您提供unix外壳程序的功能。
Jose Faeti

我确实使用过电源外壳,但是我很少使用它。它有太多不同的概念,仍然使用旧的telnet,没有脚本(默认情况下)复制粘贴功能太可怕了。
465544 2012

如果需要,OS X既有一个非常好的终端,也有一个非常好的UI(我怀疑您偶尔会)。
Erik Allik 2013年

6

每个遭受苦难的苹果所有者都诱使他人分享自己的命运,这是一个陷阱:-)否则,可能是针对Windows的持续负面活动,但有可能确保了普通Mac用户始终处于黑暗状态。另外,实际上,Mac OS已定期打补丁(大多数情况下不会事先通知用户。)

重要的是要意识到Mac OS X稳定性归因于专有硬件 -您无法插入和测试所需的任何东西,因此实际上没有硬件经过测试。请注意,苹果计算机有四到五种选择,并且升级的价格过高,这意味着市场上有几十种硬件。支持轻而易举。另外,实际上,Mac OS X不是没有错误安全的


1
您的前两个句子似乎没有建设性。删除它们,或者如果您在讽刺,请使讽刺更加明显。(讽刺讽刺小说通常在纯文本的媒体上表现不佳,尤其是在Internet上:无论您在Internet上多么讽刺和讽刺,有些人都会认为您是认真的并同意您的
观点

2
@David,我了解您的担心。但是,确实是苹果产品所有者盲目跟随苹果公司,而没有质疑其原因。您的年龄还不够大,还没有看过苹果84对抗IBM原始广告?现在角色已经颠倒,但是没人意识到这一点。我可以删除任何讽刺的提示,并且可以让我失望两次:-)
CMR

1
@mipadi,让我猜想,您是Apple用户:-)
CMR

2
-1:我认为这个答案没有帮助。它没有解决问题,似乎只是在侮辱一群人的观点与您的观点不同。
philosodad 2011年

2
@philosodoad,我不同意您的评论。问题是:“程序员为什么要使用或推荐mac-os-x?”,我的回答(或要点)是:“由于苹果公司明智的营销策略”。我的投诉是针对苹果公司,以及苹果公司对行业的态度(还记得lala.com吗?)苹果公司的态度自1984年以来一直是不变的。您可以将-1设为全部,但您必须停下来思考一下它是否是从众心理。 。
CMR

4

大约七年前,当我加入UNIX商店时,我从运行Windows的笔记本电脑切换到Mac,该商店主要关注于Bioinformatics的ANSI C命令行应用程序。我可以在任何UNIX机器上工作,为什么要为Mac付费呢?纯粹是主观偏好。我更喜欢Mac本机应用程序的外观,而不是任何Linux桌面风格。我讨厌Open Office,实际上我喜欢Microsoft Office。去搞清楚。Macports为开发人员工具提供了yum或apt-get的大多数便利。不过,花了数年的时间才能将Valgrind用于Mac。

我也不主张OS X相对于Windows的客观优势。但是,我对Windows产生了强烈的个人反感。我仍然必须考虑Windows上的驱动器盘符这一事实使我感到烦恼,多年来,我遭受了一些灾难,包括注册表损坏和错误的应用程序安装。我的Mac似乎只需要较少的“整理”即可使其平稳运行。我的确在家里保留了一个最新的Windows台式机,用于游戏并为朋友和家人提供支持。但是,在过去几年中,我也很幸运将非技术人员带到Mac。再说一次,我唯一能描述其好处的方法就是减少“挑剔”。


1
哈哈...是的,七年前,Windows很丑。我经历了您遇到过的类似事情,例如注册表灾难。我过去4年使用过Mac,最近尝试使用Windows7。而且...我认为..这真是太酷了。如果有机会,您应该尝试一下。顺便说一句,奇怪的驱动器号仍然存在!:)
encodingbear 2011年

2
就像我说的@Codingbear一样,我确实保留了当前的Windows计算机,因此我拥有Vista,并且现在拥有Windows7。Windows7确实具有不错的桌面主题集合,但是我还没有发现任何个人吸引人的功能。从XP到Vista的转换给我留下了深刻的印象。我认为它确实改善了安全性模型,并且我认为Powershell看起来很有趣。同时,我感到灰心,因为Vista明确表明许多应用程序编写者随意使用Admin特权是多么草率。
查尔斯E.格兰特

1
+1对您的评论,我不明白为什么流行的观点是“是的,MS确实搞砸了Vista,但是7太棒了!” 我从没想过Vista是那样搞砸了,并且比XP有了很多改进。7感觉像它坏了一样多了改进(例如,新任务栏的Exposé功能)。马虎是描述我普遍缺乏Windows热情的确切词汇。
妮可

4

有人可能会说Mac OS X拥有漂亮的UI,并且基于nix,但是Linux可以做到。

我听到很多。让我们用一个最近的例子来看一下:Gnome Shell vs iPad,您能看到区别吗?首先,Gnome Shell上的字体糟糕透了。

然后是图标。图形设计四个基本规则是对比,重复,对齐和接近。它们基本上告诉您两个元素是否相同。当您查看Gnome Shell的主屏幕时,除了拥挤不堪之外,您还会看到形状不规则的形状迥异的图标,因此您的头脑会忙于怀疑这些是什么以及它们之间的关系。

在iPad上不会发生这种情况,因为这些元素在网格上对齐,并且它们都具有圆角和光泽效果(由iOS应用)。显然,它们是同一集合的元素,因此您可以放心。

只是具有不同执行方式的类似功能的示例。这很重要,因为设计不仅仅是油漆,外观是产品本身不可或缺的一部分。您的感觉不能与您的思维(字面意义)分开。阅读表格是否遵循功能?对这个。


一个常见的误解是Mac价格过高。这是通过将低端PC与Mac进行比较得出的。如果您认为并非如此,真正尝试在互联网上找到一个比较严重的(这里是一个)。当然,如果这是您的唯一标准,那么您始终可以自己组装功能更强大,更便宜的PC,但这并不是Apple的目标。

您不会因为Mac的强大功能而购买Mac(Mac没有与之匹配的Linux群集)。您之所以购买它,是因为有一个有薪水的员工在使用它,并且您想避免出现硬件/软件问题。苹果重视稳定性和易用性,而不是功能或原始功能。您可以对此进行争论,但是除了个人经验,他们在多个国家/地区的消费者满意度上始终保持最高水平。


Mac的另一个优点是您几乎可以安装任何东西(包括KDE和Gnome)。几乎所有的Linux软件都可以通过macports软件包获得。这是一项重要功能,因为您无法依靠Apple来更新Java,GNU软件(march=native仍然存在于Apple的GCC中)。OpenGL可能是更令人毛骨悚然的示例,因为它取决于Apple驱动程序。

还有各种用途的流行桌面应用程序,不仅来自Apple,而且来自Adobe,Microsoft,Autodesk等。而且,由于您使用的是Unix,因此不需要废话。


无论如何,如果您预算有限,或者您更喜欢Windows,Linux或运行emacs的松饼烤面包机,请继续。没有适合所有人和所有人的最佳操作系统。


3
仅因为它是UNIX,并不意味着它不会受到损害。每次输入“ sudo”时,一个笨拙的用户都会使用数百万暴民程序员的力量:)
Tim Post

我同意,这就是为什么我说病毒而不是木马。
Jano

2
须藤?pfft。高级用户以root用户身份运行。
埃里克(Erik)

我喜欢macfanbois的“解决方案”,例如“您可以自己编译所有内容”,“可以用google搜索”等。对不起,我喜欢OS使我的生活更轻松而不困难。
vartec

2
@David Weta Digital,《阿凡达》特效使用Linux,Tron Legacy的公司使用Linux。传统上Adobe最初是为Apple发行的,但从CS3 +开始,他们首先是为Windows编写程序的。您仍然没有根据您的需求回答小众苹果的需求。我并不是100%反对他们的硬件,实际上我相信他们的硬件非常完美,漂亮,但是他们的操作系统没有用。
dkuntz2 2011年

1

我从1984年开始就在Mac上进行开发,从1989年以来就一直在* nix上进行开发,从1990年开始就一直在Windows上进行开发。拿另一半。

也许您可以在Mac上做的某些事情在Windows / Linux上做不到那么轻松?

我不会讲Windows,因为这些天我没有为它编写太多代码,但是关于Linux,嗯,是的。在Mac上,几乎所有内容都变得更容易。:-)

让我们来看一个小区域:文本编辑器。我是GUI的老家伙,一点也不做emacs,并且知道足够的vi来应付小的编辑工作。

在Ubuntu上,主要选项是gedit,kate和Eclipse。凯特(Kate)举步维艰(我丢失了很多数据),Eclipse非常重量级,所以我主要坚持使用gedit。但这就像MS Notepad的程序员版本:只是做不了多少。而且,要添加的未包含在编辑器中的所有内容(例如ctags支持)都需要花费大量时间来进行安装,配置和处理。

在Mac上...圣牛!有无数种非常好的选择,并且它们具有各种出色的功能。Xcode功能强大,而TextWrangler则是一个免费应用程序,结合了kate和meld的所有最佳功能。在过去的十年中,没有人以丢失我的编辑的方式崩溃的,我不能说是kate或gedit。

实际上,Linux上的文本编辑器充满了普遍的厌倦感,以至于当我进行Linux开发时,Mac上也可以使用基础库时,我常常先在Mac OS X上使用Xcode编写代码,然后在工作时编写代码,将其移至Linux并为其编写一个makefile。

我可以继续下去。我尝试使用dia创建图表,这令人震惊。但是在Mac上,OmniGraffle对于创建图表而言是极好的。

我是开放源代码的忠实拥护者,参与了多个项目,并为今年夏天的Ottawa Linux Symposium提交了一份演讲建议。但是我也喜欢保持自己作为快速编写出色代码的人的声誉。因此,我想使用尽可能最高效的开发工具,而这些工具恰好是在Mac上。


补充一点……作为顾问,我因富有成效而获得报酬。闲来无事的软件是我的业余时间,我宁愿将其用于其他事情,例如和妻子一起闲逛,武术和学习意大利语。自2006年以来,我在两个平台上并行工作的经验是,与在Linux上相比,在Mac上花更多的时间来搞事情。


2
1. vi。如果必须使用鼠标,请使用gvim。2. Mac上的编辑器...嗯,我不知道。似乎是这样,而不是在Linux上。就像您说的那样,Linux有多种选择,包括gedit,nedit,kedit,kate,Eclipse,netbeans等。Mac具有... Xcode,TextEdit,TextWrangler(我什至不喜欢 TextEdit和Wrangler)。在Mac上,我使用vi,在Linux上,我使用vi,在Windows上,我使用...记事本++!
Aqua

2
@aqua:gVim在Windows上运行良好。除非我使用Visual Studio,否则我将使用gVim进行编辑。
David Thornley

3
听起来好像没有GUI的人从未真正尝试过编辑。从什么时候起vim或emacs崩溃并丢失我的数据...?别以为我从来没有发生过……无论如何,-1表示Mac应用程序不会崩溃而Linux应用程序却崩溃了。那就是公然的FUD。
替代

1
@mathepic:问题是关于个人喜好,我根据数十年的经验提供了诚实,坦率和实质性的答案。其中包括在1986年达到vi熟练程度。我不需要其他人同意我的喜好-我不,对不起,您认为我的事实陈述和见解是FUD,但是就这样吧。对我来说听起来像是某人
Bob Murphy

1
Dang在线编辑...这是我要说的... @ mathepic:问题是关于个人喜好,我根据数十年的经验提供了诚实,坦率和实质性的答案,其中包括1986年精通vi另外,我不会批评其他人具有不同的个人喜好,也不会试图将他们转变为我的,也不会指责他们为FUD叙述事实经历。看来您确实可以-您似乎像个“我的路或高速公路”。提醒我不要和你一起分割披萨;我怀疑我们能否在浇头上达成一致。
鲍勃·墨菲

0

如果您要编写iPhone(或Mac)应用程序,则需要Mac句号。

根据我的经验,如果您正在进行Web开发,则Mac远远优于Windows计算机,仅仅是因为所需的大多数工具已经存在。是的,Linux可以主张同一件事。但是您真的可以在可用性方面比较Linux和Mac吗?真?

如果您正在编写Windows应用程序,则需要一台Windows机器,仅此而已。当然,在VMWare,Parallels和Boot Camp之间,您也可以在Mac上运行Windows。

总结:大部分内置的Unix和Web开发工具,出色的可用性和Windows兼容性(如果您确实需要)。世界上最好的。另外,与其他戴尔产品相比,它使您在星巴克看上去更加冷静。:)


两年前,我能够在Hackintosh上编写iPhone应用程序……
ohho,2011年

3
@ohho:所以您仍然需要Mac OS X环境。只需更换硬件,而不是系统不开发的应用程序有太大变化..
vstrien

1
必须不同意可用性。我是Windows开发人员,但曾经使用Mac进行音频工程...直到我开始使用Ubuntu。它曾经是一头熊,但是Ubuntu或Mint使得出行变得异常容易。
Morgan Herlocker 2011年

1
第一段说明了一个错误的事实,时期。
显示名称

@Display Name,它不是完全错误的。您需要Mac才能合法创建iPhone / iPad应用程序。可以使用Hackintosh或虚拟机非法完成此操作,但从经验上讲,这样做不值得花费时间和精力。
toc777

0

这是一个美丽,无故障的工作环境。

我将Mac用作个人计算机,因此我知道如何使用它。

硬件很棒。

如果需要,我可以(也可以)在VM中运行Windows,这比本地运行Windows更好(可以制作整台计算机的副本,等等)。

那如果它们贵一点呢?


1
嗯..这没说什么关于发展的吗?无故障的开发是非常奇怪的恕我直言:如果确实没有任何麻烦,您应该不必为此开发任何东西吗?
vstrien 2011年

1
我认为,无故障开发海报意味着操作系统不会妨碍他。
2011年

包括操作系统在内的计算机都可以正常工作。如果我需要将整个系统迁移到另一台计算机上,只需单击几下并等待半小时即可完成,并且我可以继续工作,好像什么都没发生。当然,这并不是开发所独有的,但是我希望我的工作环境不受干扰。Mac确实-如今Windows机器也确实如此。
fzwo 2011年

曾几何时,我最喜欢的操作系统是CP / M,因为它比其他任何操作系统都更令人讨厌,并且使用的资源更少。然后我遇到了Mac OS,一个没有让我烦恼(至少不是很多)的操作系统,然后是Unix,一个实际上帮助我做事的操作系统。
David Thornley

0

除了将Mac OS X作为与Windows或Linux相比的操作系统之外,我还使用它,因为它可以运行所有内容。我启动进入OS X,但可以在Virtual Box中运行Windows 7(用于Visual Studio开发以及桌面应用程序和Web应用程序测试)和Ubuntu(用于桌面应用程序和Web应用程序测试)。如果使用其他任何工具,则至少必须有一台Mac才能在各个平台上进行测试。Linux或Windows可以提供任何其他好处,或者取决于个人喜好。


如果您使用的是Ubuntu和Win7,为什么还要麻烦OSX?
vartec

即使我不是开发人员,我也会使用Mac OSX。那是我个人的偏爱。我仅使用Ubuntu和Windows进行测试。
Chuck

但是问题是为什么开发人员会使用OSX。您是说OSX的优点是也可以在VirtualBox中使用Win7和Ubuntu。相反,您可以在VB中使用带有Win7的本机Ubuntu,反之亦然。
vartec

不,我是说好处是它可以同时运行所有三个操作系统。使用OS X计算机,我可以在一台计算机上运行Mac OS X,Windows 7和Ubuntu。使用其他操作系统则无法实现。我说,在我的回答对你的评论,我喜欢OS X无论其发展优势。
Chuck

1
我进行三种主要的开发。使用PHP或Ruby进行Web开发,这需要在所有三个平台上的浏览器中测试Web应用程序。使用REALbasic构建的桌面应用程序通常需要至少在Mac和Windows上运行,有时甚至需要在Linux上运行,还需要跨平台进行测试。最后,使用FileMaker进行数据库开发,需要在Mac和Windows上进行测试。通常,我在Mac端编写软件,并在每个单独的平台上对其进行测试。
Chuck

-1

我在开发者大会上也看到了很多MacBook。你知道警告是什么吗?您需要查看它们正在运行的操作系统。我所看到的几乎每个人都在那些珍贵的MacBooks上运行Windows 7。原因-是因为它的凉爽而为其硬件付出了过多的代价,或者是在需要Objective-C时能够运行OSX几次,并为大多数其他任务切换到Windows


或者是因为他们喜欢硬件,并且不介意为此花额外的钱,或者他们稍微喜欢它,而雇主也在为此花钱。如果您一直使用笔记本电脑,即使是很小的改进也可以为您带来数百美元的价值。
David Thornley

这是无稽之谈。什么会议?人们购买Mac看起来很酷吗?“其余时间是一个真正的操作系统”?见ft.com/cms/s/2/...
Jano的

2
啊,轶事,证据的敌人。
philosodad 2011年

-2

由于(按降序排列):

  • iPhone / iPad开发
  • 文字伴侣
  • 重击
  • /不\(与Windows相比)
  • MacBook Air
  • 魔术鼠标
  • Mac AppStore
  • Xcode
  • 目标C

我相信你的意思是zsh和vim :-)
Macarthy 2011年

9
你的第四点甚至没有意义。5-7充其量是可疑的。8-9是不使用Mac OSX的原因,对吗?
Charles Boyung

@Charles:来自Unix环境的人可能不喜欢目录分隔符使用反斜线,对于他们来说,这是(可能是次要的)选择Mac OSX的原因。项目5-9是个人喜好的问题。同意是可以的,但是请接受哦的人与您的偏好有所不同。
David Thornley

短信?#2?通过Bash和常用工具(vim,grep,sed,ssh等)
Eric Wilson

-2

老实说:我使用Macbook是因为我正在学习Ruby on Rails,并且所有“酷孩子”都使用OSX for Rails。就是说,我喜欢这样一个事实,它是一个干净直观的UI的网格,具有基于Unix的系统(即功能强大的命令行工具)的所有功能。在工作之外(.NET开发人员),除非需要使用仅Windows的应用程序,否则我几乎只使用MacBook。


-2

我的工作场所选择了笔记本电脑:Windows或Mac。我选择mac只是因为我主要从事linux dev并且我更喜欢unix-y环境(很好的unix终端和其他)。但是,如果可以的话,我会选择一台Linux笔记本电脑。


-4

我是一名私人顾问,负责PC / MAC(很少是Linux)的应用程序。我还使用Wicket(java)和PHP进行了一些Web编程。我的主要系统是Mac。

为什么?

  1. 我可以快速调试(在Mac / Windows之间)(大多数用户界面)Mac Apps和PC Apps(使用Parallels),即使使用VMWARE也不能在Windows或Linux上调试Mac Apps。
  2. * nix环境(在.nix / Windows之间)更像服务器,因此在进行暂存时无需进行任何调整。
  3. 软件供应商,Adobe CS Suite,Office的公司支持(在linux / mac之间):我得到的一些文档只能在MS或Dreamweaver中制作的Web模板中正确打开。
  4. 硬件支持(在Linux / Mac之间)-我喜欢linux,但我更可能会获得对新硬件的支持,然后尝试查找兼容的打印机并从中进行购物。
  5. 我使用VI / TextMate / Netbeans,取决于它是快速更改还是主要项目,因此我不认为选择程序是我选择Mac的原因。

说真正的程序员不使用Mac是短视的。如果我不是为Mac写的,我会使用Mac吗?也许...或者也许我会使用Linux。如前所述,我需要使用设计师的Dreamweaver模板,并调整PSD文件,并需要新的硬件支持。我不想整天使用不稳定的WINE CS5安装或在VMWARE中工作以使用Linux。我还需要使用与实际环境(文件路径,可执行文件,服务)紧密匹配的OS。

Windows Linux和Mac都有长处。现在,我在Mac上。


-5

对于来自linux和大学的人们来说,它看起来就像具有性感UI的Linux

在足够多年的时间里,他们开始理解差异,弊端以及卖方强加给他们的许多障碍的完全专横性,并且逐渐摆脱了障碍。因此,如果他们很热情,他们可能还太年轻。

...然后有一些gamedev只是购买Mac(并降低税金)在其上运行Windows并仅在必须使用iPhone时才启动进入MacOS。但这只是一小部分。

因此,真正的问题应该是:“为什么刚从大学毕业的年轻程序员比推荐OSX更好呢?”

...可能是因为他们被ObjC + Cocoa锁定了。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.