Biangbangbing
码龄5年
关注
提问 私信
  • 博客:38,549
    38,549
    总访问量
  • 59
    原创
  • 2,040,963
    排名
  • 47
    粉丝
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:湖南省
  • 加入CSDN时间: 2019-09-18
博客简介:

Biangbangbing的博客

查看详细资料
个人成就
  • 获得18次点赞
  • 内容获得4次评论
  • 获得100次收藏
  • 代码片获得1,168次分享
创作历程
  • 8篇
    2022年
  • 40篇
    2021年
  • 2篇
    2020年
  • 10篇
    2019年
成就勋章
TA的专栏
  • 算法的一些知识点笔记
    2篇
  • Java学习笔记
    27篇
  • 数据库
  • 前后端开发学习
  • 操作系统
  • android开发
    3篇
  • 杂七杂八的小tips
    1篇
  • 算法设计课
    10篇
  • 数字系统实验
  • 计算机系统实验
  • Django学习笔记
    1篇
  • ACM训练题解
    16篇
  • 计算机系统
兴趣领域 设置
  • 开发工具
    idea
  • 人工智能
    opencv语音识别计算机视觉机器学习深度学习神经网络自然语言处理数据分析
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

357人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

java学习笔记(二十八)——开发一个小项目(VMeeting3.0)

上篇文章按照很规范的产品需求文档梳理了项目的逻辑,感觉开发起来明晰了很多;挂上一篇文章java学习笔记(二十七)——开发一个小项目(VMeeting2.0)_Biangbangbing的博客-CSDN博客这次基于上一次的开发过程,增加了:图片传输功能 在线视频功能 文件传输功能【部分完成,下载功能待设计】需求文档部分升级,并进行内容功能——技术的更新:一、用户角色描述用户角色 用户描述 普通用户 所有使用软件的客户端 管理员 软件后台监控人员【服务器端也需要可
原创
发布博客 2022.02.26 ·
1713 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

java学习笔记(二十七)——开发一个小项目(VMeeting2.0)

上次文章基本描述了整个项目的设计和一些业务逻辑的细节,但是感觉有一点点怎么说都没有说清楚的感觉,其实就是细节太琐碎整体没有逻辑感。感觉对开发也有也有一定的影响。于是我找了一个产品说明文档规范,来使得自己对于项目开发的功能描述更加清晰和规范。上一篇文章↓java学习笔记(二十六)——开发一个小项目(VMeeting1.0)_Biangbangbing的博客-CSDN博客产品需求文档目录:模板和一个示例的链接我都挂链接:XXX 产品需求文档_V1.0_Build_01_2014111
原创
发布博客 2022.02.21 ·
585 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

LeetCode NoteBook(4)—— 数据结构【二叉树&多叉树】

1.二叉树结构//节点struct TreeNode{ int val; TreeNode* left; TreeNode* right; TreeNode* () : val(0), left(nullptr), right(nullptr) {} TreeNode* (int x) : val(x), left(nullptr), right(nullptr) {} TreeNode* (int x, TreeNode* left, TreeNod
原创
发布博客 2022.02.12 ·
280 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

java学习笔记(二十六)——开发一个小项目(VMeeting1.0)

上一次大概学习了cs架构是什么东西。这次可以着手来实现一个小项目,做一个低配版QQ。大概需要设计实现双方通信,先画个大纲。项目架构server:接收客户端A的消息,然后转发给目的客户端Bserver:做server相关任务调度。连接查询请求的客户端——启动界面——循环监听消息。 serverUI:服务器端的界面设计。 serverListener:服务器端界面的监听器。 serverReceiveMsg:服务器端接收客户端发送的消息。client:多个客户端,相互发送消息但是要经过服
原创
发布博客 2022.01.21 ·
507 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Java学习笔记(二十五)——通信(cs架构)

想要设计实现通信功能。需要掌握以下知识:网络通信(计网),多线程。需要实现以下功能:将传输的数据(文字,数字,声音,图片,视频……)编码,转换成可以通信传输的数据。 实现A和B(至少是双方)的通信。<AB实质是两个进程,可以是通过公网ip相互访问连接的两个机器运行的两个进程;可以是同一局域网下的两台机器运行的两个进程;可以是一台机器跑在本机和虚拟机的两个进程;可以是同一个机器运行的两个进程>通信模式(功能2)CS结构(目前只学习这一个结构,后面再补充同级的结构)我
原创
发布博客 2022.01.18 ·
2806 阅读 ·
0 点赞 ·
0 评论 ·
11 收藏

安卓开发踩坑合集——代码乱码,修改缓存位置……

Android Studio用的时候有多爽,出bug的时候也有多不爽,让人分分钟想卸载这个鬼东西.一些开发踩坑集合,准备常年更新记录,避免重复踩坑,主要是有很多人可以的解决办法不适合我(我解决不了,不是找不着文件就是不管用),有的时候就算解决了问题也不懂原理,就。。很容易再犯,一点点记录,然后成长吧!1.代码乱码问题现象解释:不是中文乱码什么的!特指打开文件之后,java不是java,是什么鬼的xml,xml更是什么license版本不对什么的一段文字,就感觉代码文件乱窜。然后整片报错
原创
发布博客 2022.01.18 ·
2263 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Android开发——实现一个拨号器(查看通讯录)(二)

