范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

从FullStack到ZenStack

  全栈改变了什么
  全栈开发的概念已经存在多年,但自 2022 年以来它的流行度急剧上升。因此,它的含义也发生了变化。
  本来全栈开发是指前端和后端技术都精通的人。这只是一个人的两个角色,因为技术和技能都不相同。前端开发人员大多使用 HTML/CSS/Javascript 并构建精美的 UI,而后端开发人员使用 PHP/Java/C# 来实现服务器端业务逻辑。
  与人类历史上的许多其他情况一样,工具通常是革命性变革的主要驱动力。让我们看一下该领域的一些具有代表性的工具。TypeScript
  感谢 TypeScript,我认为这是历史上第一次前端和后端开发人员能够并且愿意使用相同的编程语言来工作。你可能会争辩说 JavaScript 在 2009 年 Node.js 发布时已经实现了这一点。但我听说很多后端开发人员从 Java 或 C# 等强类型语言转过来,包括我自己;我们肯定不愿意使用Javascript。正如 Typescript 的核心开发人员 Hejlsberge 在最近的采访中指出的那样,主要原因是:
  他们根本无法扩展到大型 JavaScript 应用程序
  原因是:JavaScript 中没有面向对象的编程。没有类型系统,你就不可能在代码中指定你的意图,这使得维护变得非常困难。没有类型系统,就很难构建工具。Next.js
  感谢 Next.js,它允许您在同一框架中编写前端和后端代码。使用像 getServerSideProps 这样的函数,你实际上将前端和后端代码写在同一个文件中:
  或者,使用新引入的服务器组件,您实际上在同一个函数中编写前端和后端代码:
  由于它允许您在一个框架中编写整个 Web 应用程序带来的便利,它确实带来了一些负担,因为有时您可能会想:等一下,这段代码是在服务器中运行还是在浏览器中运行?tRPC
  多亏了 tRPC,它允许你忘记网络边界,像调用具有端到端类型安全的本地函数一样调用远程函数:
  "转到定义"和"重命名"也可以跨网络边界使用。所以有时候你真的忘记了你实际上是在调用远程过程。
  通过与 Zod 的集成,后端验证已得到处理。通过围绕React Query 的包装器,缓存也得到了处理。因此,除了前端工作之外,您唯一需要做的就是定义和实现路由器功能。
  看看google趋势,2022年左右你会看到和full-stack一样的leap time。
  我打赌你知道那个时期出现的其他工具改变了全栈开发的思维方式。因此,正如著名的"忒修斯之船"悖论:
  如果一艘船的所有部件都随着时间的推移被更换,它仍然是同一艘船还是一艘新船
  我会认为它是一个新的,因为你可以看到越来越多的人没有传统的后端技术和技能,也可以构建一个完整的网络应用程序,这在以前是不可能的。
  那么将新的全栈称为ZenStack怎么样?将其视为全栈的 Zen 模式,让您专注于构建重要的东西——用户体验,而不是像安全、可靠、可扩展的东西那样的可用性。
  后端复杂性去了哪里?
  虽然现在专注于用户体验很棒,但事情不能简单地消失,那么后端的复杂性去哪儿了?
  让我们看一下后端的一些典型任务设计和实现数据库模式
  这通常是后端开发人员的首要任务。这以前涉及创建数据库表,定义表之间的关系,在代码中定义相应的实体类等。此外,您还需要处理架构迁移,这既有风险又频繁。需要对数据库有很好的了解和 SQL 语言。
  感谢 Prisma,上述所有任务都被简化为一个直观的数据模型,如下所示:model User {   id        Int      @id @default(autoincrement())   createdAt DateTime @default(now())   email     String   @unique   name      String?   role      Role     @default(USER)   posts     Post[] }  model Post {   id        Int      @id @default(autoincrement())   createdAt DateTime @default(now())   updatedAt DateTime @updatedAt   published Boolean  @default(false)   title     String   @db.VarChar(255)   author    User?    @relation(fields: [authorId], references: [id])   authorId  Int? }  enum Role {   USER   ADMIN }
  您可以使用类型安全、自动完成的查询构建器和自动迁移来自动生成 Typescript 类型。开发API
  无论是使用 RESTful 还是 GraphQL,通常都需要花费大量时间来设计和实现一组可用于对数据库中的数据执行 CRUD(创建、读取、更新、删除)操作的端点。
  感谢 tRPC,正如您已经看到的,您几乎可以通过仅定义 tRPC 路由器来忘记这部分。实际上,通过使用 prisma-trpc-generator,您甚至不需要定义路由器。它可以直接从 Prisma 数据模型生成它。实现用户认证和授权
  身份验证曾经是一个非常具有挑战性的部分,因为现代应用程序通常倾向于基于 OAuth 的身份验证,它将身份验证委托给受信任的第 3 方。解释 OAuth 的工作原理是我最喜欢的面试问题之一,但很少有受访者能够很好地解释它。
  感谢 NextAuth,它提供了一个出色的解决方案来引入安全的复杂性,而无需自己构建它的麻烦。它附带了一个广泛的提供者列表,可以快速添加 OAuth 身份验证,并为许多数据库和 ORM(包括 Prisma)提供适配器。
  授权基于身份验证。它控制"谁可以对哪些资产采取什么行动"。所以本质上,它与访问控制是一样的。它甚至更加复杂,即使是经验丰富的开发人员也很难做到正确。不仅因为您需要对不同的访问控制模型有很好的理解,例如基于角色的访问控制(RBAC)、基于属性的访问控制(ABAC)和自主访问控制(DAC),而且还具有出色的架构由于逻辑分散在代码库中,因此能够使其清晰和可扩展。
  ZenStack来了,但这次是我们目前正在构建的工具包。遵循让您专注于构建重要事物的愿景,我们的主要目标之一是为您减轻访问控制的痛点。我们很幸运能够站在巨人的肩膀上。ZenStack 建立在 Prisma 之上,还与 tPRC 和 NextAuth 集成。因此,通过采用它,您可以获得上述这些工具提供的所有好处,以及模型中定义的声明性访问策略:
  业务逻辑
  这是大部分工作,对每个企业来说都是真正重要的。尽管如此,现在它已经变得容易得多,因为许多通用的工作已经被抽象掉了。越来越多的 SaaS 公司为支付、电子邮件、客户服务、CMS、CRM、电子商务等垂直功能提供开箱即用的解决方案。您需要做的就是与他们集成。
  但是,没有与这些第 3 方集成的标准。您需要仔细阅读每一个的文档、API 和 SDK,并将其集成到您的系统中。在我看来,这不仅耗时,而且如果操作不当,还会使整个系统变得不稳定。您是否也将此视为您的痛点?您是否希望以一种标准且集中的方式将这些第 3 方模型视为您自己模型的一部分,例如:// nextauth model Account {     id                String  @id @default(cuid())     userId            String     type              String     provider          String     providerAccountId String     refresh_token     String? // @db.Text     access_token      String? // @db.Text     expires_at        Int?     token_type        String?     scope             String?     id_token          String? // @db.Text     session_state     String?     user              User    @relation(fields: [userId], references: [id], onDelete: Cascade)     @@unique([provider, providerAccountId]) }  // paypal model Payment {     id      Int    @id @default(autoincrement())     orderID String     status  String }  // shopify model Order{     id                   Int    @id     billing_address      Address     cart_token           String     checkout_token       String     client_details       ClientDetail     current_total_price  Int }
  如果这是你所需要的,或者你有任何其他痛点希望可以解决,欢迎加入我们。让我们一起做一个更好的ZenStack。
  ==============================================================
  这个项目还是蛮有想法的,有点意思,虽然目前在GitHub上星标还不太多。我看好她!

