swiftolddriver / ios-weekly Goto Github PK
View Code? Open in Web Editor NEW🇨🇳 老司机技术 iOS 周报
License: Apache License 2.0
🇨🇳 老司机技术 iOS 周报
License: Apache License 2.0
美国专利商标局报告显示,苹果已经拿到了 iPhone X 的外形设计专利。不过据最新报道,此专利并非针对「刘海」造型提出,而是著重边框上的按键、天线断点、扬声器等处细节。另外,iPhone X 的「刘海」部分集成了多达 8 个传感器(比 iPhone 8 多 3 个),分别是红外镜头、泛光感应元件、点阵投影器。
https://github.com/kickstarter/ios-oss
Kickstarter 开源了他们的客户端代码,里面有非常多可以学习的内容,例如:
Enviroment
去保存,包括了缓存,设备状态,用户等等,有了这一个抽象的存在就意味着测试时可以随意模拟和切换状态,在测试和监控复现 bug 时非常有用。相关内容:
Jesse Squires 宣布停止更新 Swift Weekly,一直以来这个 News Letter 都是我了解 Swift 开发进度最主要的途径,现在要停更了,确实很可惜。
Jesse 提到停止更新的理由,主要是因为当初开始 Swift Weekly 的时候,Swift 刚刚开源,对于功能和设计的讨论非常非常多,并且 Mailing List 这种形式让人很难找到有价值的内容,所以这样一个 News Letter 在当时是非常有意义的。但现在 Swift 已经逐渐成熟,社区里的讨论变得越来越深入,而且 Swift 最近还从 Mailing List 迁移到了论坛上,相关资讯的获取已经变得越来越方便了,Swift Weekly 的存在价值也已经大不如前了,所以才打算停止更新。
但停更只是个人意义上的停更,Jesse 欢迎社区的人接手过去继续更新,并且在原文介绍了一系列接手的注意事项。
而 Swift Unwrapped 这个播客不会停止,每周 Jesse 跟 JP 还是会继续为我们介绍 Swift 社区发生的事情。
比较瞩目的是里面的分词功能,网上搜出来的基本都是用 CFStringTokenizer,几乎没人提到过这个处理方案
QUIC(Quick UDP Internet Connections)是基于 UDP 的 WEB 开发协议 TCP + TLS + HTTP2 = UDP + QUIC + HTTP2’s API
,由 Google 开发,希望其取代 TCP,加快网页传输速度。还计划提交至 IETF,成为下一代的正式网络规范。文中详细介绍了 iOS 平台下集成方式及与 HTTP2 的对比数据。
http://www.appstorereviewguidelineshistory.com
Apple 于 2017.12.21 更新了其 App Store Review Guidelines. 主要变化集中在以下几个方面:
集成过 iCloud, Passbook 或订阅类 iAP 将导致 App 无法转移到别的开发者帐号,即使之前集成过,新版禁用也不行。
https://developer.apple.com/library/content/documentation/LanguagesUtilities/Conceptual/iTunesConnect_Guide/Chapters/TransferringAndDeletingApps.html
https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20171204/042029.html
Chris Lattner 大神到了 Google 之后的第一个提案,让 Swift 可以和 Python 无缝交互,Chris 每次提案基本上都会带上 Demo,这一次也不例外,只用了不到一千行代码就把交互逻辑给实现了出来🤷♂️,大家可以直接下载这个 playground 试一下用 Swift 写 Python 是什么感觉。
另外 Chris 还提出使用一套 DynamicMemberProtocol 去优化了 Python 交互的语法, 与 Python 的交互都是依赖于字符串,画风大概是这样的 let a = np.call(member: "arange", args: 15).call(member: "reshape", args: 3, 5)
,如果实现了 DynamicMemberProtocol 的话,就可以在 Swift 里像 Python 代码一样调用 Python 的方法 np.arange(15).reshape(3, 5)
,编译器不会给遵循了这个协议的对象做静态检查,但这本质上只是一个语法糖,编译时还是会转化为前者的格式去调用。
https://mp.weixin.qq.com/s/mf-JDZrTHAS0ViJBbpC1cA
WCDB 是微信团队开源的 SQLite 数据库,适配移动终端的场景,具有以下特性:
WCDB 最早于 2017 年开源,iOS 平台最初只有 ObjC 版本,由于引入了 C++ 代码,ObjC 版本并不能直接 bridge 到 Swift。微信团队从 2017 年 9 月开始使用原生 Swift 重写 WCDB,并于 10.10 和 11.8 发布了 alpha 和 beta 版进行测试,终于在 2018.01.01 发布 WCDB Swift 的第一个正式版本。
WCDB Swift 使用 Pure Swift 编写,几乎不包含 Cocoa 的代码,且与 ObjC 版保持完全一致的功能。其基于 Swift 4.0 的 Codable 协议实现模型绑定,通过建立 Swift 类型与数据库表之间的映射关系,使得开发者可以通过类对象直接操作数据库。
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.