<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Lumoom的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Lumoom</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Lumoom]]></copyright><item><title><![CDATA[微软产品经理：你不能不知道的 6 个 Web 开发者工具]]></title><link>https://blog.youkuaiyun.com/Lumoom/article/details/121136014</link><guid>https://blog.youkuaiyun.com/Lumoom/article/details/121136014</guid><author>Lumoom</author><pubDate>Thu, 04 Nov 2021 09:45:09 +0800</pubDate><description><![CDATA[使用开发者工具是开发人员的日常，但多数人往往只使用其中的一小部分，很多功能其实都无人问津。在微软 Edge 项目部担任开发者工具首席产品经理的 Christian Heilmann 认为，开发者工具正变得越来越复杂和强势，要解决这个问题则需要意识到，开发者工具不该指望用户成为专家，而是要随时间推移引导他们变成专家。
以下内容节选自他近日发表的博文，源自他自己在使用工具、记录体验并查阅用户反馈时的真实经历，不仅罗列了一些开发者工具使用技巧，也提出了优化思路。
需要注意的是，本文中提及的“Chromium 浏览]]></description><category></category></item><item><title><![CDATA[PHP经典高级工程师面试题]]></title><link>https://blog.youkuaiyun.com/Lumoom/article/details/120523825</link><guid>https://blog.youkuaiyun.com/Lumoom/article/details/120523825</guid><author>Lumoom</author><pubDate>Tue, 28 Sep 2021 10:22:32 +0800</pubDate><description><![CDATA[1.PHP 如何实现不用自带的 cookie 函数为客户端下发 cookie。对于分布式系统，如何来保存 session 值。
这个题有点绕。考的还是 COOKIE 和 SESSION 的基础知识。服务端通过 set-cookie 命令来通知客户端保存 cookie。
只要按照 domain path 过期时间等规则 用 header 函数就可以实现。
分布式系统 session，集中处理。按我们公司的架构，为了实现高可用和高容灾，提供一个分布式的验签服务。具体的可以看下 redis 的分布式服务架构。
2]]></description><category></category></item><item><title><![CDATA[知乎热议：算法被吹上天了吗？程序员刷题只为面试？]]></title><link>https://blog.youkuaiyun.com/Lumoom/article/details/120488798</link><guid>https://blog.youkuaiyun.com/Lumoom/article/details/120488798</guid><author>Lumoom</author><pubDate>Sun, 26 Sep 2021 14:49:43 +0800</pubDate><description><![CDATA[算法只是面试敲门砖？
俗话说，“语言只是工具，算法才是程序的灵魂”。对于程序员来说，算法始终是一个绕不开的门槛。近两年，越来越多的互联网公司在招聘环节注重算法的考察。但对于程序员来说，真的有必要死磕算法吗？
近日，知乎上一条关于程序员是否要死磕算法的讨论热度颇高。题主自称自己在刚入门编程前认为算法很重要，但在入门之后却发现算法用处不大，因为题主在实际业务中遇到的问题和已经解决的问题都跟算法不沾边。那么问题来了，如果只是做编程的话，是不是没必要死磕算法？
不同岗位对算法的掌握程度不同
对于这个问题，有网友认为]]></description><category></category></item><item><title><![CDATA[10 个角度分析软件工程师应该知道的 100 件事]]></title><link>https://blog.youkuaiyun.com/Lumoom/article/details/120434384</link><guid>https://blog.youkuaiyun.com/Lumoom/article/details/120434384</guid><author>Lumoom</author><pubDate>Thu, 23 Sep 2021 14:34:59 +0800</pubDate><description><![CDATA[构建软件
过早优化是万恶之源。不要低估了这个说法的有效性。
你很少需要自己从头开始去开发一些东西，几乎每一种应用场景都已经有了相应的库和依赖项。所以，不要重复发明轮子。
搞清楚问题域是找到解决方案之前的第一步，但我们却经常会跳过第一步，直接去寻找解决方案。
不要太过于追求完美。首先，让它能够正常运行，然后再去优化。优先级最高的事情应该是先保证交付。
糟糕的程序员操心代码，优秀的程序员操心数据结构以及它们之间的关系。–Linus Torvalds
在代码注释中解释你为什么要写这些代码，而不是解释你在做什么。但]]></description><category></category></item><item><title><![CDATA[微软账户现在可以实现完全无密码化]]></title><link>https://blog.youkuaiyun.com/Lumoom/article/details/120342128</link><guid>https://blog.youkuaiyun.com/Lumoom/article/details/120342128</guid><author>Lumoom</author><pubDate>Fri, 17 Sep 2021 09:25:30 +0800</pubDate><description><![CDATA[9 月 15 日，微软宣布从现在开始用户可以删除所有密码，取而代之的是使用 Microsoft Authenticator 应用程序、Windows Hello、安全密钥或短信/电子邮件验证码登录微软账户。这也是微软无密码时代愿景的一个重要里程碑。
微软账户现在可以实现完全无密码化
“在过去的几年里，我们一直在说未来一定是‘无密码’的，今天我很高兴宣布这一愿景的下一步，”微软公司副总裁 Vasu Jakkal 在公告中表示，“从今天开始，你可以从你的 Microsoft 帐户中完全删除密码。”
萨里大学研究]]></description><category></category></item><item><title><![CDATA[服务器端编程语言报告出炉，PHP 独占鳌头十几年]]></title><link>https://blog.youkuaiyun.com/Lumoom/article/details/120303508</link><guid>https://blog.youkuaiyun.com/Lumoom/article/details/120303508</guid><author>Lumoom</author><pubDate>Wed, 15 Sep 2021 10:32:27 +0800</pubDate><description><![CDATA[今天 W3Techs 发布了一份历年来服务器端编程语言使用趋势报告，报告显示近十年来各项编程语言在服务端的使用情况，其中 PHP 在份额上牢牢占据榜首的位置，并且一直保持比较大的优势。
不老的 PHP，前进中的 Ruby
服务器端编程语言报告出炉，PHP 独占鳌头十几年
报告从 2010 年 1 月开始一直持续到 2021 年 9 月结束。2010 年开始 PHP 占有 72.5% 的份额，截止今天份额为 78.9%，几乎没有遇到比较大的波动。尽管最近几年 PHP 不再流行，大家也一直拿“PHP 是世界上最]]></description><category></category></item><item><title><![CDATA[消息队列上云挑战与方案：腾讯云的 Apache Pulsar 实践]]></title><link>https://blog.youkuaiyun.com/Lumoom/article/details/120283305</link><guid>https://blog.youkuaiyun.com/Lumoom/article/details/120283305</guid><author>Lumoom</author><pubDate>Tue, 14 Sep 2021 11:03:59 +0800</pubDate><description><![CDATA[云原生大潮风起云涌，企业不再停留在理念层面，目前已在多方面落地。消息队列作为关键技术基础设施之一，也在云原生时代面临着挑战和机会。本文从传统消息队列上云所面临的三大挑战说起，并以 Apache Pulsar 为技术案例，深入浅出地讲解了如何打造适配云原生的消息队列。希望本文能对大家提供参考。
1 背景介绍
如今，云原生的概念已经渗透到了软件开发的方方面面。云原生不再只是未来的设想，而是一个现在进行时。开发人员在开发设计之初就需要考虑未来如何在云原生环境上部署、运行服务，即如何“上云”。
在云上，消息队列将成]]></description><category></category></item><item><title><![CDATA[美团公开外卖配送中的“预估到达时间”算法规则]]></title><link>https://blog.youkuaiyun.com/Lumoom/article/details/120271464</link><guid>https://blog.youkuaiyun.com/Lumoom/article/details/120271464</guid><author>Lumoom</author><pubDate>Mon, 13 Sep 2021 17:24:38 +0800</pubDate><description><![CDATA[9 月 10 日，美团称于近日收到了市场监管总局等部门关于算法的指导意见，邀请了不同相关方一起探讨配送时间的计算规则——通过骑手恳谈会收集意见，邀请外部专家学者讨论算法的调整方向和细节，并在部分城市进行了试点和用户调研。
同时，美团首次公开外卖配送中的“预估到达时间”算法规则。根据美团的公开资料，其算法测算出的“预估到达时间”其实不是一个时间，而是四个时间，即“模型预估时间”和“三层保护时间”。
考虑到模型预估时间与现实情况不符将导致骑手配送压力增加的情况，算法从城市特性、配送过程分段累加和距离三个维度，额]]></description><category></category></item><item><title><![CDATA[TensorFlow 出现任意代码执行漏洞，团队宣布撤销对 YAML 的支持]]></title><link>https://blog.youkuaiyun.com/Lumoom/article/details/120203509</link><guid>https://blog.youkuaiyun.com/Lumoom/article/details/120203509</guid><author>Lumoom</author><pubDate>Thu, 09 Sep 2021 16:12:29 +0800</pubDate><description><![CDATA[TensorFlow 的维护，任重而道远。
TensorFlow 是一个庞大而复杂的系统，它依赖于大量的第三方库，例如numpy、libjpeg-turbo、PNG parsers、protobuf）。TensorFlow 或其依赖库可能包含一些漏洞，这些漏洞可能允许触发特殊输入造成的意外或危险行为。
日前，由于存在任意代码执行漏洞，谷歌 TensorFlow 团队宣布已撤销对 YAML 的支持。
YAML 是一个用于在进程和应用程序之间存储数据和传递对象的通用格式。许多Python应用程序使用 YAML ]]></description><category></category></item><item><title><![CDATA[Java 16 新特性介绍]]></title><link>https://blog.youkuaiyun.com/Lumoom/article/details/120126089</link><guid>https://blog.youkuaiyun.com/Lumoom/article/details/120126089</guid><author>Lumoom</author><pubDate>Mon, 06 Sep 2021 08:44:02 +0800</pubDate><description><![CDATA[本文要点
Java 16 和即将发布的 Java 17 引入了大量特性和语言增强，有助于提高开发人员的生产力和应用程序性能
Java 16 Stream API 为常用的终端操作提供了很多新方法，有助于减少样板代码的混乱现象
Record 是 Java 16 中的一项语言新特性，可简洁地定义纯数据类。编译器提供了构造器、访问器和一些常见 Object 方法的实现
模式匹配是 Java 16 中的另一个新特性，它简化了使用 instanceof 代码块完成的显式和冗长的转换，此外还有很多好处
Java 16 ]]></description><category></category></item><item><title><![CDATA[数据流动方式迭代：Netflix Studio 的 Data Mesh 实践]]></title><link>https://blog.youkuaiyun.com/Lumoom/article/details/120074506</link><guid>https://blog.youkuaiyun.com/Lumoom/article/details/120074506</guid><author>Lumoom</author><pubDate>Fri, 03 Sep 2021 09:29:49 +0800</pubDate><description><![CDATA[借助最新的数据网格平台（Data Mesh Platform），Netflix Studio 中的数据移动进入到了一个新阶段。这种配置驱动的平台在创建新管道时显著地缩短了前置时间，同时提供了新的支持特性，比如端到端的模式演进（schema evolution）、自助式 UI 和安全数据访问等。
背景
未来几年，Netflix 上的大部分内容都将来自其自己的工作室（Netflix Studio）。Netflix 电影或电视据从开始宣传到在 Netflix 上映，需要经历许多阶段。这种规模是前所未有的，并且带来]]></description><category></category></item><item><title><![CDATA[特斯拉是如何使用 Apache ECharts 的？]]></title><link>https://blog.youkuaiyun.com/Lumoom/article/details/120055821</link><guid>https://blog.youkuaiyun.com/Lumoom/article/details/120055821</guid><author>Lumoom</author><pubDate>Thu, 02 Sep 2021 10:36:24 +0800</pubDate><description><![CDATA[在ApacheCon Asia 2021大会的“数据可视化论坛”上，特斯拉 BI 团队全栈开发工程师孟繁超（Makefile 君）发表了题为“ECharts 的乐趣：我们在特斯拉使用它的经验”的演讲。本文是这次演讲的内容总结。
特斯拉是如何使用 Apache ECharts 的？
大家好，我是孟繁超，在网上的昵称是 Makefile 君，目前在上海特斯拉 BI 团队担任全栈开发工程师。我平时主要负责相关业务报表的研发还有架构方面的工作。本次分享为大家带来我们在特斯拉中国使用Apache ECharts改善业]]></description><category></category></item><item><title><![CDATA[Uber 是如何低成本构建开源大数据平台的？]]></title><link>https://blog.youkuaiyun.com/Lumoom/article/details/120032153</link><guid>https://blog.youkuaiyun.com/Lumoom/article/details/120032153</guid><author>Lumoom</author><pubDate>Wed, 01 Sep 2021 09:12:58 +0800</pubDate><description><![CDATA[随着 Uber 业务的扩张，为公司业务提供支持的基础数据池也在飞速膨胀，其处理成本水涨船高。当大数据成为我们最大的运维支出项目之一后，我们启动了一项降低数据平台成本的计划。该计划将问题分解为三大分支：平台效率、供应和需求。在这篇文章中，我们将讨论 Uber 为提高数据平台效率和降低成本所做的一系列工作。
大数据文件格式优化
我们的大部分 Apache®Hadoop®文件系统（HDFS）空间都被 Apache Hive 表占用了。这些表以 Apache Parquet 文件格式或 Apache ORC 文件格]]></description><category></category></item><item><title><![CDATA[一文看懂前端和后端开发]]></title><link>https://blog.youkuaiyun.com/Lumoom/article/details/120018787</link><guid>https://blog.youkuaiyun.com/Lumoom/article/details/120018787</guid><author>Lumoom</author><pubDate>Tue, 31 Aug 2021 15:19:13 +0800</pubDate><description><![CDATA[作为一名开发者，你可能会想：2021 年最好的软件开发技术和编程语言会是什么？它们又是如何被应用在软件开发当中的？如果你在思考这个问题，那就来对地方了。这篇文章将对前端和后端开发技术做一个对比，先从基本的开始，然后逐步比较它们的不同点，比如对开发技能的要求、发展潜力、职业生涯的发展和薪水，等等。
1、什么是前端开发？
前端开发主要涉及网站和 App，用户能够从 App 屏幕或浏览器上看到东西。简单地说，能够从 App 屏幕和浏览器上看到的东西都属于前端。
网站和移动 App 的前端
我们就以你现在正在浏览的]]></description><category></category></item><item><title><![CDATA[Angular、React与Vue，那个框架更好？]]></title><link>https://blog.youkuaiyun.com/Lumoom/article/details/115255316</link><guid>https://blog.youkuaiyun.com/Lumoom/article/details/115255316</guid><author>Lumoom</author><pubDate>Fri, 26 Mar 2021 21:07:32 +0800</pubDate><description><![CDATA[作为开发人员，您一定听说过知名的UI库—React、成熟的前端框架—Angular、以及最新的渐进式框架–Vue。显然，它们都有各种独特的优势和性能指标。本文将和您讨论这三种架构在不同方面的优缺点，以方便您在实际应用中做出选择。
许可证
作为首要考虑的因素，我们通常在选择开源框架或软件库之前，彻底检查它们的许可证。目前，React、Angular和Vue都使用着MIT许可证，因此它们为用户提供了有限的使用程度。您需要在使用之前，认真了解每种许可证的具体含义。
架构Angular
隶属于MEAN栈的Angul]]></description><category></category></item><item><title><![CDATA[快速上手React]]></title><link>https://blog.youkuaiyun.com/Lumoom/article/details/115143619</link><guid>https://blog.youkuaiyun.com/Lumoom/article/details/115143619</guid><author>Lumoom</author><pubDate>Tue, 23 Mar 2021 20:57:51 +0800</pubDate><description><![CDATA[web前端三大主流框架
1、Angular
大家眼里比较牛的框架，甚至有人说三大框架中只有它能称的上一个完整的框架，因为它包含的东西比较完善，包含模板，数据双向绑定，路由，模块化，服务，过滤器，依赖注入等所有功能。对于刚开始学习使用框架的小伙伴们，可以推荐这个框架，学会之后简直能颠覆之前你对前端开发的认知。使用 TypeScript能够提高代码可维护性，有利于后期重构。双向数据流很方便，但是等业务复杂之后，你可能就搞不清楚数据流了。还有令人不开心的脏值检查，以及directive的封装并没有解决视图与数据关]]></description><category></category></item><item><title><![CDATA[Vue技术栈开发学习之状态管理bus的使用]]></title><link>https://blog.youkuaiyun.com/Lumoom/article/details/114993157</link><guid>https://blog.youkuaiyun.com/Lumoom/article/details/114993157</guid><author>Lumoom</author><pubDate>Thu, 18 Mar 2021 22:55:42 +0800</pubDate><description><![CDATA[Bus
1新建组件store.vue,在路由列表注册,并在components目录下新建一个组件AInput.vue（自己 创建的组件最好带上前缀）
{
path:’/store’,
component:()=&gt;import(’@/views/store.vue’)
}
components的AInput.vue

