学成在线第一天-项目介绍、项目的搭建、开发流程以及相关面试题

news/2024/7/7 22:41:13

目录

一、项目介绍

二、项目搭建

三、开发流程

四、相关面试题

五、总结


一、项目介绍

背景 + 业务 + 技术

背景:首先是整个这个行业的背景  然后基于这个行业的背景引出当前项目的背景

业务:功能模块 + 功能业务流程

技术:整体架构(分离/不分离/微服务?) 

到底使用到了哪些技术栈:

后端:服务(主要是用到了什么框架) + 数据段 (MySql Redis es 消息队列.... ) + 第三方一些服务(阿里oss 短信  支付....)

前端:用到了一些什么框架 vue + elementUI 

然后可以整体介绍一下 架构图 那个流程 

通过几个端(h5、app、网站)-> CDN -> Nginx..负载均衡 -> 利用到nginx动静分离,获取到静态资源 进而获取到UI界面  UI层  -> 到达后端网关层  -> 微服务层( 微服层可能涉及到第三方服务) ->

数据层

二、项目搭建

项目搭建 :

大的方向 包含前端 还有后端

前端的话没什么好说的  首先

搭建好环境 (开发软件 做好开发软件配置  安装好相应的插件  、项目运行需要的环境 node)

直接使用ide跑起来就行了

后端:

1. 首先当然也是基础环境  所需的软件  开发软件、项目跑起来需要的... jdk、maven

还有虚拟机环境  虚拟机上面的相关软件 docker 以及docker下面的软件

2. 在私服、gitee/github等远程仓库上面可以创建好项目  然后就可以拉到本地进行开发

3. 其实真正将一个项目从0开始 那么最开始就是搭建项目工程  也就是Maven工程 也就是子父聚合Maven工程

学成在线的Maven工程相较于之前谷粒的Maven整体差不多 

但是学成在线的Maven拆分得更细

它将原本的一个微服务 本来通过包来管理的  现在将包改成模块  将model service controller都搞成了模块

三、开发流程

1. 需求分析

2. 设计

架构整体设计  数据库设计   功能业务流程设计....

3. 编码

4. 测试

5. 上线

6. 运维

四、相关面试题

详细说一下你的项目吧:

首先是项目本身:

1. 行业背景 + 项目背景

简单介绍一下行业背景.....

然后项目背景  可以说一下基于什么模式 (B2B2C?) 说一下整体的业务功能

 2. 功能模块  + 业务流程

功能模块:整体介绍一个各个端中有哪些模块 其中哪些模块是核心模块

业务流程:整体介绍一下大致是干什么的  大致的业务流程 可以重点说一下核心模块的业务流程

3. 技术

整体架构

微服务怎么划分的 

然后再说用到了哪些技术栈:整体框架 + 第三方 + 数据层  + 运维

另外还可以说一下那个整体的架构图  流程

四、相关面试题

环境方面:

1. 使用git需要注意什么?

了解那些git命令 

能够使用远程仓库 能够进行协同开发

协同开发时可能出现合并冲突的问题:

其实归根结底冲突问题问题 其实记住一句话就行了:

只要当前我操作的是最新的就不会有冲突 如果说此时还有另外的开发者开发而且和我是修改同一个文件 再它提交之前我就pull下来了   然后那个开发者就提交了   此时我的代码其实并不是最新的

如果说我再去修改   然后再提交的话  就会冲突 

其实解决办法就一个:保持拉下最新的就行了   

如果说没办法拉下最新的  那就让他冲突 解决好冲突 利用idea的图形化界面 选择好自己需要的样子  然后合并即可

2. 使用maven需要什么?

了解那几个maven命令 : clean package install test deploy...

知道处理依赖冲突的问题:

优先原则,就是把需要的放在前面就优先使用那个

排除  对于不想要的使用 maven排除即可

版本的锁定 使用depenceManage指定好版本 那么之后的就不会起作用了

数据库方面:

1. MyIsam 和Innodb的区别

Innodb支持事务、行级锁、外键

2. 数据库表设计需要注意什么?

1、 选择合适的类型 日期 

2、不要使用外键

3、要使用自然主键 不要使用业务主键

4、对于状态要有默认值

5. 要使用合适的约束

6. 使用innodb这种带事务的存储引擎

五、总结

1. 掌握面试中项目介绍的话术

2. 掌握项目的搭建

3. 知道项目的开发流程


http://lihuaxi.xjx100.cn/news/1704130.html

相关文章

java1.8新特性流

案例描述 今天跟着黑马程序员的视频&#xff0c;完成“瑞吉外卖”项目的菜品信息管理模块的时候&#xff0c;遇到了一个比较陌生的写法 用到了Java8的新特性 stream().map((item) -> {}).collect() List<DishDto> collect records.stream().map((item) -> {DishDt…

深度学习---神经网络基础

深度学习概述 机器学习是实现人工智能的一种途径&#xff0c;深度学习是机器学习的一个子集&#xff0c;深度学习是实现机器学习的一种方法。与机器学习算法的主要区别如下图所示&#xff1a; 传统机器学习算术依赖人工设计特征&#xff0c;并进行特征提取&#xff0c;而深度学…

【编解码格式】AVS系列

AVS1 AVS&#xff08;Audio Video coding Standard&#xff09;为中国具备自主知识产权的第二代信源编码标准&#xff0c;此编码技术主要解决数字音视频海量数据&#xff08;即初始数据、信源&#xff09;的编码压缩问题&#xff0c;故也称数字音视频编解码技术。目前国际上音…

解决CondaHTTPError HTTP 000 CONNECTION FAILED for url解决方法

解决CondaHTTPError: HTTP 000 CONNECTION FAILED for url解决方法 问题&#xff1a;使用conda install命令安装包提示CondaHTTPError: HTTP 000 CONNECTION FAILED for url 分析&#xff1a;网络连接问题&#xff0c;大概率是网速不行或者源没有换 解决方案&#xff1a;修改国…

Mysql数据库表操作--存储

建表&#xff1a; 插入上面的数据&#xff1a; 1、创建一个可以统计表格内记录条数的存储函数 &#xff0c;函数名为count_sch() 2、创建一个存储过程avg_sal&#xff0c;有3个参数&#xff0c;分别是deptno&#xff0c;job&#xff0c;接收平均工资(out);功能查询employees表的…

vue将日期数据转换成字符串

使用Vue中的过滤器&#xff08;Filter&#xff09;可以将日期数据转换成字符串。 下面是一个例子&#xff1a; <template><div><h1>日期转字符串示例</h1><p>日期&#xff1a;{{ date | formatDate }}</p></div> </template>…

thinkPHP框架详解+部署

目录 什么是ThinkPHP: ThinkPHP的主要特性&#xff1a; 什么是ThinkPHP: ThinkPHP是一个快速、兼容而且简单的轻量级国产PHP开发框架&#xff0c;诞生于2006年初&#xff0c;由国内的技术爱好者创建&#xff0c;遵循Apache2开源协议发布&#xff0c;是为了敏捷WEB应用开发和…

C#WPFPrism框架模块化应用实例

本文实例演示C#WPFPrism框架模块化应用实例。 首先创建WPF项目,修改App相关文件内容,以便使用prism。 一、添加模块 解决方案中添加ModuleA和ModuleB两个项目 删除不用的窗体,添加自定义窗体 修改ModuleA和ModuleB的输出类型