千御的2023年终总结-花苞应沉淀,静待绽放

时间如流水,悄无声息地从指尖划过,似乎没有留下任何痕迹,但却又刻画了不可逆的回忆,又到了一年的年终,尤记得去年我给自己的关键词是"阴天更应该打开窗帘",今年更是艰难的前行。

2023年对于我们国家来说都是特别的一年,这是我们国家放开疫情后的第一个完整年,尤记得被疫情折磨的人们生活工作如此不便,上半年大家都在加大马力去把逝去的补回来,旅游业开始复苏,紧接着娱乐业像电影、演唱会话剧、音乐会等线下会场开始火爆。对于身处娱乐业的我来说也是深有体会,公司的业务量在上升,加班也在变多。

但于此形成鲜明对比的是房地产的见顶和股市的低迷。对于房地产来讲,人口首次减少,国家对于房地产行业债务的控制,随着行业专家的负面解读,导致大家出现情绪持续下行。虽然我们没有买,但是租房也会感觉到,价格同样出现下滑,我们正在面临从浦东航头搬到周浦,往市中心差了5公里的路程,但是房价却几乎没有涨。另外股市更是被股民们吐槽,大A已经自2015年的5千点后持续了7、8年在3千点左右徘徊。这估计是绝大多数股民和基民都没有想到的。这和内部因素,国内疫情防控、人口红利退去、房地产行业极速萎缩有着很大关系,其次对于外部因素来讲,受中美贸易制裁影响颇深。

上面分析了一下大环境,下面开始进入正题哈,说说我这一年做了什么吧

工作和成长

技术分享

今年在公司做了3个技术分享

1、关于票价年龄限购的算法分享

问题是要根据用户选择的票价规则(会有年龄限制,如10-20岁限购一张),等用户选择观演人的时候会在代码里判断是否可以匹配,其中用到了比较复杂的匹配方法,最终抽象出通过回溯算法来解决是否可以匹配,输入输出大致如下,有兴趣的可以研究一下,也可以在评论区里和我探讨:

php 复制代码
// Input:
canMatch(
        [
          {
            min: 10,
            max: 20,
            maximum: 1,
          },
          {
            min: 15,
            max: 25,
            maximum: 2,
          },
          {
            min: 20,
            max: 30,
            maximum: 2,
          },
        ],
        [16, 17, 22, 23, 12]
  ){
  return matchAll;
}
  // Output:
  true/false

回溯算法参考

ini 复制代码
/**
 * limitRule 为不重复的规则集合
 * ages 为待匹配人的年龄
 * return 是否可以匹配
 */
interface LimitRule {
  min?: number;
  max?: number;
  maximum: number;
}
export default function canMatch(
  limitRules: LimitRule[],
  ages: number[]
): boolean {
  let matchedCount = 0;
  const ruleMap: Record<
    string,
    { minAge: number; maxAge: number; maximum: number; matched: number }
  > = {};
  limitRules.forEach((limitRule) => {
    const { min, max, maximum } = limitRule;
    const minAge = !min ? 0 : min;
    const maxAge = !max ? Infinity : max;
    const ruleKey = `${minAge}-${maxAge}`;
    ruleMap[ruleKey] = {
      minAge,
      maxAge,
      maximum,
      matched: 0,
    };
  });
  const total = ages.length;
  function backtracking(index: number) {
    if (matchedCount === total) {
      return;
    }
    const currentAge = ages[index];
    for (const ruleKey in ruleMap) {
      const rule = ruleMap[ruleKey];
      const { minAge, maxAge, maximum, matched } = rule;
      if (currentAge >= minAge && currentAge <= maxAge && maximum > matched) {
        rule.matched++;
        matchedCount++;
        backtracking(index + 1);
        if(matchedCount === total) return;
        rule.matched--;
        matchedCount--;
      }
    }
  }
  backtracking(0);
  return matchedCount === total;
}

关于浏览器原理的分享,文章篇幅有点长,我贴个链接

