
编程
文章平均质量分 82
阿卢说他遇到阿玮
你见过下午六点的天空吗,你有每天陪伴在家人身边而不是沉醉于工作么。
希望你勤于学习,而不是执着于内卷,赚钱再多,不如尽力去让世界变好,让后世享福。
展开
-
最近去Linglei远程中介平台注册,笔试完跟大家分享一下
我题没看懂就开始瞎写,等写完才发现好像和我想象的完全不同,重新理解一遍后才发现是需要动态规划来解决的,可是我之前写过的动态规划都单纯只是要求计算结果,没遇过这种求数组分组形式的,于是总共耗时20分钟硬是没解决。这家公司直接往我邮箱里发了邀请链接,估计是通过领英招聘平台看到我的联系方式吧,因为之前也注册过类似的平台,于是本着产品经理多多体验新品的想法,亲自前往试炼,没想到自认经验丰富的我,也会在后续笔试遭遇滑铁卢。收到官方的面试失败邮件通知时,我内心是有点想笑的,因为这邮件的措辞就是经典的话术——原创 2023-11-14 21:57:29 · 376 阅读 · 2 评论 -
利用wasm实现读写本地项目的在线编辑器
而在浏览器中因为安全性问题,光凭javascript本身是做不到这么完整的功能,最多只能读写单个文件,还不是无缝衔接和高兼容性。当用户选择文件夹后,会触发change事件,我们可以在事件处理程序中获取选择的文件列表,并将文件名显示在页面上。你可以使用JavaScript中的File API来实现以编程方式触发文件夹选择的行为,而不是通过点击元素。的浏览器插件来实现,而前者就是利用近年发展起来的wasm/wasi来实现的。以下是一个示例代码,演示如何使用JavaScript创建一个元素,并通过点击。原创 2023-11-02 18:09:42 · 978 阅读 · 1 评论 -
基础架构开发-操作系统、编译器、云原生、嵌入式、ic
在实际应用中,需要根据具体的场景和需求,选择合适的技术和优化策略,以达到最佳的性能和效果。这些概念在网络领域中得到广泛应用,特别是在云计算、软件定义网络(SDN)和网络运营商等领域。先分类,例如关键字、数值、字符、变量名/函数名、符号、运算符(符号和运算符可能有重叠)等,再进行语法分析,得出变量/函数/类/结构体的声明与定义、指针、赋值、判断、循环、函数。一般是先中间后两边的树结构,例如a=1的赋值语法,父节点就是=,左节点是a,右节点是1,同理扩展到函数定义,void main(int num) {/原创 2023-10-10 16:47:40 · 934 阅读 · 0 评论 -
Java with RocketMQ
事务监听器类的作用是用于决定事务是否成功,broker在接受到sendMessageInTransaction发送的消息后,会将其暂存到“半消息主题”区,之后回访这个事务监听器,等接收到提交的信号或者经历15次回访都是没状态才真正将消息从“半消息主题”移动到真正的消息主题里;消息队列作为一个中间应用,让原本的代码-代码的程序内调用变成了服务-消息列队-服务横跨两三个程序的调用,过程中可能发生任何问题,因此事务就变成了很重要的一点。注意RocketMQ的事务消息不支持延时和批量。原创 2023-10-10 11:56:44 · 385 阅读 · 0 评论 -
Open Interpreter,一个让ChatGPT入驻你的电脑并获得联网能力成为贾维斯!
最近看了Github最近大火的程序员终端大升级,发现了open interpreter这个可以部署到本地命令行的对话AI,其依赖ChatGPT,可以使用联网功能和本地模型,很好地拓展了原有的功能并且能结合物理设备软硬件特性,于是我赶紧搜索一番开始安装。一个处于正常使用中的ChatGPT账号,除非你不打算用ChatGPT线上模型而是用如Code-Llama的本地模型。该软件安装到Mac或者Linux系统,虽然我是Window,但幸亏Window提供了WSL,可以几乎完美地模拟Linux系统环境。原创 2023-09-15 16:00:40 · 3079 阅读 · 5 评论 -
C++-Rust-一次性掌握两门语言
本文主要是通过介绍C++和Rust的基础语法达成极速入门两门开发语言。C++是在C语言的基础之上添加了面向对象的类、重载、模板等特性和大量标准库以达到让使用者更高效地进行开发工作,其适用场景主要是游戏应用、游戏引擎、数据库等底层架构开发(而C更适合于系统内核、云搜索等算法和内存管理要求极高的程序)。原创 2023-07-25 22:44:15 · 2143 阅读 · 2 评论 -
compiler-development-编译器实现
一般是先中间后两边的树结构,例如a=1的赋值语法,父节点就是=,左节点是a,右节点是1,同理扩展到函数定义,void main(int num) {/先分类,例如关键字、变量名/函数名、符号等,再按照正则进行解析出语句的作用是声明、定义、赋值、判断、循环、函数、类。/},中间是函数名,左边是参数值,右边是函数体,且挂靠孙子节点为返回值类型。之后对其上下文和指针在栈进行处理。原创 2023-06-16 13:41:57 · 345 阅读 · 0 评论 -
apitable-面试体验
接着面试官似乎想询问各种对现有的hook库的使用熟练程度,如,然而我从来没用过任何别人的hook库,只在需要时根据网上示例实现自己的useScroll等,面试官本来兴致冲冲,听完我的说法也就沉默无语了。我也有点汗颜,难道必须使用别人的库用得多才显得了不得?原创 2023-06-11 21:18:28 · 1626 阅读 · 1 评论 -
C++基础-设计模式学习
【代码】C++基础-设计模式学习。原创 2023-06-09 13:19:31 · 148 阅读 · 0 评论 -
Fossil-Asmbb论坛网站开发编译与发布攻略
asmbb项目里有一部分是使用C语言编写的,还有一部分是Sqlite的支持库(会自动通过脚本下载源代码),也是C语言编写,可执行musl_sqlite目录下的build脚本文件进行生成libsqlite3.so和ld-musl-i386.so文件,用于最终的网站所依赖的文件。通过修改Html、Css、Js即可达成大部分修改前端界面的目的,但由于是片段输出的虚拟页面,如果涉及到路由或者页面结构的复杂修改,或者分页这类程序关联度较强的代码,则需要通过汇编语言修改。原创 2023-06-06 14:11:54 · 648 阅读 · 0 评论 -
Java-原理源码解析-JVM、GC、JNI、C++实现
最开始使用的是对象引用计数,即保留一个count计算对象被引用次数,每多一个引用对象就加1,当引用对象被销毁时就减1,当引用次数为0时则标记为垃圾。简单讲synchronized是关键字,实现的是阻塞非公平锁,可指定存锁对象,支持方法和代码块,自动加锁解锁,由ObjectMonitor实现。Lock是interface接口,实现的是非阻塞可中断锁,支持非公平锁和公平锁,只能用于代码块,可自定义实现,需手动加锁解锁,由AQS实现。指针碰撞和内存空闲列表都是为了满足对象内存分配使用的。原创 2023-05-18 23:08:48 · 731 阅读 · 0 评论 -
Java-SpringBoot与SpringCloud微服务-基础介绍
SpringBoot基于约定,有很多默认配置值,需要修改则要使用约定好的名称并写上想要设定的值。三个配置文件都存在时,以properties中的设定为最优先级。原创 2023-05-16 16:50:01 · 598 阅读 · 0 评论 -
Java-Kotlin-一次性掌握两门语言
本文主要是通过介绍Java和Kotlin的基础语法达成极速入门。Kotlin本质是适合带有一定Java基础或者偏现代语法例如Typescript会更容易上手。原创 2023-05-16 23:35:14 · 632 阅读 · 0 评论 -
音视频与直播流-理论介绍
基于HTTP的动态码率自适应流媒体传输协议,由苹果推行的标准协议,用于拉流观看,包含.m3u8索引文件和大量.ts视频碎片文件,索引文件可以包含不同清晰度的视频碎片文件路径,而视频碎片只包含几秒内容,通过此方式获取地址即可进行播放和拖拉回放。而RTMP/HTTP-FLV/Web-RTC/RTSP也是一种流封装格式,建立在HTTP/TCP协议之上的封装。//开头,点对点的视频语音通话协议,也可传输任意其他数据,延迟比RTMP更低,理论1秒内,可用于直播源推流和拉流观看,需要WebRTC服务器作为流媒体服务。原创 2023-05-12 22:22:49 · 1141 阅读 · 0 评论 -
Python学习-基础介绍
Python中的变量不需要声明,直接赋值即可。变量的类型会根据赋值自动确定。原创 2023-05-08 10:41:29 · 491 阅读 · 0 评论 -
C++基础-介绍·数据结构·排序·算法
RPC即远程调用(Remote-Procedure-Call),指的是在分布式应用程序中,由于不同的服务程序处于不同的进程甚至不同服务器中,需要通过各种协议进行调用,例如网站之间可以通过HTTP协议调用彼此的接口,或者通过TCP/UDP协议完成即时传输,而使用RPC是程序之间高效传输的最佳选择。(前提:数据必须是有序的)先拿到中间索引的值进行对比,得到想要的值在左半边还是右半边,之后对所在的半边再次执行拿到中间索引的值进行对比后分半的操作,重复循环直到找到目标。连续存储空间,有序,带有索引,可重复。原创 2023-05-08 10:24:44 · 785 阅读 · 0 评论 -
SQL学习-基础课程
间隔锁可以防止幻读问题,但是会降低并发性能。外键是用于关联两张表之间的关系,如教师和学生之间,是一个教师带领一群学生,这样就需要在学生表中设置外键指向教师表,之后若是需要查找某个教师带领的所有学生,或者查找某个学生与其教师即可通过这种关联查找。对于某些查询出来的列名可能重命名的需要,常见于同时查询两张表,而两张表里都有相同的name列名,这时就需要对其中一个或两个都重命名。子查询中返回多行多列,类似双表查询,方便用做临时表时使用,常见用于from后面作为临时表,或者用在where后面搭配in查询。原创 2023-05-03 22:38:46 · 652 阅读 · 0 评论 -
系统架构师-关于一个应用系统设计流程
一个大型应用一般会用系统来称呼,例如数字化企业管理系统、客服聊天系统、ERP系统、商城系统等。在开始涉及真正的开发前后都会有大量的流程和设计工作需要由经理级别的人士完成。一个应用一般会先根据应用特性或分类罗列出要实现的功能特性、使用场景、承载量等。以下就介绍一下来源于谷歌开发经理的设计流程。原创 2023-04-26 13:55:47 · 295 阅读 · 0 评论 -
Brix面试经历与笔试题分享
入驻Brix平台第一轮就是笔试,我算是发现了,反正万物总将回归算法,无论你之前做的是什么领域都好,也不管你打算做什么职位,最终的朝向就是数学、算法工程师。原创 2023-03-04 23:51:00 · 5855 阅读 · 15 评论 -
mongodb基础学习-shell与mongoose操作
最常用的查询选项就是限制返回结果的数量(limit函数)、忽略一点数量的结果(skip函数)以及排序(sort函数)robmongod图形管理软件在mongod3.0以上时需要设置验证版本为3(默认为5),否则无法认证通过。该命令会启动mongodb的服务,如果是服务器或者长期持续使用需要设定为开机自动开启服务等方式。移除文档记录,搜索条件condition为空时会清空文档/表的所有记录。save()可在文档不存在时插入,存在时则更新。的数据库,之后所有命令都会基于这个数据库执行。原创 2023-02-23 16:38:58 · 1102 阅读 · 0 评论 -
docker学习笔记-基础介绍
docker运行镜像生成container,在其中安装开发环境并保存,本地装开发工具和放置项目,通过挂载项目到images中运行,通过映射端口在浏览器中访问container中运行的项目。原创 2023-02-22 17:17:53 · 218 阅读 · 0 评论 -
nodejs学习笔记-程序与进程
子进程模块是为了弥补js本身只支持单线程的问题,最常见的用途是用子进程调用命令行完成相关操作。原创 2023-02-22 15:44:14 · 196 阅读 · 0 评论 -
C++基础-宏·auto·指针函数·lambda
以上代码通过条件判断决定最后调用LOG的代码会被替换成命令行输出或者空白,而判断的条件同样通过修改宏的值决定,也可以在项目属性》C/C++》预处理器》预处理器定义里,通过设置Debug和Release不同配置,并添加MODE=1;栈会所在作用域结束时会自动删除来释放内存,例如在方法里创建栈变量会在方法结束后删除,甚至可以在方法内部添加花括号来加速栈变量删除。宏是一种预处理方法,预处理即#号所在的行,例如#prama once,#include,#ifdef,而宏使用的是#define。原创 2023-02-22 17:18:50 · 332 阅读 · 0 评论 -
C++基础-如何引入第三方静态库、动态库或自定义库
C++作为比较老的开发语言,在依赖库的引入上并没有做到像现在Java、JS、C#含有依赖管理工具协助完成大部分内置库、第三方库的自动引入、下载、配置、补全等。C++无论是内置库还是第三方库,都需要自己手动进行查找、配置、引入等工作。CMakeLists详解。原创 2023-02-09 22:50:55 · 14107 阅读 · 0 评论 -
关于我发表了TalentOrg的面试文章而被官方的人找上门
我很早前就已经在网站上填好了中文简历,但最近发现多了一份空白的英文简历,且我是可以自行填写的,我当时也有问过官方得到的答复是会有专人翻译填充,而从年前到现在元宵已过,这份英文简历却一直保持空白没有变化。之前我通过在招聘平台上齿轮易创HR的邀请,通过重重面试,最终加入了TalentOrg的工程师Family,新奇之余就写了一篇面试过程的文章,没看过且感兴趣的可以点这里。首先是有一个自称是面试官的人评论了我的文章,但很快又删除了,我虽然感到意外,但想着可能是不方便在非官方的渠道私下联系我,所以就没再去想。原创 2023-02-07 23:00:15 · 2331 阅读 · 7 评论 -
关于数据所需的id生成
编程中,对于相同类型数据例如商品、订单、对话消息的存储都需要设置一个独一无二的id,方便用于区别、识别和排序等,这个id可以是纯数字,也可以是英文加数字的字符串。原创 2023-02-01 14:17:21 · 1343 阅读 · 0 评论 -
CSS样式-伪类 含:where(),:is(),:has())
若当前元素被聚焦,则样式生效,例如点击了按钮或者输入框,则当前元素被视为聚焦状态,直到点击其他元素或者网页外的内容。只对a标签有作用,若a标签上的href属性定义的网址已经被客户端访问过、有历史记录或缓存时,样式生效。类似before,帮当前元素内部增加一个放置在最前面的子元素,一般用于清除浮动样式导致的错位。若鼠标悬停在当前元素上则样式生效,一般用于按钮,链接,自动下拉菜单或者其他扩展显示内容的用途。帮当前元素内部增加一个放置在最前面的子元素,一般用于在列表前面增加装饰条或圆点之类。原创 2023-01-23 12:36:58 · 710 阅读 · 0 评论 -
Nodejs学习笔记-创建群聊和私聊频道
要注意虽然Nodejs的net模块也可以创建TCP/WebSocket服务,但一般都是通过封装更好的第三方模块完成实际业务。本例子选用nodejs-websocket模块,也可以选择像是ws、socket.io等第三方包。下面将让用户可以登录和创建频道,频道里可以进行群聊,也能发起私聊。原创 2023-01-15 22:45:06 · 496 阅读 · 0 评论 -
前端测试-基础学习,Jest与Puppeteer
虽然这种端到端测试同样需要深入业务流程去编写用例,导致每次代码迭代同样必须要更新测试代码,但由于针对的是用户的行为,非常适合用于确认应用或者模块是否符合最初的产品需求和可用性,是否高效等,相比单元测试和集成测试都更适合作为项目交付的保障,若三者选一,端到端测试可能是最好的选择(单元测试是最高性价比的选择)。不过按照目前的发展,端到端测试可能是交给测试岗位人员进行编写的,而只有单元测试和部分集成测试是交给开发人员编写。端到端测试是用于测试实际用户使用网站的过程,一般可通过使用。以下通过最常见的测试框架。原创 2023-01-10 11:41:50 · 453 阅读 · 0 评论 -
CSS样式-网页响应式设计
网页本身是作为一个视窗存在,它是可以按照需要变成和窗口大小不一样的,导致一般针对PC端设计的页面,在手机上是必须通过双指缩放来调整视窗的大小,从而看清楚要浏览的内容。网格布局就是通过grid属性完成网格形式的布局,和flex一样有很多配套的额外属性,相比flex布局好处在于适合多行重复的相同内容,例如产品列表、视频列表。上述两种方式要注意除了最大最小值外,指定的单位必须是百分比或者vw、flex:1这种会根据窗口或父元素大小自动变化数值的,否则最大最小值的限制将失去意义。原创 2023-01-05 13:46:11 · 508 阅读 · 0 评论 -
Nodejs学习笔记 - 基础模块快速入门
Nodejs相当于在特化的服务端环境下运行javascript。失去了客户端特有的window、document等对象,换来了包括global对象和核心模块等各种服务端特化功能。HTTP服务器文件管理进程管理事件机制常用工具。原创 2023-01-01 22:39:16 · 282 阅读 · 0 评论 -
HTTP Status 请求状态码
HTTP状态码(英语:HTTP Status Code)是用以表示网页服务器超文本传输协议响应状态的3位数字代码。原创 2023-01-01 18:40:28 · 1301 阅读 · 0 评论 -
Redis基础-数据类型和常见问题-20分钟掌握面试必过
Redis是一个主要作用于应用程序与数据库之间,作为数据缓存层存在,通过存储在内存中高并发读写和可设置过期时间的非关系型数据库。接下来是数据类型。原创 2022-12-31 19:23:12 · 118 阅读 · 0 评论 -
现代设计模式讲解,包含React用例
现代设计模式总结原创 2022-12-30 23:34:37 · 149 阅读 · 0 评论 -
关于webpack的配置项说明
当然Webpack还有很多其他的配置原创 2022-12-28 19:09:52 · 225 阅读 · 0 评论 -
Typescript的进阶学习笔记-讲解三划线指令、内置方法类型、infer、协变、逆变和交叉类型
在system.ts文件定义命令空间(注意namespace不需要export} }原创 2022-12-28 13:50:18 · 273 阅读 · 0 评论 -
分享一个微信红包需求,看看大家算法解题思路
红包来了~原创 2022-12-15 23:35:53 · 516 阅读 · 0 评论 -
年度指南-Web网页开发学习总纲-2024修订版
通过前端框架构建用户界面;理解如何使用本地存储和全局状态;理解和使用REST Api/GraphGL配合HTTP、TCP等。额外技能:通过Typescript创建应用;使用服务端和静态渲染技术——SSR、Jamstack(SSG+Headless CMS);编写自动化测试。熟练至少一种服务端/后端开发语言熟练使用数据库,并能搭配ORM/ODM知道如何创建REST API和验证授权熟练Linux等命令行熟练如何从零开发项目并发布部署到服务器。原创 2022-12-15 22:57:50 · 1186 阅读 · 0 评论 -
最近去TalentOrg投简历,接到了面试内容跟大家分享一下
TalentOrg的面试是怎么样的?亲身体验讲述。原创 2022-12-14 23:32:51 · 4283 阅读 · 11 评论 -
分享一下最近在Turing看到的比较奇怪的编程算法题——生成多对符合规则的括号
奇怪的编程算法题——来自Turing原创 2022-12-05 22:23:21 · 297 阅读 · 0 评论