学习了这么久,本人希望有时间能分享一下,这才写下这篇浅谈,谈谈软件,散散心情。

  这是本人的博客园账号,欢迎关注,一起学习。

  一开始学习springboot,看了好多网站,搜了好多课程。零零落落学了一些,看得懂一些基础的springboot项目代码

,个人觉得线上课程太乱了,有些讲的全,有些讲的太难,看的想睡觉,个人还是建议看书,效率会比较高。

  一开始学习,自己也不懂,学一下这个学一下那个,做了一堆笔记,现在翻看,成效不大。有些笔记太复杂,有些比较简单,但都缺乏一根绳子,将他们连起来,这个时候我就建议自己动手写一个项目,有一定基础的当然可以去研究一个框架,这样效率会非常高,自己动手写接口,学习效率会比看视频和看书高的多。    

  首次开发经历了太多坑,有一个好的项目经理来做引导或者说有一个比较好的框架来解决前期项目架构的问题,那可真是再好不过了。当然,在熟悉springboot之后,当然要看得懂架构。本人在这里分享一些前期项目开发的经验。

    

  我大部分要分享的,这张图片差不错概括了一些。

  首先,在前期开发项目中,如果是工作室开发,前期必然是看重项目的总体设计,说白了,就是demo,老师或者说是甲方,会很重视这个demo,这个demo某种程度上代表了很多东西,如果项目中包含多个模块,例如学校管理系统,要做学校端、老师端、学生端,其实都可以从demo扩展,只要前期做出了一个demo,那么后面熟练了流程,再多的端,也只要分配任务就行,一个人可以写几个端,没有压力。

  对于demo,包括的无非是公共组件、项目模块、子系统。开发就照着这个项目模块来就行,最后测试完毕之后再整合,效率会比一般开发高。

  至于图片中的前端后端交互,或许有些初学者会觉得开发很难,其实不然,你只要写出几个,其他的基本就是依葫芦画瓢,无非是业务不同而已。前后端的交互,在我看来,核心在于URL,不要小看这个URL,他代表了很多东西,例如如果项目包含多个模块,你可以从url中划分模块,分路径开发,可以说前后端分离,连接的核心便是url。

  对于前后端,前端不用说,HTML+CSS+js或者vue或者其他,再包括一些请求技术,如axios和ajax,前端无非就是这些,前端学的好不好一看这些掌握的怎么样、用的怎么样,二看设计。至于后端,那确实门道挺多,对于图片上的这个后端,他不是简单的“后端”,他是经过层层包裹的后端,请求后端,刚接触后端的人可能觉得基础的MVC再加上一些安全框架就OK,其实不然,后端请求,首先他肯定是不能直接调到MVC的,在这张图看来,首先应该是过滤,成百上千的请求中,难免有几个”不怀好意“,非法闯入,像这种请求就应该过滤掉。之后请求就到了权限层,判断你是否有权限进行访问 ,之后再调MVC基本的接口。这样讲,请求某种程度上来讲是“横贯而来”的,但是呢,在它横贯而来的时候,也有东西要伴随他的一生,例如最常见的,log日志记录,从你请求后端的那一刻,他就伴随着你了,包裹住你,直到消失。可能我写的有点词不达意,各位可以看看图片中的后端部分,它用一个正方形形象描述了后端运作的过程,非常形象。

  图片下面三个小圆柱体,那代表的是多数据源,这个我们后面再唠。

  一个完整的项目,正是许许多多的细节、组件组合起来的,放大了来看,就像是水滴汇聚成河流,河流在汇聚成大海,其实开发并没有那么难,有些时候只不过是眼界的问题,基础打扎实了,或者一直在学习基础的,有时候可以放大眼界看一看,有时往往会发现很多有趣的东西,知识其实在你眼前,只不过你看他的方法太笨,扩展视野,放大眼界,开发、学习自然也就没那么困难,有时甚至还可以闲下来写写博客、散散心情。软件工程的生活,其实也是很有趣的。

