首页 > 其他分享 >移植库的技巧

移植库的技巧

时间:2023-10-31 10:34:51浏览次数:27  
标签:架构 技巧 程序 程序员 源码 我们 移植

任何一个库,在移植之前,我们必须明确几点

1. 知道它的功能是什么?

2. 它是如何实现这个功能的?

3. 它的输入输出是什么?(ps:我们通常比较明确它的输出是什么,而不清楚它的输入以及依赖,这往往导致后续的错误)

我们往往更应该关注的是,它是如何实现这个功能的。

它的框架是什么,

它的流程是怎样的,

它运行中的动态变化,

它怎样获得CPU资源,又如何返还?

我们需要怎样初始化库?

我们最好可以把库抽象成一个流程图,如此,框架自然就一目了然,阅读源码的起始点与终点一目了然。

ps: 笔者认为源码的阅读很没必要,设计师会去看他设计的房子如何一砖一瓦搭建起来嘛?他会去看砖厂怎么烧砖嘛?

选择比方向重要得多,先建立整体的框架概念,就可以去关注细枝末节,分配好自己的精力资源。(论大局观的重要性,战术后仰)

作为一个程序员,不要一味的在写代码,在移植,在挖坑,填坑,挖坑,填坑。

工地里价值最大的不是埋头苦干的工人,而是冥思苦想的设计师。程序员如是,重复的写一些代码何尝不是另类的体力劳动?

跳出来,跳高点,以整体设计者的角度来把握程序的架构,去学习优秀的程序架构,去创造自己的程序架构模板,去创新程序架构。如此才是程序员嘛。

计算机的世界如此自由,而我们,却如此缺少创意,莫大的悲哀。

我们本是(计算机)世界的创造者,但我们竟然认为其枯燥无味就令其荒凉至此。

标签:架构,技巧,程序,程序员,源码,我们,移植
From: https://www.cnblogs.com/1234----/p/17799686.html

相关文章

  • FreeRTOS上移植RT-thread的at组件
    因为一开始用的是FreeRTOS,因此,项目中的RTOS也是FreeRTOS,但是在项目开发过程中,发现需要解析AT指令集,因此来移植一波RT-thread的软件包。下次就用RT-thread了,纯纯浪费时间移植。首先捋清大概思路。1.串口接收中断被外界消息输入触发,中断在回调函数中将消息内容发给AT任务,并进行......
  • 提高项目成功率:6种不可忽视的项目估算技巧
    6种准确项目估算的技巧:1.自上而下的估算;2.自下而上的估算;3.三点估算;4.类比估算;5.参数估算;6.基于专业知识的估算。项目估算是对项目从开始到结束所需时间、成本和资源的有根据的预测。当你为家人准备晚餐时,你面前有一小群饥肠辘辘的人在想知道什么时候可以吃饭。你知道你必须......
  • Linux小技巧之awk必知必会
    LinuxShell三剑客之一,废话不多说直接上干货。目录1.指定分隔符2.指定打印行数3.打印最后一列4.打印倒数第二列5.匹配输出6.if判断7.统计列总数值8.时间格式转换示例数据:1.指定分隔符awk-F'|''{print$1}'log.txt#awk-F'|''{print$1}'log.txttbname============......
  • ESP32S3通过Arduino移植LVGL
    原文:https://www.jianshu.com/p/8306f948b854LVGL展示此lvgl开发板开源链接: 准备工作显示屏驱动,需要用到“画点”或者“画区域”函数触摸驱动,如果需要用到触摸功能,还需要准备触摸函数,该函数将会返回触摸坐标给lvgl修改lvgl下载下来的lvgl是不能直接使用的,需要......
  • UniApp实战技巧:页面导航、数据传递和组件通信,以及资源管理和优化
    UniApp是一个基于Vue.js的开发框架,可以使用它快速构建跨平台的移动应用。本文将介绍UniApp中的一些实战技巧,包括页面导航、数据传递和组件通信。这些技巧可以帮助开发者更好地使用UniApp进行开发。1.页面导航在UniApp中,我们可以使用uni.navigateTo和uni.redirectTo等方法进行页面......
  • 学习笔记:一些语言技巧
    一些语言技巧其实有些东西个人平时根本用不到,然而不了解一下的话就看不懂大佬写的题解代码(鉴定为菜导致的\(\texttt{qwq}\))。类类(class)是结构体的拓展,不仅能够拥有成员元素,还拥有成员函数。在面向对象编程(OOP)中,对象就是类的实例,也就是变量。C++中struct关键字定义的也是类......
  • UE4 光照技巧
    前言从UE5转到UE4,发现没有了Lumen,对于光照的把控方面我就是个FW。Google关于场景光照设置的技巧,总结了一些常用的LightTypeDirectionalLightSkyLight(模拟天空的环境光照)PointLightSpotLightRectLightLightmobility&BakedLightingStatic静态光的位置、光......
  • 第 11 节 Python程序调试和异常处理技巧
    常见的错误语法错误:例如,不正确的缩进、未定义的变量、括号不匹配等。运行时错误:例如,尝试访问不存在的文件、内存溢出等。类型错误:例如,将字符串与整数相加等。逻辑错误:例如,程序没有按照预期的流程执行、条件判断不正确等。输入错误:例如,无效的输入、输入的数据类型不正确等。常见的......
  • DP技巧与DP杂题
    DP常用技巧增加维数交换答案与状态可行解转最优解删掉本质相同的状态对部分状态\(dp\)遇到转移顺序的困难,考虑记忆化搜索遇到转移细节过多的问题,考虑从\(i\rightarrowi+1\)而不是\(i-1\rightarrowi\)考虑状态时,先把需要记下来的都记一遍,再考虑优化DP杂题CF83......
  • 潮玩扭蛋兔有技巧的软件开发
      潮玩市场的火爆,扭蛋兔的模式加入,游戏的形象就瘦到了众多年轻人的喜好。为了迎合年轻人的想法,我们就开发一款针对潮玩扭蛋兔的游戏程序软件。  一、软件需求  在开发软件之前都是先确定软件的需求,软件的用户群体,使用场景,功能需求,为后续的开展明确方向。针对潮玩扭蛋......