腊月二十八,把面发,蒸馒头牢记3个诀窍,蓬松暄软不塌陷时间过得好快,转眼就腊月二十八了,再有两天就要过新年了,俗话说二十八,把面发,二十九,蒸馍馍,在以前二十八就算正式过年了,这个时候就要准备过年吃的面食,在过去社会发展低下,是没有酵胃不好的人能吃馒头吗?医生肠胃不适,最好少吃这4类食物导语根据2018年世界卫生组织的相关数据统计显示,全球大约共有5亿胃病患者,而中国就占据了1。2亿。与此同时我们国家的胃癌发病率在目前所有恶性肿瘤能够占第2位,而死亡率更是能够高居探营花市搭建接近尾声,心急街坊拍照打卡线下花街已基本准备就绪,就等街坊来逛!1月17日,记者探营线下迎春花市,发现牌楼摊位布置已接近尾声,有心急市民已在牌楼下拍照留念。记者从广州市市场监管局(市花市办)了解到,今年全市吉利控股2022年新能源汽车销量实现翻番全年总销量超230万辆新能源渗透率达27。9吉利控股集团日前公布的数据显示,2022年总销量超230万辆,同比增长4。3,其中新能源汽车销量超64万辆,同比增长100。3,新能源渗透率达27。9。2022年是吉利控股集团以电AYANEO推出Android掌机,搭载霍尔摇杆和OLED屏幕AYANEO的掌机一直都是以x86平台为主,即便是主打轻薄的AYANEOAIR系列亦如是。不过在昨天的2023年战略分享会中,AYANEO表示将计划推出他们的首款Android游戏还是被发现了!外媒赞叹中国科技势如破竹,汽车产量占比全球13你发现了吗?不知不觉间还是被外媒们注意到了,中国高新科技领域再度迎来新一轮的爆发,包括美国日本意大利韩国英国和德国在内的诸多国家的媒体纷纷感叹中国科技的喜报接踵而至,先后实现了5G送财童子再次降临?房价再启飙涨模式?当经济开启滞胀模式之后房地产的内在逻辑会发生根本性改变。在经济繁荣期,房地产市场主要受供需关系和货币环境所影响,由于经济蓬勃发展人们的购买力增强,就带来了房地产的繁荣但滞胀模式开启在深打拼港青岑明峰希望把内地优秀的商业模式带回香港在香港铜锣湾时代广场的街头,带着通关的喜悦,三年未回过家的香港青年岑明峰拎着行李,见到了向自己飞奔而来的母亲。一个长达数十秒的拥抱,和母亲的数度哽咽,累积了一千多个日夜的思念,终于益寿健脑舌操中医认为,舌通五脏舌尖属心肺,舌中属脾胃,舌根属肾,舌边属肝胆。经常活动舌体益寿延年。1舌抵上颚叩齿23百次,津液满口时分三次咽下。2赤龙搅海轻抵内齿龈正反各转九圈,再抵外齿龈正反柳州入选首批国家试点,广西惟一!近日,国家水上(海上)国民休闲运动中心评审标准颁布新闻发布会在北京举行。会上,柳州静兰水上运动中心被国家体育总局水上中心授予证书,成功跻身于第一批国家水上(海上)国民休闲运动中心试狂刷兔年新体验凯莉喊你共赴一场迷你凹凸大赛沙盒游戏开年大作!新年伊始,迷你世界与备受瞩目的国漫IP凹凸世界联手,强势开启2023年运营开门红,拉开二次元IP联动大幕。1月12日,迷你世界正式上线与凹凸世界的联动玩法,为游戏
探究罗马帝国,对埃及的征服过程,建设军事营地的目的罗马帝国对埃及的征服背景和目的涉及多个方面,包括政治经济和军事等因素。在公元前30年之前,埃及由托勒密王朝统治,但该王朝对罗马帝国的影响力逐渐减弱,使得罗马有机会在该地区扩张势力。一天吃一个鸡蛋的人,与不吃鸡蛋的人,有什么差别?导语这个时代,看似健康的生活,却伴随着很多疾病,近年来,疾病的发病率普遍上升,许多人处于亚健康状态,因此,人们不得不注意健康的方式和方法,养生已经成为大多数人最喜欢的养生方式,以达武汉感统训练是不是智商税?感统失调能预防吗?武汉的王女士,最近有些想不通,三岁的儿子因为说话晚,被医生诊断为感统失调,推荐到一家早教训练中心做康复。让她没有想到的是,同事中竟然有很多孩子,都因为各种原因,比如做事拖沓多动等表每天坚持吃1个鸡蛋,对身体是好是坏?最新研究来了!鸡蛋丢掉蛋黄,蛋黄胆固醇高,影响心血管。每天吃1个鸡蛋,患上糖尿病和高血压的风险大大增加!这让很多人对自己的饮食习惯产生了怀疑,每天坚持吃1个鸡蛋,对身体是好是坏?01研究每周吃5突发地震!部分途经安徽列车暂停运行3月8日5时15分广东河源市东源县(北纬23。84度,东经114。52度)发生4。5级地震,震源深度10千米受地震影响部分途经安徽列车临时停运3月8日5点18分,广东河源市4。7级红楼梦番外篇宝玉来在太虚幻境才知道,原来宝钗才是自己的救星导语书接上回,宝玉在太虚幻境遇到了自己的大姐元春,不仅明白了大姐的死因,还了解了金玉良缘的真相。随后便眼睁睁看着大姐顷刻间如云烟一般,消失在自己的面前看到大姐离去,宝玉忽觉心慌气促李斯丹妮同样是中性风,为何我无法复制李宇春的成功?一眨眼的功夫,距离超级女声已经是过去了快20个年头,曾经舞台上的追梦女生,如今大多数已经从娱乐圈中消失了。事业成就最高的,自然是李宇春和张靓颖两位,一个得益于中性风,一个则是女王风量子时钟破解时间之谜西班牙趣味月刊2023年2月号刊登题为时间之谜与量子时钟的文章,作者是西班牙天体物理学家米格尔安赫尔萨瓦德尔。内容编译如下德国作家迈克尔恩德明确表示这个世界有一个巨大的谜团,但它又苏联的疯狂计划,深度钻探,挖穿地球小时候,每当我们挖沙子时,常常有这样的想法把地球挖穿,直接通向别的国家。人类可以挖穿地球吗?真有人这么干过。苏联曾有一个计划叫做Kola深度钻探计划,这是人类历史上最深的钻井项目之上海文旅局长什么时候卷起来?头条创作挑战赛太卷了!要说今年最大的内卷,各地的文旅局长可谓是当仁不让!2月8日,四川省甘孜州道孚县文旅局长降泽多吉化身宇航员格萨尔王手工艺人等角色,中英文无缝切换介绍家乡美景,迅体图若多特时隔11年再夺德甲冠军,球队将获得600万欧奖金根据体育图片报的报道,如果多特蒙德时隔11年后再次赢得德甲联赛冠军,球队将会获得600万欧元的冠军奖金。多特球员们已经和俱乐部总监凯尔协商了这个奖金,相比之下,当时201112多特