diff --git a/blogs/2023/2023-11-19/index.md b/blogs/2023/2023-11-19/index.md new file mode 100644 index 0000000000..3e90e448a5 --- /dev/null +++ b/blogs/2023/2023-11-19/index.md @@ -0,0 +1,40 @@ +--- +slug: 11月19日内容汇总 +title: 11月19日内容汇总 +authors: [garfield] +tags: [] +--- + +## 🌟 AI 相关 + + + +## ⭐️ Golang 相关 + +[实战!接口中的大事务,该如何进行优化](https://mp.weixin.qq.com/s/pLMVzx06h1ZMTfF8YOJVJQ) + +[用了这么多年Docker,殊不知你还有这么多弯弯绕!](https://mp.weixin.qq.com/s/zptQWV-iqrhEU1U4UFTqrg) + +[Kubernetes上生产环境后,99%都会遇到这2个故障](https://mp.weixin.qq.com/s/2v5xS_FQI0HQLCkCzn_waA) + +[Go语言爱好者周刊:第 204 期 —— Go 14 周年](https://mp.weixin.qq.com/s/KCxwi4FBBrS4r6_kDNi9QA) + +## 📒 前端相关 + +[Introducing GPTs。](https://openai.com/blog/introducing-gpts)OpenAI 正在推出一种新的定制版本的 ChatGPT—— GPTs。用户可创建专门用途的 GPT,无需编程知识,方便在日常生活、工作或学习等各种场景中使用,甚至可以和他人分享。用户可以在 chat.openai.com/create 上进行创建试用。ChatGPT Plus 和企业版用户今天就可以试用,包括 Canva 和 Zapier AI Actions。此外,本月晚些时候,OpenAI 将推出 GPT 商店,展示被认证的开发者的作品。在未来几个月,GPT 使用者也将有机会通过使用频率赚钱。OpenAI 表示,GPT 的所有措施都考虑到了隐私和安全,用户完全可以控制自己的数据。此外,开发者也可以将 GPT 连接到真实世界,定义自定义动作,连接到数据库,插入电子邮件,或者使用购物助手等。企业版用户也可以部署仅限内部的 GPT,满足特定使用场景,部门或具有专有数据集的需求。 + +[Vue design patterns guide。](https://www.patterns.dev/vue)Vue是一个流行的用于构建用户界面的渐进式JavaScript框架。与其他的全功能框架不同,Vue被设计为可逐步采用,这意味着其入门易如jQuery,但与现代化工具和支持库结合使用时,有潜力支持复杂的应用程序。理解和利用Vue的模式可以大大帮助编写清晰、高效和可维护的代码。本站将详细讲解Vue的特定模式和行为,包括可组合函数、脚本设置、状态管理、提供/注入、动态组件等概念。无论你是初学者,还是希望更好地理解一些有用的模式,这里都能提供帮助。 + +[Github 推出新的字体。](https://monaspace.githubnext.com/) + +[Rust 在 nightly 版本中通过并行前端技术加速编译过程。](https://blog.rust-lang.org/2023/11/09/parallel-rustc.html)Rust 编译器的前端现在可以使用并行执行功能,以大大缩短编译时间。用户可以通过使用 - Z threads=8 选项在夜间编译器上尝试此功能。这项功能现在还处于实验阶段,预计将在 2024 年的稳定版编译器中进行发布。通过使用 Rayon 实现细粒度的并行任务,新的前端可以并行执行许多编译任务。用户可以通过 - Z threads 选项打开多线程模式。测试结果表明,编译时间可以减少多达 50%,但结果取决于代码的特性和构建配置。尽管并行前端运行在单线程模式下,编译时间一般仅慢 0% 到 2%。因此,用户应几乎不会注意到增加的延迟。此外,Rust 编译器的实现遵循 jobserver 协议,将创建的线程数量限制在内核数量以内,因此不会出现效率低下的情况。 + +[《你为什么需要 React Query》。](https://tkdodo.eu/blog/why-you-want-react-query) 文章主要讨论了 React Query 的实用性和特性,反驳了一些声称不需要 React Query 进行数据获取的观点。作者认为,尽管像 fetch-in-useEffect 这样的标准例子看似简单,但在处理边界情况和状态管理时,会引入诸多复杂性和问题。反观 React Query,它能解决这些问题并简化开发。优点包括自动防止竞态条件,免费获得加载、数据和错误状态,显然分离没有数据的状态,根据需要获取前一个类别的数据或错误等。作者最后挑战读者在下一个项目中尝试使用 React Query,他认为这不仅可以使代码更加易于维护和扩展,而且可以提供更强大的功能。 + +[《re-re-reselct - 简化 React 状态管理》。](https://causal.app/blog/re-re-reselect) Causal 博客文章介绍了他们设计和实现的状态管理解决方案——Causal Selectors。文章先分析了管理复杂网页应用中状态数据的挑战,然后解释了两种类型的 Causal Selectors —— 叶子选择器和组合选择器的工作原理。文章还阐述了它们如何优化性能,减少不必要的重渲染,并与React进行整合。但新框架的初步效果并不理想,所以他们通过优化选择器的性能和订阅管理,最终使其性能回到原始水平,同时使状态管理更容易使用。他们计划完成所有组件的迁移,缓存拓扑排序以增加速度,并将状态从Redux移出,以便更好地管理后端查询的状态。 + +[《利用 NextJS、Trigger.dev 和 GPT4 打造一款简历制作工具》。](https://dev.to/triggerdotdev/creating-a-resume-builder-with-nextjs-triggerdev-and-gpt4-4gmf) 本文教你如何使用 NextJS、Trigger.dev、Resend 和 OpenAI 创建一个简历生成器。内容包括基本信息(如名字、姓氏以及最后工作的地方),生成和创建 PDF, 最后发送给你的邮箱。我们使用 NextJS 创建一个简单的表单,使用 react-hook-form 进行字段验证和表单信息保存,利用 NextJS 提供的路由处理网络请求。我们利用 Trigger.dev 进行后台任务处理,例如用 ChatGPT 生成内容,创建 PDF 和通过邮件发送。然后通过 OpenAI 构建 ChatGPT,通过 jsPdf 库创建 PDF,最后通过 Trigger.dev 的 Resend 集成包实现邮件发送。 完整的源代码可以在 Github 上找到。 + +[《React 设计模式》。](https://dev.to/refine/react-design-patterns-230o) 本文介绍了 React 设计模式,包括容器和演示模式,钩子组件组合,使用 Reducer 的状态管理,使用 Provider 的数据管理,使用 HOCs(高阶组件)进行组件增强,复合组件,属性组合,受控输入以及使用 fowardRefs 管理自定义组件等。通过运用这些设计模式和最佳实践,可以提升代码质量,推动团队协作,并让你的应用变得更加可扩展、灵活、可维护。 + +[MDH 前端周刊第 113 期:Angular.dev & 17、pacquet、设计模式、Rust Prettier 悬赏](https://mdhweekly.com/weekly/issue-0113)