如何玩转一个开源项目

您所在的位置:网站首页 app制作网站源码怎么弄的啊 如何玩转一个开源项目

如何玩转一个开源项目

2024-07-10 01:26| 来源: 网络整理| 查看: 265

1. 了解项目是干嘛的,有没有兴趣学习,有哪些技术点,一般在开源项目最后作者都会留有自述文件。(可以提前拆分了解技术点,大体有个概念后,对项目入手有较大的帮助)

image

2. 将项目跑起来(跑起来才有信心进行接下的学习)

image.png

基本上github上面的开源项目有两种管理方式maven或者gradle,直接在github就可以看出来。有pom.xml文件的为maven管理,build.gradle文件为gardle管理,导入方式不同需注意。 image.png

3. 阅读项目源并调试(可结合某个运行起来的功能入手,一个组件一个组件的弄熟、看报错、看日志、看打印变量)

正好准备搞一个个人博客,凑着一块来吧,Github搜Halo 此项目是基于SpringBoot写的,下面了解一下项目结构

首先是build.gradle 项目管理文件 里面是各种依赖(直接在此文件就可以看出用了那些技术点,可以拆分了解一下具体的知识点) image.png

其次就是src文件夹 里面是源码以及资源文件 image.png

Java文件夹中的Application文件为SpringBoot项目的入口文件(有些可能命名不是这个,根据位置找就行了,main方法在就是) image.png

resources目录下的.yaml 为配置文件 image.png

banner文件 启动时的样式,类似于欢迎页的东西 image.png

resources目录下的目录里面存档的是静态资源 image.png

下面是看源码的主要步骤: 建议首先从controller(控制器)看起,以为这里是前后端交互的入口 image.png

示例:例如登录 在admincontorller中 可以看到login 调用了adminService 按住ctrl点击 》》可以看到引用的哪个 image.png

image.png

继续按住Ctrl 点击AdminService就会跳转到对应的Service文件,可以看到此文件是实现的接口,点击左侧的向下箭头,就会跳转到接口 image.png

image.png

tip:左上有个小图标,可以定位当前正在编辑的文件的目录 image.png

到这里就转到了Service层(服务层) Service层是服务于Controller层的(Controller层没有具体的代码,仅仅是调用,调用的对象就定义在Service里面)

示例:老样子按住Ctrl 跳转到更深一步的代码 image.png

之后点击定位 image.png文件定位在repository目录下。这里就到了第三层,点开文件就会发现里面是一些SQL语句,所以这层就是数据交互层。 image.png有数据库操作语句就得有实现对象,这时就到了model层,可以看到这里都是一些与数据库强相关的东西 image.png到这里主要的实现代码基本上都有了,后面就是一些其他的(不需要主要去看的东西,而且也不一定能看懂的。。。。): utils 工具类 存放各种工具 image.pngSecurity 安全类 登录验证等东西 image.pnglistener 监听类 监听项目运行时的状态等打印在控制台中(有些项目可能没有,个人认为不是太重要) image.pnghander 存放一些处理器 总之就是一些辅助工具 image.pngfilter 过滤器 image.png - factory 工厂 image.png - exception 异常定义 image.png - event 事件 可能会有继承关系 直接按住Ctrl追踪就行 image.png - config 配置 image.png - cache 与缓存相关的 下面就到了喜闻乐见的总结环节

Controller ==>Service ==>repository ==>model 主线基本上就这些,其他都是辅助 SpringBoot 我学习的时候是从Spring开始再到SpringMVC再到SpringBoot真的是非常非常吃力,无数个配置文件,几乎都要放弃了。硬着头皮往下学发现SpringBoot我竟然学的还算轻松。如果你和我一样,不妨试着反向学习。

调试:点击左上角的小虫子,以调试模式启动 image.png之后在谷歌浏览器中运行,F12进入开发者模式 image.png

例如我想调试登录:

将控制台显示界面切换到Network,点击登录 image.png控制台就会跳出请求过程,在Name栏找到login点击,就会出现如下页面,URL中login复制下来备用 image.png此页面拉到最后,就会看到刚刚代码干的事情 image.png点击Preview可以看到预览 image.png接下来转到Idea中,项目上右击,找到Find in path点击,将刚刚复制的地址粘贴进去 image.png找到后点击 image.png跳转到对应的代码页 image.png由此就可以看出来刚刚浏览器中的操作就是此代码块实现的,在这个地方打个断点,浏览器中退出登录重新点击登录,就会跳入断点 image.png鼠标放代码上就会显示传的参数 image.png在此代码块中找到实现的方法方法,按住Ctrl点击 image.png可以看出这是实现的接口,点击左侧的向下箭头,这里就找的了真正的登录校验代码 image.png在这里打个断点,按F8进入本行代码 image.png之后按F6慢慢调试 image.png

一个功能结束之后,同样的方法,一个功能一个功能的慢慢调试,直到吃透整个项目

4. 自己改东西加自己的功能模块(内化为自己的东西)


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3