V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  ShadowPower  ›  全部回复第 83 页 / 共 86 页
回复总数  1711
1 ... 75  76  77  78  79  80  81  82  83  84 ... 86  
2021-09-10 16:30:06 +08:00
回复了 azur 创建的主题 macOS 发布会前,求大神分析下 MacOS 和 win11 的优劣势
@ipwx 有个问题……在 macOS 11 上用 Anaconda 创建一个 Python 3.7 环境可以正常使用吗,会不会有报 image not found 这个错
2021-09-10 11:28:32 +08:00
回复了 azur 创建的主题 macOS 发布会前,求大神分析下 MacOS 和 win11 的优劣势
@liprais 你可以谈谈 macOS 在这方面有哪些优势,因为这些只是我的个人体验。你可能会有其他我没有经历过的体验。
2021-09-10 11:25:32 +08:00
回复了 azur 创建的主题 macOS 发布会前,求大神分析下 MacOS 和 win11 的优劣势
@liprais 这么说吧,现在去买一台全新的 MBP,可以安装的最低版本的系统可能是 macOS 11,也可能是 10.15 。
当然你在 Mac OS X 10.9 上使用 Python 2.7 ~ 3.9 都可以。不过新买的 MBP 如果不用虚拟机的话,实际上可以作为开发使用的只有 Python 3.8 ~ Python 3.9 。
2021-09-10 11:17:39 +08:00
回复了 azur 创建的主题 macOS 发布会前,求大神分析下 MacOS 和 win11 的优劣势
@liprais 安装上去没有问题,运行起来有兼容性问题
2021-09-10 10:49:30 +08:00
回复了 azur 创建的主题 macOS 发布会前,求大神分析下 MacOS 和 win11 的优劣势
@ipwx 在 macOS 上,如果不在 Docker 、虚拟机里做 Python 开发的话,会面临各种版本的兼容性问题。

我有印象的是 3.7.4 后面的几个小版本在 macOS 10.15 上因为新加的签名校验导致用 pyinstaller 打包出来的程序不能直接启动,而 3.7.4 和更早的版本可以。当时做的是一个图形界面的服务端维护工具,只提供给使用 macOS 的客户内部使用。因为这个东西比较麻烦,就直接选用 3.7.4 版本了。

在 big sur 上,运行打包好的 Python 3.6 程序都没什么问题,不过开发工具只有 3.9 版本才能正常兼容……所以,之前提到的项目还要在 macOS 10.14 中打包,经过测试可以在 macOS 10.14 ~ 11.0 中运行。10.13 则用 10.11 来打包,更早的版本用户量太少了,所以不考虑了。
公司的服务器用的 CentOS 版本有点老,上面的 Python 还是 3.6 版本的,服务器上用的是这个版本。

上面提到的那个运行在 macOS 上的图形界面工具其实是在 Windows 中开发的,因为 Windows 下可以同时安装 Python 3.5 ~ Python 3.9 所有版本,代码和打包的脚本写好之后再通过 CI,于不同版本的 macOS 中打包。并且同时还得打包一个 Windows 版本……

当然,因为 PyCharm 在很久以前就支持 FTP 自动上传、远程调试等功能,如今还有免费的 VSCode 可以用。因此,在宿主系统下写代码,在虚拟机、Docker 、WSL 里运行调试也没有什么不便的地方,不太需要担心当前平台无法使用某个库的问题。在 WSL 2 中,甚至连 CUDA 都可以使用,不过性能差了点。

至于为什么不直接在 macOS big sur 上用 Python 3.9 for macOS 版本做开发,然后不使用新版本的语法特性来兼容老版本 Python,然后通过 CI 给各种环境构建……
因为第三方库的问题,高版本 Python 能用的库还不够全,而且已经兼容的第三方库也是最新的版本,与老版本的 API 存在一些差异。而写出来的代码还要考虑尽可能在多个目标环境上复用的问题。

如果想问个人项目没有 macOS 怎么才能给苹果平台做适配,答案是使用 appveyor 的 CI 服务(免费)。
2021-09-09 17:09:18 +08:00
回复了 azur 创建的主题 macOS 发布会前,求大神分析下 MacOS 和 win11 的优劣势
对于 java 、python 、go 开发而言,其实 macOS 并不能带来什么明显的优势。
有时候一些周边的软件可能还会有点小麻烦(根据我的经验,QQ 、微信 macOS 版本的内存泄露比较严重),而且普遍都比较吃内存,也许是因为软件里的图标都过于清晰?还有一些外设兼容性的问题(连接显示器之类的)
如果还有 Docker 的需求,macOS 的麻烦还大一些。哪怕是跑同指令集的容器,也能明显感受到 CPU 的性能至少差了 40%以上。一般都可以观察到比起 Windows 、Linux 下更高的 CPU 使用率。在 Windows 的 Hyper-V 上性能损耗大概只有 3%
另外 macOS 本身的小问题并不比 Windows 的少。
此外还有桌面性能低的问题,2019 款 MBP15 外接 3 台 4K 显示器,打开大量窗口时就可以感受到了。同样的用法在 ThinkPad X1E 1050Ti Max-Q 上还是很流畅的。大约是 20 多 FPS vs 60FPS 的差距。

