macOS 开发 - 入门笔记(转)

文章目录

  • 一、引言
  • 二、招聘信息
  • 三、相关书籍推荐
    • 1、《macOS应用开发基础教程》
    • 2、《Cocoa入门:使用Objective-C》
    • 3、非虫:《macOS软件安全与逆向分析》
    • 4、官方开发文档
    • 5、深入解析Mac OS X & iOS操作系统
    • 6、OS X与iOS内核编程
    • 7、Mac OS X For Unix Geeks
    • 8、OS X系统管理和部署
  • 四、视频教程
  • 五、实用Demo
  • 六、优秀MacOS 开发博客
  • 七、一些不错的Mac论坛
    • Mac 使用&软件下载
  • 八、一些好用的工具
    • png 转 icns
    • icons 生成
  • 九、我的开发笔记(CSDN 博客目录)
    • 1、基础UI控件
    • 2、Dock、Window、状态栏、目录栏
    • 3、文件管理等
    • 4、视图效果
    • 5、综合
    • 6、网络&数据库
    • 7、证书&打包
    • 8、命令行
    • 9、Mac 小技巧
    • 10、Mac 系统知识
  • 十、QQ群


一、引言

用了三年Mac,非常迷恋这个系统。想尝试写些自己的OS X App , 无奈资质较浅,网上资料并不多。
尝试搜索 MacOS 开发相关qq群、贴吧,发现常常只有一两个人。
因此在这里记录下搜集到的一些文章和资料,方便后来的感兴趣的人快捷学习。
下面资料主要针对已有 OC 基础的开发者,没有 OC 基础的,建议学习基础语法和控件后开始阅读下述材料。


二、招聘信息

这里是 macOS 程序员的招聘信息
https://www.jianshu.com/p/612af04bc456

https://www.lagou.com/jobs/list_mac ?labelWords=&fromSearch=true&suginput=


三、相关书籍推荐

1、《macOS应用开发基础教程》

纸质版(swift)地址:https://item.jd.com/12417409.html
电子版(oc&swift)地址:http://www.macdev.io

书的内容还挺全面,买书后加入qq群,群主和几个资深开发人士会为你解答很多问题,总的来说,书费80元不亏,省钱省时省力。
本人也从作者 剑指人心 这里学到很多东西,所以良心推荐。


2、《Cocoa入门:使用Objective-C》

pdf下载地址:http://download.csdn.net/detail/lovechris00/9854323
对本书翻译的相关博客:http://blog.sina.com.cn/s/articlelist_1576524975_0_1.html
个人说明:书籍比较陈旧,但知识体系齐全,适合入门参考。


3、非虫:《macOS软件安全与逆向分析》

这本书就讲的比较深入了,不建议初学者学习;有底层需求的同学后续可以阅读。

介绍:https://zhuanlan.zhihu.com/p/28008458
章节试读:https://github.com/feicong/macbook


4、官方开发文档

https://developer.apple.com/library/content/documentation/General/Conceptual/MOSXAppProgrammingGuide/Introduction/Introduction.html


5、深入解析Mac OS X & iOS操作系统

https://download.csdn.net/download/conghuoshu4927/10307556


6、OS X与iOS内核编程

https://download.csdn.net/download/zhangyutangde/10201936


7、Mac OS X For Unix Geeks


8、OS X系统管理和部署


四、视频教程

1、macOS开发从入门到精通(199元)
https://i.xue.taobao.com/detail.htm?spm=a2174.7765247.0.0.Q5FIrn&courseId=100614

2、Harry Ng 的 (英文)教程:
http://www.jianshu.com/p/c79ff411e983

3、代码行者的
http://www.jianshu.com/p/764bd7a4970e

4、Mac OSX 开发基础教程
http://study.163.com/course/introduction/1004170018.htm

5、macOS 应用开发进阶课
http://study.163.com/course/introduction/1005042030.htm

6、Mac精仿QQ实战课程
https://edu.csdn.net/course/detail/7033

7、AppleProgramming
https://www.youtube.com/user/AppleProgramming/videos

8、Cocoa Tutorials
https://www.youtube.com/playlist?list=PLE83F832121568D36


五、实用Demo

  • 带图片效果的 demo 集合
    有点类似 code4app
    https://www.cocoacontrols.com/controls?platform_id=mac-os-x

  • Apple Open Source
    https://opensource.apple.com

  • 一些优秀开源项目
    https://github.com/iCHAIT/awesome-macOS

  • Wanglei 关于基本控件的使用:
    https://github.com/GitHubWanglei/macOS_AppKit_Demo

  • lianxu 搜集的 cocoachina 上的优质 demo
    http://lianxu.me/code/

  • 部分优质 github 用户demos
    https://github.com/venj/Cocoa-blog-code
    https://github.com/venj?tab=repositories
    https://github.com/sjitech
    https://github.com/yuedong56
    https://github.com/sindresorhus


