Skip to content

Liansir/crifan_ebook_readme

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Crifan的电子书的使用说明

为何要有:Crifan的电子书

我之前折腾过很多方面的内容,包括技术类的,非技术类的。

关于技术类中又分很多种,其中都放到了我的网站 crifan.com 上,目前已有7000+的技术帖子,但多数都是零散的某个细节的知识点。

当我在某个技术领域有了一定的心得和经验后,就会抽空整理成相对成系统的内容,用(DocbookGitbook等)工具去变成电子书,方便别人参考。

为何要有:Crifan的电子书的使用说明

对于这些电子书,之前虽然已经分类列出来了,但是缺少了基本的介绍,所以对于很多人来说,不方便快速找到自己所需要看哪些。

现在加上必要的简介,重新整理如下:

目前所写电子书:

下面就来详细介绍一下,都有哪些方面的电子书,以及大概的内容分类如何,便于每人找到自己想要的内容:

技术类

计算机的技术,从大的概念上,可以大致分为:

  • 上层:纯软件
    • 涉及到在PC(Windows/Mac/Linux)上,用各种编辑器/IDE,去编写各种代码,实现各种工具/软件/脚本等内容
    • 包括PC桌面端软件,Web领域网页开发,移动端APP开发等等
  • 中间:(软硬件结合的)嵌入式
    • 涉及到在某某开发板上,写嵌入式代码,驱动硬件工作
    • 包括给别人的芯片或开发板,去写某BSP,某个模块(蓝牙,USB,FM,Nand Flash等)的驱动
  • 底层:纯硬件
    • 涉及PCB Layout,设计和生产开发版
    • 涉及到各种芯片的涉及,包括CPU,内存,显示屏等,涉及到流水线,代工厂等等内容

此处目前折腾的领域主要是:

中间的嵌入式上层的纯软件

技术类通用知识

不论哪方面的技术,都有一些通用的学习方面,逻辑概念,总结如下:

推荐的工具或软件

折腾技术或非技术期间,会用到很多软件和工具,此处把觉得不错的,整理出来,推荐之:

硬件类

折腾嵌入式期间,其实也想去了解硬件方面的知识,只不过没有深入。

只整理了点和硬件相关的皮毛:

嵌入式软件

下面是之前折腾的嵌入式开发相关的内容:

嵌入式通用知识

嵌入式领域内有些通用的,基本知识:

关于CPU方面的:

和技术和概念相关的,比如:

开发环境+交叉编译器

在折腾嵌入式相关开发前,往往要先去搭建开发环境,其中就要先去搞懂:交叉编译

先去搞清楚什么是交叉编译:

然后再去了解相关的GNU方面的工具:

然后再去用具体的某个工具,去搭建交叉编译环境(和相关的工具链、rootfs等内容):

关于开发环境的:

在Windows上折腾Linux方面的开发,用Cygiwn:

嵌入式Linux+嵌入式Linux驱动

如果对于嵌入式软件的整体概念不了解,可以去看:

如果想要了解嵌入式软件中关于驱动开发的事情,可以去看:

而关于嵌入式Linux方面的软件和软件中的驱动,可以去看:

关于嵌入式Linux开发期间的,有:

而关于典型的Uboot+Kernel+Rootfs的嵌入式Linux中的Uboot:

其中的最开始的启动代码相关的Start.S的汇编代码,实现了启动硬件的功能。

而关于启动的逻辑的具体分析:

而关于具体的某个模块/功能方面的驱动有:

关于DMA的驱动:

关于无线网卡的驱动:

关于Nand Flash方面的驱动和介绍:

而其中Linux中关于Nand Flash的是MTD层,MTD中关于如何识别Nand Flash和启动过程的解析是:

而关于USB方面的协议介绍和相关驱动开发总结是:

具体模块或领域

大的方向=嵌入式的不同应用领域

条形码Symbology相关的,各种不同类型的条形码的总结:

小方面来说=关于具体的模块/硬件/协议方面

关于蓝牙的:

关于串口/RS232的:

关于音频领域的:

关于MPEG和MP3的知识:

上层软件

对于上层纯软件方面,也有一些总结:

上层软件的通用知识

关于后台开发和设计接口,移动端调用后台接口,测试人员测试接口和网页等相关的:

和HTTP方面的知识:

以及后台人员设计RESTFul的API接口需要了解的:

以及后台人员开发调试接口时,移动端调用接口时,测试人员测试接口时,可以用到的Postman工具:

各种计算机语言通用的的方面的知识总结:

在涉及到前台和后台数据交互,往往都是用JSON:

不同的语言和工具中,都支持用正则表达式去实现复杂的规则去提取想要的数据:

而用不同的编辑器或IDE,以及处理文件相关的内容时,往往会涉及到文件的字符编码,可参考:

而上面的教程内容太多太杂,如果只是想要简单的使用编码方面的知识,可以直接去看:

PC桌面端软件

在写Windows平台的桌面端软件时,可以使用C#:

网页Web领域开发

在涉及到Web网页自动化测试,写爬虫等,会涉及到Selenium:

而在Web和上层领域内,对于html类的内容提取常会涉及到Xpath:

关于如何搭建网站,以及如何给网站搬家的话,可以参考:

移动端APP开发

在涉及到移动端开发时,可以参考:

上层软件的其他领域

比如想要开发自己特定领域内的语言的解析器,即实现自己的编译器,可以使用ANTLR:

想要和我一样,制作出复杂的电子书,可以用相关的工具,比如:

折腾网络爬虫(和模拟登录)领域的话,可以参考:

Python语言

折腾折腾Pyton期间,单独整理了一系列的内容,供参考:

用于入门级的介绍的:

关于整体的Python的心得和总结:

关于某个特定的模块的总结:

我个人=自己=Crifan相关的内容

在折腾技术方面,整理出一些,相对通用的库,整理出来,供参考:

目前最新的代码,都放到 crifan的Github上了:

其中关于自己的库函数,各种语言都有:

https://github.com/crifan/crifanLib

其中关于C#和Python,分别写了专门的电子书解释如何使用:

非技术类

电脑计算机使用类

和电脑/计算机使用方面的知识,比如有哪些常见的操作系统,以及如何安装软件和驱动等知识的:

以及觉得很多好用的工具和软件,也进行了推荐:

和技术开发有点关系,但是更主要是属于电脑使用方面的,虚拟机:

在Windows/Mac中,按照Mac或Windows的系统,而用到的工具,比如VMWare或VirtualBox:

工作类

而开始了工作后,需要了解的各种基本概念和常识,包括招聘和应聘,薪资待遇,股票和期权,创业和公司等:

而和别人合作时,往往涉及到文件共享,资料共享,协同编辑等内容,可以使用有道云协作:

而工作后,会遇到具体的某个商业领域相关的知识,比如:

和汽车销售行业,售前和售后,整车厂和经销商,经销商和客户等相关内容:

生活类

和买房前后需要注意哪些事项,具体买房的过程的内容:

About

Crifan的电子书的使用说明

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published