iOS 摸鱼周报 #82 | 去中心化社交软件 Damus

本期概要

  • 本期话题:设计开发加速器线下活动:女性开发者社区日;
  • 本周学习:Python 如何调用 Swift 程序
  • 内容推荐:涵盖现代 SwiftUI 编程探讨、可变视图、NSTimer、Swift Charts 等方面的内容
  • 摸一下鱼:去中心化社交软件 Damus;2022 年最后欢迎的 Chrome 插件;一款通过工作流驱动提效的办公工具 monday

本期话题

设计开发加速器线下活动:女性开发者社区日

@远恒之义:Apple 在 2022 年 10 月开展了 Apple Entrepreneur Camp(苹果企业家培训营)课程活动,主要面向女性、黑人和西班牙裔/拉丁裔创业者,帮助她们提供技术支持与免费服务。女性开发者社区日是针对中国女性开发者的特别活动,以此帮助更多的中国女性开发者熟悉了解 Apple 平台。相比之前的企业家培训营要求,本次活动降低了门槛,参会资格不再限制组织必须满足女性创业者与女性开发者。

App 和 App 内购买项目即将实行税率和价格调整

@远恒之义:2023 年 2 月 13 日起,哥伦比亚、埃及、匈牙利、尼日利亚、挪威、南非和英国 App Store 的 App 及 App 内购买项目 (自动续期订阅除外) 的价格将上调。从 2023 年春季起,App 和 App 内购买项目的定价功能升级将带来 700 个新增的价格点,开发者可更加灵活地管理全球各地区定价。

本周学习

整理编辑:zhangferry

Python 如何调用 Swift 程序

Swift 调用 Python 有现成的方案,就是 PythonKit,这个库是从 TensorFlow 迁移出来的,利用 Swift 里 @dynamicCallable@dynamicMemberLookup实现动态调用。

Python 调 Swift 则相对绕一些,核心思路是将 Swift 转成 C 语言库,然后利用 Python 的ctypes 去调用这个 C 语言库。大概流程如下:

1、导出 C 语言符号。

swift @_cdecl("myname") public func myname (x: UnsafePointer<CChar>) -> UnsafePointer<CChar>{ let ret : String = "My name is \(String(cString: x))" return UnsafePointer<CChar>(ret) }

Swift 在编译时会根据命名空间和参数进行符号签名,为了保证符号的统一性,使用@_cdecl固定函数签名。另外C 语言的字符串跟Swift字符串不同,将字符串转成UnsafePointer<CChar>类型指针。

2、生成动态库让 ctypes 引用

bash $ swiftc -emit-library modules.swift

生成的动态库为libmodules.dylib。有时候还会出现一些动态库依赖关系,为了让 ctypes 也能够找到这个库,还需要修改动态检索路径:

bash export DYLD_FRAMEWORK_PATH="path/to/depend_dylib_folder"

该环境变量的指定要在 python 脚本外部执行。

3、python 通过 ctypes 调用对应函数

需要注意的是不同语言之间的类型转换

| ctypes | Python | C | Swift | | -------- | ------ | ------ | ------ | | cint | int | int | Int | | cchar_p | str | char * | String |

关于ctypes使用可以参看官方文档:ctypes Python 的外部函数库。

以下是调用示例:

```python import ctypes

把对应动态库转成ctypes类型

modules = ctypes.CDLL('path/to/libmodules.dylib')

def pymyname(x): # 定义返回值类型 modules.myname.restype = ctypes.ccharp # python str to char y = ctypes.cchar_p(x.encode()) # char to python str return modules.myname(y).decode()

str = py_myname("zhangferry") print(str) # My name is zhangferry ```

内容推荐

本期将推荐近期的一些优秀博文,涵盖现代 SwiftUI 编程探讨、可变视图、NSTimer、Swift Charts 等方面的内容

整理编辑:东坡肘子

1、现代 SwiftUI -- 来自:Piont Free

@东坡肘子: 近期 Point Free 在其博客上发表了多篇免费文章,以探索现代 SwiftUI 开发的最佳实践。内容涵盖:视图沟通、可识别数组、状态驱动导航、依赖项、测试等内容。