接着上面的实现,逐步拓展几个功能。比如实现查看通讯录,以及直接通过点击联系人条目实现拨号。实际上功能往往伴随着组件的熟练掌握和使用。当掌握所有组件的使用的时候大概就可以随心所欲玩出花来。对于拿到通讯录并展示主要涉及到的技术就是——ListView组件的使用(学完RecyclerView也可以完成这个功能,而且好像更常用耶,但是目前这个简单点,暂时学习使用)。看了上一次的基本才能理解这一次在干啥,上一次文章直通车:Android开发——实现一个拨号器(一)_Biangbangbing的博客-C
原创
发布博客 2022.01.18 ·
3154 阅读 ·
3 点赞 ·
1 评论 ·
12 收藏

Android开发——实现一个拨号器(一)

安卓开发教程:【天哥】Android开发视频教程最新版 Android Studio开发_哔哩哔哩_bilibili开发平台:Android Stdio(和idea里面自带的一模一样,直接分开用Android Stdio挺好)下载地址:Download Android Studio and SDK tools | Android Developers准备工作下载好开发工具,Android Stdio。下载SDK,注意版本,我之前自己默认下载的31,但是好像不适配,R30可以。查看...
原创
发布博客 2022.01.17 ·
5539 阅读 ·
4 点赞 ·
0 评论 ·
31 收藏

Java学习笔记(二十四)—— HashMap

终于到了一个比较硬核的数据结构,其实之前数据结构课讲过如何用c++实现hashmap的思路,Java也有自带的hashmap这个数据结构。今天联系二者经验,彻底做一次梳理,并基于已有的java hashmap做一些些分析,他为什么设计思路是这样的。以及如果自己手撕一个hashmap要怎么设计。hashmap出现原因存连续的数据。一开始我们用的是数组或者链表来存储数据,但明显的:数组需要开一块连续的空间存放数据,当需要插入或删除某个数据的时候,因为需要维护连续性,所以要循环将数据进行移动,
原创
发布博客 2021.10.30 ·
321 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java学习笔记(二十三)—— io流

