美文网首页Java 杂谈程序员她思维
让代码自己写会儿代码【开源】

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

作者: bugWriter_y | 来源:发表于2019-06-01 17:10 被阅读23次

    前言

    大多数人的工作都是有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出来抽根烟,看看天空,看看大地。

    相关文章

      网友评论

        本文标题:让代码自己写会儿代码【开源】

        本文链接:https://www.haomeiwen.com/subject/yeuatctx.html