hxndg Blog

Thinking will not overcome fear but action will.

2024-07-04-C++20设计模式

C++越来越好用啦

C++20 设计模式 0 基础概念 1 (CRTP)奇异递归模板 如何理解CRTP,CRTP我觉得最大的问题是理解难度:一个类怎么能继承自己(是派生类参数)呢?阅读这个链接https://stackoverflow.com/questions/49708984/why-curiously-recurring-template-pattern-crtp-works 什么是CRTP,如何...

2024-06-02-bazel从入门到中级

I'm programmer

bazel从入门到中级 这个本来是写在gitbook上的内容,发现编辑起来很费劲,就写到了博客。因为历史比较久,所以可能有一些地方有些陈旧,我会后面逐渐更新。 另外,一些具体名词我不会翻译为中文,因为英文更明确,避免二义性。但是其意义我会用中文表达,从而方便理解。下面的内容可能有点多,可以先大致浏览理解概念,以后再回来细看。 为什么使用Bazel 有些人喜欢争辩Cmake比Bazel...

2024-05-10-suricata

I'm programmer

Suricate 0 Suricata原理解释 0.1 Suricata提供的App检测关键字解释 Suricata有非常多方便的检测关键字,这些关键字可以针对Payload或者Applayer的内容。下面列出来这些关键字的含义,我理解如果基于这些关键字做匹配,那么需要知道能提供的能力范畴 content:cont...

2023-12-21-数据库基础知识

I'm programmer

数据库基础知识 POSTGRESQL基础部分 1.1 SQL语法 SQL是一种声明式语言,和命令式编程语言不通,声明式编程语言是描述用户需要做什么,需要得到什么结果,而不是像命名式编程语言给出过程怎么做,过程是什么。类比join,就能反映出来,join实际上是将不同的行拼凑为了新的结果,并最终执行检索操作。 SQL分为三种分类 DQL DML 插入 ...

2023-08-21-工程师修养

I'm programmer

工程师修养 0 灵魂型工程师修养 技术是为了灵魂服务的,术服务于道,在当前我认为有两点需要工程师具备 云原生技术层面素养 安全服务(价值观)技术层面素养 什么才是灵魂型工程师呢,我摘抄自瑞典马工的公众号消息 决策层需要提出有说服力的价值主张。 产品团队需要管理企业客户需求。 行销团队需要明确企业客户的画像。 销售队伍需要和企业客户真实对话的能力。 ...

2023-06-11-程序员修养

I'm programmer

开发个人检查清单 下面的内容我实际上是抄的代码大全2检查清单的内容,因为没看到哪里有所有的检查清单的内容。所以利用OCR+AI来拿出来所有的文字,除此之外,补上了部分我自己的检查内容,斜体是我自己的内容。 1 需求 具体的功能需求 是否指定了系统的所有输入,包括其来源、精度、值的范围和出现频率? ...

2023-03-31-架构之路

I'm programmer

架构之路 经历 华耀面临的难题是非常具体的技术问题,面向协议,语言层面。需要对tls,密码学基础知识,计算机体系结构比较熟悉。一个难题的例子是移植ZX5580CPU遇到的汇编无符号证书除法稳定出错的问题,表现形式为证书生成失败,难度在于从私钥/公钥计算,证书签发中等一系列流程怎么精确找到出错的地点,毕竟出错的地方是一个特定条件才会触发的div汇编除法错误。 技...

2023-03-28-devsecops实践

I'm programmer

devsecops实践 1 SAST实践 1.1.1 SAST PARTS 目前问题总结 目前CI的Clang-Tidy Check开启的Checker不充足,需要扫描代码库检查存在哪些代码问题,从而判断开启哪些Checker。 Clang-Tidy Check只针对用户编辑的文件进行扫描,用户不编辑的文件无法发现问题。 使用场景: 每天定时触发一次对onboard ...

去tm的八股文

去tm的八股文 打不过就加入。。。 1 C/C++部分 const的作用 修饰变量,说明变量不可被更改; 修饰指针要么是指向常量的指针const char* p,这个就是一个变量,它指向的是const char*即常量,要么是自身是常量的指针(常量指针)char* const p,这里的const修饰p; 修饰引用,指向常...

2023-03-25-folly学习笔记

I'm programmer

folly学习笔记 1 ThreadLocal 部分 参考的代码commit at 77e08c29d9f3b60b55dd74c1ceede35a8297e586,第一个就看ThreadLocal,是因为这几天解BUG涉及到这块,所以就先写了 1.1 ThreadLocal的结构 参考folly自己对于threadlocal的描述,可以发现实际上针对每种Tag类型,只会占用一个pt...