IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    love 0
    流动
    发表于
    2024-10-10 21:37:48

    如何注册一个.sol域名

    Livid大佬新搞了个支持Solana的IPFS/IPNS网关,了解到还有一个.sol的web3域名。Solana域名服务(SNS)的目标是提供一种去中心化且可负担的方式,将域名(.sol)和链上数据连接起来。这些链上数据可以是SOL地址、 IPFS CID、图片、文本、或者任何其它的东西。 ...继续阅读 (98)


    love 0
    二丫讲梵
    发表于
    2024-10-10 18:05:12

    整理宛遇宝贝在24年十一期间的言行

    如要阅读全文,点击标题跳转。现在,李宛遇,你已将近 21 个月,很多事儿都能够理解,小嘴巴也开始慢慢能说几个字连着的话了。这次十一,我请了几天育儿假,让假期得以延长,从而能够与你有更多的相处时光,在这个过程中,我仔细观察,认真发掘,并记录下一些你说的话于做过的事儿。 ...继续阅读 (116)


    love 0
    Teacher Du
    发表于
    2024-10-10 16:43:13

    Linux 安全 Auditd 审计工具使用说明

    Auditd 是 Linux 系统中的一个强大的审计框架,它能帮助系统管理员监控和记录系统中的安全相关事件。杜老师整理了一些关于 Auditd 审计工具的详细使用说明。安装工具在大多数 Linux 发行版中可以通过包管理器安装 Auditd。例如,在银河麒麟高级服务器操作系统/CentOS 上,可以使用以下命令安装:1yum -yinstallaudit在银河麒麟桌面操作系统上,可以使用以下命令安装:1sudo apt -yinstallauditd audispd-plugins配置工具Auditd 的主要配置文件是/etc/audit/auditd.conf。此外,审计规则的配置文件通常位于/etc/audit/audit.rules。相关工具以下是 Auditd 中常用的工具:工具名称功能描述auditctl用于添加、删除审计规则,及查看审计规则等。aureport用于生成审计报告。ausearch用于搜索审计事件。auditspd用于将事件通知转发给其它应用程序。autrace用于跟踪进程。审计规则审计规则可以分为三类:控制规则、文件系统规则、系统调用规则。控制规则用于更改审计系统本身的配置和设置。例如,设置审计缓冲区的最大数量:1auditctl-b8192文件系统规则用于监控特定文件或目录的访问。例如,监控/etc/passwd文件写入和属性修改:1auditctl - ...继续阅读 (87)


    love 0
    quqi99
    发表于
    2024-10-10 16:35:27

    nova boot from iso (by quqi99)

    本来想review这个patch (https://review.opendev.org/c/openstack/nova/+/909611), 结果炸出一个CVE漏洞 (https://bugs.launchpad.net/nova/+bug/2059809)这个CVE所有的代码可参考(https://review.opendev.org/c/openstack/ossa/+/923301/1/ossa/OSSA-2024-001.yaml).如何搭建测试环境呢? ...继续阅读 (86)


    love 0
    运维咖啡吧
    发表于
    2024-10-10 15:53:41

    毕业旅行|皖南自驾DAY13 - 西溪南

    本次皖南自驾之旅的第13天,文章详细记录了作者参观中国状元博物馆和探访西溪南古村落的经历,描述了古村落的自然美景和丰富的文化遗产,以及在当地的愉快体验和美食推荐。 ...继续阅读 (95)


    love 0
    est
    发表于
    2024-10-10 15:24:00

    “中庸”的艺术 - 如跟需求方讨价还价

    翻到一个神贴How to make Product give a shit about your architecture proposal,标题直译就是《如何让沙雕产品经理接受技术改造》具体故事,原文非常值得一看。搞了这么多研发,产品经理各种水平的都遇到过一堆,最大的烦恼就是“我有个想法”,“今天就要”而全然不顾你当前技术架构的问题。到底是技术优先,还是业务优先?开发人员和销售非常普遍的冲突怎么处理?产品经理,老板,甲方,销售,实际上是研发的衣食父母。他们所有的诉求:产品不管你的技术问题,他们也不懂。他们只关心产品本身产品需要的是一个结果,而不是一个白板上巨复杂的分布式系统架构图产品是人,产品为人服务。他们也能理解有工程方面的顾虑,这也是他们找开发的原因。他们是来“讨价还价”的!开发是“乙方”,正如那个文章里的 水管工 故事一样,实际上是 “赢得信任” 的实施方。所以接下来的套路是:你先不要 what about,先别反驳说 but 。先按照理想的条件,全部答应下来,做一个理想化,全套,SSVIP,贵宾级别的报价,所谓platinum package。内部需求就把人力、服务器、时间、排期等成本按最坏的估计全部算出来。拿这套方案,给到需求方,一定要让他们很诧异的问出:“why” ,怎么这么麻烦啊!?这就是让产品对你的技术问题关心的机会!接下来,开发需要有礼貌,不卑不亢的,有理有据的 ...继续阅读 (117)


    love 0
    张 鑫旭
    发表于
    2024-10-10 15:10:38

    Nice! Safari也支持CSS @perporty规则了

    byzhangxinxufromhttps://www.zhangxinxu.com/wordpress/?p=11377本文可全文转载,独立域名个人网站无需授权,但需要保留原作者、出处以及文中链接,任何网站均可摘要聚合,商用请联系授权。一、姗姗来迟的支持先看兼容性图表📈:可以看到,@property规则Chrome在2020年的时候就支持了,而Safari浏览器姗姗来迟,2023年才支持,目前已经进入可以再生产环境使用的阶段(对兼容性要求不是那么严苛的项目)。@property规则属于CSS Houdini中的一个特性,可以自定义CSS属性的类型,这个特性在现代CSS开发中还是很有用的,最具代表性的例子就是可以让CSS变量支持动画或过渡效果。二、“变量种子计数器”的升级在19年的时候,我曾提过使用“变量种子计数器”来颠覆现有的CSS动画实现方式。传统的CSS动画都是一个动画定义一个 @keyframes,但如果动画类型多,那页面就会有多个不同类型的@keyframes,代码就会很啰嗦。而使用这里的“变量种子计数器”,所有的动画都可以使用唯一的一个@keyframes动画规则解决。详见文章:“使用‘变量种子计数器’扩展CSS动画更多可能性”但是,之前受制于浏览器的显示,其@keyframes规则是使用枚举的方式实现的,例如(中间部分代码省略):@keyframes seed { ...继续阅读 (119)


    love 0
    江南一点雨
    发表于
    2024-10-10 14:58:58

    3分钟理清QPS、TPS、RT 以及它们之间的关系

    在评估系统性能的时候,我们经常会听到 QPS、TPS、RT、吞吐量等等一些概念,包括在一些面试场景下可能也会遇到这些概念,我们来稍微梳理一下。做一个简单的概念扫盲。一 QPSQPS(Queries Per Second) 是每秒的查询率,它表示一台服务每秒响应的查询的次数。具体来说,QPS 反映了系统在高并发环境下处理请求的能力。一个高 QPS 的系统能够在单位时间内处理更多的请求,从而提供更好的用户体验和更高的吞吐量。相反,QPS 较低的系统可能在面对大量请求时会出现响应延迟或请求失败的情况。举个栗子:假设服务器 1 秒响应 500 次请求,那么此时 QPS 就是 500。二 TPSTPS(Transactions Per Second) 表示每秒事务处理的数量,一个事务表示客户端向服务器发送请求,然后响应的过程。举个栗子比如用户在 jd 上下单的时候,每当用户下单请求被服务器接受到之后,服务需要保存订单、扣减商品库存、确认支付等等这一些列的操作,所有过程都完成后,将结果响应给客户端。这个完整的过程就是一次事务,TPS 则表示每秒内可以完成多少次这样的请求。整体上来说,一个 TPS 包括了三个部分:用户请求服务器服务器自己的内部处理服务器返回给用户这样一个完整的过程就是一个 TPS。有的小伙伴分不清 TPS 和 QPS,简单来说是这样:如果是对一个查询接口压测,且这个接口内部不会 ...继续阅读 (115)


    love 0
    时倾
    发表于
    2024-10-10 14:08:42

    react 实现插槽slot功能

    背景在开发一个需求时,需要对原来的 form 表单组件代码复用并进行拓展。场景A 使用原来的 form 表单组件。场景B 在原来的表单组件基础上,新增一些表单项,新增表单项位置动态插入在原来的表单组件中,位置随意。需求复用表单组件,同时支持新增表单项。解决方案在 React 中,组件扩展和定制的能力,可以通过props.children和render props来实现。以上两种方式的缺点是:如果插入位置比较分散,需要定义children对象或多个 props,代码繁琐,不易维护。调研下来,目前貌似没其他好的方法...欢迎补充props.childrenprops.children 直接将内容作为一个HTML内嵌结构编写,将组件参数与内嵌结构分开写。children 可以是一个字符串, 数组,对象等类型。可以使用React.Children的方法来判断props.children 类型并处理。function Father() { return (我是父组件Father我是子组件Form1的children{{ title: (我是子组件Form2的title), content: (我是子组件Form2的content) }}) } function Form1 ...继续阅读 (148)


    love 0
    张善友
    发表于
    2024-10-10 13:38:00

    YoloDotNet v2.1:实时物体检测的利器 - 张善友

    【摘要】项目介绍YoloDotNet v2.1 是一个基于 C# 和 .NET 8 的实时物体检测框架,专为图像和视频中的物体检测而设计。它集成了 Yolov8 ~ Yolov11 模型,通过 ML.NET 和 ONNX 运行时实现高效的物体检测,并支持 GPU 加速(使用 CUDA)。YoloDotNet阅读全文 ...继续阅读 (117)


    love 0
    夕水
    发表于
    2024-10-10 11:42:18

    一些react使用小技巧(下)

    八. 测试 react 代码54. 使用 React 测试库有效地测试你的 React 组件想要测试你的 React 应用吗?请务必使用@testing-library/react。你可以在此处找到一个最基本的示例。55. React 测试库:使用测试演练场轻松创建测试用例难以决定在测试中使用哪些测试用例?考虑使用测试演练场从组件的 HTML 快速生成测试用例。以下是两种使用方法:方法 1:在测试中使用screen.logTestingPlaygroundURL()。此函数生成一个 URL,打开测试环境工具,其中已加载组件的 HTML。方法 2:安装Testing Playground Chrome 扩展程序。此扩展程序允许你直接在浏览器中将鼠标悬停在应用中的元素上,以找到测试它们的最佳查询。56. 使用 Cypress 或 Playwright 进行端到端测试需要进行端到端测试吗?请务必查看Cypress或Playwright。57. 使用 MSW 在测试中模拟网络请求有时,你的测试需要发出网络请求。与其实现自己的模拟(或者,但愿不会发出实际的网络请求),不如考虑使用MSW(Mock Service Worker)来处理你的 API 响应。MSW 允许你直接在测试中拦截和操纵网络交互,为模拟服务器响应提供了一种强大而直接的解决方案,而不会影响实时服务器。这种方法有助于维护受控且可 ...继续阅读 (132)


    love 0
    leftfist
    发表于
    2024-10-10 11:20:03

    Spring Boot项目使用多线程执行定时任务

    我在一个Spring Boot项目中,采用定时器执行一些操作,比如10秒就发送一次数据。这些操作有2个,如下所示。我就想,虽然这两个操作各自指定了时间频率,但如果其中一个操作非常耗时,会不会影响其他操作呢?答案是会。怎么办呢?AI告诉我,引入多线程。 ...继续阅读 (132)


    love 0
    nokiaguy
    发表于
    2024-10-10 10:30:00

    Elasticsearch实战应用:从理论到实践的全面指南

    本文详细介绍了Elasticsearch的实际应用场景及其在日志管理、全文检索和电商网站中的应用实例。首先,介绍了如何通过Logstash将日志数据导入Elasticsearch,并利用Kibana进行实时监控和可视化分析。接着,文章展示了Elasticsearch在全文检索中的应用,讲解了如何创建索引、插入文档、执行高级搜索等操作。随后,通过电商网站的商品推荐和多维度过滤示例,展示了如何利用Elasticsearch实现高效的商品搜索与推荐。文章还探讨了Elasticsearch的性能优化策略,包括分片管 ...继续阅读 (116)


    love 0
    nokiaguy
    发表于
    2024-10-10 10:00:00

    Python与Arduino:用Python控制物理世界

    本文介绍了如何使用Python与Arduino进行串口通信,通过pySerial库实现对物理设备的控制。文章详细讲解了如何配置开发环境、发送和接收串口数据,并通过三个实战项目展示了控制LED灯、读取温度传感器数据以及控制电机的过程。Python的灵活性与Arduino的硬件控制能力相结合,使得我们能够轻松实现从简单项目到复杂物联网系统的开发,提供了强大的扩展潜力。 ...继续阅读 (139)


    love 0
    nokiaguy
    发表于
    2024-10-10 10:00:00

    用Python实现图片转ASCII艺术:图像处理与字符艺术的完美结合

    本文详细介绍了如何使用Python将图片转换为ASCII字符艺术,展示了图像处理与字符显示的巧妙结合。通过Pillow库加载图像,调整图片尺寸并转为灰度图,然后将像素的灰度值映射为ASCII字符。最后,通过格式化输出生成完整的ASCII艺术图。文章提供了完整的代码示例,并介绍了如何保存ASCII艺术到文件以及进行优化和扩展。适合对图像处理和ASCII艺术感兴趣的读者。 ...继续阅读 (106)


    love 0
    Insus.NET
    发表于
    2024-10-10 09:56:00

    Windows 或Office 激活失败 错误代码 0x80072F8F - Insus.NET

    【摘要】国庆节收假回来,工作站上几台电脑出现问题,重新修复,更换硬件(主板)或是重装系统,最终需要激活成为正版来使用。 其中一台,在激活时,Windows 激活失败 错误代码 0x80072F8F,发现日期与时间不正确: 把时间改正之后,终于激活Windows。 哈哈......在另外一台电脑上,Windo阅读全文 ...继续阅读 (77)


    love 0
    海南胡说
    发表于
    2024-10-10 08:00:49

    本地VMware编译安装PHP和Nginx组成本地PHP调试环境

    我以前调试PHP代码,一直都是在真实环境中进行调试了,但这会影响到环境的运行,所以就想着本地安装个环境进行调试。 1、VMware® Workstation 17 Pro 17.5.2 build-23775571 2、Centos6.10 3、Debian12 4、PHP 7.0.33 (cli) (built: Oct 10 2024 09:07:20) ( NTS ) 5、Zend Engi... ...继续阅读 (97)


    love 0
    @1900\'Blog
    发表于
    2024-10-10 07:17:58

    独立博客自省问卷15题

    雅余哥发起的调查,回答一波 1、你的博客更新频率是多少?A.每周更新B.一周数篇:基本上每周都有把。C.一月1-2篇D.几个月一篇 2、你的博客上次更新是什么时候?A.本周:有节气这个系列在,基本上很稳定。B.上周C.上个月D.上季度 3、你的博客文章是原创的吗?A.坚持原创:都是自己写的,可能有部分引用的块。B.部分借鉴C.AI 帮我写的D.搬运别人的,而且不署名 4、你觉得自己的文章对他人有帮助吗?A.旨在对他人有启示B.多少有点意义:技术文章偏多一点,多少应该会有点帮助把。C.每日每周流水账D.自我陶醉就好,管他呢 5、你上次换博客主题/程序是什么时候?A.上周B.上个月:最近才从11ty换到AstroC.去年D.凭良心说,我多年都是一个主题 6、你上一次捣腾博客主题代码是什么时候?A.昨天,撸代码到凌晨B.每周必捣腾:经常会折腾,就像狂热的钓鱼佬一样。C.每月有那么一次D.一年有那么一次 7、你会对博客主题进行二次开发?A.直接配置使用,省心不折腾B.时不时自己改改,搞点新花样,换图片,换字体,爽:自然是这个选项。C.删除主题作者版权信息,改改样式,然后自我感觉良好D.改得面目全非,但保留原作者版权信息或注明 8、你多久打开自己博客自我陶醉一次?A.每天数次:基本上每天都会打开,看看评论之类B.每周一次C.看心情D.一般都是照镜子,不看博客 9、你近期对自己博客域名什么感受 ...继续阅读 (139)


    love 0
    人生若只如初见
    发表于
    2024-10-10 06:39:23

    Spring事务失效的常见陷阱与解决方案

    本篇通过一道面试题和一些实践,来拆解几个Spring事务的常见坑点。 原理 Spring事务的原理是:通过AOP切面的方式实现的,也就是通过代理模式去实现事务增强。 具体过程是:对包含@Transactional注解的方法进行拦截,然后重写,重新在方法里加入异常回滚的逻辑。而且,每个线程都是独立管理 ...继续阅读 (113)


    love 0
    Yiwei Zhang
    发表于
    2024-10-10 06:21:32

    三维点云配准 -- NDT 算法

    点云NDT算法(Normal Distribution Transform)是一种基于高斯分布的点云配准方法。与ICP算法相比,NDT算法更适用于不规则形状、噪声和部分遮挡的场景,本文记录相关内容。 ...继续阅读 (105)


    love 0
    Yiwei Zhang
    发表于
    2024-10-10 06:20:24

    三维点云配准 -- ICP 算法

    ICP (Iterative Closest Point) 算法是基于 EM(Expectation-maximization algorithm)思想的方法,采用交替迭代法优化得到最优值,本文记录相关内容。 ...继续阅读 (101)


    love 0
    伍华聪
    发表于
    2024-10-10 03:16:00

    基于Python后端构建多种不同的系统终端界面研究 - 伍华聪

    【摘要】在我们一般开发系统的时候,往往会根据实际需要做出各种不同的系统终端界面,如基于BS的,CS、APP、小程序等等,一般都是基于一个统一接入的Web API后端,本篇系统探寻对基于Python后端构建多种不同的系统终端界面研究,介绍一些基于Python后端开发的不同终端界面。阅读全文 ...继续阅读 (116)


    love 0
    阮一峰
    发表于
    2024-10-10 01:32:37

    后面试时代与 AI 刷题

    一、引言七月的时候,我写了一篇文章《AI 编程助手测评:GitHub Copilot vs 豆包 MarsCode》,推荐了后者。豆包 MarsCode 团队最近就邀请我,试用他们的新功能"代码练习",它专门用来准备面试和刷题。试用以后,我有很多想法。我觉得,AI 会改变程序员的面试,以后是AI 刷题的后面试时代。二、面试的 LeetCode 刷题现在的程序员面试,一般都有算法解题。为了准备面试,大家都会去刷算法题,最常见的就是使用 LeetCode 题库。LeetCode 是世界最流行的算法题库。它源自美国,专门收集各种面试算法题,目前已经超过了3000道,不少是互联网大厂的真题。很多同学坚持不懈,每天投入几个小时,做里面的题目,训练自己的算法能力。一般来说,至少要刷200题,面试才较有把握。(图片说明:上图是某个老外的刷题统计面板,他一年365天,每天都在刷题,一共刷了1500题。)三、AI 颠覆 LeetCode生成式 AI 出现后,越来越多的人发现,有了 AI,人肉刷题似乎不那么必要了。今年(2024)8月份,一位美国网友在 Reddit 论坛发了这样一个帖子。他说,自己写了一个脚本,让 AI 自动求解 LeetCode 算法题,一天之内做了633道题目,正确率达到了86%,成本只要9美元。这个帖子引起了巨大反响。既然 AI 可以提示正确答案,为什么不参考 AI 来准备面试 ...继续阅读 (205)


    love 0
    bigwhite
    发表于
    2024-10-10 00:06:33

    Go语言的新时代:新领导团队和未来规划

    本文永久链接– https://tonybai.com/2024/10/10/pass-torch-to-go-new-leadership-team在最近一期的GoTime播客“Russ Cox on passing the torch”中,主持人Angelica Hill邀请了Go团队的三个核心角色:前任Tech LeaderRuss Cox与现任Tech LeaderAustin Clements以及Go运行时和编译器的技术负责人Cherry Mui,一起讨论了Go的领导层交接以及对Go未来的规划。在播客中,这三人组成的Go的技术领导团队讨论了其内部的重要变动。担任Go技术负责人超过十年的Russ Cox正式卸任,将权杖交给了新的Go技术负责人Austin Clements。同时,Cherry Mui接任Austin之前的职位,成为Go运行时和编译器(也称Go core)的技术负责人。这些领导层变动标志着Go项目发展的一个重要时刻,Austin和Cherry都为各自的角色带来了新的视角,而Russ则转向探索人工智能和软件维护交叉领域的全新角色,继续为团队提供支持。Russ Cox:回顾12年的领导之路Russ Cox自2008年起参与Go项目,并于2012年成为其技术负责人。Russ分享了他卸任的想法,对他来说,这一决定是顺其自然的发展。他强调,定期更换领导者至关 ...继续阅读 (142)


    love 0
    Elmagnifico\'s Blog
    发表于
    2024-10-10 00:00:00

    日本游记

    Foreword记录一下日本所见所闻,打破了一些原有的刻板印象吧。本次行程大概是11天,独自一人,前期准备在这里,非穷游,主要以体验为主行程图主要去的地方集中在关西和关东https://www.google.com/maps/d/edit?mid=1v-s53adPoTN-5w6VixpqgGgfhLW3iew&usp;=sharing游记赶飞机这里经常会遇到一个问题,我有港澳通行证和护照+签证+机票,香港转机到国外到底选哪种方式?这里我查了好几个,说法各不相同,但是我去实践了一下其实都可以。首先我港澳通行证刚好没过期,所以入境香港的时候走快速通道,直接刷通行证入境即可,在机场离境的时候,同样刷通行证离开即可,此时对于通行证的消耗刚好持平,没有任何问题。如果是用护照+签证+机票就要走人工通道,这样就很慢。也有看到例子,有人在这个阶段混用通行证和护照,理论上也是可以的,两个系统本质上是联网的,出入会抵消,所以实际上可以刷开,但是如果遇到了查的严格的,不排除人工检查的时候发现你少了某一段行程,然后单独查验你的可能。但是依然可以这么操作,被查了装傻就行了https://www.mtr.com.hk/ch/customer/services/complom_checkin.html香港机场快线可以直接办理行李托运和预登机(预登记其实就是我们的值机,相同含义)有航班和地铁站限制但是实际上网签 ...继续阅读 (112)


    love 0
    血衫非弧の一存
    发表于
    2024-10-10 00:00:00

    macOS 模拟触摸板向下滑动

    今天需要在 macOS 上模拟触控板滑动事件,并且希望模拟自然的人类手势,即速度由慢到快。用 Swift 来实现,并控制滑动的时间间隔,目标是每隔 4 到 8 秒执行一次向下滑动的操作,滑动时速度逐步加快。简单记录一下:importFoundationimportCoreGraphicsfuncsimulateAcceleratingScrollDown(){lettotalSteps=25letinitialScrollAmount:Int32=-5letmaxScrollAmount:Int32=-25letinitialDelay:TimeInterval=0.1letminDelay:TimeInterval=0.02forstepin1...totalSteps{letscrollAmount=initialScrollAmount+(Int32(step)*(maxScrollAmount-initialScrollAmount)/Int32(totalSteps))letcurrentDelay=initialDelay-(initialDelay-minDelay)*Double(step)/Double(totalSteps)letscrollEvent=CGEvent(scrollWheelEvent2Source:nil,units:.pixel,wheelC ...继续阅读 (153)


    love 0
    美团技术团队
    发表于
    2024-10-10 00:00:00

    全域用户建模在美团首页推荐的探索与实践

    本文详述了全域建模技术在美团首页推荐系统的发展和演进。美团首页推荐算法团队通过多阶段递进式探索验证,在召回与排序模块引入多展位、多应用渠道的多源用户交互数据,并在落地过程中解决了美团多展位、多业务、时空场景强相关性的特点导致的严重跨域信号负迁移挑战。 ...继续阅读 (99)


    love 0
    张善友
    发表于
    2024-10-09 23:34:00

    .NET 9 RC 2正式发布 - 张善友

    【摘要】距离最终版本还有一个月的时间,Microsoft 已经交付了 .NET 9 的第二个也是最后一个候选版本。.NET 团队在公告帖子中写道[1],“当我们为 11 月的 .NET 9 正式发布 (GA) 版本做准备时,我们正在对性能、稳定性和任何其他优化进行最后的润色,使其成为 .NET 9 的最佳版阅读全文 ...继续阅读 (127)


    love 0
    诺多
    发表于
    2024-10-09 23:00:45

    《罗马假日》:一场甜蜜又苦涩的公主梦

    大家好啊!今天咱们聊聊这部老片子《罗马假日》。说实话,第一次看的时候,我还真有点不明白它为啥能成为经典。不过多刷几遍之后,我才慢慢品出了其中的滋味。故事简介:公主的24小时自由之旅故事很简单:一位来自某个小国的公主安妮,在例行访问罗马期间,因为受够了繁文缛节,偷偷溜出王宫,体验了一把"平民生活"。她遇到了美国记者乔,两人在罗马度过了美好的一天。最后,尽管互生情愫,但公主还是回到了皇室,记者也放弃了独家新闻。听起来是不是很像童话?不过别急,这个故事可没有童话那么简单。角色魅力:平凡中见真情安妮公主(奥黛丽·赫本饰):赫本的处女作就惊艳全场,她塑造的安妮既天真烂漫,又不失优雅。从被束缚的公主到自由自在的"平民",赫本的表演细腻入微,让人不禁为她着迷。乔·布拉德利(格里高利·派克饰):一开始想着独家新闻的乔,慢慢被安妮的真诚打动。派克的表演沉稳大气,完美诠释了一个内心挣扎的记者。Irving(埃迪·艾伯特饰):乔的摄影师朋友,看似滑稽,实则是整部电影的点睛之笔。他的幽默给沉重的情感带来了不少轻快。罗马:第三位主角说实话,罗马在这部电影里简直就是第三位主角。西班牙广场、许愿池、真理之口...这些景点不仅仅是背景,更是见证了安妮和乔感情的发展。导演威廉·怀勒用黑白画面,将罗马的浪漫与古典完美呈现。细节之处见真章再多看几遍,你会发现这部电影里藏着不少有意思的细节:安妮刚开始不会用拉链,到后来熟 ...继续阅读 (93)


    love 0
    linong
    发表于
    2024-10-09 16:22:58

    通过 AST 实现组件库替换升级

    年初接到一个任务将 semi-ui 替换到 antd,但是能人力预算不太够,所以基于工作量和效率选择了基于 AST 的替换方案。项目技术栈是 React + tsx为什么要使用 AST?AST(Abstract Syntax Tree,抽象语法树)是一种在计算机科学中表示源代码语法结构的树状数据结构。通过 AST,可以理解代码的结构和含义,实现代码分析、转换和操作。基于 AST 的替换方案可以快速而准确的对大量代码进行修改,提高开发效率和代码质量。还有什么方案?固定字符串替换。对于 import 和 tsx 都有严重的误伤。正则替换,编写复杂,嵌套难以识别。手动替换,重复性工作容易失误,耗费工时太多,适合小工作量的情况。方案比对方案工作量误伤import组件替换组件属性替换固定字符串替换✅😭😭😒😒正则😒😭😒😒😒手动😭✅✅✅✅AST✅✅✅✅✅Babel 简介Babel 是前端领域的必备工具,是一种源码到源码的转译器。在项目中可以让我们使用一些新的语法(展开运算符) 和 api(@babel/core),会在编译的过程中将 code 转为目标环境所支持的语法并引入 polyfillBabel 实际应用场景将()=>{}转为function(){}为Array.isArray添加 polyfill除了上面提到的编译转译代码之外,babel 也可以用来做静态分析,分析代码提取信息,然后生成 ...继续阅读 (129)

上一页 253/4404 下一页
沪ICP备19023445号-2号
友情链接