逍遥一派 发表于 2015-1-18 11:30:10

Linux编程:为何我以为每一个程序员都应当用Mac OS X?仓酷云

文件处理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln
查尔斯·狄更斯先生的《双城记》里有句十分出名的话,我每次看到都心平气和,以是看了有数次《双城记》老是在那两句话前后打转。心说,开首就这么好,注释不管怎样也没法让你以为出色了吧?
原文是,“Itwasthebestoftimes,itwastheworstoftimes,itwastheageofwisdom,itwastheageoffoolishness,itwastheepochofbelief,itwastheepochofincredulity,itwastheseasonofLight,itwastheseasonofDarkness,itwasthespringofhope,itwasthewinterofdespair,wehadeverythingbeforeus,wehadnothingbeforeus,wewereallgoingdirecttoHeaven,wewereallgoingdirecttheotherway–inshort,theperiodwassofarlikethepresentperiod,thatsomeofitsnoisiestauthoritiesinsistedonitsbeingreceived,forgoodorforevil,inthesuperlativedegreeofcomparisononly.”
译做:“那是最优美的时期,那是最糟的时期;那是伶俐的岁首,那是屈曲的岁首;那是信奉的时代,那是嫌疑的时代;那是光亮的季候,那是暗中的季候;那是但愿的春季,那是扫兴的冬季;我们具有统统,我们一贫如洗;我们全都在直奔地狱,我们全都在直奔相反的偏向–简而言之,当时跟如今十分相象,某些最哗闹的威望保持要用描述词的第一流来描述它。说它好,是第一流的;说它欠好,也是第一流的。”
我以为关于程序员来讲,我们正在履历最优美的时期,固然也是最糟的时期。
优美的缘故原由在于,这是一个充斥时机的年月,近十年每次我们觉得天下统统灰尘落定的时分,就会呈现新的欣喜。如youtube、facebook、twitter等等,乃至包含了iPhone和行将上市的iPad。天下上有数伶俐和勤劳的人们正在勉力,告知我们统统还早,我们还活在一个敏捷开展着的天下。只需天下还在敏捷开展,谁晓得你会不会就是下一个twitter、下一个iPhone的创造者?乃至是下一个马化腾,固然如今腾讯方兴未艾,可是假如工夫倒流到99年,乃至01年,年夜多半心中大概仍是会以为那只是个玩物吧?
但是,糟实在也正在于此,后面的时机多,圈套就多。人们生成就是风险回避者(某个名流大概是名著内里说的,惋惜记不清了,没法拿来失落书袋了),这大概就是专制百试百灵的缘故原由。人们总惧怕毛病的选择,以是变得夷由起来。如今如许的时期,你就有没有数能够夷由的事变,由于良多事变还在开展中,不晓得谁会笑到最初。比来仍在胶着的战役良多,如,Wifi和3G(我以为赌局还没收场),微软和Google,微软和苹果,苹果和Google,苹果和Nokia等等等等。
这些战役的了局,对一般用户来讲,只是买甚么产物,用甚么产物的成绩。对开辟者来讲则是抱谁的的年夜腿,跟谁混的年夜事儿。
以是我们这些久经疆场而没有兴旺的家伙,老是劈面前的选择感应人心惶惶,乃至养成了怙恃问你吃甚么城市怒不可遏,大呼“不晓得”的选择害怕症(我的症状十分严峻,进来吃,毫不点菜,在家里一概任意。但也有多是看Monk看多了闹的)。
之前我和赵姐夫(@Jeffz_cn)、霍炬(@virushuo)、方块(@KrzyCube)另有良多人在twitter下面年夜侃过一次这个成绩,有乐趣的能够看看CatChen的批评、和赵姐夫的收拾、和方块的收拾(我们的会商很长,但还算风趣吧)。
如今,我已阔别了Windows阵营,做Web开辟用Php,做客户端只做Mac客户端软件,还做一些iPhone开辟。我以为每一个程序员都应当最少用一用MacOSX。
缘故原由以下:
1、操纵体系的合作到了一个新的阶段