MBP 上真正能感受到优势的地方其实也就触摸板、外放、界面美观、全局色彩管理(指对所有程序以及桌面壁纸都生效)、字体渲染(这个未必,如果外接 2K 和以下分辨率的显示器,没有开启 Retina,会非常糊),以及和苹果设备的联动。

对于“正统 Unix”这一点,如果你在用 WSL,那么 WSL 1 都比 macOS 更接近 Linux 。WSL 1 未实现的部分恰好也都在 macOS 与 Linux 有差异的部分里。对于个人用户而言,Unix 商标本身不能带来什么好处。

于是,从 Windows 设备换到 macOS 设备并不是一个全面的体验提升。如果 Windows 设备可以很好地完成你的工作,当然是升级到幻 16 、R9000X 之类的更香。
2021-08-30 17:46:58 +08:00
回复了 chaleaoch 创建的主题 macOS macos 对开发友好在哪里?
我确实没有想到友好在哪里。
一般来说,自己熟悉的东西用起来效率更高,不熟悉的东西用起来还得折腾折腾。
2021-08-29 10:01:17 +08:00
回复了 gogocome 创建的主题 macOS Mac 上能否实现类似 Windows 上那种右键菜单的快捷键?
其实 macOS 的键盘交互体验并不好,总记得有些软件的单选 /多选框勾选操作,或者是类似的界面操作,在 Windows 下可以全键盘完成,macOS 则不响应一些按键。
结果总是得使用鼠标、触摸板。
因为我喜欢那种手放在键盘区域上就可以完成大部分操作的感觉,操作起来非常连贯。
我用 61 键键盘,Fn 用手腕压住即可,所以整只手都不需要移动很多距离。
最后还是回到 Windows/Linux 下了。

我也有和楼主类似的需求,在这楼里蹲一个比较好的键盘操作辅助工具。
2021-08-29 09:39:28 +08:00
回复了 gogocome 创建的主题 macOS Mac 上能否实现类似 Windows 上那种右键菜单的快捷键?
@sky96111 除了桌面,因为桌面还有一个右键框选的逻辑,等价于先框选再点击右键
@LUO12826 好吧……我已经有一段时间没有用 macOS 了
可以对比一下两个系统的绘图部分:
Mac 程序通过调用 Cocoa 中的 AppKit 相关接口实现绘图,坐标原点是左上角。
然后 AppKit 再去调用 Quartz 相关的接口,首先需要生成类似于 PostScript/PDF ( 1.4 版本)那种格式的数据,这种格式坐标原点是在左下角的。有点像数学课上学的那种 x-y 坐标系。
每次更新画面都要生成一次,里面会包含许多矢量图信息。
之后交给 Quartz Composer 按窗口的深度信息对这些数据做变换、加滤镜、点阵化之后,产生一个画面。有点像是渲染或者打印 PDF 文档的过程。这里会使用 OpenGL/Metal API,坐标原点在屏幕正中间。
虽然说,这套系统可以支持矢量图形数据,能实现设备无关的缩放,然而上层的 AppKit 接口只支持 2 倍缩放(使用 Retina 屏幕就会自动开启)。系统会将画面插值缩放(只缩小,不放大,使用 GPU 加速),得到一个最终渲染的画面。
如果你的逻辑分辨率没有恰好是物理分辨率的 1/2 (指的是两个坐标轴的数值),那么实际上显卡会渲染一个超出物理分辨率的画面。


Windows 的话,绘图几乎都是通过 API 调用实现的。
在没有窗口合成器的时代( Win XP 和以前的时代),每个窗口直接把像素信息写入显卡的帧缓冲区的一小块区域。
这个做法缺点就是当底部窗口未响应了之后,帧缓冲区的那部分区域就没办法更新。而顶部的窗口依然可以在那块区域绘图。这时候如果移动顶部窗口,因为底部窗口不更新自己负责的那块缓冲区域,会残留顶部窗口的画面。就像“纸牌”的通关画面一样。
后来有了 DWM,每个窗口只负责生成一块 Direct3D 纹理,由 DWM 将这些纹理合成最终显示的画面。应用程序可以调用 Direct3D/Direct2D (取代了 DirectDraw )/DirectWrite/GDI+(这个性能比较差)来绘制自己的窗口内容。
Direct2D API 的坐标原点在屏幕左上角,y 轴向下,x 轴向右,和大多数图形界面库的设计一致。
这些纹理数据可以做变换,加滤镜,也可以复用。因此 Windows 实现了很多窗口动画效果,像是 Flip3D 、打开和关闭动画、最小化动画、任务栏窗口缩略图、Alt+Tab 窗口缩略图等等。
从这个时候开始,Windows 的显卡驱动需要实现 WDDM 驱动模型,然后才可以开启 Aero 桌面效果。DWM 会调用显卡驱动接口实现桌面合成与渲染。
Win Vista 、Win 7 时代,不支持 WDDM 的显卡是不会使用 DWM 的。走 Win XP 那套。
Win 8 、Win 10 时代,DirectX 更新到了 11,引入了 WARP 这套光栅化引擎。DWM 也被移到内核里。在显卡不支持 WDDM,或者电脑根本就没有 GPU 的时候,WARP 会生成当前 CPU 的机器码来完成渲染计算。性能与 Linux 下的 Mesa LLVMpipe 相当,比苹果的软件渲染器快大约 50 倍。
如今的消费级显卡都实现了 WDDM 驱动模型。不像 Vista 刚发布的时代,大多数电脑都没办法开启 Aero 桌面。