六、优秀MacOS 开发博客

  • 悲观患者,分享mac开发达30篇文章
    http://www.jianshu.com/u/ff347dd2364d

  • 不在犯二的IT男
    http://blog.csdn.net/lengshengren/article/category/6642427

  • 谭颢
    http://www.tanhao.me

  • lianxu
    http://lianxu.me/
    别被前面的英文吓到,后面都是中文。

  • 森亮号航海见识:分类:Cocoa
    http://see.sl088.com/wiki/分类:Cocoa

  • venj
    https://www.venj.me

  • 我的MacOS 开发简书文集:
    这里是我搜集的简书上关于 macOS 开发的文章
    http://www.jianshu.com/c/299375a4887f

  • afatgoat的博客
    https://blog.csdn.net/cneducation

  • 啃芝士
    一个很不错的IT知识科普自媒体
    https://www.kenzhishi.com/replay

  • Bruce :《Mac系统的日常使用技巧 》系列
    https://www.xiebruce.top/category/mac


七、一些不错的Mac论坛

这些论坛混合Mac 的开发,和常用软件下载、使用技巧。

https://macosx.com

  • cocoachina
    http://www.cocoachina.com

  • V2EX
    https://www.v2ex.com

  • Learn Cocoa
    http://cocoadevcentral.com

  • Mac志
    https://www.isofts.org

  • cocoawithlove (国外)
    http://www.cocoawithlove.com/archive/

  • Grivet-Tools
    http://www.grivet-tools.com/blog/page/2/

  • MacRumors
    https://forums.macrumors.com/forums/mac-programming.73/


Mac 使用&软件下载

  • MacGG:Mac 使用攻略
    https://www.macgg.com

  • 知乎专栏:Mac小技巧(马可菠萝)
    https://zhuanlan.zhihu.com/p/36383162

  • Mac毒:Mac 使用技巧 & Mac 软件
    https://author.baidu.com/home/1583497111996425?from=dusite_artdetailh5

  • 利器
    http://liqi.io/sponsorship/

  • 麦克叉
    https://www.macx.cn

  • 简洁的看API 的网站
    https://developer.xamarin.com/api/root/monomac-lib/


八、一些好用的工具

png 转 icns

下载地址:
http://www.cocoachina.com/bbs/read.php?tid=113763


icons 生成

介绍、下载地址
http://www.cocoachina.com/bbs/read.php?tid=290247


九、我的开发笔记(CSDN 博客目录)

这里是我根据网上找的文章和 demo,进行的一个较为系统的介绍,还在更新,代码主要为 OC。

我的 MacOS 开发入门笔记目录:
http://blog.csdn.net/lovechris00/article/category/6942446


1、基础UI控件

| macOS 开发 - Lable

| macOS 开发 - NSTextView

| macOS 开发 - NSTextField 使用 attributedStringValue

| macOS 开发 - NSView 添加鼠标监控

| macOS 开发 - NSTextField

| macOS 开发 - NSVisualEffectView

| macOS AppKit文档翻译 - NSImage

| macOS 开发 - NSImageView

| macOS 开发 - 系统图片

| macOS 开发 - NSImge格式转换/压缩(CIImage/CGImageRef/NSData)

| macOS 开发 - NSButton

| macOS 开发 - NSBezelStyle & NSButton(配图)

| macOS 上的 NSCell(比较 NSButton 和 NSButtonCell )

| macOS 开发 - NSButtonType

| macOS 开发 - NSButton - 勾选框(NSButtonTypeSwitch)

| macOS 开发 - NSTableView (纯代码)

| macOS 开发 - NSTabView

| macOS 开发 - NSAlert

| macOS 开发 - NSStepper

| macOS 开发 - NSSplitView

| macOS 开发 - NSSlider

| macOS 开发 - NSSegmentedControl

| macOS 开发 - NSPopover

| macOS 开发 - NSComboBox

| macOS 开发 - NSCollectionView & CNGridView

| macOS 开发- NSBox

| macOS 开发 - NSParagraphStyle

| macOS 开发 - NSProgressIndicator


2、Dock、Window、状态栏、目录栏

| macOS 开发 - NSWindow 的创建和跳转

| macOS 开发 - NSWindow 自定义样式

| macOS 开发 - NSWindow、NSWindowController、NSViewController 的关系和创建

| macOS 开发 - NSMenu 添加菜单栏

| macOS 开发 - NSStatusBar & NSStatusItem(状态栏)

| macOS 开发 - 窗口的关闭、重启

| macOS - NSDockTile设置Dock图标上的小红点


3、文件管理等

| macOS 开发 - FSEventStream(文件系统改变事件监控)

| macOS 开发 - NSWorkspace

| macOS 开发 - NSFileWrapper

| macOS 开发 - 添加 Document Type (注册文件打开方式)

| macOS 开发 - 压缩 zip


4、视图效果

| macOS 开发 - NSGradient

| macOS 开发 - isFlipped(坐标系)

| macOS 开发 - CGColor

| macOS 开发 - CGImageSource

| macOS 开发 - 画图与 iOS 的几点细节区别


5、综合

| macOS 给自己的 app 添加 URL Scheme

| macOS 开发 - 计算代码行数

| macOS 开发 - NSTask(调用命令行、APP 多开)

| macOS 开发 - 修改工程名

