Java 杂谈程序员她思维

让代码自己写会儿代码【开源】

2019-06-01  本文已影响23人  bugWriter_y

前言

大多数人的工作都是有regular的。
one of the tasks 程序员宝宝do就是要把这份规律变成一个program || application,从而release somebody的sometime。
能否找到这份regular决定了工作能否自动化的key。
同样的,程序员宝宝们自己的工作——coding——也是有regular的。
今天的目的就是为了release程序员宝宝们的sometime。
life is precious,and love is more precious.别把时间都花在重复的劳动上。
出来抽根烟,看看天空,看看大地,让coding flying一会儿。。。

关键点

  1. 找到规律
  2. 模板引擎
  3. 用户交互界面

关键点1:找到规律

以bugWriter自己写后台接口举例子。

如果后台架构是三层架构的,第一步写一个controller,再写一个service(或者加一个接口),再写一个dao(或者加一个接口)。

如果需要增加方法了,先在controller中写方法,然后在service中写方法,然后在dao中写方法。

repeat and repeat.

程序员宝宝卒。。。

关键点2:模板引擎

找到了规律后,我们需要抽出重复的可以定义为变量的部分,然后使用一种模板语言来渲染出最终的文本(这其实和jsp渲染页面有点儿类似)。这里我们使用的模板语言是freemarker。

关键点3:用户交互界面

找到了规律,实现了模板引擎,接下来的工作就是做一套用户交互界面,给用户定义变量和实现最终的目的。

所谓的用户交互界面其实就是前端开发,有一个用户可以输入信息的地方。

bugWriter采用的是web的方式,因为只会这个。

接下来的时间就是coding

最终成果

  1. 后台

spring boot

  1. 前端

angular+ng-zorro-antd

  1. 部署

自己想办法。

因为需要读取源代码并修改源代码,所以需要本地部署

目前实现了后台的自动化,没有file生成file,有file增加method

  1. 操作流程
截图1559379681.png 截图1559379691.png 截图1559379767.png 截图1559379817.png

package com.yblog.controller;

import com.yblog.common.controller.ResponseObject;
import com.yblog.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * @author yblog
 * @date 2019-06-01 17:03:02
 * @Description /用户管理
 */
@RestController
@RequestMapping("/users")
public class UserController {
    @Autowired
    private UserService userService;


    
    /**
     * @author yblog
     * @date 2019-06-01 17:03:02
     * @Description 分页查询用户
     */
    @RequestMapping("/findUsers")
    public ResponseObject findUsers(){
        return ResponseObject.success(userService.findUsers());
    }

    
    /**
     * @author yblog
     * @date 2019-06-01 17:03:02
     * @Description 查询用户列表
     */
    @RequestMapping("/findUserList")
    public ResponseObject findUserList(){
        return ResponseObject.success(userService.findUserList());
    }

    
    /**
     * @author yblog
     * @date 2019-06-01 17:03:02
     * @Description 增加用户
     */
    @RequestMapping("/addUser")
    public ResponseObject addUser(){
        return userService.addUser();
    }

    
    /**
     * @author yblog
     * @date 2019-06-01 17:03:02
     * @Description 修改用户
     */
    @RequestMapping("/updateUser")
    public ResponseObject updateUser(){
        return userService.updateUser();
    }

    
    /**
     * @author yblog
     * @date 2019-06-01 17:03:02
     * @Description 删除用户
     */
    @RequestMapping("/delUser")
    public ResponseObject delUser(){
        return userService.delUser();
    }



}


下一步

让生成的过程慢一点儿,这样程序员宝宝可以有time出来抽根烟,看看天空,看看大地。

上一篇下一篇

猜你喜欢

热点阅读