精华内容
下载资源
问答
  • 项目部工作总结怎么写 项目部工作总结怎么写(一) 从20xx年12月进入工程项目部工作已经整整一年时间。一年的风雨兼程,一年的酸甜苦辣,对于我个人来说是一个锻炼成长的过程,是一个收获的过程,也是人生价值得到...
  • 工程项目个人年终总结怎么写 、xxx项目财务基本数据: 截至xx年末,项目总共实现销售资金回流6.6亿元,银行按揭签约放款率达100,建设投入期最大现金流3.17亿元,预计本项目最终实现销售净利润1.25亿元,实现项目...
  • 项目经理年终工作总结怎么写: 进入xx公司已有3年的时间,回首往事,几多紧张、几多无奈,几多的欢乐。在尚格公司我经历了从业务代表到办公室到业务部经理的转变,感谢公司对我的培养和信任。现将工作中出现的...
  • 项目组织结构ajax数据请求的封装和api接口的模块化管理第三方库按需加载利用less的深度选择器优雅覆盖当前页面UI库组件的样式webpack实时打包...模块拆分化管理项目组织结构清晰的项目结构能让别人开发进来更容易理解...

    项目组织结构

    ajax数据请求的封装和api接口的模块化管理

    第三方库按需加载

    利用less的深度选择器优雅覆盖当前页面UI库组件的样式

    webpack实时打包进度

    vue组件中选项的顺序

    路由的懒加载

    路由模块拆分化管理

    项目组织结构

    清晰的项目结构能让别人开发进来更容易理解,当然,每个人都有一定的代码风格习惯。但基于vue开发框架的项目,vue-cli脚手架搭建的项目组织结构大同小异。同时,预想到后面的需求变更及功能增加进展得更有效率,下面截图是我觉得比较好的项目组织结构:

    这个截图只是针对个人觉得比较通用的vue工程结构,不过这个结构要根据具体的项目情况调整,不必为了模块化而模块化。模块化的优势就是体现在项目业务比较复杂的情况,如果项目业务逻辑并不复杂,可以适当的删减部分模块或文件。

    相关说明:

    assets: 存放图片、UI设计的图标文件

    componets:自研的业务型及通用型组件

    router:项目的路由管理模块

    store:基于vuex的状态管理容器,api存放各模块的数据请求,modules存放将store分割成模块(module),按官网的说法,每个模块应该拥有自己的 state、mutation、action、getter,主要是解决应用的所有状态如果全部集中到一个比较大的store对象,当应用变得非常复杂时,store 对象就有可能变得相当臃肿而难以维护。

    例子:

    其中的一个模块configManage.js

    import {

    configManageService

    } from"../api/index"

    //state

    const state ={

    accountMenuList:[]

    }//getters

    const getters ={//菜单

    menuTree: state =>{returnstate.accountMenuList;

    },

    }//actions

    const actions ={

    async GET_ACCOUT_MENU({

    state,

    commit

    }, model) {//参数 state为当前局部状态,commit响应式改变当前绑定的菜单数据

    const res =await configManageService.getACountMenu(model);

    commit("CHANGE_MENU", res.data);

    }

    }//mutations

    const mutations ={

    CHANGE_MENU: (data)=>{

    state.accountMenuList=data;

    }

    }

    exportdefault{

    state,

    getters,

    actions,

    mutations

    }

    index.js,统一出口,导出全部的store模块

    import Vue from 'vue'import Vuex from'vuex'import index from'./modules/index'import report from'./modules/report'import createLogger from'vuex/dist/logger' //控制台输出当前变化的某个状态Vue.use(Vuex)

    const debug= process.env.NODE_ENV !== 'production' // 生产或开发环境打包export const indexStore= newVuex.Store({

    modules: {

    report,

    index

    },

    strict: debug,//按照官网建议,改变state的状态只能通过getter

    plugins: debug ?[createLogger()] : []

    })

    style:

    存放重写UI库的样式和不同组件公共样式文件

    util:

    存放用es6封装的工具类,http请求类,配置类、校验类、事件类等

    views:

    存放各路由模块页面

    static:

    存放全局配置文件,环境域名等

    iconfont:

    存放字体图标文件

    ajax数据请求的封装和api接口的模块化管理

    基于vue的项目,与后台请求数据我们通常使用的是axios,它是基于promise的http库,其提供的优秀的特性被广泛运用在项目当中,官方已推荐使用axios,放弃原有的vue-resource。

    1、axios的封装,在很多业务场景下用来进行请求的拦截、响应的拦截及请求超时等;

    //axios请求类,一些基础化配置

    class AjaxRequestModel {

    constructor(model) {this.url = model.url || "";this.data = model.data ||{};this.method = model.method || "POST";//this.success = model.success || function () {};

    //this.fail = model.fail || function () {};

    //this.slientSuccess = model.slientSuccess || true;

    this.failMsg = model.failMsg || true;this.baseUrl = model.baseUrl ||window.sysConfig.baseUrl;this.loading = model.loading || true;//this.setData();

    this.setUrl();

    }

    setData() {//let options = {

    //sessionid: ""

    //};

    this.data = Object.assign({}, this.data);

    }

    setUrl() {this.url = this.baseUrl + this.url;

    }

    }//实例化axios,配置请求超时时间

    const axiosInstance =axios.create({

    timeout:1000 * 20});//封装ajaxService函数,以更少的代码处理get、post、delete、put请求方式,同时支持async、await异步处理方案,返回promise

    const ajaxService = param =>{

    let model= newAjaxRequestModel(param);

    let o={

    url: model.url,

    data: model.data,

    method: model.method

    };//if (model.loading) {

    //ak.Msg.showLoading();

    //}

    if (model.method === "GET") {

    o={

    url: model.url,

    params: model.data,

    method: model.method

    };

    }return new Promise((resolve, reject) =>{

    axiosInstance

    .request(o)

    .then(res=>{if (res.data.code === 200 || res.data.code === 0) {

    resolve(res.data);

    }else{

    ak.Msg.toast(res.data.message,"error");

    reject(res.data);

    }

    })

    .catch(err =>{

    httpResponseHandle.call(err);

    reject(err);

    });

    });

    };

    2、在请求的拦截中,可以携带用于接口身份验证的token,配置headers请求头、提交参数的序列化等

    //请求头相关配置

    axiosInstance.interceptors.request.use(function(config) {

    const info= ak.Utils.getSessionStorage("USER_INFO");

    config.headers.common['token'] = info ? info[0].token : "";//config.headers.common['Content-Type'] = "application/json";

    returnconfig;

    },function(error) {returnPromise.reject(error);

    }

    );

    3、在响应的拦截中,可以进行根据各种状态码来进行错误的统一处理等

    const httpResponseHandle = err =>{

    const opt=err.response;//请求超时

    if (err.code === "ECONNABORTED") {

    ak.Msg.toast("请求超时,请稍后再试", "error");

    }if (opt.status === 401) {

    ak.Msg.confirm("用户登录超时,请重新登录", () =>{

    sessionStorage.removeItem("USER_INFO");

    window.utryVue.$router.replace("/login");

    location.reload();

    });

    }else{

    ak.Msg.toast(opt.data.message,"error");

    }

    };

    4、api接口模块化管理,业务逻辑和数据请求分层,这样可以很方便统一管理我们的接口

    如图,把不同的功能拆分,实现代码模块化管理,全部的接口均放在api文件夹下面。index.js是一个api接口的导出的出口,这样就可以把api接口根据功能划分为多个模块,利于多人协作开发,比如一个人只负责一个模块的开发等,还能方便每个模块中接口的命名

    index.js:

    import report from './report'; //报表模块

    import accountService from './accountService'; //登陆、用户信息相关

    //导出接口

    export {

    accountService,

    report

    }

    API请求service层:

    //报表管理请求模块,与后台请求的参数、请求方式、url均看作一个model

    import http from "@/util/http.js";

    const API_CONTEXT= "sys/"; //请求的上下文

    const report ={

    async getMenuList() {

    let model={};

    model.url= API_CONTEXT + "category/getCategoryTree";

    model.method= "GET";

    let res=await http.ajaxService(model);returnres;

    },

    async removeMenu(model) {

    model.data={ ...model };

    model.url= API_CONTEXT + "category/removeCategory";

    let res=await http.ajaxService(model);returnres;

    }

    }

    exportdefault report;

    组件的业务逻辑层调用方式:

    //说明:async、await的写法省去了不少的回调,在有些必须请求两个接口或者两个接口以上场景下,async、await优势就显示出来了

    import { reportService } from "../../store/api/index";

    async getMenuList() {

    const param={

    role:""};

    const res=await reportService.getMenuList(param);//下面代码返回成功时才执行,错误由上面所讲的axios封装ajaxService统一处理this.menuList =res.data;

    }

    5、如果后期维护需要修改的接口,我们就直接在api.js中找到对应的修改就好了,而不用去每一个页面查找我们的接口然后再修改会很麻烦,如果修改的量比较大,难免会自测不充分产生bug,直接gg。还有就是如果直接在我们的业务代码修改接口,一不小心还容易动到我们的业务代码造成不必要的麻烦

    6、处理接口域名、端口有多个情况

    //无需前端打包,运维环境快速修改配置,eg:

    window.sysConfig ={//运维平台

    baseUrl: 'http://10.0.33.97:7083/',//租户平台

    tenantUrl: 'http://10.0.33.96:7082/'}//区分不同平台的url地址在http.js文件下的AjaxRequestModel类实例化会统一处理

    this.baseUrl = model.baseUrl ? window.sysConfig.baseUrl : window.sysConfig.tenantUrl

    第三方库按需加载

    按需加载是针对某些第三方库体积比较大的情况下,优化webpack打包后的js体积,减少页面的加载时间

    以echart为例子:

    优化前:

    //全导入

    import * as echarts from "echarts";

    webpack打包后:

    优化后(主js体积减少了400kb,同时build编译打包速度也得到了减少)

    import echarts from "echarts/lib/echarts";//依赖注入,目前项目只用到折线图、饼图和柱形图,故只需引入对应的模块即可,tooltip是提示类,title是鼠标悬停显示的对应的图表名称

    import 'echarts/lib/chart/bar';

    import'echarts/lib/chart/line';

    import'echarts/lib/chart/pie';

    import'echarts/lib/component/tooltip';

    import'echarts/lib/component/title';

    利用less的深度选择器优雅覆盖当前页面UI库组件的样式

    vue页面组件的样式基本是写在中,增加scoped属性的目的让其样式只在当前页面有效。按照这些写的方式,编译后当前标签会加上类似于[data-v-]这样的属性,但是第三方的UI组件库并没有编译为带[data-v-]这样的属性,所以就遇到了当前页面覆盖的样式没生效的情况,有没有方法处理这种问题呢。有些小伙伴可能会想到我在公共样式里面写,额外添加类名来覆盖当前组件的样式,其实,这也不失为一种方案,但是会引来样式全局污染和命名可能重名的情况。下面列举更简单粗暴的方式,同时避免了样式污染和命名冲突的问题:

    .menu-tree{/deep/ .el-tree-node__content {

    height:32px;

    }/deep/ .is-current .el-tree-node__content{background-color:#f2f2fa;

    }}

    编译后,默认给menu-tree加上了[data-v-3c93a211]

    /deep/深度选择器支持less或者sass,如果你用的是原生的css,可以用<<

    webpack实时打包进度

    在项目用jenkins自动化打包前端项目的时候,常常会遇到打包速度慢而体验很差,在优化减负依赖包的情况下,同时没有一个测试环境或生产环境当前打包进度捉鸡。这里推荐一个第三方的插件包

    progress-bar-webpack-plugin。

    用法:

    //需安装依赖 npm install progress-bar-webpack-plugin --save-dev

    const ProgressBarPlugin = require('progress-bar-webpack-plugin')//在生产环境webpack配置文件的plugin是加上

    new ProgressBarPlugin(), //打包进度

    vue组件中写选项的顺序

    这里纯属个人观点,可能有些小伙伴用vue开发不是遵从这个。为什么要规定组件的写法顺序呢,或者说它是官方要求的规范,不如说是能让的代码更加优雅,更易于维护,因为你写的代码不仅是你一个人维护。要是一个团队都按这个规范来,大家在维护代码的时候认知一样,那效率就提高了。

    组件依赖:

    components(自研的子组件或第三方组件)

    service(api请求类,其他服务类)

    utils(工具类等)

    事件传递(vue eventBus)

    mixins(复用的属性或方法)

    组合:

    mixins

    组件的属性、接口:

    components

    props

    本地响应式属性、状态:

    data

    computed

    事件注册:

    watch

    组件生命周期:

    created

    mounted

    destroyed等

    组件的方法:

    methods

    例子:

    //例子

    import utryTree from "@/components/utry-tree/utry-tree.vue";

    import { reportService } from"@/store/api/index";

    import Validation from"../../util/Validation";

    import eventBus from"@/util/eventBus";

    import reportMixins from "@/mixins/reportMixins";

    exportdefault{

    mixins: [],

    components: {

    },

    props: {

    menuList: {

    type: Array,default() {return[];

    }

    }

    },

    data(){},

    computed:{},

    watch:{},

    mounted(){},

    methods:{},

    }

    路由的懒加载

    有时候,针对有些复杂组件,初始化页面其实并不需要把全部组件资源加载进来,把业务复杂的组件抽离出来,从而能减少初始化页面的加载时间

    优化前:

    import reportManage from '@/views/reportManage/index';

    import reportPreview from'@/views/reportManage/reportPreview';

    exportdefault[

    { path:'reportManage/index', name: 'reportManage', component: reportManage },

    { path:'reportManage/reportPreview', name: 'reportPreview', component: reportPreview }

    ];

    初始化页面的加载耗时:

    优化后:

    import reportManage from '@/views/reportManage/index';

    exportdefault[

    { path:'reportManage/index', name: 'reportManage', component: reportManage },

    { path:'reportManage/reportPreview', name: 'reportPreview', component: () => import('@/views/reportManage/reportPreview'),

    meta: { keepAlive:false}

    }

    ];

    初始化页面加载耗时:

    时间的差别主要是在js的解析上,主要是是因为初始化页面没有加载当前模块的二次组件的js,等到跳转到二次页面再去解析静态资源,总体优化后初始化页面的加载时间快了100多毫秒。

    路由模块的拆分化管理

    这里的路由拆分,是指按模块拆分成不同的路由文件,针对单页面应用这样更方便团队的多人协调同步开发,自己写的功能模块互不影响。如果当业务需求多起来的时候,它的优势就越能体现出来。我们并不想就在一个router.js写整个工程的路由,这样会是单文件代码量庞大而变得很槽糕,同时也会带来其他同事误改的问题。

    我们在router文件夹下面创建router.js作为路由的入口文件,其他以router.js后缀的文件存放着各个模块的路由。

    router.js:

    import Vue from "vue";

    import Router from"vue-router";

    import NProgress from"nprogress"; //引入nprogress,每次路由变化网页顶端有个加载条效果

    import ak from "@/util/ak.js";//业务路由

    import login from "@/views/index/login"; //租户平台

    import oamLogin from "@/views/index/oamLogin"; //运维平台

    import indexRouter from "./index.router"; //首页相关

    import reportManage from "./reportManage.router"; //报表管理

    Vue.use(Router);//默认登录

    let routes =[

    {

    path:"/",

    redirect:"login"},

    {

    path:"/login",

    name:"login",

    component: login

    },

    {

    path:"/oamLogin",

    name:"oamLogin",

    component: oamLogin

    }

    ];

    routes=routes.concat(

    indexRouter,

    reportManage

    );//router register

    const router = newRouter({

    routes

    });//路由相关的拦截操作,在这里处理,之前有的router相关操作写在main.js,并不是很友好

    router.beforeEach((to, from, next) =>{//每次切换页面时,调用进度条

    NProgress.start();//cache机制

    const info = ak.Utils.getSessionStorage("USER_INFO");

    const token= info ? info[0].token : "";if(token) {

    next();

    }else{if (to.path === "/oamLogin") {

    next();

    }else if (to.path === "/login") {

    next();

    }else{

    next("/login");

    }

    }

    });

    router.afterEach(()=>{//在即将进入新的页面组件前,关闭掉进度条

    NProgress.done();

    });

    index.router.js:

    import home from '@/views/index/home';

    exportdefault[

    { path:'/index/home', name: 'home', component: home }

    ];

    这里把首页的路由放在一个数组里,然后导出去,有router.js统一引入,并实例化当前路由

    未完待续......

    展开全文
  • 20XX年科研项目年度个人工作总结怎么写 xx年科研项目年度个人工作总结怎么写 刚刚过去的xx年,在新产业生物医学工程有限公司的发展上是具有里程碑意义的一年,也是公司深化改革,坚持发展的一年。在这一年里,公司...
  • 专业技术工作总结怎么写? 当工作进行到一定阶段或告段落时,需要回过头来对所做的工作认真地分析研究一下,肯定成绩,找出问题,归纳出经验教训,提高认识,明确方向,以便进一步做好工作,并把这些用文字表述...
  • 如果是阶段性的报告,项目还在运行,则主要关注:项目背景、项目简介、工作进展、存在问题、下一步工作安排。...侧重分析整体表现,就当前项目经验指导下一个项目。总之,项目总结报告就是分析项目历史数据得出结论...

    如果是阶段性的报告,项目还在运行,则主要关注:项目背景、项目简介、工作进展、存在问题、下一步工作安排。先把项目说清楚,再对发生过的或正在发生的事情进行分析,发现优点与不足,并得出方案调整下一步工作安排。

    如果是最终的总结报告,项目已经结束,则主要关注:项目背景、项目简介、项目成果、项目不足、下一次努力方向。侧重分析整体表现,就当前项目经验指导下一个项目。

    总之,项目总结报告就是分析项目历史数据得出结论并报告出来。让相关方知道项目的情况、存在哪些优缺点,能如何改进优化。

    项目背景:

    基于什么背景要求开展本项目,初衷是什么。

    侧重描述立项的前因,基于项目背景的合理性从而立项产生项目。

    ( Why )

    项目简介:

    本项目最终成品介绍,视阅读者确定详细度,一般能快速把项目说清楚即可。

    简单来说,描述项目目标(要做什么)、方案计划(怎么做、谁来做)。

    简单介绍,不用太详细,把项目快速的说清楚。

    ( What & How )

    工作进展:

    或:成绩/成果/项目创新

    当前阶段状态,历史过往阶段状态。

    整体表现:取得成绩、获得成果、项目创新。

    ( Now & Good )

    存在问题:

    或:不足/项目反馈

    当前阶段问题,历史过往阶段问题。

    整体表现:存在问题、不足之处、意见反馈。

    ( Now & Bad )

    下一步工作安排:

    或:下一次努力方向/改进总结

    基于历史阶段、当前阶段状态及总结,做出下一步工作安排或调整。

    基于当前项目整体状态及总结,做出下一次努力方向或改进之处。

    一般来说,基于以上规范即可。

    如有必要,还可以就 项目管理项目过程组 进行多维度分析总结。


    项目管理多维度分析总结:

    项目管理的多维度,源自PMBOK项目管理知识体系指南。

    优先级是先4维度(1-4)、再6维度(1-6)、再10维度(1-10),视项目实际情况而定。

    4f9f4b81fd1b6de4f5bbc2c37124e8ee.png

    项目管理铁三角

    1. 项目范围/需求/目标:

    任何项目都需要锁定项目的目标范围,需求任务,可交付成果。

    需分析总结此维度实际状态:范围存在哪些变化,与计划有何差异;差异出于什么原因,会产生什么影响。

    2. 项目时间/进度:

    项目时间是否符合计划,进度把控是否合理,分析存在偏差的原因及影响。

    3. 项目质量:

    基于项目质量的衡量标准,通过数据分析判断质量状态,并找出影响项目质量的根源。

    就提升项目质量提出补救方案,并总结优化质量控制方法用于今后的工作。

    4. 项目成本:

    计算项目成本是否可控,如出现超支则需讨论方案进行应对。

    5. 项目资源/团队:

    分析项目资源使用状态,团队建设及管理状态,是否得到高效利用产生最大化增益。如遇到减损,则需分析原因评估影响,再做出调整,减少损失。

    6. 项目风险:

    可按风险分类进行分析,如项目范围(需求变更)、项目质量、项目时间、项目资源(人力)、项目沟通等。分析风险,提高正面风险的概率和影响,降低负面风险的概率和影响。

    7. 项目沟通:

    分析各环节沟通是否有效及时,找出影响沟通的主要矛盾并解决,监督收集反馈。

    8. 项目采购:

    就采购相关考核点进行数据分析,分析原因并提出改进方案。

    9. 项目相关方:

    分析项目相关方的利益、参与度、相互依赖性、影响力和对项目成功的潜在影响。

    相关方是否得到有效管理产生正向协作,推动项目往好的方向发展。

    10. 项目整合:

    整合兼具统一、合并、沟通和建立联系,分析各项整合管理是否促进项目交付。


    项目过程组多维度分析总结:

    过程组多维度分析是基于PMBOK项目管理标准,按时间顺序,依次分析总结各项过程,启动、规划、执行、监控、收尾。

    42957d2eedb980d83faa7fed33702984.png

    项目过程组组相互作用

    启动过程组

    主要涉及:整合管理、相关方管理

    规划过程组

    主要涉及:整合管理、范围管理、进度管理、成本管理、质量管理、资源管理、沟通管理、风险管理、采购管理、相关方管理

    执行过程组

    主要涉及:整合管理、质量管理、资源管理、沟通管理、风险管理、采购管理、相关方管理

    监控过程组

    主要涉及:整合管理、范围管理、进度管理、成本管理、质量管理、资源管理、沟通管理、风险管理、采购管理、相关方管理

    收尾过程组

    主要涉及:整合管理

    展开全文
  • 【声明】这文档不是介绍具体怎么编写这文档的[具体编写文档可以参考软件设计文档规范中的项目开发总结模版],而是介绍一些思路、方法。 部分内容从其他人博文中copy。项目开发总结文档的作用 项目开发总结又...
    【声明】这个文档不是介绍具体怎么编写这个文档的[具体编写文档可以参考软件设计文档规范中的项目开发总结模版],而是介绍一些思路、方法。 部分内容从其他人博文中copy。
    一、项目开发总结文档的作用
    项目开发总结又可以细化成两种文档:开发进度周/月报、项目开发总结
    一般小项目不用整理开发进度周/月报,只编写项目开发总结即可。建议超过开发时间两周的项目整理开发进度周/月报。
    开发进度周/月报适合在项目开展的过程中整理,对于目前项目的进度、状态有一个客观的评价,对下阶段的计划有更好的规划,便于适时调整人力资源,为下阶段工作的开展提供保障。
    二、项目开发总结文档编写的目的
    项目开发总结文档的编写不仅仅对参加项目的人有价值,对未实际参加到项目中的人更是一份宝贵的财富。大公司的经验是如何积累起来的,就是靠一个个项目开发中的经验、教训沉淀下来的。如果我们每次都不总结,像一群代码工人一样机械的劳动,我们将永远看不到自己的价值,永远是原地打转,公司永远处于初级阶段,没有任何经验积累。
    2.1、总结经验
    总结不是歌颂功德,但一定要写出成功的经验以及采用的特殊方法或工具,便于积累知识和经验。
    2.2、防止重复错误
    在项目过程中会发生许多错误,通过总结出现的错误及其采用的改善措施,作为改进流程和改进项目管理的依据,防止错误再次发生。
    2.3、激励
    项目组成员都想知道自己干得如何。在项目启动时就应该确定项目要总结的内容,包括项目评价的标准、所采用的方式以及参加评价的人。其中应包括项目组成员绩效的评价,只要评价是公正、公平、公开的,就会激励项目组成员更加积极地努力工作。
    2.4、作为项目实践的证据
    有时候,客户(包括公司内部客户)在选择项目承包方时,需要参考你出示的相关项目成功实践的记录,这时候项目总结报告将成为重要证据。

    三、项目总结文档编写过程中应该注意的几点问题
    3.1、项目开发阶段就可以确定一些项目总结的内容

    这样做的目的是让大家明白一些考核的标准,激励大家努力工作
    3.2、让所有人都参与进来
    不要认为这个就是项目负责人的任务,项目总结文档要有项目负责人整理,但其中一些点的细化工作可以交由其他人负责,这样让成员都有参与感
    3.3、一些关键点的细化工作要做好
    不要奢望一个文档就能体现所有经验、教训,关键点的细化文档可能更有参考价值,甚至可以做一些专题讨论
    3.4、客观、务实
    经验、教训同等重要,都必须客观的体现。不要因为是给其他人或领导看的就报喜不报忧,如果是这样就不叫项目开发总结;也不要只写教训,那样对参与的人而言是一种否定。
    这个文档的整理一定要务实,不要总是讲一些空洞的东东,这样给其他开发人员介绍的时候很容易反感、流于形式

     

    展开全文
  • 实习第一个项目总结

    2020-07-27 11:07:17
    实习第一个项目总结 首先需求一定要搞清楚,全部明白是怎么一个流程,然后再继续开发。 不要听个差不多,然后边开发边问需求,逻辑还没有理清楚就开始,然后边边改,以至于一开始就埋下了很大的雷,坑...

    实习第一个项目总结

    • 首先需求一定要搞清楚,全部明白是怎么一个流程,然后再继续开发。

    • 不要听个差不多,然后边开发边问需求,逻辑还没有理清楚就开始写,然后边写边改,以至于一开始就埋下了很大的雷,坑越来越多,最后填都填不完。

    • 不要上来就闷头写代码,准备开始写之前,先想好各个页面的逻辑,页面直接怎么交互,组件怎么相互引用等问题。要不然页面写完了,后来发现传参过不去,联系不起来,等于白写了。

    • 一定要多加注释,现在写的代码多了,才发现,不加注释是真难受,上午自己写的代码,下午来了,就忘记是干啥的了,还得从头到尾再捋一遍思路。

    • 代码规范性,不管是函数还是样式,一定不要因为省事,就随便命名,后面很容易不知道干啥的,而且很容易重复,产生bug,良好的代码规范方便开发也方便维护。

    • 遇到问题一定要及时和产品和后端交流,不要放着,不及时解决就是再给后面埋雷。

    需要加强的方面

    • bug调试问题,调试器用的不熟,只会f12看报错,出了console其他的不会看,也不知道是什么意思,也不会加断点,这里需要加强一下。

    • 知识点用的不熟,很多东西记不住,用的时候要百度,而且很多用法也不会,降低了开发效率,这个要自己私下多补一补,然后多敲代码,多练多用慢慢的就记住了。

    • 要巧用快捷键,很多快捷键不知道,出了问题,只会用鼠标滚动来一行一行找代码,效率特别低。

    • 要多看熟悉组件的方法,不要只看组件的例子,下面还有很多属性和方法的效果是例子里面没有的。一开始我看,认为组件达不到我要的效果,然后强行修改组件样式,导致发生了,一连串的问题,因为很多组件样式都是重名的,改的多了容易忘记,看着这个问题解决了,那个问题又出来了。

    • 现在写的代码太乱了,只会用笨方法,根本不够优化,写完自已回头一看,都感觉跟屎一样。多看看大佬写的代码。

    展开全文
  • 月度工作总结怎么写介绍 一个月时间就这样很快的结束了,下文为大家介绍月度工作总结怎么写,让我们一起来看看具体内容吧! 标题 部门: 姓名: 岗位: 时间: 1、月重大事记说明: 主要是描述你在当月做了那...
  • 当天工作总结怎么写 总结工作是开展行政管理的项重要手段,也是员工必备的项工作技能,天的工作结束了,写总结更好的完成工作,今天小编给大家找来了当天工作总结怎么写,希望能够帮助到大家。当天工作总结...
  • 一个项目完成总结 当学完数据库后,项目就开始了。这也算是初级阶段的总结了。HTML的前台,php的后台,MySql的数据库。这些东西就在脑中回想,怎么写?这是个问题。 任务:商城的前台和后台。。。。。(当时就给跪...
  • 销售工作周总结怎么写 在各行各业每工作一段时间,然后做一个总结,这样对自己的职业生涯,对自己回顾过去和规划未来都非常有益。今天小编给大家为您整理了销售工作周总结怎么写,希望对大家有所帮助。销售工作周...
  • 财务年中总结怎么写 老是把自己当珍珠,就时常有怕被埋没的痛苦。今天小编给大家为您整理了财务年中总结怎么写,希望对大家有所帮助。财务年中总结怎么写范文一: 20xx年财务部的工作紧紧围绕着集团领导年初提出的...
  • 财务工作总结怎么写 财务泛指财务活动和财务关系。,企业财务就是企业再生产过程中的资金运动,体现着企业和各方面的经济关系。*《财务总结及工作计划怎么写》由小编为您整理,仅供参考! 财务总结及工作计划怎么写...
  • 财务月工作总结怎么写 财务工作人员应加强基建政策研究,强化基建财务管理,在思想政治方面也应具备“与时俱进、开拓创新、自加压力、争创一流”精神,恪守规章制度,履行岗位职责。今天小编给大家为您整理了财务月...
  • 团队建设活动总结怎么写 团队建设是指为了实现团队绩效及产出最大化而进行的系列结构设计及人员激励等团队优化行为。下面是小编为您整理的“团队建设活动总结怎么写”,仅供参考,希望您喜欢。 团队建设活动总结...
  •  活动总结怎么写 7月21日上午,国家基本公共卫生服务项目宣传月活动在兰州正式启动,本次活动主题为“基本公共卫生、我服务你健康”。 国家基本公共卫生服务项目是党和政府实施的惠民政策,由各级财政共同...
  • 企业旅游活动总结怎么写 公司旅游活动方面可以增加员工的凝聚力,提升员工团结合作的意识,另方面也可以让员工放松心情,以更好地工作状态投入到工作中。下面是小编为您整理的“企业旅游活动总结怎么写”,仅供...
  • 个人工作总结怎么写 为了满足不断增长的石油与天然气需求,就需要中国的石油钻探企业不断加大油气资源的开采。下面是有钻探个人工作总结20xx,欢迎参阅。钻探个人工作总结20xx范文1 20xx年转瞬即逝,回首过去这一年...
  • 单位年终工作总结怎么写范文 可能对许多人来说工作总结怎么写一直是问题,尤其是单位的年终总结。下面是小编为大家整理的:单位年终工作总结怎么写范文,仅供参考,欢迎阅读! 单位年终工作总结怎么写范文【】 ...
  • 干部培训工作总结怎么写 【篇】 各位领导: 大家好!我来自xx项目部。首先非常感谢各位领导能在百忙之中抽出宝贵的时间来听我的述职报告,同时也很荣幸地能够成为安装分公司的员。XX年是我人生的转折点,也是...
  • 大二学生自我总结怎么写 转瞬间大二已经过去了,回顾过去大二的整个学年,为这大二学年作一个自我总结。你会怎么写呢?以下有三篇范文可供参考: -1- 大学第二年已经结束,我必须总结在这一年的得与失,才能展望...
  • 环保局工作总结怎么写 只有地方环保局落实各项监测任务,环境保护才有了实现的基础。环保局的工作总结该怎么写呢?以下有三篇范文可供参考: 1 为落实环保部及自治区环保厅要求,强化我市化工石化、有色冶炼等可能...
  • 试用期转正工作总结怎么写 劳动合同期限三个月以上不满一年的,试用期不得超过一个月;劳动合同期限一年以上不满三年的,试用期不得超过二个月。试用期结束,需要写试用期工作总结,那么该怎么写呢?下面来看看小编...
  • 工作总结怎么写:个人月工作总结 、党建工作 1、召开离退休老干部迎新春团拜会;对xx年上半年社区党建工作进行部署;制作《党员手册》和流动党员服务卡;制定“增三力工程”实施方案。 2、召开新闻界新春联谊座谈会...
  • 审计单位工作总结怎么写 【篇】 回顾20xx的工作,对照公司的各项制度,能尽心尽力做好各项工作,较好地履行了自己的职责。现将主要情况总结如下: 、概况 我是在20xx年x月份进入xx公司从事公司内务审计工作,...
  •  篇:拓展活动后领导总结怎么写 这次的拓展培训课堂围绕着“团结”两字进行,不同于其他课堂,它是以游戏的形式进行,使职工经受自信心、责任感、凝聚力、奉献及合作精神、创新思维及解决问题的方法等情景式...
  • 公司人事主管工作总结怎么写 公司人事主管工作总结怎么写) 领导和各位同事大家好! 20xx年立刻就到啦!回望20xx年度的工作生活,感受到公司及身边的人这一年来发生的巨大变化,公司的项目发展得越来越多,身边...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,287
精华内容 514
关键字:

一个项目总结怎么写