自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 技术路要一条路走到黑吗

比如,ffmpeg就是别人封装好的库,如果自己也具备这个理论水平,自己封装某个领域的库,那就是技术专家,不转管理,不转项目管理也可以。但是,大部分人,都达不到那个理论水平,就是多学习了几种库的调用,几种框架的使用,几种工具的使用,会的东西多了点知道的工具多点,会的编程语言多了点,依然是工具的使用者,使用工具,当然是做工具人。如果技术上没有深入研究的必要,市场上需要的就是基础的调包侠、框架侠、接口侠,不需要设计,不需要架构,只需要会增删改查就满足了工作要求了,那么持续做技术,就是不太明智的选择了。

2025-11-23 12:27:17 108 6

原创 我跟垃圾领导的斗争经历

毕业后遇到了垃圾领导,不让我做专业工作,一直让我打杂,在领导那里告我黑状,让我年终奖很低,绩效很差。2025年我就离职了,要是听他的,估计我在市场上,都找不到工作了。以后,一定要懂得分辨领导,有的人天生就是坏,一定要多考虑自己的职业发展,自己的安身立命的根本,否则被裁员了,领导才不管你的死活呢。这种误人子弟的领导,让手下钱挣不到,技术学不到,个人时间也被安排的满满的,完全不考虑别人的死活前途命运,因此我们做下属的,也不用管领导的死活,项目黄了活该,领导自己作的,以其人之道,还治其人之身。

2025-11-22 14:12:58 102

原创 我的工作经历

在这里,工资很低,到手8、9千,在北京来说算是很低的了吧。工作强度大,要求能吃苦、能奉献、出长差、随叫随到,为了工作放弃个人和家庭的事情,以工作为重,很多人没时间找对象,没时间顾家。而且,技术上毫无长进,啥都得干,打印刻录送材料,沟通计划协调,写文档。进来后发现,这家单位管理上挺压榨的,工作时间超长,半夜三更给打电话,周末无偿加班,出差很频繁很长。在这里,工作氛围很压抑,领导跟周扒皮一样,而且对员工态度很差,高高在上的主人一样,经常给员工脸色看,员工动辄得咎,就跟个要饭的乞丐一样,战战兢兢,谨小慎微。

2025-11-21 08:30:52 274 3

原创 对软件模块耦合度的重要性认知

最近在做机械臂模拟的软件,其中模拟运动的线程需要调用运动学算法,但是后来发现算法有问题,需要替换成其他的算法,结果发现调用算法的线程也需要修改,因为算法的逻辑变了,调用顺序也变了。这就是没有做好模块之间的隔离,耦合度没有降低,按道理说,只修改算法的实现即可,调用算法的模块不用修改的。只有重构这个模块,降低对算法细节的依赖,以后方便算法替换。

2025-11-20 22:38:31 83

原创 机械臂KDL库的使用

最近在做机械臂的项目,需要计算机械臂末端的位置,路径规划,选择了KDL库作为支撑,成功应用到项目中,并且计算各关节角度、末端实时位置,这个库确实好用。

2025-11-19 08:37:28 74

原创 软件开发的术与道

国内的公司,大多重视术的掌握程度,各种语言、各种框架、各种中间件、三方库、因为只有掌握了术,才能实现具体的功能,术就是金刚钻,没有这个东西,就实现不了这个功能。而在真实的信息化软件开发、java开发中,都是先设计数据库,数据库设计好了,围绕数据库做增删改查的工作,最后随着业务的发展往往会发现,数据库需要进行调整。这一类书籍,没有像unix网络编程、unix系统编程等这一类的书籍谈具体的技术、框架,而是在谈如何设计功能良好,架构良好的软件思想。这就是在谈道,道是比术更高阶的思想,而不是具体的技术细节。

2025-11-19 08:34:02 124 2

原创 学习cpp是学习什么?

【代码】学习cpp是学习什么?

2025-11-15 11:40:27 78 1

原创 重新梳理Qt当中的重要概念

从机制上将,发送信号的对象,确实持有一个连接列表,连接列表中列出来接收信号的对象,然后可以通过元对象系统直接调用接收者的槽函数,这不就是观察者模式吗?当遇到跨线程通信的需求时,Qt会把信号转化为事件,放到接受者所在的线程中的事件循环中,这样,当接受者事件循环到该信号时,才会处理该信号。1.元对象系统,继承自QObject的类,区别于普通cpp类的核心点。信号槽不是依靠函数指针实现的,他是通过元对象系统,找到槽函数列表来实现的,本质上是观察者模式,实现上也不是依赖于函数指针,而是依靠元对象索引实现的。

2025-10-26 14:04:36 165 2

原创 成了面向对象的拥趸