&lt;input @input=“handleInput” :value=“value”&gt;//绑定input事件和value值


store.vue


//使用input组件
]]></description><category></category></item><item><title><![CDATA[5个小细节，提升卡片式UI设计的质量]]></title><link>https://blog.youkuaiyun.com/Lumoom/article/details/114890015</link><guid>https://blog.youkuaiyun.com/Lumoom/article/details/114890015</guid><author>Lumoom</author><pubDate>Tue, 16 Mar 2021 17:23:15 +0800</pubDate><description><![CDATA[大家好，我是Clip。今天为大家带来的文章是「卡片式」设计。这是一种易于使用的设计形式，卡片能承载很多信息，但也存在很多设计细节。
卡片是屏幕中最实用的元素，能承载图像、标题、信息概述等不同类型的内容。
例如，Google使用卡片式设计来更新新闻动态，每个卡片上都有图片、标题和概述，这有助于用户在不阅读整篇文章的情况下就能轻松理解主题。
一起来看看能够提升卡片设计质量的细节～
宝宝起名
1、有效使用图像
在卡片中使用图像可以使卡片看起来更具吸引力，还可以更有效地定义信息。
但是使用图像时必须非常谨慎。有时在]]></description><category></category></item><item><title><![CDATA[JavaScript 的 for 循环与双重 for 循环]]></title><link>https://blog.youkuaiyun.com/Lumoom/article/details/114820404</link><guid>https://blog.youkuaiyun.com/Lumoom/article/details/114820404</guid><author>Lumoom</author><pubDate>Mon, 15 Mar 2021 10:19:50 +0800</pubDate><description><![CDATA[for循环
for循环就是对数组的元素进行循环。
语法：
for (初始化变量; 条件表达式; 迭代语句) {
需要执行的代码块；
}
初始化变量：一般用来对循环变量进行初始化赋值。
条件表达式：作为循环条件，一个包含比较运算符的表达式，用来限定循环变量的边限。如果循环变量的值超出了该边限，则停止该循环语句的执行。
迭代语句：用来改变循环变量的值，从而控制循环的次数，通常是对循环变量的值进行递增或者递减的操作。
for循环执行顺序：
// 1. 声明变量；
// 2. 判断循环执行条件；
// 3. 代码块]]></description><category></category></item><item><title><![CDATA[vue基本知识点总结—面试必备]]></title><link>https://blog.youkuaiyun.com/Lumoom/article/details/114692449</link><guid>https://blog.youkuaiyun.com/Lumoom/article/details/114692449</guid><author>Lumoom</author><pubDate>Fri, 12 Mar 2021 11:54:02 +0800</pubDate><description><![CDATA[最近入职新的公司，整体来说还是不错的。前一阵子看了很多关于vue的知识点，自己理解着整理一下，再加深一下印象。也希望可以帮助到有需要的同学。理解错误的地方，欢迎指正。
1、对于Vue是一套渐进式框架的理解答：Vue是渐进的，没有强主张，是个轻量视图。它只做了自己应该做的事，没有做多余的事。
2、vue.js的两个核心是什么？答：数据驱动和组件化。
3、vue中的模板编译原理答：模板指的就是template。如果我们传了一个template，我们会把template转换成一个render函数，然后通过rend]]></description><category></category></item></channel></rss>