io使用场景当想要将某些数据存储到磁盘内,以便程序关闭、再次运行的时候还可以查到这个数据,这时我们需要用io流将这些数据写出程序写入到本地文件里、或者保存到数据库等等。iO详解查看java API文档——java.base——java.io。发现有很多接口、类、方法调用(简单来说就是有点乱七八糟) 张下面这样↓所以从宏观角度简单分分类,然后分解学习:io分类按照读取单位分:字节流(一次性传入一个字节,8bit)(可以处理任何数据)字符流(java一个字符16.
原创
发布博客 2021.10.30 ·
389 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java学习笔记(二十一)—— 线程池

线程池是什么线程池是一种线程的使用模式,管理、维护多个线程。为什么需要线程池首先了解线程的生命周期,当有一个任务来临时,启动一个线程,当任务结束之后线程被销毁。看起来很简单,但这个过程是会消耗一定的资源。当多个线程在同时工作时,短时间内频繁地创建、销毁线程则会消耗大量的资源,会影响整体性能。如何避免反复的销毁和启动操作呢?工作结束的时候如果可以让他不要被销毁,而是进行一定时间的等待,下次工作来了接着用 —— 具体为任务结束后阻塞该线程,直到任务来唤醒线程。这个工作就是由线程池来完
原创
发布博客 2021.10.16 ·
211 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java学习笔记(二十)—— 生产消费模型

生产消费模型的应用场景和线程有关的另一个话题——消费生产模型的设计。具体应用场景——例如LOL里,自动产生兵线,吃掉兵线等。一个更贴切的栗子:在俄罗斯方块中,需要自动产生一些块,如果容器满了就无法产生,当有一行被完全填满就会消掉,这就很好地运用了生产消费模型。生产消费模型设计模型实现注意点:阻塞线程使用方法:wait() 启动线程使用方法:notify() 因为有多个生产者、消费者读写仓库库存数据,因此会产生data race,需要将修改数据的操作锁起来。 锁.
原创
发布博客 2021.10.09 ·
313 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java学习笔记(十九)——线程安全问题

什么是线程安全在多个线程并发执行的时候保证不会出现错误。因为多个线程共享进程(主线程)的数据。举个栗子:典型的抢票系统,在某个时间点有多个用户同时进行抢票操作,每个用户是一个线程。假设系统内目前有10张票,线程抢到票就会执行总票数-1,但是如何保证每个线程看到的票数确实是当前真正的票数呢。存在这样的可能:最一开始A抢到票,但是还没来得及操作票数-1,B看到的票数就仍旧是10张票,继续抢票于是A和B抢到的是同一张票。如果不加以控制,可能就造成100个人都抢到票了,但实际上只有10张。
原创
发布博客 2021.10.06 ·
1343 阅读 ·
1 点赞 ·
1 评论 ·
2 收藏

Java学习笔记(十八)——进程、程序、线程、并发、并行

今天开始接触多线程、并发相关知识。首先先来了解一下相关概念。名词概念程序程序:一段执行的代码,有数据和指令集。进程进程:一段程序执行的过程,是程序的实体,为程序提供所需要的资源。线程线程:操作系统进行运算能调度的最小单元,是进程的实际运作单元。一个进程可以并发很多个线程执行不同的任务。(有一个主进程,可以调用多个线程)并发指某一段时间内,进程交替执行。看似同时,但某一个时刻都只有有个进程在工作。单核就可以实现。并行指某个时刻,进程与进程同时执行。需要多核。
原创
发布博客 2021.09.15 ·
136 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

Java学习笔记(十七)—— 开发个小项目(GoBang v5.0)

接十六,今天重点完善AI下棋以及用户登录并解决一个小问题。画个大纲(跟随慢慢开发过程不断完善)1.用户两个用户对战 一黑一白用户可以是人,也可以是AI。对战模式支持人人,人机,机机。人人对战的时候想象的场景是主用户(登录游戏的)要找一个对手进行对战,主用户要记录战局成绩,那另一方应该也记录成绩或者单纯简单玩一玩(需要满足这两种需求:对手可以是服内玩家<甚至可以考虑设计加好友功能在好友中找对手>,也可以是路人)属性本次比赛执棋颜色用户名(不同用户的用户名不能一..
原创
发布博客 2021.08.27 ·
242 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Java学习笔记(十六)—— 开发个小项目(GoBang4.0)

接十二,今天重点搞定简单基础版本的AI下棋。画个大纲(跟随慢慢开发过程不断完善)1.用户两个用户对战 一黑一白用户可以是人,也可以是AI。对战模式支持人人,人机,机机。属性本次比赛执棋颜色用户名密码游戏得分(赢得局数)存档棋盘信息(二维数组,chessShape类型数组,黑、白、总棋子个数,下一次下棋的棋权) 方法 下棋输赢设置、获取属性接口2.比赛规则一黑一白交替轮流下棋可以决定哪个玩家先手不可以重复下棋到同一个位..
原创
发布博客 2021.08.21 ·
272 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java学习笔记(十五)数据结构——线性表(链表实现)

搬上上次的图,这次用链表的方式来实现简单的线性表。直接罗列功能框架Node :结点类(设计链表的一个结点要包含两部分内容,值域 and 指针域,值用来储存内容,指 针域用来指向下一个或者上一个结点的地址<单链,双链,循环都可以设置>)ByChain:链表类,指向下一个或者上一个结点的地址。Node:属性value 值域 next 下一个结点 front 上一个结点 (上一个节点的设置看自己需求实现,后面代码实现的部分没考虑...
原创
发布博客 2021.08.19 ·
352 阅读 ·
1 点赞 ·
0 评论 ·
2 收藏

Java学习笔记(十四)—— .hashcode()

今天来接触一下hashcode()这个方法,至于这么到这里来的 ——hashcode()上一篇有讲用数组的方式实现一个线性表,里面有一个排序的方法需要实现,但是我们只分析当数组存的元素是Interger时如何排序,当这个元素是其它类型就没办法使用'<','>'来做比较了,那么如何实现对它的比较呢。于是展开说说:String类型可以有字符串类型,他们的比较方式可以是字典序。一位一位比较ASCII码,短的在前。但是长度过长比较起来很麻烦。其他不规则的元素:例如自己设定的类对象要怎么比
原创
发布博客 2021.08.16 ·
453 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java学习笔记(十三)数据结构 —— 线性表(数组方式实现)

根据了解的基础的数据结构知识框架今天尝试实现的就是线性表,用数组的方法来实现。为啥明明有现成的数组还要“自作多情”造车轮现成数组固定大小,不能更改,不灵活 现成数组功能简单,没有增删改查、排序等buff 知道一些底层的实现方法,有利于锻炼代码能力,全面思维能力 磨刀不误砍柴工,自己写很麻烦,有需求的时候用起来很好用,很香()功能框架罗一罗interface :声明方法class :声明属性+方法实现属性maxSize :线性表可以申请的最大长度,...
原创
发布博客 2021.08.14 ·
351 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java学习笔记(十二)——开发个小项目(GoBang3.0 plus)

接上一篇,看了别的优秀作品有点感触,给自己一点灵感,完善&优化项目。画个大纲(跟随慢慢开发过程不断完善)1.用户两个用户对战 一黑一白用户可以是人,也可以是AI。对战模式支持人人,人机,机机。属性本次比赛执棋颜色用户名密码游戏得分(赢得局数)存档棋盘信息(二维数组,chessShape类型数组,黑、白、总棋子个数,下一次下棋的棋权) 方法 下棋输赢设置、获取属性接口2.比赛规则一黑一白交替轮流下棋可以决定哪个玩家先手..
原创
发布博客 2021.08.13 ·
190 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多