1.发现别管是对业务系统建模,还是对底层API的封装,还是cpp中的容器,还是Qt的界面,还是线程和socket,全都是对象思想。技术上的对象,大佬们封装好了。我们在编码时,利用现有的技术对象,例如qwidget、qgrouobox、qtablewidget。业务中的对象,则需要自己发明发现。对象思想无处不在,处处都是对象,这就是各种编程框架都隐含的思想。对象思想是现代编程的基础思想。

2025-10-25 07:43:49 98 1

原创 Qt做界面的一种方法

将复杂的界面,拆解成多个独立的类,每个类负责一部分模块的显示,最终将这些类组装起来,放到主界面中,这样就按照面向对象的原则,把多个类组合到一个类中,统一管理了。做界面遵循由小到大,由内到外的方法。组合的方法,可以在代码中通过addwiget的方式,添加到上级界面类中。更好的方法是在界面中提升的方法,提升为自定义类。

2025-10-25 06:55:18 72 5

原创 编程多年,遇到的最奇葩的问题

在一个类A中头文件中声明了数组、成员变量,还包含了很多其他类B、C、D、E的指针声明,在A的构造函数中实例化这些类。运行软件,奇葩的事出现了。每当调用B类指针的时候,程序就崩溃了。原来B类的指针是数组后第一个类,它的内存空间被数组挤占了。把类B的声明放到最后,b类调用没问题了。最后把数组改为vector,问题彻底解决。

2025-10-25 06:25:35 68

原创 成功将matlab生成的机械臂源码用Qt只做成动态库,并使用成功

然后就是解析符号了,Qt导出的是一个类,采用resolve()的方式,无法解析类名。因此,又回到制做动态库的工程,定义一个函数。今天,用了将近6个小时的时间,将matlab生成的,包含上百个头文件、源文件的c源码,只做成动态库,并成功使用该动态库。只做动态库的过程:创建Qt动态库项目,然后将导出的源码,添加进入工程。使用动态库时,才是隐式链接的方式,包含头库的头文件,则提示,xxx未定义,又出现了未定义的问题,搜索在头文件中能找到。模仿只做时的处理方法,使用extern c的方式,还是找不到定义。

2025-10-21 16:02:14 330 4

原创 如何准备算法面试题

2.一个是按照数据结构类型准备。也就是说,按照数组、字符串、链表、栈、队列、树、图这种方式,分类准备。书上也是按照这种分类进行布局的,每一种数据结构常考的算法是什么。比如链表有哪些常考的题目,这是中规中矩的准备方式。3.也可以按照算法类型,算法思想准备。比如,按照递归、迭代、贪心这种算法思想准备。快排用到了分治思想和递归,二叉树也用到递归,这也是一种方式。不过这种方式貌似有点乱。还是建议按照第一种方式准备。1.最近在准备面试,所以又学习了一遍数据结构,当初学的不好,面试问题也没回答好。

2025-01-13 13:48:32 162

原创 大公司为何注重数据结构?

大公司对数据结构的重视程度,似乎有点过于执着了,以前我是很不理解。有很多封装好的数据结构,还有很多现成的算法,直接拿来用不就行了吗?哪个客户也没有这么底层的需求吧。现在想想,数据结构是很多课程的基础,像操作系统的文件系统、数据库都会用到二叉树、b+树、还有进程调度时,会用到队列,这就是基础,理解了数据结构,有助于理解计算机运作的原理,有助于理解程序执行的过程。数据结构的使用如此广泛,以至于在各种基础软件中,随处可见它们的身影。还有就是,数据结构就像数学一样,可以区分一个人的智力水平,可以筛选出来聪明的人。

2025-01-10 19:57:32 249

原创 软件行业的技术与业务思考

2.技术也有分类,技术可以分为原理、客观类的,例如网络的原理、数据库原理、编译原理、语言特性、操作系统原理、各种框架的机制。对于那些客观技术,原理机制类的技术,大家都在认真学习,大学时也学的是这个。但第二种技术,却是更具有价值的,也是普通程序员常常忽略的,看不上的,觉得是花拳绣腿。要明白,在国内,哪怕是互联网大厂,都是做技术的应用而已,没有高精尖、没有高科技可言,而不是做技术的发明创造。技术服务于业务,哪怕是新技术出来了,也要有应用领域、应用场景,这样才有价值,不然只是研究作用,发挥不了商业价值。

2025-01-01 16:32:02 292

原创 如何学习数据结构与算法个人观点