| macOS 开发 - 使用 safari 打开Mac应用

| macOS 开发 - 添加 Document Type

| macOS 选择照片、相机拍照(步骤详解配demo下载)

| macOS 开发 - NSDatePicker(日期选择)

| macOS 开发 - NSColorPanel & NSFontManager 选择颜色、字体

| macOS 开发 - NSUserNotification

| macOS 开发 - EventKit、EKReminder、EKCalendar(日历、提醒事项)

| macOS 开发 - 保存 EKEvent 到日历失败 No calendar has been set.

| macOS 开发 - NSPasteboard

| macOS 开发 - 使用 ScreenSaverView 制作屏幕保护程序

| macOS 开发 - 守护进程 Daemon

| macOS 开发 - ServiceManagement

| macOS 开发 - 使用 LaunchAgents 实现开机自启动

| Spotlight

| 使用 Ono 报错:Use of '@import' when C++ modules are disabled, consider using -fmodules and -fcxx-modul

| macOS 开发 - App Delegate 与storyboard、xib

| macOS - 使用 Sparkle 进行自更新

| macOS - 手动修改本地app的icon

| macOS 开发 - USB Prober

| macOS 开发 - 添加可执行程序 Command Line Tool

| iOS & macOS 导入/导出 Excel 数据

| macOS 开发 - 使用 safari 打开Mac应用

| QuickLook 插件

| UIApplication 对象

| macOS 开发 - 修改工程名

| macOS 开发 - BRLOptionParser


6、网络&数据库

| macOS 开发 - 使用AFN

| macOS - 搭建本地服务器

| iOS & macOS 导入/导出 Excel 数据

| macOS 开发 - 使用 route.h 报错 (Darwin.net.route)

| macOS 开发 - 代码实现ping : SimplePing 的使用

| macOS 开发 - 网络请求 PAC Fetch failed with error NSPOSIXErrorDomain:1

| macOS 开发- 使用 CFNetDiagnosticCopyNetworkStatusPassively 判断网络连接状态

| macOS 开发 - 使用 CNCopySupportedInterfaces 获取 WiFi ssid

| macOS 开发 - CoreWlan 获取 WiFi 信息 (CWInterface、CWChannel、CWConfiguration)


7、证书&打包

| macOS 开发 - 证书

| macOS 开发 - 打包 PKG

| macOS 开发 - 给 PKG 签名(productsign)

| macOS 开发 - 生成 dmg 文件 (步骤详解配图)

| macOS 开发 - Provisioning profile “xxx” doesn’t support the Network Extensions capability.

| macOS 开发 - 使用 Packages 打包失败:“build failed”

| macOS 开发 - Developer ID ApplicationDeveloper ID Installer 证书

| macOS 开发 - NSMicrophoneUsageDescription (10.14 mojave 权限问题)

| macOS 开发 - DiskImageMounter

| macOS 开发 - 错误代码 -36 (拖拽 app 到应用程序时)

| macOS 开发 - 无可装载的文件系统 image not recognized

| macOS 开发 - 描述文件安装失败 Provisioning profile does not allow this device.

| iOS 开发 - 证书 Not In Keychain / Missing private key for signing certificate(需要安装 p12 文件)


8、命令行

| macOS 开发 - 运行命令行

| Mac 命令 - systemsetup

| macOS - networksetup 命令

| Mac - otool

| macOS - security 命令

| Xcode - 使用 dyld 环境变量进行调试

| macOS - lsappinfo 命令


9、Mac 小技巧

| Mac 使用小技巧 - 开篇

| Mac 使用小技巧 - 设置文件默认打开方式

| macOS 开发 - 使用 fluid 将网页转为 Mac 应用

| mac 软件 - POSTGRESQL 数据库安装、使用、GUI工具

| mac 软件 - 安装MySQL

| Mac - icns 转 png/jpg

| macOS - POSTGRESQL 数据库安装、使用、GUI工具

| mac 软件 - Pycharm 安装、破解、使用、快捷键

| Mac下Brackets安装Emmet、Beauty插件详解

| mac下搭建Go语言开发环境详解(步骤配图)

| macOS - 安装 TensorFlow

| macOS 工具 - 数据库 Sequel Pro 使用

| macOS - 搭建本地服务器


10、Mac 系统知识

| macOS、iOS、Darwin、类 unix、POSIX

| kernel_task


十、QQ群

这里是我创建的 qq 群,希望能够把搜集的资料在群里分享,也分享技术和经验。感兴趣的可以加进来。

群号:644096295
你也用手机QQ可以扫描二维码加入

macOS 开发 - 入门笔记(转)_第1张图片


在 Mac 的开发过程中,你会欣喜的发现 iOS 的开发知识也可以用得上;
但更深入的时候,发现没有中文资料,外文资料也是寥寥无几;有时是从一些晦涩的外文文章中拼拼凑凑出一些思路来 —— 这个过程就像开荒。不要害怕,让我们一起征战吧!


… 持续更新

转载地址:https://blog.csdn.net/lovechris00/article/details/72779076

你可能感兴趣的:(macOS 开发 - 入门笔记(转))