Windows固然仍然是本色上的老迈,可是操纵体系的和平早已不是10年前的模样。跟着Web使用的年夜行其道,良多人的电脑,都已成了名符实在的上彀本大概上彀机。
Window/MacOSX/Linux/Unix几年夜支流平台上都有了盛行的Web扫瞄器,只需你不是一个固执的IE粉丝,那末假如你的次要义务是Web扫瞄,如今几年夜操纵体系的体验已十分靠近了。其他的基于互联网的盛行软件,一样平常也都有对照好的跨平台撑持。比方,谈天工具,Gtalk全平台掩盖,Msn全平台掩盖,如今乃至连一直被人看做很关闭的QQ,实践上也有Linux版本(固然口碑很年夜,可是另有lumaQQ如许的替换产物),Mac版本(口碑不错),iPhone版本了(比来刚更新过,很不错)。
我们乃至看到了上彀本这一硬件种别的发生。互联网成了盘算机的中央,这很年夜水平上下降了微软的把持上风。
3-4年前,我切换到MacOSX的时分,除招商银行等多数使用之外,我没有以为任何的疾苦。当时候,我次要开辟服务器端程序,程序的运转情况是Linux,在MacOSX这个Unix下面开辟,实在很便利。
程序员能够在分歧平台切换其实不主要,主要的是,我们这些程序员的衣食怙恃已能够自在的在各类平台上切换了。这就给了我们往实验Windows之外平台的大概性。
良多人在对照Windows和MacOSX的时分,有一个误区。由于他们本人是临时的Windows用户,对良多MacOSX的细节很不喜好(右键、按钮地位等等)。可是作为一个开辟者,你要注重的是用户。我但愿你们假想一个场景,一个历来没有效过电脑的人,他们进修Windows和MacOSX,他们会更喜好甚么。我想更多人会喜好MacOSX,假如我的假想是对的,那末将来是属于MacOSX的。
2、iPhone和将来的iPad

iPhone是近10年来,我看到的最反动性的硬件产物。固然他的功效,除多点触摸、减速度传感器之外,年夜多半我们都在Nokia和其他合作者的产物中见到过。我用过Nokia2002年的产物7650,iPhone的一切功效它几近都有(没有wifi,可是有gprs),可是用起来跟iPhone就是纷歧样。
那末区分在那里呢?05年我买iPodNano的时分,看到盒子的时分,我吃了一惊,由于盒子最显眼的中央写的不是“容量:4G”,而是“能够包容1000首歌,xxx张照片”。这家卖生果的公司俄然让我分明,用户实在体贴的是谁人叫mp3的工具能够包容几歌,而不是从比特的角度,从存储的角度他的容量是几G。几G几M的容量,是完成“包容几几歌”这个目标的一种手腕。我们老是太甚care手腕,忘了我们的目标是甚么。
做产物的时分,良多人也是如许。假如你是第一次看电视购物卖手机,大概你就会想把手内里的iPhone抛弃,往买那些渣滓。由于你听先容的时分,你会以为全球最好的手机就在那电视里,叫做“XX万能王”。从功效列表来看,它们几乎是天下上最好的产物,可是假如你真的拿得手,你大概会发明那工具3分钟逝世机,大概甚么操纵都很慢,大概摔了一下就坏了。谁人时分,我估量你会意会到,功效多固然好。可是功效列表不会包含“不会3分钟逝世机”,“操纵不会很慢”,“摔一下不会坏”。手机,大概任何产物对你最主要的不是功效多,而是好用。
iPhone让我发明本来手机上也能够有这么好用的扫瞄器。这是个纯手艺成绩么?不是,要晓得Nokia良多手机用的扫瞄器内核和iPhone毫无二致,都是Webkit。可是操纵起来看看,人人晓得iPhone出来没有多久,一切网站手机流量最年夜的就是iPhone了,这不是靠命运啊。我有个NokiaE61i欧版手机,能够用wifi,可是用它的扫瞄器,其实是不便利,每次都要从头选择wifi,翻开网站也很慢,翻开了今后,缩小减少也很不便利。
好的体验仅是其一。更主要的是生果公司在iPhone这个产物上开辟了AppStore,这是近10年来,我以为在软件行业最主要的一个工具。1976年2月3日比尔盖茨宣布了出名的《AnOpenLettertohobbyists》(给喜好者们的一封信),现实上开启了贸易软件的路途。但是,贸易软件从出生起,就遭到盗版的咒骂。从环球看,外表上微软是盗版的最年夜受益者。没错,从金额上看,是如许的。可是实践上一切的第三方开辟者,才是盗版的最年夜受益者,他们中的良多人由于盗版而损失了发展为微软如许企业的时机。
AppStore不克不及完整根绝盗版,可是它从刊行和付出渠道动身(跟iTuneStore一模一样),很年夜水平下降了盗版对第三方开辟者发展带来的风险。良多单枪匹马的第三方开辟者,依附做iPhone软件发财(固然一个市场是有容量的,你不克不及期望它超出本人的机极限)。良多开辟Mac软件多年的人,没由于开辟Mac软件发财,可是由于移植了一个复杂版本到iPhone发了家。听说,由于开辟iPhone只能用MacOSX,这成了近两年对Mac电脑发卖最年夜的拉动。良多工资了开辟iPhone程序而购置Mac电脑。
就在这时候iPad来了。代价在2000-3000之间的上彀本,应当是比来和将来,电脑市场一个很主要的增加点。这个价位能够吸引良多买不起电脑(大概更多是不舍得买电脑)的人。别的,存眷上彀这个观点简化操纵,也能够让良多以为电脑太难用的人们,来购置电脑。惋惜,基于Windows的上彀本在用户体验上其实是乏善可陈,常常仅仅是一个屏幕更小的Windows罢了。
Windows在PC下面的上风原本无机会拓展到其他平台。在WinCE和Palm,微软实践上得胜了。可是以后就抱残守缺了,如今iPhone出来了,WinCE实践上已没有甚么年夜时机了。上彀本和触摸设备,原本也是Windows有伟大上风的,可是微软其实缺少在用户体验方面的勉力(你往看看各类基于Windows的触摸查询设备吧,竟然必要点一下然后鼠标光标蹦过去,然后才干点!!!!!!!)。
iPad的公布会,其实不让人何等欣喜。这是由于iPad和iPhone计谋在生果公司是严密分离的,iPad包括了iPhone的一切反动性,然后把尺寸缩小。公布会开到开头,说到电池工夫和代价的时分,我才入手下手镇静。
iPad意味着甚么?意味着一台廉价的上彀本;有电脑的用户也不介怀购置一个,买不起大概不舍得买电脑的人大概会买;由于廉价,以是病院和餐馆等大概会购置作为外部办理体系(病院信息体系,点餐体系);黉舍能够买做教导用处(电子书包)。意味着,我们能够在电脑下面写文档累了的时分,躺在床上抱着它听歌,看看书,玩个游戏。
这个产物假如操纵的好的话,能够作育一个比iPhone更年夜更好的软件市场。
3、MacOSX是Unix