2、可变视图 -- 来自:Chris Eidhof

@东坡肘子: _VariadicView 是 SwiftUI 提供的一个未公开 API ,它为布局容器提供了遍历子视图的能力。Chris Eidhof 在 Moving Parts 博客的基础上进一步对该 API 进行了研究,并提出了视图是列表的观点。

3、NSTimer Block 为什么不会触发循环引用?! -- 来自:wiiale

@东坡肘子: NSTimer 是 iOS Foundation 框架中一种计时器,在经过一定的时间间隔后触发,向目标对象发送指定的消息。本文将通过探究 NSTimer 与 Runloop 之间的关系来分析不会触发循环引用的原因。

4、Searchable -- 来自:Alex Grebenyuk

@东坡肘子: 从 iOS 15 开始,SwiftUI 通过新的 .searchable 修饰符开始支持搜索栏功能。Alex Grebenyuk 通过本文将其在 Pulse 应用中有关 searchable 的使用体验和心得分享给大家。

5、掌握 Swift Charts -- 来自:Majid

@东坡肘子: Swift Charts 是苹果的一个新框架,允许我们使用 SwiftUI 以声明性的方式可视化数据。Majid 将通过多篇文章对 Swift Charts 进行详尽介绍,目前已以完成:基础、自定义标记、标记样式等内容。

摸一下鱼

整理编辑:zhangferry

1、Damus:一个建立在去中心化网络上的社交软件,最近挺火的,被称为「推特杀手」,目前已上线 App Store,国区没有。它具有这些特点:

  • 你发的内容完全由你自己控制
  • 端到端加密,交流过程无法被其他人查看
  • 无注册限制,创建账户会生成一对公私钥,公钥表示你的id,可以让其他人找到你,私钥表示登录凭证
  • 无中心服务器,而是利用去中心化中继器来分发消息
  • 可编程,支持自定义机器人,用于处理消息分发和通知
  • 可以赚钱,利用比特币给帖子打赏

App 端目前功能还比较粗糙,可以通过 iris 体验这种社交形式。去中心化优点是自由,不会有人删你帖子,但缺点也明显,容易成为非法活动的温床。它能提供的价值有多大以及多大范围内能成为主流社交平台,还有待观察。

2、2022 年最受欢迎的 Chrome 插件:这些插件覆盖工作、学习、娱乐多个方面,列几个我感觉还不错的插件:

  • Tango:对于一个复杂的操作页面,如果我们想演示如何操作,可以利用 Tango 快速生成一个操作步骤指南。

  • workona:一个书签管理插件,我看大部分人使用 chrome 都会出现 tab 栏占满的情况,tab 管理对我来说也一直是一个头疼的事情。这个插件提供了一种解决方案,就是为所有页面和书签建一个管理页面,每次对tab的切换都通过这个管理页面进行。

3、monday:一个面相工作场景的项目管理平台,可以定制工作流来满足不同工作的需求,从而提高团队的一致性、效率和生产力。

4、Github 在个人信息页面新增了社交网络的链接,可以填四个链接:

关于我们

iOS 摸鱼周报,主要分享开发过程中遇到的经验教训、优质的博客、高质量的学习资料、实用的开发工具等。周报仓库在这里:https://github.com/zhangferry/iOSWeeklyLearning ,如果你有好的的内容推荐可以通过 issue 的方式进行提交。另外也可以申请成为我们的常驻编辑,一起维护这份周报。另可关注公众号:iOS成长之路,后台点击进群交流,联系我们,获取更多内容。

往期推荐

iOS 摸鱼周报 #81 | Apple 推出 Apple Business Connect

iOS 摸鱼周报 #80 | 开发加速器 SwiftUI 中管理数据模型

iOS 摸鱼周报 #79 | Freeform上线 & D2 本周开始

iOS 摸鱼周报 #78 | 用 ChatGPT 做点好玩的事

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/13804.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

这才是Excel未来的样子,口喊求和什么的弱爆了

Alex 发自 凹非寺量子位 | 公众号 QbitAI 不知各位是否有过被Excel支配的恐惧&#xff1f; 试想一下表格中密密麻麻的数据、让人云里雾里的工具菜单&#xff0c;还有一堆记不清楚的公式…… 现在&#xff0c;有位大聪明为了简化操作&#xff0c;搞出了一个为Excel而生的AI助手。…