关于前端监控告警的技术分享

因为node后端用了集群来做,所以用到了很多前端不会接触到的技术,如通过zookeeper来做任务调度,通过数据库乐观锁来同步数据。整个实现下来还是很有趣的

软考中级

当时因为公司在申请高新技术企业,正统计员工谁有软考证书。正式因为这个我想着,可能对未来落户也有帮助,最重要的也可以温习下很多软件相关基础知识,确实可以考一个了,于是我便买书查资料,在B站上找视频(B站上确实有很多好的视频,对软考有很大帮助,他们会分析考试重点,出一些历年真题),准备了大概2个月,最终成功上岸。

生活和身体

儿子

生活上最关注的还是宝宝,现在每天回家会不自觉的在路上跑起来,可能就是为了能早点看到宝宝,听到那一声"爸爸",那真是清脆悦耳。宝宝到了15个月的时候还没有独立走路,我们也从原来的不着急变得有些慌乱,查资料问别人,不由自主变得焦虑,以为孩子是不是哪里发育不健全。好在宝宝在没到16个月的时候先是在床上自主迈出了人生的第一步。慢慢的开始熟练,我们也放下了悬着的心。可能每个家长都会有类似的焦虑吧!

放几张陪小家伙去上海动物园的照片,虽然他比较小,但是能发现他对于一些花花草草和小动物都是比较感兴趣的。

添加图片注释,不超过 140 字(可选)

添加图片注释,不超过 140 字(可选)

添加图片注释,不超过 140 字(可选)

添加图片注释,不超过 140 字(可选)

身体

今年公司组织了体检,我和几个同事也是积极的参加了,比想象中的情况更糟些,除了查出之前的已知的尿酸高外,又查出了脂肪肝。这些现代职业病非常常见,但仍应引起我们重视,我也痛改前非,开始从自身改变,首先是饮食,在家人的支持下,我不再中午在公司旁边吃些油性很大的午餐,而是吃父母早晨做好的饭,带到公司中午热下后吃,这样就没有那么油了。另外晚饭我也会有意地避开油炸食物,而选择一些清淡的饭菜。

对于运动,虽然现在大部分时间在陪孩子,我也会在上下班地铁上从走电梯改为走楼梯,到家后会引导孩子一起做些有氧运动。积少成多,相信会有一些改观。

对于作息,也规律了许多,坚持不熬太晚的夜

理财

今年的股市和基金基本是以亏损为主基调,但我任然坚定的认为现在是绝对的低谷,做过股市,学过巴菲特和彼得林奇价值投资的都知道当下的A股市盈率处于历史底位。正因如此,我买入了几只市盈率还不错的新能源股宁德时代和特变电力。另外一个加仓的是小米,也是因为我对小米价值观和雷军的认可。相信后面有资金我会持续投入。

总结

因为去年也用到了关键词,总结下来我觉得今年的关键词应该是"花苞应沉淀,静待绽放"

同时希望大家和我一起坚持乐观心态,时机不成熟时就沉淀积累,静待花儿绽放的那一天。锻炼身体,健康饮食,规律作息。

相关推荐
WEI_Gaot3 分钟前
zustand 基础和进阶
前端·react.js
程序员Qian5 分钟前
从开发天气MCP服务入门什么是MCP
前端
用户2031196600967 分钟前
sheet的基本用法
前端
火星思想13 分钟前
都2025年了,还在问构建工具是干嘛的?
前端·前端框架·设计
杨进军16 分钟前
MutationObserver 实现 iframe 自适应高度
前端
火星思想17 分钟前
Promise 核心知识点(非基础)
前端·javascript·面试
前端大白话18 分钟前
炸裂!10个 React 实战技巧,让你的代码从“青铜”秒变“王者”
前端·javascript·react.js
Paramita18 分钟前
Koa源码解读
前端
用户614722537720318 分钟前
JavaScript 性能优化实战:从理论到落地的全面指南
前端
专业掘金19 分钟前
0426 手打基础丸
前端