当然,苹果电脑根本不需要考虑软件渲染器的性能,所有在售的苹果电脑一定带有 GPU (而 Windows 设备不一定)。

此外,曾经 Windows 游戏程序是可以独占整个显卡直接输出画面的。Mac 平台没有这种功能,虽然性能低了一些,但有一个好处是可以给全屏游戏画面应用屏幕色彩校准。
这一点倒是影响不大,因为 Mac 平台的游戏太少了。
当然 Windows 10 最近的更新引入了“全屏优化”这个玩意之后,也没法独占显卡输出了。

我才疏学浅,如果有什么不对的地方,欢迎指出。
2021-08-19 14:43:27 +08:00
回复了 Huozy 创建的主题 Apple 都 1202 年了,为什么有的 app 对静音的逻辑控制还这么搓
相比起来,MIUI 有静音时屏蔽媒体声音的开关,能满足只静音通知和全局静音两种需求
2021-08-19 11:09:52 +08:00
回复了 pphu 创建的主题 macOS 感觉自己是正版软件受害者
我没有在许可协议里找到关于不允许跨区购买的内容,你们觉得属于盗版的依据是什么?
2021-08-12 21:49:13 +08:00
回复了 blackbookbj 创建的主题 小米 小米平板 5pro 弄一个看电子书是不是还可以
看电子书,记笔记,看视频没有必要买 Pro 版本,1899 元(原价是 1999 元,现在优惠 100 元)的最低配版本就足够了。
2021-08-11 14:18:13 +08:00
回复了 xeathen 创建的主题 Apple M1 MBA 就是感觉不丝滑,这是为什么
内存压力出现黄色的时候,实际上已经用了非常多的内存了。至少 swap 要超过物理内存很多。8G 内存根本不适合做开发。
像这种情况还是绿色的:
![pic]( https://i.loli.net/2021/08/11/x3tEZOAXjahucp8.jpg)
2021-08-09 14:36:52 +08:00
回复了 soulsomuns 创建的主题 Apple 2021 年了。苹果手机电话录音有没有很方便的解决方案?
@icyalala 和那两者区分开来的原因是,你和对方打电话的时候,通话的内容是你合法取得的。而那些行为算是非法取得的。
2021-08-09 14:32:57 +08:00
回复了 soulsomuns 创建的主题 Apple 2021 年了。苹果手机电话录音有没有很方便的解决方案?
@icyalala 那么,哪条法律有规定了通话录音而不告知对方是侵权行为呢?这个要跟窃听、偷拍区分开。
2021-08-09 14:01:25 +08:00
回复了 soulsomuns 创建的主题 Apple 2021 年了。苹果手机电话录音有没有很方便的解决方案?
@icyalala 另外你说的那个其实是还有一条规定:
《新民诉法司法解释》第一百零六条 :对以严重侵害他人合法权益、违反法律禁止性规定或者严重违背公序良俗的方法形成或者获取的证据,不得作为认定案件事实的根据。
2021-08-09 13:58:04 +08:00
回复了 soulsomuns 创建的主题 Apple 2021 年了。苹果手机电话录音有没有很方便的解决方案?
@icyalala
按照我国《侵权责任法》的规定,一般侵权责任的构成需要同时满足四个条件,第一,侵权行为;第二,损害结果的发生;第三,行为人有过错,第四,侵权行为和损害结果的发生之间具有因果联系。

录下来的通话内容可能会涉及到隐私,但录下来的行为不构成侵犯隐私权。只有利用他人隐私作出损害对方利益的行为才可以称为侵犯隐私权。
1 ... 75  76  77  78  79  80  81  82  83  84 ... 86  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   6015 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 44ms · UTC 01:58 · PVG 09:58 · LAX 17:58 · JFK 20:58
Developed with CodeLauncher
♥ Do have faith in what you're doing.