springboot开发浅谈 2021/05/11的更多相关文章

  1. Android开发-浅谈架构(二)

    写在前面的话 我记得有一期罗胖的<罗辑思维>中他提到 我们在这个碎片化 充满焦虑的时代该怎么学习--用30%的时间 了解70%该领域的知识然后迅速转移芳草鲜美的地方 像游牧民族那样.原话应 ...

  2. Python测试开发-浅谈如何自动化生成测试脚本

    Python测试开发-浅谈如何自动化生成测试脚本 原创: fin  测试开发社区  前天 阅读文本大概需要 6.66 分钟. 一 .接口列表展示,并选择 在右边,点击选择要关联的接口,区分是否要登录, ...

  3. Delphi 组件渐进开发浅谈(一)——由简入繁

    最近业余时间在写游戏修改器玩,对于Delphi自带的组件总觉得差强人意,需要书写大量冗余代码,如果大量使用第三方组件,在以后的移植和与他人交互时也不是很方便,因此便产生了自己封装组件的想法. 实际上这 ...

  4. 七年开发浅谈Nginx负载均衡

    一 特点 1.1 应用情况 Nginx做为一个强大的Web服务器软件,具有高性能.高并发性和低内存占用的特点.此外,其也能够提供强大的反向代理功能.俄罗斯大约有超过20%的虚拟主机采用Nginx作为反 ...

  5. .NET项目开发—浅谈面向对象的纵横向关系、多态入口,单元测试(项目小结)

    阅读目录: 1.开篇介绍 2.使用委托消除函数串联调用 2.1.使用委托工厂转换两个独立层面的对象 3.多态入口(面向对象继承体系是可被扩展的) 4.多态的受保护方法的单元测试(Protected成员 ...

  6. .NET项目开发—浅谈面向接口编程、可测试性、单元测试、迭代重构(项目小结)

    阅读目录: 1.开篇介绍 2.迭代测试.重构(强制性面向接口编程,要求代码具有可测试性) 2.1.面向接口编程的两个设计误区 2.1.1.接口的依赖倒置 2.1.2.接口对实体的抽象 2.2.迭代单元 ...

  7. iOS开发--浅谈CocoaAsyncSocket编程

    Socket就是一种特殊的文件.它是一个连接了两个用户的文件,任何一个用户向Socket里写数据,另一个用户都能看得到,不管这两个用户分布在世界上相距多么遥远的角落,感觉就像坐在一起传纸条一样. 这么 ...

  8. linux服务器开发浅谈

    [开发前准备] 在进行linux服务器开发之前,必须很清楚地了解所开发的对象需要考虑的相关问题比如:功能架构:提供服务的模块体系结构稳定性:服务器的出core率,内存泄露情况性能:请求与返回的速度与正 ...

  9. JAVAEE企业级应用开发浅谈第二辑:MVC和三层架构

    上海尚学堂警句:一份信心,一份努力,一份成功:十分信心,十分努力,十分成功. Step1.情景概要 Hello,小伙伴们,昨天跟大家分享了JAVA EE 企业级应用开发中大家耳熟能详的概念-三层架构, ...

随机推荐

  1. (数据科学学习手札112)Python+Dash快速web应用开发——表单控件篇(上)

    本文示例代码已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 1 简介 这是我的系列教程Python+Dash快速web ...

  2. HDU_3333 Turing Tree 【线段树 + 离散化】

    一.题目 Turing Tree 二.分析 这题主要还是在区间的处理上. 为了保证区间内的数没有重复的,那么可以对区间按右端点从小到大排序,这样对原数组处理时,尽量保证不重复的元素靠右(可以假设右端点 ...

  3. Java关于整型类缓存[-128,127]之间的数字

    我们在学习Java的包装类Integer.Long的时候可能会遇到这个问题: ①Integer a = 500;// Integer a = Integer.valueOf(500); 等价于上面的 ...

  4. sqli-labs系列——第四关

    less4 第四关的sql语句是这样的: select * from user where id=("$id"); ?id=1")–+回显正常 order by 4报错, ...

  5. 拖拽方式生成Vue用户界面

      前一阵子拜访了一些小伙伴,大家都表示苦前端太久了,需要花费不少时间在前端开发上.本着在不损失灵活性的前提下尽可能提高开发效率的原则,作者尝试在框架内集成了拖拽方式生成Vue用户界面的功能作为补充, ...

  6. 学《跟我一起写Makefile》笔记发博词

    目录 笔记发博词 参考 笔记发博词 本系列笔记主要记录学了<跟我一起写Makefile>后的一些笔记 由于<跟我一起写Makefile>已经写得很详细了,所以我只是提取其中重要 ...

  7. Spring Boot MVC 单张图片和多张图片上传 和通用文件下载

    @Autowired private ServerConfig serverConfig; /** * 通用下载请求 * * @param fileName 文件名称 * @param delete ...

  8. 最小生成树,Prim和Kruskal的原理与实现

    文章首先于微信公众号:小K算法,关注第一时间获取更新信息 1 新农村建设 大清都亡了,我们村还没有通网.为了响应国家的新农村建设的号召,村里也开始了网络工程的建设. 穷乡僻壤,人烟稀少,如何布局网线, ...

  9. jQuery核心函数和静态方法

    jQuery核心函数 从jQuery文档中可以看出,jQuery核心函数一共3大类4小类 jQuery(callback) 当DOM加载完成后执行传入的回调函数 <script> $(fu ...

  10. OO第二单元作业——魔鬼电梯

    简介 本单元作业分为三次 第一次作业:第一次作业要实现单部简单电梯,停靠所有楼层,无载客容量,性能分考量电梯运行时间. 第二次作业: 第二次作业实现多部电梯,电梯数量由初始化设定,每部电梯都停靠所有楼 ...