关于年夜多半做服务器端开辟的开辟者,服务器端开辟大概就意味着Linux下的C/C++和Java。MacOSX是真实的Unix(切合尺度,有受权,正当的能够用Unix商标)。年夜多半这类开辟,你能够在MacOSX下做,在Linux下实行。多数触及到Linux和BSD内核分歧的使用,略微贫苦一点。可是假如你做到这个级其余话,我想你也不在意了。
年夜多半基于Linux的开源软件,年夜多半为Unix架构计划的程序,都能够在MacOSX下一般事情。固然有良多软件编译起来,会碰到良多八怪七喇的成绩,可是宁神,你在分歧的Linux版本间编译的时分碰到的会更多。固然MacOSX上面的主动软件安装工具也会有林林总总的成绩,可是宁神,Linux下的也是。
Unix文明最典范的管道和剧本,MacOSX也撑持的很好。
MacOSX是一个十分好的均衡,Unix式的命令行、剧本才能它全体具有,并且带有一个十分好用高效的GUI。以是不论你是CLI(命令行界面)控,仍是GUI控,你都应当能够玩的很好。
有人问我MacOSX是否是一个很好的进修Linux的路子。我不能不说,你如果真的玩转了MacOSX(CLI+GUI)的话,你真的无需往进修Linux,用就是了。特别是,进修Linux是为了进修服务器办理的人们,真玩转了MacOSX,Linux有甚么区分?
4、开辟你的视野

一段工夫以来,我研讨本人开展的过程当中的瓶颈的时分,发明统统瓶颈都不来自才能,都来自视野,来自于给本人设置的愚昧的极限。这么说,是由于我发明,我想做一生的程序员,而我也愿意进修新的常识,我也的确善于一直的进修新的常识。
只是每经一个阶段,一旦我发明本人临时没有甚么前进的时分,就会发明缘故原由就是我已不晓得后面的路在那里了。在.net呈现之前,我已是一个微软几近一切产物的专家(但我不是MVP),我能够不借助ATL本人写Com组件,我写过IE和Outlook插件,等等。可是到了.net时期,我的心怠倦了,我决计不再跟从微软的脚步。
这两年,特别是09年,做了一些iPhone开辟,Cocoa开辟(Tiny4Reader),做了些服务器端开辟(GinkgoTek.com),我又入手下手像刚入手下手打仗电脑那样的热情彭湃了。
对年夜多半纯Windows程序员,MacOSX的GUI和基于Unix的CLI都是新的六合,哪怕你不真的处置这两方面的开辟。在这些范畴看到的工具对你的开辟都是有益的。
腾讯是一个人人印象中很不注意用户体验的公司(老程序员视角)吧?可是如今QQ已有了Mac版,iPhone版,并且iPhone版本已屡次打磨,已是一个相称好用的iPhone使用了。年前我往了趟深圳,见了他们的iPhone开辟team,他们很器重用户体验,也做了良多的实验。而腾讯更多其他平台开辟的工程师,也入手下手加倍存眷用户体验了。
对尽年夜多半Windows程序员,存眷用户体验的履历和认识都不敷,利用MacOSX有益于进步这些方面的素养。
比来我在介入翻译《Cocoa

