从零做软件开发项目系列之二——需求调研

在接到软件开发任务之后,第一件要做的事情就是进行需求调研工作,基于前期的沟通以及合同向用户了解具体需求,从而有针对性地开展后续工作。整个调研过程分为调研准备,调研实施,需求分析。

Netty-介绍-1

Netty介绍和应用场景 要求 已经掌握了 主要技术构成: Java OOP 编程、 Java 多线程编程、 Java IO 编程 、 Java 网络编程、 常用的Java 设计模式(比如 观察者模式 ,命令模式,职责链模式 )、 常用的数据结构(比如 链表) Netty的介绍 1、Netty 是由

RT-DETR:可以满足实时性要求的DETR模型

近年来,基于Transformer的端到端目标检测器越来越受到学术界的关注和研究。然而DETR复杂的计算量导致它很难在实际应用中落地,因此本文提出了第一个满足实时性要求的DETR模型RT-DETR

Redis缓存高可用集群

在redis3.0以前的版本要实现集群一般是借助哨兵sentinel工具来监控master节点的状态,如果master节点异常,则会做主从切换,将某一台slave作为master,哨兵的配置略微复杂,并且性能和高可用性等各方面表现一般。

软件架构生态化-多角色交付的探索实践

作为一个技术架构师,不仅仅要紧跟行业技术趋势,还要结合研发团队现状及痛点,探索新的交付方案。在日常中,你是否遇到如下问题 “ 业务需求排期长研发是瓶颈;非研发角色感受不到研发技改提效的变化;引入ISV 团队又担心质量和安全,培训周期长“等等,基于此我们探索了一种新的技术体系及交付方案来解决如上问题。

稳定性建设框架

稳定性治理是一个长期的过程,要把稳定性的工作融入到研发过程中,一方面要有意识尽量别埋坑,比如微服务强调中间件隔离,我们就不要混用中间件了,另一方面稳定性问题要一步到位,比如治理超时时间,要有个完整规范定义超时时间,并在研发过程中对新增接口、历史接口都配置合理,且能够动态更新。

【开源】最近写了一个简单的网址导航网站

前言 随着团队的成长,要管理的项目或使用的内部系统越来越多,很多内部系统都没有域名,使用IP+端口,很难记。 为了解决这个痛点,我抽空写了个导航网站~ 目前用下来效果还不错,可以基本完美的解决这个问题。 项目名称是 SiteDirectory ,代码在 Github 开源了: https://git

“前端”工匠系列(二):合格的工匠,怎么做好价值落地

一个合格的技术人的内心要时刻谨记自己在一个企业内的价值所在,并不断的通过技术提升来扩大价值,才可以在当下的环境中,个人价值与企业价值形成正向循环。那我们此次就聊一聊,前端职能如何在不同的业务场景中落地价值。

年会抽奖实现

最近接手的项目中要新增一个抽奖功能,场景类似年会上的抽奖,触发抽奖的只有一个动作,不存在多线程操作导致所抽奖品已经被抽完的情况。简单来说,就是不存在需要锁的场景,也不存在数据同步的情况。 这种场景的抽奖是最容易实现的,我这里的实现思路就是首先获取参与抽奖的总数,然后根据奖品数量生成几个随机数来确定中

推荐一款免费好用的远程桌面:Getscreen

因为平时有多台设备要用,所以远程桌面是我经常要使用的工具。 最近,正好看到一款不错的远程桌面软件,马上拿出来推荐给大家,如果有需要的可以看看。 ![](https://img2023.cnblogs.com/other/626506/202308/626506-20230824152205856-1

Centos安装Docker、Docker-compose

Docker的搭建 Docker版本要求 要求 CentOs7 系统的内核版本高于 3.10,可通过如下指令查看版本 uname -r 更新yum 需先安装必要的软件包,yum-utils、device-mapper-persistent-data、lvm2 yum-utils:提供一个yum-co

iOS APP启动广告实现方式 与 APP唤端调用

APP启动广告功能实现要从2个方面思考 一是UI方案,怎样处理广告页与主页之间的切换方式。 二是广告页展示时机,是使用后台实时广告数据还是使用本地缓存广告数据。后台数据方式获取广告最新但是用户要等待后台返回数据后才能展示,增加用户等待时间。使用本地缓存启动速度快但数据更新不及时。 UI方案实现 双W

如何优雅地写注释:找到代码注释的黄金平衡点

优雅的注释是一种平衡艺术,它要求我们在不牺牲代码清晰度的前提下,避免过度注释。通过遵循上述原则和技巧,我们可以写出既有助于自己,也有助于他人的注释,从而提升代码的整体质量和可维护性。

MES 与 PLC 的几种交互方式

在 MES 开发领域,想要从 PLC 获取数据就必须要和 PLC 有信号交互。高效准确的获取 PLC 数据一直是优秀 MES 系统开发的目标之一。初涉相关系统开发的工程师往往不能很好的理解 PLC 和 MES 之间编程逻辑的本质差别,在设计交互逻辑是难免顾此失彼。因此本文结合本人这些年来和 PLC

WPF/C#:在WPF中如何实现依赖注入

本文先介绍依赖注入的概念,再解释为什么要进行依赖注入,最后通过 WPF Gallery 这个项目学习如何在WPF中使用依赖注入。

Redis 高阶应用

生成全局唯一 ID 全局唯一 ID 需要满足以下要求: 唯一性:在分布式环境中,要全局唯一 高可用:在高并发情况下保证可用性 高性能:在高并发情况下生成 ID 的速度必须要快,不能花费太长时间 递增性:要确保整体递增的,以便于数据库创建索引 安全性:ID 的规律性不能太明显,以免信息泄露 从上面的要

Linux内存不够了?看看如何开启虚拟内存增加内存使用量

1、为什么要使用虚拟内存 当我们没有多余的钱去购买大内存的云服务器时,但是当前服务器里面的软件和程序运行的比较多导致内存不够用了。这个时候可以通过增加虚拟内存来扩大内存容量。但是在启用虚拟内存时,需要仔细考虑系统的实际需求和硬件配置,以及权衡虚拟内存的优缺点,考虑好利弊后在开启虚拟内存。 2、什么是

有点儿神奇,原来vue3的setup语法糖中组件无需注册因为这个

前言 众所周知,在vue2的时候使用一个vue组件要么全局注册,要么局部注册。但是在setup语法糖中直接将组件import导入无需注册就可以使用,你知道这是为什么呢?注:本文中使用的vue版本为3.4.19。 关注公众号:【前端欧阳】,给自己一个进阶vue的机会 看个demo 我们先来看个简单的d

C#.NET与JAVA互通之MD5哈希V2024

C#.NET与JAVA互通之MD5哈希V2024 配套视频: 要点: 1.计算MD5时,SDK自带的计算哈希(ComputeHash)方法,输入输出参数都是byte数组。就涉及到字符串转byte数组转换时,编码选择的问题。 2.输入参数,字符串转byte数组时,编码双方要统一,一般为:UTF-8。

老生常谈!程序员为什么要阅读源代码?

大家好,我是码农先森。 阅读源码这是一个老生常谈的话题了,但又是很多人想做又没有付出行动的事情。前段时间我研究了 Swoole 的源代码,并且输出了系列的源码分析文章「感兴趣的朋友可以翻阅以前的文章」。虽然这个过程很枯燥和艰难,但到最后有种苦尽甘来的感觉,因为突破了自己之前一直想做又不敢做的一件事情