谈谈三大现代操作系统和MAC开发的经典书籍

闻道有先后,术业有专攻,这句话放到计算机科学领域的理解可能每个人都会不同。

有些人选择一个操作系统,一个体系的编程语言,作一个领域的开发。

有些人选择多个操作系统,多个体系的编程语言,作多个领域的开发。

其实这都没有错,笔者倾向于后者,因为笔者始终认为,只要不跑出计算机科学的领域,就算术业有专攻了:)

当前的世界排名前三的操作系统分别是Windows NT体系, MAC OSX体系,Linux/Unix体系, iOS和 Android分别属于MAC OSX体系和Linux/Unix体系,那么为什么笔者要强调这三大系统呢?

从时间投入的角度来说,我们把时间投入有价值的系统上会产生更大的回报,当然,这里面说的是普遍情况。那么又是为什么要学习主流的操作系统呢?原因很简单,当你对一种体系已经轻车熟路的时候和容易就可以驾驭另外的两个系统,当然这里说的容易也是要花时间的,只是相对于从头来要轻松许多,另外,技术世界日新月异,说不定哪天会有很多好的机会,但是如果没有准备,天山掉下来的馅饼也不一定就能啃得动。

Windows世界可以说在桌面领域可以说还是当之无愧的王者,人们经常有个笑话,能够超过Windows的只有另一个版本的Windows。Windows在个人应用,办公,游戏非常强势。

Linux/Unix体系的使用在服务端更多,随着云计算,互联网的狂热,这个体系的系统的作用越来越大,当然他们的变种Android也占了移动市场的半壁江山

MAC OSX体系,包括iOS,类似于微软以Windows 10统一移动端和PC端, MAC OSX和iOS也大有统一之势,他们的很多功能也在不同的版本之间此消彼长。值得一提的是,当前随着MAC OSX和iOS的迅猛发展,各大公司都在这个领域发力,学习一下这个平台的技术栈在当前看来是非常有必要的。简单的在互联网上找了一下,国内没找到写的好的这个方面的入门文章和书籍推荐,当然如果大家发现了也可以推荐给我,于是笔者做了一些这个方面的功课,算是抛砖引玉,希望对大家有所帮助。

1. Objective-C Programming: The Big Nerd Ranch Guide 

by Aaron Hillegass and Mikey Ward

这算是Objective-C的入门书籍写的浅显易懂,适合没有太多经验的新手 。

2. Programming in Objective-C, Sixth Edition
by Stephen G. Kochan

他的地位相当于C++领域的C++ Primer, 大而全,适合从头到尾的阅读学习。

3. iOS Programming: The Big Nerd Ranch Guide
by Christian Keur, Aaron Hillegass and Joe Conway

相对于第一本书稍难,适合读完第一本书后对概况有些基本的认识后进一步阅读。

4. Effective Objective-C 2.0, 52 Specific Ways to Improve Your iOS and OS X Programs
by Matt Galloway

这本书的地位相当于C++领域的Effective C++, 适合技术提高使用,这个系列的书,别问太多了,读就是了。

5. COCOA PROGRAMMING FOR MAC OS X FOURTH EDITION
by Aaron Hillegass Adam Preble

讲Cocoa的一本经典书籍,如果打算做Objective-C的开发,这个框架是必修的。

时间: 2024-10-07 14:01:46

谈谈三大现代操作系统和MAC开发的经典书籍的相关文章

初识操作系统和linux

初识操作系统和linux 1.计算机系统由硬件系统和软件系统两大部分组成:是一种能接收和存储信息,并按照存储在其内部的程序对海量数据进行自动.高速地处理,然后把处理结果输出的现代化智能电子设备. 2.世界上第一台计算机是1946年诞生在美国宾州大学. 3.冯·诺依曼体系结构:1946年数学家冯·诺依曼于提出计算机硬件系统由运算器.控制器.存储器.输入设备.输出设备.摩根定律:当价格不变时,集成电路上可容纳的元器件的数目,约每隔18-24个月便会增加一倍,性能也将提升一倍.现在计算机技术进本很难遵

一种基于uCos-II操作系统和lwIP协议栈的IEEE-1588主站以及基于该主站的报文处理方法

本发明公开了一种基于uCos‐II操作系统和lwIP协议栈的IEEE‐1588主站以及应用于电力系统的支持IEEE‐1588协议的主时钟(IEEE‐1588主站)的实现方法.该方法是在一个低成本的硬件平台上,借助uCos‐II操作系统和TCP/IP的协议栈,对以太网数据进行了分类处理,实现了在同一个以太网端口提供基于二层和三层报文交换的IEEE‐1588的主站功能.另外,通过使用不同的操作系统进程来处理E2E和P2P对时,实现了两种对时模式在同一端口上的共存. 技术领域 [0001] 本发明属于

