阶段总结
又到了优化篇的收尾阶段了,这其实是一篇阶段总结性的文章,今天是4月29号,距离第一次发布博客已经两个月零5天,这两个多月的时间,完成了第一个项目ssm-demo的更新,过程中也写了33篇博客来对项目进行讲解和分析,更多的应该是自己的心得体会,把一些想表达的东西写在博客中展现给大家,这个过程对我的提升是很大的,我发现自己在写作能力、语言组织、时间分配、潜力挖掘....等方面还是有继续进步的空间,对我的影响也比较大,生活和工作也有了一些变化,因为一开始我对这件事是持着恐惧和推脱的态度的,但是现在看来,我应该已经克服了心中的惧怕也改正了自己的态度,如果对你也有帮助的话,那是最好不过了。
所有的博客都是以代码的更新为基础来创作的,博客中的文章基本上不会独立于代码存在,这也是我一开始就想要做到的事情,源码完备才去写博客,不然我写的文字再多,文章中再多的长篇大论,身为读者的你可能看完了没什么太多感觉,因为你手里空空的,没有实际体验过,也就无法知晓和了解其中的道理和原因,那我觉得我写的这篇博客其实对你并没有太大的帮助。其次就是博客的连续性,我这段时间也一直在持续的更新这一系列的博客,个人来说,觉得这种方式可以给身为读者的你营造一种氛围吧。
其实在系列博客的第一篇就有列过一个大纲,是有一个清晰的写作计划的,中间因为加了图片和文章两个功能以及一些日常的琐事影响,使得后面的几篇文章没有按照计划来进行写作和发布,不过相关知识点会在后续文章中补充,在此不做赘述。整合优化篇这一阶段的所有文章到这里已经更新完了,下一阶段的更新是整合进阶篇,有时间的话就继续更新,开发任务最近比较多,只能抽出晚上的时间,所以不确定性还是有的。
写博客是为了什么
还是问自己一个问题,我写博客是为了什么,这一次的总结和第一次的阶段总结有没有什么不同,说真心话,和上一次阶段总结的感触也是有诸多类似之处的,首先,越来越认同和理解完成一篇博客不是一件简单容易的事,其次,如果不迈出第一步,事情永远也做不好,再者,又一次认识到自己的不足,写了这么多篇博客,才发现以往的知识多么匮乏,掌握的也不全面,通过这个过程又重新体验了一次学习知识的过程。比如前两篇发布的文章,为了文章的详尽和完善,差不多占用了六个晚上的时间,不仅仅是时间上,对于精力、知识点的掌握程度都是考验,不过,考验也使得自己不断的进步,这也是极好的,我会继续承担和享受这份考验。
开始写博客之前,我就质疑过自己,文章是那么容易就写出来的?表达能力不是很强的我能写出一篇博客吗?写出来的东西会有人看吗?直到现在我还是会问自己这些问题,当然,按时更新博客的这个过程中也越来越认识到自己的书面表达能力及写作能力很差,但是这个过程让我慢慢进步,两个多月的时间也使我从一个写作的菜鸟成长为一个蹩脚的入门者,如果70天前的我因为不自信和畏惧写作而一直没有开始进行这个任务的话,我可能永远在原地踏步,书面表达能力及写作能力就一直停留在"很差"的阶段,也因此,我以后会继续抽出时间做这个工作,益处多多,不仅仅是在表达能力和写作能力,对自己的技术能力提升也有很大的推动作用。
完成一篇博客其实是知识整理和思维表达的一个完整的过程,通过对技术点的整理及自己的心理活动思路完整的记录和表达,丰富和润色自己的技术道路的每一站,通过对知识碎片的整理和整合逐步完善和清晰了自己的技能栈,由开始的想表达自己,到学习和筛选资料,再到整理和完善一篇文章,过程中既审视了自己的现有知识及掌握程度,同时又学习和梳理了与之关联的新知识点,这个过程就是知识的转化和内化的过程,也即是我们想要的回馈,最终受益的是自己。
谈何优化
记得曾经我跟过的一个技术负责人,在一次一个功能迭代上线之后,他针对我的代码找我谈了话,交谈过程中应该是很克制的跟我讲了一些他的想法,总结起来就是写得不规范,代码乱糟糟,命名乱写、方法体不严格、大括号用的不对、if else条件表达式不规范...挺多的问题吧,反正当时我听到有人这样说我的编码能力的时候是很不能接受的,有些抵触,我现在还记得当时我的想法,都已经写好的代码、实现好了的功能,为什么还要我费力去改,这不是典型的闲着没事干么?因此我的态度就是回避和拖延,拖了几天根本没去改过代码,也压根没有把这个事情当回事儿,可能那时候我脑袋里还有一个想法,就是觉得这个人没事找事,故意想刁难我吧。因此我也根本没有去审查代码,也根本没有去做代码规范这件事,没有重视它,因为脑海里根本没有这个概念,代码的脏乱差我才不去管,我只要实现功能就好了,优化的事情以后再说,但是这个"以后"其实就是堂而皇之的欺骗自己,"以后"基本就是无限期的拖延。
然后就有了后面的故事,他花了一些时间去把我负责的那部分代码一行一行按照规范修改掉了,对,是一行一行,他也没跟我说,就那样默不作声的改完了,我从代码库里拉取下来的代码已经是修改好了的,当时的感觉真是有些羞愧,对自己的态度有些失望。其实我就是懒,不想去改这些东西,也觉得没必要,总结起来就是懒得去迈出第一步,或者说不想也不敢去否定以前的自己,我感觉那些代码虽然不好看,甚至可能出错,我也不想去改,因为我觉得那是自己写的代码,是自己的劳动成果,即使有些瑕疵也不能改变这个事实,自己不想去否定以往的自己,不敢去直视自己曾经犯的错误,这些因素汇总起来就造成了编码质量烂的结果。 但是当我看到整洁规范的代码之后,真的犹如被泼了一盆冷水,崭新的代码真的要比原先的代码看着要舒服很多,而且一些有隐患的代码块也被修改,脑海中关于代码整洁的观念也因为这件事发生了改变,我觉得修改以前的代码很痛苦,连自己都不想去修改自己的烂代码,那让一个人去修改另外一个人的代码是不是更痛苦呢?推己及人,我无法做到他那样,我连自己的都不想改,更别提别人了。既然是错误的习惯就应该去改掉,没有其他的做法,因为谁也不想每天被产品和测试追着改bug,每一个bug的出现都是对自己的惩罚,不想被惩罚的话就认真点吧。
这件事情我到现在还记得很清楚,为什么?因为这件事极大程度的放大了我的缺点让我可以清楚地认识到自己的不足之处,也可以说给了我一个警醒,不好的习惯只会使自己变得越来越糟,选择逃避不能解决问题也无法使自己变得更优秀,我心里一直觉得我是一个追求上进渴望变得优秀的人,但是我的态度却是逃避,做法是拖延,逃避和拖延与我心中的自我认知完全是南辕北辙,我好像并不是我自己认为的那么上进、那么认真。
那个时候的自己纯粹是一个愣头青,头很铁,上面的这个小故事只是很多事情的其中一件而已,但是从这件事情也大致能清楚当时的我是一个什么状态,现在想想,也就是两个主要的问题:态度和执行力,逃避和推卸的态度固然不可取,"我想"或者"我认为"的超低效率的执行力也是远远不合格的。
其实静下心来想想,谈到优化项目,这里的优化是指什么呢,优化的又是什么呢?架构?技术选型?底层性能?编码?太多太多东西要学要做了,以致于找不到突破口,乱花渐欲迷人眼,找不到方向,每天就想着要优化,要优化,但是也就是每天想想了,说到要优化什么,要怎么优化,这个就不知所以了,其实项目优化这个概念太笼统了,因为需要优化的地方实在是数不胜数,架构设计、前端UI优化、前端体验优化、前端构建优化、后端性能优化、接口响应速度优化、接口服务化、集群优化、拓展性优化、数据库优化、CDN优化、缓存方案优化、搜索引擎优化、服务器安全加固优化......需要做的事情和要解决的项目问题数量犹如天上的繁星,而且由于项目所处的阶段不同或者项目所面临的主要瓶颈的不同,对应的优化方案和做法也大相径庭,所以,还是要清楚主要矛盾,对项目有一个宏观视角的认识。空话说完,回到现实吧,究竟该做些什么呢?
33篇博客不是一天写出来的,ssm-demo项目也不是一天做出来的,话要一句一句说,路要一步一步走,首先要做的其实就是端正自己的态度,也改正自己的不良习惯,这应该是最基础也是最简单的事情了,然后再去谈项目层面的优化、代码层面的规范和优化、数据库或者服务器的优化,在这之前最重要的是优化自己,不要急躁,做好眼前的事情,然后再去做接下来的事情。
回到博客中,在整合优化这一阶段,不像前一阶段会更多的在maven、git等项目工具上做介绍,更多的工作都是在针对代码做写修修改改及数据库层面的优化修改,其实就是在做一个规范,这里所说的规范不是针对某个人的规范,而是大家普遍接受和认同的规范才是一个合格的规范,有人肯定会说,"我不喜欢条条框框,规范这种东西不适合我",这种说法可以说是抬杠了,端正的态度、良好的习惯和优秀的项目规范并不是去约束你,规范也不等于条条框框,不要偷换概念。
心得
端正态度:认清自己,知道自己的本职工作,切忌走马观花,清楚的认识到自己想得到什么,愿意付出什么,曾子说过"吾日三省吾身",我们即使做不到一日三省,也要时常问问自己,和自己的心对话,比较一下心中认为的自己和现实中的自己是不是同一个人。
不会就去学,网上教程那么多,京东书城里技术书籍那么丰富,怎么会没方向呢?说到底不就是一个"学"咯,无非是你想不想而已。当然,既然学就要掌握,不要今天看到这个技术挺新鲜,学了几天扔掉又去追另外一个知识点。碰到问题了,也不要总停留在"我不会"的阶段,习惯性的Say No,习惯性的逃避推脱,是一种否定自己的表现,总是否定自己肯定是对自信心和进取心的一个伤害,成年人了,该承担的应该去承担了,你不是一个孩子啦,不会,那你他喵的就去学啊!
要么滚,要么迎着耳光站稳。
良好的习惯:
人生不是百米赛跑,而是一场路上有阴有晴的马拉松,我们的技术生涯也一样,坚持,不要轻言放弃。
时间管理。这两个多月让我发现了我的时间其实那么多,只是原来没有好好的规划和利用,我觉得所有人都一样吧,不要把时间花在一些无所谓的事情上,你来管理时间,而不是时间管理你,做好自己的时间管理者,成为一个更优秀的人,多说无益,自己体会。
善用工具。提高工作效率,提升生活品质,不管是工作中还是生活中,如果能通过一个工具能减少所花费的时间成本和提升直观感受或使用体验,这种类似的工具一定要多用。
投资自己。做法呢?健身和学习,身体是革命的本钱,一个健康的体魄也是对未来最好的投资,至于学习无非是买几本书或者买些教程,这些钱所买到的书籍是有价的,你学到知识后创造的价值肯定远远超过你购书的开销。
我不是一个喜欢说教的人,如果你觉得有这种感觉的话,那么应该是我写作表达的问题,很多话其实是说给自己听的,以上。
相关推荐
完善的Spring+SpringMVC+Mybatis+easyUI后台管理系统(RESTful API+redis).zip 完善的Spring+SpringMVC+Mybatis+easyUI后台管理系统(RESTful API+redis).zip 完善的Spring+SpringMVC+Mybatis+easyUI后台管理系统...
这是一个基于Java技术栈的Web应用开发整合包,主要包含了Spring、SpringMVC、MyBatis、Maven和easyUI这五个关键组件。下面将详细解释这些技术及其整合方式。 **Spring框架**:Spring是一个全面的Java企业级应用开发...
基于Spring+SpringMVC+Mybatis+easyUI实现的后台管理系统,可用作管理系统开发模板 项目经过严格测试,确保可以运行! 功能简介 本项目实现了一个简单的后台管理系统,可以作为ssm项目学习的脚手架,主要包含以下...
总的来说,"Spring+SpringMVC+MyBatis+Maven+EasyUI整合代码"提供了一个完整的Java Web开发环境,涵盖了后端服务、数据库操作、项目构建以及前端展示,是企业级应用开发的常用选择。这个压缩包文件"ssm-maven"可能...
【Spring+SpringMVC+Mybatis+easyUI】是一个经典的Java Web开发框架组合,广泛应用于企业级应用系统中。这个组合提供了模型-视图-控制器(MVC)架构模式的实现,以及数据库操作的便捷支持和用户界面的美化。下面我们...
在IT行业中,构建Web应用程序是一项常见的任务,而SSM(Spring、SpringMVC、MyBatis)框架组合是Java开发中的主流选择。本项目利用这三个框架与前端的EasyUI库协同工作,创建出一个功能丰富的应用程序。在此,我们将...
Spring+SpringMVC+MyBatis+Shiro+MySQL+Redis+Maven+EasyUI+Bootstrap实现的通用权限管理系统。 Spring+SpringMVC+MyBatis+Shiro+MySQL+Redis+Maven+EasyUI+Bootstrap实现的通用权限管理系统 Spring+SpringMVC+...
OA协同办公与管理系统(毕业设计)Spring+SpringMVC+Mybatis+Shiro+JqueryEasyUIOA 哦OA协同...Spring+SpringMVC+Mybatis+Shiro+JqueryEasyUI哦OA协同办公与管理系统(毕业设计)Spring+SpringMVC+Mybatis+Shiro+Jque
基于spring+springMVC+mybatis+easyui技术实现的医药后台管理系统 项目描述 基于spring+springMVC+mybatis+easyui技术实现的医药管理系统 运行环境 jdk7+tomcat7+mysql+eclipse/IntelliJ IDEA+maven 项目技术...
在本文中,我们将探讨如何使用Spring、SpringMVC、MyBatis和EasyUI进行整合优化,并专注于单元测试的实践。单元测试是软件开发过程中的重要环节,它可以帮助开发者确保代码的功能正确性,提高代码质量,减少缺陷。...
在本项目中,"Spring+SpringMVC+Mybatis+Maven+bootstrap+ajax+jQuery整合开发简单的员工后台管理系统",我们看到一个基于Java技术栈的Web应用开发实例。这个系统利用了多个核心技术来构建一个功能完备的员工管理...
在实际项目中,"SpringMvc + Spring + MyBatis + EasyUI"的组合可以这样应用: - 使用Spring MVC处理HTTP请求,通过DispatcherServlet调度,由控制器(Controller)处理业务逻辑。 - Spring框架管理所有组件,实现...
这个整合涵盖了四个主要的技术栈,分别是Spring、SpringMVC、Mybatis和EasyUI,每个部分都有其独特的功能和重要性。 **Spring框架**是整个应用程序的基础,它是一个轻量级的容器,提供了依赖注入(DI)和面向切面...
SSM框架整合是Java Web开发中常用的一种组合,它包括Spring、SpringMVC和MyBatis三个核心组件,再加上Maven作为项目构建工具,以及easyUI作为前端界面库。这个整合提供了从后端业务逻辑处理到前端用户交互的完整解决...
本文将详细解析"Spring+SpringMVC+MyBatis+EasyUI demo实例程序",帮助开发者了解和掌握这四个技术的整合应用。 首先,Spring框架的核心在于IoC(Inversion of Control)和AOP(Aspect-Oriented Programming)。IoC...
在"Java Spring SpringMVC+MyBatis+Maven+easyUI整合代码"项目中,开发者可能需要做以下工作: 1. 配置SpringMVC和MyBatis的集成,定义数据源、事务管理器以及Mapper接口。 2. 创建SSM(Spring-SpringMVC-MyBatis)...
这是一个基于Java技术栈的Web应用实例,整合了Maven、Spring、SpringMVC、Mybatis、Log4j和EasyUI1.3.2,并且采用了Oracle数据库。让我们逐一解析这些技术及其在项目中的作用。 **Maven**: Maven是一个项目管理和...
由于描述中提到项目稳定,这意味着已经经过了充分的测试和调试,适合初学者学习和理解SSM(Spring、SpringMVC、MyBatis)框架的整合以及EasyUI的前端应用。如果遇到问题,可以参考项目文档或向作者咨询。
标题 "spring+springMVC+mybatis+easyui 增删查改以及分页源码" 描述了一个使用SSM(Spring、SpringMVC、MyBatis)框架与EasyUI前端库联合实现的Web应用项目,特别是关注于CRUD(创建、读取、更新、删除)操作和无...