中产,疯狂搞“香港身份”

作者| Mr.K 编辑| Emma 来源| 技术领导力(ID&#xff1a;jishulingdaoli) 风水轮流转&#xff0c;今朝到香港。去年K哥身边有几个朋友去了新加坡&#xff0c;今年才刚到四月份&#xff0c;就又有朋友开始在想办法搞香港身份了。这些人都是妥妥的中产&#xff0c;年龄在四五十…

聚观早报 | 首个国产新冠药停产;阿里巴巴创始人马云已回国内

今日要闻&#xff1a;首个国产新冠药停产&#xff1b;阿里巴巴创始人马云已回国内&#xff1b;家乐福中国内地首店关闭&#xff1b;好丽友漏税22万被罚12万&#xff1b;苹果iOS 16.4正式版来了 首个国产新冠药停产 腾盛博药的首款商业化产品&#xff0c;新冠中和抗体药物“安巴…

万字长文:一文看懂GPT风口,有哪些创业机会?

“故事发生在未来&#xff0c;2040年通用人工智能系统已经接管了城市的管理。其中一个AI系统的管理者因为妻子的背叛&#xff0c;修改AI系统的一个底层参数——让AI对人类的谎言、背叛怀有深深的厌恶。之后AI在每天对社交平台的监控中看到了无数谎言、背叛&#xff0c;报复的动…

硅谷新王登国会山,呼吁加强 AI 监管;马斯克任命推特新 CEO;数字媒体巨头申请破产;欧盟通过全球首个全面监管加密资产框架 | 经济学人第 21 周

1. 硅谷新王登国会山&#xff0c;呼吁加强 AI 监管 Sam Altman, the chief executive of OpenAI, the firm behind the ChatGPT chatbot, called for tighter regulation of rapidly developing generative artificial intelligence, such as by forcing disclosure on images …

chatgpt赋能python:Python找钱方案:让你的货币计算更加精准

Python找钱方案&#xff1a;让你的货币计算更加精准 Python作为一门流行的编程语言&#xff0c;广泛应用于数据分析、自然语言处理、Web开发等领域。在货币计算方面&#xff0c;Python同样具有优秀的表现&#xff0c;并能够帮助你处理找零、税率等问题。本文将介绍Python中常见…

chatgpt赋能python:Python中的Locals:简介

Python中的Locals: 简介 在Python编程中&#xff0c;locals()函数是一个非常有用的内置函数&#xff0c;它可以返回当前命名空间中的所有局部变量和它们的值。这个函数一般在调试和测试阶段使用&#xff0c;以便帮助开发者跟踪和调试代码中的变量。 在这篇文章中&#xff0c;…

chatgpt赋能python:Python教程:如何进行打折?

Python 教程&#xff1a;如何进行打折&#xff1f; Python 已经成为了世界上最流行的编程语言之一&#xff0c;它拥有丰富的库和工具&#xff0c;可以用于开发各种项目和应用程序。 在这个教程中&#xff0c;我们将介绍如何使用 Python 进行打折。我们将探讨如何使用 Python …

chatgpt赋能Python-python_float_精度

Python Float 精度问题详解——不容忽视的小数位 在处理数据时&#xff0c;我们经常需要使用浮点数。Python中的float数据类型被广泛使用&#xff0c;使得开发人员可以轻松地实现复杂的数学计算、数据分析等功能。然而&#xff0c;在使用Python浮点数时&#xff0c;程序员必须…

快要做外公的盖茨是怎样看ChatGPT和Web3

1月12日下午&#xff0c;微软联合创始人比尔盖茨&#xff08;Bill Gates&#xff09;在Reddit上的一年一度Ask Me Anything活动上对时下热门科技概念发表了看法。这是比尔盖茨第11次参加Reddit在线的问答活动&#xff0c;他回答了网友关于世界气候、AI、医疗等方面的问题&#…

JAVA | 学习日记 day8

目录 逻辑运算符 ​编辑 ^符号 例子 三元表达式 例子 标识符的命名规则 键盘输入语句 进制 进制的解释 原码、反码、补码 位运算符 逻辑运算符 遇到& 前后两个语句都要执行 而遇到两个 && 只执行第一个 ^符号 不同则为真 例子 第一个 if 判断…

ChatGPT救了我的狗命。。。

不要误会&#xff0c;别把标题理解错了。 标题里的“我”是个名字叫Cooper的美国人。狗是他家养的狗。 故事是这样的&#xff0c;这个美国人在Twitter上发文&#xff0c;表示他家有条狗生病了。治疗的前几天&#xff0c;病开始好转了。 但是不知道为什么&#xff0c;没过几天&a…

马云谈ChatGPT:机器只有“芯”,而人有“心”;雷军奖励……

TO要闻解读 马云谈ChatGPT&#xff1a;机器只有“芯”&#xff0c;而人有“心” 近日&#xff0c;马云来到云谷学校&#xff0c;和校园长讨论了未来教育&#xff0c;并首次谈到了对时下火热的ChatGPT看法。 马云表示&#xff0c;ChatGPT这一类技术已经对教育带来挑战&#xf…

【c++】2023杭州月薪个税计算(chatGPT帮忙加注释)

参考信息 杭州市的个人所得税起征点是每月5000元。 个人所得税税率标准&#xff1a; 1、工资范围在1-5000元之间的&#xff0c;包括5000元&#xff0c;适用个人所得税税率为0%; 2、工资范围在5000-8000元之间的&#xff0c;包括8000元&#xff0c;适用个人所得税税率为3%; 3、工…

软件测试两年半的我,谈谈自己的理解

软件测试两年半的我&#xff0c;谈谈自己的理解 从2020年7月毕业&#xff0c;就成为一名测试仔。日子混了一鲲年&#xff0c;感觉需要好好梳理一下自己的职业道路了&#xff0c;回顾与总结下吧。 一、测试的定位 做事嘛&#xff0c;搞清楚自己的定位很重要。 要搞清楚自己的定…

【播客】onboard26. ChatGPT与生成式AI的技术演进与商业未来

最近AIGC尤其是chatGPT的信息有些过载了&#xff0c;但像这次播客一样直接采访Google Brain研究员、Stability AI产品经理、Landing.ai前产品负责人的资源还是非常少见的。原播客大半个月前就发布了&#xff0c;但这次校对字幕的工作量也是空前的&#xff0c;因为新名词实在太多…

警惕这些“挂羊头卖狗肉”的高科技培训!

最近真的被误人子弟的教育骗子给气到&#xff01; 事情是这样的&#xff0c;6月11号&#xff0c;我在2023 开放原子全球开源峰会上&#xff0c;遇到了一位从广东来北京参会的老师。 这位老师透露&#xff0c;他来自一所职业技术学院&#xff0c;学校师资挺不错的&#xff0c;可…

看完GPT-4测评报告,人麻了

击上方关注 “终端研发部” 设为“星标”&#xff0c;和你一起掌握更多数据库知识 微软前两天发布了一个154页的GPT-4全方面测评报告&#xff0c;看完直接人麻了&#xff0c;确实太强了&#xff01;&#xff01; 说实话&#xff0c;很少看到这么多人转发关注一个论文&#xff1…

谷歌CEO撰文:要安全、负责任地搞人工智能;GPT-4通过CPA会计考试;cURL 8.1 发布|极客头条...

「极客头条」—— 技术人员的新闻圈&#xff01; CSDN 的读者朋友们早上好哇&#xff0c;「极客头条」来啦&#xff0c;快来看今天都有哪些值得我们技术人关注的重要新闻吧。 整理 | 梦依丹 出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09; 一分钟速览新闻点&#…

今天打开个税APP,我直接人麻了!

大家好&#xff0c;我是程序员小猿。 xdm&#xff0c;你们个税申报都完成了&#xff1f;每到每年3月份&#xff0c;我就很高兴&#xff0c;因为我基本上每年都会退税。作为一名博主&#xff0c;平时接点小广告&#xff0c;都是按劳务税20%走的&#xff0c;到每年3月份时&#x…