优雅写代码之《项目规范》-附加树状图生成

阿丹:

最近有一些小伙伴在跳槽之后接触到了新的项目小组,在讨论如何整理出漂亮的项目结构以及代码书写的时候,既然有小伙伴发问了,那当然就要一起学习,来!开卷!本文章只作为一个分享,要注意项目的结构风格不同的人各有千秋,精髓就是让其他人看得懂,在其他人阅读代码的时候能找得到。

代码分享:

有些小伙伴问我怎么快速的将一个项目的文件夹层级像下面的方式展示出来,甚至还有一些小伙伴一点点的手撸!惊呆了老铁!分享一个代码可以直接生成我们需要的树状文件。

首先要到目标文件夹下面

在标记的地方删除内容并输入cmd,回车就可以在当前目录下面唤出dos窗口。

请耐心学习下面简单的指令分享:

TREE指令生成树状图

Windows系统中的tree命令可以用来显示文件夹的树形结构图。它可以帮助用户更直观地查看文件夹及其子文件夹的组织方式。 以下是tree命令的一些常用参数:

  • /f:显示所有文件和子目录。
  • /a:显示隐藏文件和子目录。
  • /d:只显示目录名,不显示其下的子目录和文件。
  • /l:显示文件的大小。
  • /h:如果某个目录下的文件数目很多,则将其以千字节为单位进行统计显示。
  • /i:显示每个文件的索引节点编号。
  • /c:显示每个文件的完整路径。
  • /q:以紧凑形式显示文件名。
  • /w:指定树状图的宽度。
  • /t:指定树状图的深度。

使用tree命令的基本语法如下:

复制代码
tree [drive:][path] [/F] [/A] [/D] [/L] [/H] [/I] [/C] [/Q] [/W] [/T]

要显示当前工作目录及其子目录的树状图,可以输入:

复制代码
tree .

如果你想要显示其他位置的树状图,只需要将.替换为你想要查看的位置即可。 注意:默认情况下,tree命令会列出所有文件和子目录。如果你只想查看某个特定类型文件的树状图,可以使用通配符*来进行筛选。例如,要显示当前目录下所有的.txt文件的树状图,可以输入:

复制代码
tree *.txt

可以通过重定向符号(>)将tree命令的结果写入到指定的文本文件中。例如,要将当前工作目录及其子目录的树状图写入到myfolder_tree.txt文件中,可以输入以下命令:

Kotlin 复制代码
tree . > myfolder_tree.txt

如果你想生成其他位置的树状图,只需将.替换为你想要查看的位置即可。例如,要生成C:\MyFolder目录及其子目录的树状图,并将其写入到myfolder_tree.txt文件中,可以输入以下命令:

Kotlin 复制代码
tree C:\MyFolder > myfolder_tree.txt

这样,tree命令的输出就会被保存到myfolder_tree.txt文件中了。

项目结构图:

└─com

└─adn

└─demo

└─{模块名,如user}

├─config 配置类

├─constant

│ └─enums 常量、枚举

├─component 自定义切面、过滤器、拦截器等

│ ├─annotation

│ ├─aspectj

│ ├─filter

│ └─interceptor

├─controller 控制层

├─model 所有的bean都放在这里

│ ├─convert 实体类之间的转化

│ ├─dto feign使用的实体类,DTO结尾 远程调用等

│ ├─bo service使用业务实体类 BO结尾

│ ├─vo 接口出入参数,http交互常用

│ │ ├─request

│ │ └─response

│ └─entity 实体类基本实体类

├─repository 数据库orm操作,接口定义等

│ ├─impl 接口实现

│ └─mapper mybatis的mapper接口,对应的xml文件放在resources资源目录下的mappers文件夹下

├─service 服务类

│ ├─manager 复杂业务逻辑,不用写接口,供service调用,禁止调用上层service

│ ├─handler 较复杂业务逻辑,不用写接口,供service、manager调用,禁止调用上层

│ ├─helper 简单业务逻辑,不用写接口,供service、manager、handler调用,禁止调用上层

│ ├─logic 最基本业务逻辑,不用写接口,供service、manager、handler、helper调用,禁止调用上层

│ └─impl 接口实现,如UserRepositoryImpl

└─extranal 外部feign接口

└─fallback feign的fallbackFactory

编码的结构规范主要就是在项目的通过解耦和封装的思想来将一定的结构和规范整合起来,达到在一个包下强耦合,在不同包下解耦的作用。

相关推荐
To_OC20 小时前
万字解析《JS 语言精粹》之第五章:继承 5 大核心精髓(JS 原型核心)
前端·javascript·代码规范
Coffeeee1 天前
闲聊几句,Android老哥们,你们多久没做技改需求了
android·程序员·代码规范
饼干哥哥1 天前
扣子3.0测评:我让 Codex 和 Claude Code 住同一个桌面,结果它们打架了!
人工智能·开源·代码规范
码哥字节3 天前
为什么 Claude Code 读你的代码库,光靠 embedding 根本不够?
claude·代码规范
kisshyshy5 天前
从递归到迭代,一文吃透二叉树的核心知识与 JavaScript 实现
javascript·算法·代码规范
用户6919026813399 天前
Vibe Coding 开发项目的基本范式
人工智能·设计模式·代码规范
Cosolar9 天前
藏在 Claude Code 里的极致浪漫:完整 187 条 Spinner Verbs 全收录
后端·程序员·代码规范
Mickey86110 天前
MCP 加持下的零代码逆向:全自动化绕过 APP 验签与加密实战
代码规范
专注VB编程开发20年13 天前
WebView2 + HostObject 架构的核心痛点 ——强耦合、同步阻塞、异常连锁、内核绑定
代码规范