看看大网站都用什么操作系统和Web服务器

以下内容为网络上转载总结,不是很准确 Google 用哪些软件做 Web Server? 除了有两个节点操作系统看出来是 Linux 外,其他的都是未知的. Web 服务器用的都是 GWS ? 我估计是 Google Web Server 的缩写. Yahoo! 操作系统都是 FreeBSD. 其他的都不可知.Yahoo! 的网络安全据说是一级棒! 微软 操作系统全是 Windows 2003(如果使用 Linux 会被笑死) , 看来 Windows 2000 已经退出微软自己的舞台.Web

【嵌入式开发】裸机引导操作系统和ARM 内存操作 ( DRAM SRAM 类型 简介 | Logical Bank | 内存地址空间介绍 | 内存芯片连接方式 | 内存初始化 | 汇编代码示例 )

[嵌入式开发]ARM 内存操作 ( DRAM SRAM 类型 简介 | Logical Bank | 内存地址空间介绍 | 内存芯片连接方式 | 内存初始化 | 汇编代码示例 ) 一. 内存 简介 1. 两大内存分类 ( 1 ) DRAM 简介 ( 定期刷新 | 速度慢 | 成本低 ) DRAM 简介 : 1.硬件描述 : DRAM 基本由一个个小电容基本原件组成, 电容的两端保留电荷; 2.优缺点描述 : ① 优点 : 成本很低, 很便宜; ② 缺点 : 需要 定期刷新数据, 速度较慢; a.

操作系统和Python的发展历程

操作系统的发展历史: 操作系统:什么是操作系统?我们首先想到的是电脑,,也就是所谓的Windows8,Windows7,或者XP系统和Windows10,当然也包括我们手机的安卓系统或者IPhone的IOS系统,但是有没有一个具体的定义呢?操作系统(英语:Operating System,简称OS)是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行.我们的手机在不断的升级,那么系统肯定也是,所以就让我们来简单的回顾

【转】linux驱动开发的经典书籍

原文网址:http://www.cnblogs.com/xmphoenix/archive/2012/03/27/2420044.html Linux驱动学习的最大困惑在于书籍的缺乏,市面上最常见的书为<linux_device_driver 3rd Edition>,这是一本很经典的书,无奈Linux的东东还是过于庞大,这本侧重于实战的书籍也只能停留在基本的接口介绍上,更深入的东东只能靠我们自己摸索了.但万事总有一个开头,没有对Linux驱动整体框架的把握是很难做一个优秀的驱动开发者的.除了

操作系统和Web服务器那点事儿

又一个进程启动了,操作系统老大叹了一口气,毕竟自己的肩头又多了一份责任. 让人烦恼的是,新来的家伙们很无知,几乎就是一张白纸.有些老实本分的会按照自己的规矩来做事,有些刺头儿喜欢问这问那,时不时还想搞点非法的访问,想访问别的进程的地址空间,甚至想访问内核的代码和数据! 这时候,我只有把他kill掉祭天,留下一个core dump的尸体让码农们去分析. 规矩很重要! 想到此处,老大又看了一眼自己的内核空间,这个机器只有可怜巴巴的4G内存,0-3G给各个进程共享使用,自己独占了从3G-4G的内存空间

windows操作系统和java常识

一.java5和java8版本更新很大,现在都是java8; 二.数据存储最小单位Byte字节八个比特位: 三.没有图形操作界面的windows系统: 四.java语言跨平台性:JVM充当不同操作系统的翻译功能: 五,oracle官网下载jdk安装,安装路径不要有中文不要有空格,防止乱码和转义的问题: windows系统文件路径部分大小写: 六.配置java环境变量,让windows操作系统认识它: 认识之后,cmd重新打开,再输入”java“,就可以不写全路径也能搜索到: 原文地址:https

实现windows操作系统和VB下Linux虚拟操作系统相互传取文件方式总结

在windows上执行虚拟机跑的是Linux的操作系统,怎样才干在不同的操作系统之间传递文件呢? 这是本人切身体会到的,假设你没有好的方法的话.确实非常痛苦.下面是我个人的方法总结: 方法一.很好用的:***** 使用一个winscp的软件,它是windows环境下使用ssh的开源图形化SFTPclient,同一时候支持SCP协议.它的主要功能就是在本地与远程计算机间安全地拷贝文件. 强力推荐,是一个exe文件.双击就能够实现. 假设想要这软件,能够评价说下. 推荐一下载网址:http://ww