简单生活 发表于 2015-1-21 08:51:14

得到到草率的回答或者根本得不到任何Linux答案。越表现出在寻求帮助前为解决问题付出的努力,你越能得到实质性的帮助。

爱飞 发表于 2015-1-25 21:42:00

一定要养成在命令行下工作的习惯,要知道X-window只是运行在命令行模式下的一个应用程序。在命令行下学习虽然一开始进度较慢。

活着的死人 发表于 2015-1-29 15:13:36

另外Linux上也有很多的应用软件,安装运行了这些软件后,你就可以在Linux上编辑文档、图?片,玩游戏、上网、播放多媒体文件等。

再现理想 发表于 2015-2-6 02:20:40

选择交流平台,如QQ群,网站论坛等。

变相怪杰 发表于 2015-2-11 08:30:10

眼看这个学期的Linux课程已经告一段落了,我觉得有必要写一遍心得体会来总结一下这学期对着门课程的学习。

山那边是海 发表于 2015-2-19 02:43:15

说实话小时候没想过搞IT,也计算机了解也只是一些皮毛,至于什么UNIX,Linux,听过没见过,就更别说用过了。?

不帅 发表于 2015-3-6 12:24:13

下面笔者在论坛看到的一个好问题: “安装红旗4.0后,系统紫光输入法自带的双拼方案和我的习惯不一样,如何自定义双拼方案解决?谢谢?”这个问题很简练。

深爱那片海 发表于 2015-3-13 00:56:56

Windows?是图形界面的,Linux类似以前的?DOS,是文本界面的,如果你运行了图形界面程序X-WINDOWS后,Linux?也能显示图形界面,也有开始菜单、桌面、图标等。

因胸联盟 发表于 2015-3-20 07:23:07

要增加自己Linux的技能,只有通过实践来实现了。所以,赶快找一部计算机,赶快安装一个Linux发行版本,然后进入精彩的Linux世界,相信对于你自己的Linux能力必然大有斩获。

精灵巫婆 发表于 2015-3-20 19:23:44

和私有操作系统不同,各个Linux的发行版本的技术支持时间都较短,这对于Linux初学者是往往不够的。

飘灵儿 发表于 2015-3-21 06:22:02

在学习linux的工程中,linux学习方法有很多种,这里是小编的学习心得,给大家拿出来分享一下。

只想知道 发表于 2015-3-26 15:44:34

眼看这个学期的Linux课程已经告一段落了,我觉得有必要写一遍心得体会来总结一下这学期对着门课程的学习。

金色的骷髅 发表于 2015-4-1 02:11:35

和私有操作系统不同,各个Linux的发行版本的技术支持时间都较短,这对于Linux初学者是往往不够的。

愤怒的大鸟 发表于 2015-4-1 07:19:48

熟读写基础知识,学得会不如学得牢。

海妖 发表于 2015-4-1 19:12:22

Linux?最大的优点在于其作为服务器的强大功能,同时支持多种应用程序及开发工具,所以Linux操作系统有着广泛的应用空间。

若相依 发表于 2015-4-12 16:24:27

用户下达的命令解释给系统去执行,并将系统传回的信息再次解释给用户,估shell也称为命令解释器,有关命令的学习可参考论坛相关文章,精通英文也是学习Linux的关键。

逍遥一派 发表于 2015-4-16 05:02:09

尽量不要提问纯属是扯蛋.学习Linux特别是自己一个人初学入手的时候没人教很困难.当然如果可以的话平时多去买些Linux书...对学习Linux很有帮助.

分手快乐 发表于 2015-4-30 20:34:45

这种补充有助于他人在邮件列表/新闻组/论坛中搜索对你有过帮助的完整解决方案,这可能对他们也很有用。

蒙在股里 发表于 2015-5-1 07:25:42

一定要养成在命令行下工作的习惯,要知道X-window只是运行在命令行模式下的一个应用程序。在命令行下学习虽然一开始进度较慢。
页: [1] 2
查看完整版本: Linux编程:为何我以为每一个程序员都应当用Mac OS X?仓酷云