程序设计
强哥的博客
这个作者很懒,什么都没留下…
展开
-
软件学习之追本溯源
与此同时,一大堆的软件技术层出不穷,让开发者无所适从,因为软件技术实在太多,不知道从何学习,今天学了可能明天又落伍了。何为"向上学习",向上学习在这里是指跟踪学习当前技术热点,比如在大数据方面,今天学hadoop,明天学spark,搞得自己都好累,可能过一段时间这些技术又落伍了,又要学新的技术了,想想现在还有多少人还去学Struts呢,当年可是很火的。从本质上来说,程序员写软件就是写自己对世界的认知,是程序员的思想映射,那些各种各样的高级语言只是一个工具,仅此而已。如上图,我们还能说编程有什么神秘的吗?原创 2022-09-02 17:45:15 · 588 阅读 · 0 评论 -
软件行为(五)之数据存储
索引存储方式是采用附加的索引表的方式来存储节点信息的一种存储方式。索引表由若干索引项组成。上图从上到下也是cpu访问数据的顺序,CPU的数据去寄存区去拿,这样访问速度就更快了,但是此时寄存器并没有数据,因此就产生了图中的箭头,先让内存的数据加到–>高速缓存加到–>寄存器,当我们有一次在寄存器没有拿到数据,再依次向下访问,这样访问速度就会变快。上文也说了,相同的数据存储结构下内存中的数据处理是比硬盘内的数据处理快的,那就说是数据存储结构有不同的方式,不同数据结构的查询、插入、删除、更新的速度都是不一样。...原创 2022-07-28 15:41:35 · 673 阅读 · 0 评论 -
软件行为(四)之数据传输
理论上有了mac地址,加上广播的方式,全世界所有的计算机都可以通信了,实际不行,广播风暴,效率低,工作量太大.端口+IP+子网掩码+mac+广播的形式就可以确定世界上任何一个计算机软件的位置.第一次发送数据需要广播的形式,获取对方的mac地址,将mac地址与网口写入交换机的对照表.网卡mac地址就是计算机的唯一标识,计算机出厂就会有网卡,网卡上就有一个mac地址。端口+ip+mac+广播就能确定世界上任何一个计算机的软件的位置...................转载 2022-07-17 14:13:53 · 913 阅读 · 0 评论 -
软件行为(三)
数据采集原创 2022-07-11 17:49:26 · 230 阅读 · 0 评论 -
软件行为(二)
安全 传输协议由上图我们可以看到一次软件行为可能发生的主要事情标红的方框是 软件行为(一)中的内容,不再累述。客户端是数据发生源,主要包括:人工输入、系统自动触发、数据采集等。服务端用于数据逻辑处理,主要包括逻辑处理、数据结果存储、调用第三方接口等根据实际情况(安全、性能、易用性等)我们可以使用不同的传输协议............原创 2022-07-08 16:22:35 · 346 阅读 · 0 评论 -
软件行为(一)
大道至简原创 2022-07-07 17:25:19 · 273 阅读 · 0 评论 -
搭建系统框架遇到的问题记录
1.WebMvcConfigurerAdapter过时的替换方法Spring 5.0后,WebMvcConfigurerAdapter被废弃,取代的方法有两种:①implements WebMvcConfigurer(官方推荐)②extends WebMvcConfigurationSupport使用第一种方法是实现了一个接口,可以任意实现里面的方法,不会影响到Spring Boot自身的@EnableAutoConfiguration,而使用第二种方法相当于覆盖了@EnableAutoConfig原创 2020-11-12 17:41:04 · 259 阅读 · 0 评论 -
java-FFmpeg实现视频的转码和截图功能
FFmpeg是一个开源免费跨平台的视频和音频流方案,属于自由软件,采用LGPL或GPL许可证(依据你选择的组件)。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多codec都是从头开发的。FFmpeg在Linux平台下开发,但它同样也可以在其它操作系统环境中编译运行。 &nb转载 2020-07-14 15:02:57 · 330 阅读 · 0 评论 -
Java开发中的代码规范
Java开发中所要遵守的编码规范大体上有如下几点。命名规范、注释规范、缩进排版规范、文件名规范、声明规范、语句规范以及编程规范。1.命名规范(1)所有的标示符都只能用ASCⅡ字母(A-Z或a-z)、数字(0-9)和下划线“_”。(2)一个唯一包名的前缀总是全部小写的字母。例如:www.tonysun.cc(3)类名是一个名词,采用大小写混合的方式,每个单词的首字母大写。例如:Tony。(4)接口的大小写规则与类名相原创 2020-06-25 11:12:22 · 207 阅读 · 0 评论 -
使用redis创建有序订单号
谈起订单号的生成,这是每个交易系统都碰到的问题。方案有很多种,比如uuid、时间戳+随机数、数据库自增长等等。这些方案或多或少都存在一些问题。比如uuid索引性能低下,时间戳+随机数存在可能重复的问题,数据库自增长如果是分布式多表的情况显然是不合适的。更蛋疼的是笔者所在公司业务方提出蛋疼的要求:订单号的格式为yyyymmdd+7位有序数字,比如当天第一笔为yyyymmdd0000001,第二笔就是...原创 2020-04-18 10:20:36 · 1298 阅读 · 4 评论 -
Java的ConcurrentHashMap
简介ConcurrentHashMap是Java中的一个线程安全且高效的HashMap实现。平时涉及高并发如果要用map结构,那第一时间想到的就是它。那么我就这几个方面了解一下ConcurrentHashMap:1)ConcurrentHashMap在JDK8里结构2)ConcurrentHashMap的put方法、szie方法等3)ConcurrentHashMap的扩容4)Hash...转载 2020-03-19 16:36:18 · 186 阅读 · 0 评论 -
常见数据结构与算法整理总结(上)
见链接。转载 2019-10-12 18:29:11 · 98 阅读 · 0 评论 -
常见数据结构与算法整理总结(下)
数据结构是以某种形式将数据组织在一起的集合,它不仅存储数据,还支持访问和处理数据的操作。算法是为求解一个问题需要遵循的、被清楚指定的简单指令的集合。下面是自己整理的常用数据结构与算法相关内容,如有错误,欢迎指出。为了便于描述,文中涉及到的代码部分都是用Java语言编写的,其实Java本身对常见的几种数据结构,线性表、栈、队列等都提供了较好的实现,就是我们经常用到的Java集合框架,有需要的可以......转载 2019-10-12 18:14:24 · 123 阅读 · 0 评论 -
JAVA设计模式总结之23种设计模式
一、什么是设计模式设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样。项目中合理的运用设计模式可以完美的解决很多问题,每种模式在现在中都有相应...转载 2019-10-12 17:52:27 · 179 阅读 · 0 评论