如何设计框架、组件

69 阅读4分钟

一,项目架构,规范

1,项目架构做哪些内容

1,技术选型:vue,webpack,
2,项目解构:静态文件、样式和图片、utils工具类、router路由层,视图层View,组件Component,
mixin公共逻辑的提取。
3,工具及公共方法:
工具:axios引入,elementUI全局引入,日期转换插件moment、
utils:封装http、文件下载、
...独立开发项目没有问题

2,项目规范有么,怎么做的

1,前端规范文档:文件名驼峰,组件名首字母大写,变量名驼峰
2,项目目录规范
3,代码规范:eslint,pre-commit

3,公共组件如何设计?

看是页面组件、还是项目级的组件、或者是公司开源组件。
1,首先是命名应该更趋向功能,而不是业务名
1.1,单文件开发,静态资源,和相关联的组件,放在同级目录,
2,易扩展:要提供丰富的props,数据要有结构性也要避免层次太深,对性能会有影响、提供slot插槽,
来实现一些定制化需求。
3,辅助代码要提取,比如一些假数据,或者配置代码要提取。

二、服务端(nodejs)

0,如何理解服务端(node的最优体验)

1, session , token的区别

2,如何监测项目

因为node,nodemon启动服务,挂掉不能重启。
pm2 可以做进程守护,服务挂掉自动重启
pm2 可以自动将日志,写进文件
pm2 可以查看restart,如果重启太多次,就要看下日志,修改报错,重新上线。
pm2 可以设置多进程
    *(session:多进程 内存无法共享,可以共享一个redis)
(操作系统 会 限制一个进程的内存,所以会分配多进程,充分利用多核cpu 和 内存)

3,如何手动做日志系统

4,node的原理(事件驱动、单线程、非阻塞I/O)

5,node的常用模块

6,express 、koa2,egg的区别

7,koa2常见的开发库

三、关于项目回答:

1,云南省互联网+督查(工作流程系统)

3,主要负责:

  a,任务模块:任务的创建,流转。用户管理模块(角色,机构维护)。

  b,前端性能测试及优化:首屏渲染,资源请求等。

  c,jenkins自动打包部署构建。

遇到什么难点?:

1,前端加载慢,提几个性能优化的例子:按需加载,预渲染页面。

2,工作流:

不同的任务类型:

任务详情不同:新建表单可配置,任务详情不同。

针对不同的工作流。

一个工作流有几十个步骤,根据不同的参数来区分。

每个流程都需要渲染不同的按钮:

一开始前端渲染按钮,前端每个部分都写一遍调用流程的方法。

改造(重构):

表单可配置、

后端进行按钮可配置(前端再绑定事件)、

统一流程方法。

2,商城管理系统(后台管理系统)

主要负责:

  a,前端基础框架搭建(webpack),工具、公共模块整理。

  b,商品模块(商品发布),订单模块,首页数据指标。

  c,上线打包(版本更新)工作:webpack打包,linux服务器部署,nginx配置。

疑难杂症:

1,商品发布,涉及到但规格,多规格发布。数据结构比较复杂,运用了笛卡尔积算法。

2,sass系统,面对客户个性化商城界面,要实现多套界面。

改进:

颜色可配置,

主页界面可用组件配置

最优方案:

用户自己拖拽布局。

3,小程序:

a,首页开发,分类页,个人中心,购物车。

疑难杂症:电商首页的优化。

4,母婴社区(博客系统)

主要负责:( 独立负责该项目前、后端 )

  a,后端koa2提供接口服务。

  b,前端vue:博客创建,博客首页,我的关注,图片上传等。

疑难杂症:艾特,图片上传接口。项目监听。

hr:

1,遇到最大的挑战是什么?

好的技术团队。积极的团队精神。

2,如何看待加班?从加班中发现项目问题所在。不得不加的话,就是加,工作的态度,员工拿了报酬,应该把公司的利益放前面,这是责任心的体现吧。

3,你的优缺点是什么?如何弥补?技术上的缺点(架构能力)。性格缺点(习惯一个人做事)。要结合过往的经历。