一、首先要掌握链表、栈、队列、二叉树的属性和基本操作,从无到有的创建这几类数据结构,并封装好添加元素、查询元素、插入、删除等操作。对于链表就是添加节点、删除节点等。栈就是入栈、出栈,对于队列就是出队、入队。对于二叉树就是,插入节点、删除节点、查找节点。还有它们的遍历方法。这样就掌握了基本数据结构的基本操作。二、在掌握了基本数据结构的操作后。开始学习算法,排序、查找算法。重要的是找到算法背后的思想,例如分治、递归等,学会了这些思想,就算是入门了。

2025-01-01 09:37:33 246

原创 程序员的知识与能力

外企例如亚马逊、微软、苹果,在面试求职者时,更多的考察的是能力,具体来说是数据结构与算法能力,面向对象软件设计能力。知识是指可以阅读获取的,八股文就是最典型的,他们也不会关注框架的运用,还有那些死记硬背就可以掌握的知识点。知识的获取相对容易,能力的获取则要难的多。能力需要不断的模仿学习、实践思考,然后自己领悟其中的奥妙,才能获得。因此,他们虽然不问那么多八股文,但是他们的面试难度却很大。包括算法问题,软件设计问题。希望能把握住重点,提升能力,而不是记忆知识,不要把八股文当作重点,那样就本末倒置了。

2024-12-31 22:35:57 224

原创 数据结构与算法学习笔记

感觉学习算法和学习数学是一个模式。都是在学习解题思路,只不过算法学习的是逻辑问题的解题思路,数学学习的是数值计算方面的解题思路。算法竞赛和数学竞赛也很像。都有固定的题型,都有固定的解法。因此,面试考察算法就像高考考察数学一样,都体现了一个人的智力水平,理解能力,方法的迁移能力,变通能力。最后,数学解题思想是永不过时的,算法的解题思路,也是永不过时的。可以说,学会了有一种题型,这一类题目,都可以运用同样的思路,进行处理了。算法学家和数学家,都是高智力人群,而我们普通人只有跟随的份。

2024-12-31 16:16:20 454 1

原创 单向链表栈二叉树的c语言实现

(https://img-blog.csdnimg.cn/02e7492e27fa45d6bb7f4e2927158afb.jpg)(https://img-blog.csdnimg.cn/2dc8d9797d324043b7439bfa5ccdfe02.jpg)(https://img-blog.csdnimg.cn/a9577aa87b6340029fe7750d552ea971.jpg)(https://img-blog.csdnimg.cn/198bf80701a5449e85b4618b1e048

2024-12-27 10:54:45 163

原创 数据结构学习

最近开始学习数据结构与常用算法。用c语言实现各种数据结构与算法。有的算法感觉比刚接触数据时理解起来更加自然顺畅了。重要的是认识到,一个指针就可以代表一种数据结构。这个指针指向链表,该指针就可以代表链表,指向一棵树,就代表这棵树。有了指针,就可以对链表、二叉树,做任何操作了。学习了快速排序算法,链表和二叉树的创建和增删改查操作。这也是数据结构最基础的能力要求了吧。看了程序员面试金典这本书,继续学习数据结构和算法。

2024-12-23 13:38:51 115 1

原创 数据结构的不变性

1960年左右就有了二叉树了,1970年就有了红黑树,这么多年了,这些d数据结构还在大量使用,可见在日新月异的计算机领域,数据结构是多么重要核心的知识。有的算法几十年了,还在大量使用,还在面试时经常遇到。学会了数据结构与算法,就有了计算机思维,知道如何组织数据,处理数据的步骤了。因此,算法是计算机科学的基石,也是永恒的主题。

2024-12-21 16:57:34 180 4

原创 数据结构与算法学习笔记

一、遇到问题,首先考虑,用什么样的数据结构来描述业务数据,根据问题的场景来选择数据结构。如果是少量数据简单的查询、存储,可以用线性结构,vector,如果是高效的查询,插入删除,则需要用二叉树,排序的话,也要用二叉树,因此就需要用关联容器,而不是顺序容器了。有了容器了,接下来就是用什么样的算法了。

2024-12-21 15:51:58 119 3

原创 linux下找不到动态库,编译时

问题在于,ld默认搜索路径下,这个库存在,但ld仍然提示找不到,usr/lib和usr/local/lub下都有。考虑到目录下库文件的名字为lib hired us.so.13与程序中的名字libhiredis不一致,我怀疑名字不完全一致你原因,复制了13版本的库,改名字为libhiredis.so还是不行,后来通过建立软链接的方式,就可以了。首先名字要完全一致,其次,必须通过建立软链接的方式,自己改名字不行。

2024-11-13 11:44:03 304

IMG_20251021_170257.jpg

IMG_20251021_170257.jpg

2025-10-21

matlab导出的源码成功被转化为动态库.zip

matlab导出的源码成功被转化为动态库.zip

2025-10-21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除