发动态
综合 最新发布 最新回复
图文
列表
电源防反接
有大佬做过双向防反接吗,因为输出端口具有输入和输出的功能,用MOS管背靠背来控制的话,低压就不行了,低于4v就不太行了,怎样可以做到0v以上都可以呢,管压降的误差可以先不算 #DIY设计#
开源硬件平台
在公司干了几年,带个小团队,零零总总也面试了上百个前端候选人了。说实话,有时候面完一天,感觉人都是麻的。最让我头疼的是什么?就是“算法题”这个环节。我经常遇到两种候选人。一种是一听算法题,就两手一摊,表情痛苦,说“哥,我天天写业务,真没准备这个”。另一种呢,正好相反,题目一出,眼睛一亮,不出三十秒,就把LeetCode上背得滚瓜烂熟的最优解,一字不差地敲了出来,然后一脸期待地看着我。说实话,这两种,都不是我最想看到的。这就引出了一个很多候选人都想问,但不敢问的问题:“你们这些面试官,到底怎么想的?你们明知道我们前端平时工作中,99%的时间都用不上这些,为什么非要折磨我们?”今天,我就想站在桌子对面,跟大伙掏心窝子地聊聊,我们问算法题,到底图个啥。首先,我得承认一件事:我们知道你工作中不怎么写算法对,你没看错。我心里门儿清,我团队里的小伙伴们,每天的工作是跟产品经理“吵架”,是跟UI设计师对像素,是封装React/Vue组件,是处理浏览器兼容性,是调CSS。我招你进来,也不是为了让你用动态规划来给按钮加border-radius的。我们不会天真地以为,前端开发就是算法竞赛。如果你能把一个复杂的业务表单组件写得清晰、可维护、可扩展,在我眼里,这远比你徒手写一个红黑树要来得有价值。所以,请你先放轻松。我们不是在考察你是不是一个“算法大神”。机-会技术大厂,前端-后端-测试,全国均有机-会,感兴趣可以试试。待遇和稳定性都还不错~那我们到底在看什么?——思路远比答案重要既然不是看你会不会背最优解,那我们花这宝贵的20分钟,到底在考察什么?其实,算法题只是一个“载体”,一个“媒介”。通过这个载体,我想看到的是这几样东西:1. 你是怎么“解读”问题的(沟通与理解能力)一个靠谱的工程师,拿到需求不会立刻动手。他会先问问题,搞清楚所有的边界和约束。我出一道题:“写个函数,找出数组中第二大的数。”普通候选人:埋头就开始写代码。我欣赏的候选人:会先问我,“这个数组里会有重复的数字吗?会是无序的吗?会有负数吗?如果数组长度小于2怎么办?”你看,这就是差距。我能通过这些问题,看出你是否严谨,是否有处理边界情况的意识。这个能力,在你将来面对产品经理那些模糊的需求时,至关重要。2. 你的“思路”是否清晰(逻辑思维)我最喜欢看到的,不是你直接写出最优解,而是你告诉我你的思考过程。比如,你可以说:“我首先想到的,是一个最笨的办法,先排序,然后取倒数第二个。这个时间复杂度是O(n log n)。但感觉可以优化,我再想想……也许我只需要遍历一遍,用两个变量来维护最大值和第二大值,这样时间复杂度就降到O(n)了。”这个“先暴力,再优化”的思考过程,在我看来,比你直接默写出最优解要加分得多。因为它展示了你的逻辑推理能力和优化意识。3. 你的代码“品味”(工程素养)算法题的代码量不大,但足以管中窥豹,看出一个人的代码“品味”。你的变量是怎么命名的?a, b, c 还是 max, secondMax, current?你有没有处理我刚才提到的那些边界情况?你的代码有没有基本的缩进和格式?这些细节,都反映了你平时的编码习惯。一个连算法题都写得乱七八糟的人,我很难相信他在业务项目里能写出整洁的代码。4. 当你卡住时,你会怎么办?(抗压与学习能力)我有时候会故意出一些有点难度的题。我不是为了让你难堪,而是想看看你卡住的时候,会有什么反应。是直接放弃,说“不会”?还是会尝试跟我沟通,说“我卡在xxx了,能不能给点提示?”我非常乐意给提示。我更想招一个能和我一起“协作”解决问题的人,而不是一个遇到困难就“躺平”的人。你面对一道题的态度,很可能就是你未来面对一个技术难题的态度。给求职者的一些真心话所以,聊了这么多:别光背题,没用。 我只要稍微改动一下题目条件,或者问你为什么这么写,背题的同学马上就露馅了。多练习“说” 。刷题的时候,试着把你的思路说出来,录下来自己听听,或者讲给朋友听。面试时的口头表达,和自己闷头做题是两回事。重点理解“为什么” 。不要满足于“这道题这么解”,要去理解它为什么要用双指针,为什么要用哈希表。理解了思路,才能举一反三。面试时,心态放平。 没做出最优解,真没关系。把你思考的过程、你的尝试、你的权衡都清晰地表达出来,你已经赢了很多人了。我知道,让前端去卷算法,这个“游戏规则”本身就不那么公平。我们想找的是一个会思考、会沟通、有工程素养的“解决问题的人”。算法题,只是恰好成了当前最方便、成本最低的考察工具而已。——转载自:ErpanOmer
前端真的需要懂算法吗?聊聊感受
开源硬件平台
单片机 雾化片
跟着别人画的 ,但是不知道这个电感接对了没有,左边3 中间1 右边2
开源硬件平台
相信不少前端同学对 Chrome 扩展插件并不陌生:比如能屏蔽广告的 Adblock、自定义标签页的 Infinity 新标签页、格式化 JSON 的开发小工具、截图工具,甚至还有 Vue.js devtools、Redux DevTools 这样的调试利器。很早以前,我也被这些插件的强大功能吸引,暗自立下目标,一定要掌握扩展插件开发。但实际动手后发现,Chrome 插件的开发门槛并不低,权限机制、构建流程、清单配置……这些问题让我一度搁置。直到后来,我接触到了油猴(Tampermonkey) 脚本开发。它让我重新燃起了对网页增强脚本的兴趣:同样可以实现丰富的浏览器功能,但上手却要简单许多。借助 HTML、CSS 和 JavaScript,便能快速开发出媲美插件的实用功能,而且部署和调试都非常灵活。正因如此,我花了很多时间研究油猴脚本的各种能力,从简单的界面增强,到跨域数据请求、页面劫持,再到摄像头识别、画中画等进阶玩法,这些都可以仅靠一个脚本实现。也正是在这个过程中,我写下了《油猴脚本实战指南》这本小册,分享我一路走来的经验一些技术分享。这本小册上线已近一个月,期间我也遇到了很多志同道合的开发者,他们和我一样,在原本有限的时间里,通过脚本开发打开了新的成长路径。如果你也是一名前端开发者,渴望提升能力却苦于时间有限,不妨试试油猴脚本开发。它不仅能帮你解决日常工作中的小痛点,还能训练你的综合编程能力。对我来说,这是性价比极高的一种前端进阶方式。希望你也能从中收获惊喜。什么是油猴脚本油猴(Tampermonkey)是一款浏览器插件,允许用户在网页加载时注入自定义的 JavaScript 脚本,来增强、修改或自动化网页行为。通俗地说,借助油猴,你可以将自己的 JavaScript 代码“植入”任意网页,实现自动登录、抢单、签到、数据爬取、广告屏蔽等各种“开挂级”功能,彻底掌控页面行为。分享一些我实现的有趣网页脚本手势识别实现网页控制人脸识别实现”人脸版黄金旷工“小游戏接口拦截工具:修改CSDN博客数据接口返回值Vue路由一键切换:开发效率起飞任意元素双击实现画中画:摸鱼超级助手掘金后台自动签到助手解除文本复制、网页复制、一键下载为MD主题切换助手它能给你带来什么提高互联网体验通过用户脚本,我们可以为网页添加各种实用功能,显著提升浏览效率和使用体验。比如在阅读时,我们可以实现一键翻译、自动展开全文、解除复制限制、去除广告干扰;在观看视频时,可以开启 VIP 视频解析、倍速播放,甚至自动跳过片头片尾;对于学习和工作场景,还能自动刷题、辅助答题、自动播放课程;而在购物或资源获取方面,脚本也能帮你自动抢购、快速下载网页中的音视频内容。所有这些功能,只需我们动动手写几行JavaScript,就能一劳永逸!提升工作效率在日常工作中,我们经常会遇到一些重复、耗时又低效的操作,比如:每天手动输入账号密码登录某个网页、反复填写相似的表单内容、开发中费尽周折从网页中提取数据、频繁刷新 token 以保持页面正常访问,在多路由项目中不断的手动切换页面路径……这些看似“习以为常但不可避免”的操作,实则完全可以通过脚本解决。提高工作竞争力在公司工作中,很多重复、低效的流程其实完全可以通过脚本来优化。如果你能主动用脚本解决这些问题,不仅能提升团队效率,更能显著增强你在公司的核心竞争力。以我自己的经历为例:我们公司的前端项目采用的是 Qiankun 微前端架构。在本地开发子应用时,由于缺乏主应用的数据支持,调试过程经常变得非常麻烦。为了解决这个问题,我编写了一个脚本工具,能够将主应用的数据无缝注入本地环境,同时也支持将本地子应用嵌入到线上主应用中进行联调。这极大地提升了开发调试的效率。后来,这个脚本在公司内部广泛推广,并被评为“最佳提效工具”,也为我在职级晋升中加分不少。所以,如果你能通过脚本解决公司一些业务痛点,很容易提升你的核心竞争力。增加面试亮点果你在简历中写到:“通过脚本解决了开发过程中的 XXX 问题,优化了业务流程中的 XXX 环节,节省了 XX 小时的人力成本”——那你的简历一定会脱颖而出,更容易通过面试。毕竟,几乎所有面试官和管理者都欣赏那种善于发现问题、主动用技术解决问题,并能为团队带来实实在在价值的人。变现利用脚本变现有多种途径,效果因人而异。你可以在 GreasyFork 等平台发布实用脚本,获得用户打赏;也可以承接定制开发项目,实现接单变现;此外,脚本还能帮助你降低其他互联网变现方式的运营成本,从而实现效益的最大化。机-会技术大厂,前端-后端-测试,全国均有机-会,感兴趣可以试试。待遇和稳定性都还不错~学习难度用户脚本本质上是通过 JavaScript 增强网页功能或操作页面 DOM,所以对于前端同学而言,你只需掌握油猴的开发规则和几个关键 API,就能快速上手。借助本小册基础篇的内容,你甚至可以在 2 到 4 小时内完成脚本的入门学习,轻松实现脚本编写与快速发布。但是,如果不懂CSS+HTML+JavaScript ,你需要提前学习这些前置知识。此外,你甚至能零成本将一个油猴脚本打包成一个原生谷歌浏览器插件,YYDS!——转载自:石小石Orz
为什么推荐前端学习油猴脚本开发?
开源硬件平台
求OV系列CMOS图像处理解码板原理图
开源硬件平台
开源文章:星火计划2025 丨 入围项目发布\n\n简介:星火计划2025入围项目发布\n\n文章链接:[https://oshwhub.com/article/spark-project-2025-event-finalist-released]\n#活动资讯#
开源硬件平台
场景同样的接口,同样的前缀,只是后端地址不一样,怎么同时代理多个地址呢?也就是一个前端,怎么连接多个后端的地址?一个前端,需要同时和N个后端联调一个需求里有若干个模块,分别给不同的后端开发,前端需要和N个后端联调测试环境在测其他模块,合并发布太麻烦,所以本地开启一个端口给测试,然后你需要去做其他的需求,但是其他的需求需要连接另一个后端接口其他情况,总之:1个前端 VS N个后端上述场景,都是一个前端,联调N个后端的场景,你可能没遇到过,但是确实存在上述的场景。尤其是第三种最为常见,你会一直等测试完了、再去换一个后端代理地址接着开发吗?当然不能,这样做很浪费时间,说明你不是一个合格的牛马,牛马的觉悟不够,牛马是不会让自己闲着的。那么,怎么办呢?和A联调时proxy指向url-A,和B联调时proxy指向url-B……换其他人联调时,你是把本地项目关掉,然后换个proxy代理、再重启一下吗?当然可以,如果你不嫌麻烦的话!那么有没有好办法呢?这个问题问得好,当然有了!解决方案本例以vue2的vue-cli方式【webpack】为例 如果你们公司用的是vue3可以跳过思路既然vue.config.js能代理一个proxy,那么能不能代理多个proxy呢?当然能!本文先讲解传统模式的代理,以后写一个函数式代理 vite有更好的代理方式,暂且不表实现步骤创建项目创建一个空的vue2项目 vue create project-name 默认情况下,npm run serve会启动8080端口目标我希望不同的端口,指向不同的后端代理proxy地址,如:8100端口,代理后端7001端口8105端口,代理后端7002端口没毛病吧?本文以代理2个后端为例,其余的大家自行补充前端配置安装cross-env yarn add cross-env cross-env是nodejs设置环境变量的工具,它解决了不同操作系统之间环境变量设置语法不一致的问题,具体可自行搜索配置vue.config.js const { defineConfig } = require('@vue/cli-service') module.exports = defineConfig({ transpileDependencies: true, // webpack-dev-server 相关配置 devServer: { host: '0.0.0.0', port: process.env.PORT || 8100, open: false, proxy: { '/api': { target: getProxyTarget(process.env.PORT), changeOrigin: true, pathRewrite: { '^/api': '' } } }, }, }) function getProxyTarget(port) { switch (port) { case '8100': return 'http://127.0.0.1:7001' case '8105': return 'http://127.0.0.1:7002' default: return 'http://127.0.0.1:7001' // 默认代理地址 } } 上述代码,默认设置启动端口为8100,并且getProxyTarget函数可以根据不同的端口,指向不同的代理地址。配置package.json { "name": "more-proxy", "version": "0.1.0", "private": true, "scripts": { "serve": "vue-cli-service serve", "serve:8005": "cross-env PORT=8105 vue-cli-service serve", "build": "vue-cli-service build" }, "dependencies": { "cross-env": "^7.0.3", "vue": "^2.6.14" }, "devDependencies": { "@vue/cli-service": "~5.0.0", "vue-template-compiler": "^2.6.14" }, "browserslist": [ "> 1%", "last 2 versions", "not dead" ] } 上述代码,重点是serve:8005这行,就是你要代理哪个端口,这里需要你在vue.config.js写对应的映照proxy机-会技术大厂,前端-后端-测试,全国均有机会,感兴趣可以试试。待遇和稳定性都还不错~#技术干货#测试上述配置已经实现了我们的需求,那么,具体测试一下吧。本地启动两个nodejs服务,分别为7001和7002端口,内容如下 /// 7001端口 const http = require('http'); const hostname = '127.0.0.1'; const port = 7001; const server = http.createServer((req, res) => { res.statusCode = 200; res.setHeader('Content-Type', 'text/plain'); res.end('my port is 7001!'); }); server.listen(port, hostname, () => { console.log(`Server running at http://${hostname}:${port}/`); }); javascript 体验AI代码助手 代码解读 复制代码 /// 7002端口 const http = require('http'); const hostname = '127.0.0.1'; const port = 7002; const server = http.createServer((req, res) => { res.statusCode = 200; res.setHeader('Content-Type', 'text/plain'); res.end('my port is 7002!'); }); server.listen(port, hostname, () => { console.log(`Server running at http://${hostname}:${port}/`); }); 然后前端把上面的2个端口启动,写一个测试函数 mounted() { fetch('/api').then(() => {}) } 效果如下: 8100已经成功代理7001了 同样的,8105也代理了7002 其余的vue3,react,也可以用类似的思路如果感兴趣,可以点一下关注,后续会出函数式1前端 VS N后端,更加优雅如果有其他更好的方案,可以评论留言。——转载自:前端没钱
1个前端同时联调多个后端,牛马的顶级觉悟
开源硬件平台
怎么用stm32和ne555做一个纸张计数显示器呢
开源硬件平台
立创下单后导出文件
兄弟们,我24年8月份下单了一个pcb,应该也是用立创eda做的。不知道为什么我的立创eda找不到这个版本的工程了。现在要优化这个板子,能不能在下单助手导出之前的pcb呢,我再重新导入工程。下载出来的是胳膊类型,该如何变成立创pcb类型呢
开源硬件平台
有没有开发大佬接软硬开发单子啊,软硬分开也行,私聊我.
软件:接“涂鸦Wi‑Fi+BLE模组+外置MCU”固件吗?功能:DP(UART)+433+4路舵机PWM+UART控音箱盒。验收:上电静默;按下沿一次/按住不重/播完解锁;音箱UART要ACK/重试/查询;WDT+欠压复位+复位原因可查。
开源硬件平台
请问一下怎么把线走出来? 实时DRC已经关闭了,也是不行。
#规则#
开源硬件平台
打卡签 到 #嘉立创免费3D打印# #嘉立创PCB# #DIY设计# #2025年度项目秀# #ESP8266/32# #2025年度踩坑日记# #技术干货#
开源硬件平台
步进电机驱动板设计外协
想找人做一块基于TMC5272的步进电机驱动板,急求有经验的大佬,酬劳丰厚。联系,slm20250511
开源硬件平台
100W双管反激电源
做了一个双管反激电源,220AC输入 50V 2A输出 #嘉立创PCB# #DIY设计# #技术干货#
开源硬件平台
求助:单键开槽PCB有什么布线技巧吗?
想自己做一个键盘,但是线一多就显得很乱,大佬们有没有布线技巧分享呀,像这种PCB是不是基本连上就能用呀[衰]
开源硬件平台
开源文章:东莞职业技术学院十二月培训\n\n简介:\n\n文章链接:[https://oshwhub.com/article/dongguan-vocational-and-technical-college-december-training]\n#高校动态#
开源硬件平台
开源文章:天津工业大学博而思医疗电子协会12月训练营\n\n简介:这次学员们复刻rct6顺利结束\n\n文章链接:[https://oshwhub.com/article/tianjin-polytechnic-university-boersi-medical-electronics-association-december-training-camp]\n#高校动态#
开源硬件平台
优质硬件创作分享平台
推荐话题 换一批
#DIY设计#
#嘉立创PCB#
#嘉立创3D打印#
#嘉立创免费3D打印#
#技术干货#
#嘉立创EDA#
#扩展API#
#狼黑工具#
查看更多热门话题
打赏记录
服务时间:周一至周六 9::00-18:00 · 联系地址:中国·深圳(福田区商报路奥林匹克大厦27楼) · 媒体沟通:pr@jlc.com · 集团介绍
移动社区