浅谈我对我的项目中一些细节的理解

[b][color=orange][size=medium] WEB部分学了些东西,最近做了几个项目。慢慢的觉得自己也像个开发者了 :wink:

我认为开发者是和程序员有所不同的。程序员做的工作比较固定刻板,他们所做的工作中写代码占据了大半部分,而思考较少。开发者就不一样了,如果独立地去完成一个项目,他们的工作包括需求分析,项目的整体架构等,甚至还有界面美工,当然写代码就不用说了。而其中最费时最费脑子的,就是项目中每个功能所包含的逻辑,所涉及到的细节:怎样让用户使用更方便,怎样使软件变得更快...这些不仅仅需要完成功能(这只是最起码的),还需要开发者的洞察力,灵感,对细节的掌控能力,无不体现一个开发者的综合能力。

我们可以学会很多知识拿来为我们服务,简化开发,但是细节这种东西是不会有老师去教的。只能靠自己摸索,大量思考琢磨以至于废寝忘食,再加上一点灵感和运气,才可能会给自己的项目抹上闪光的一笔。这一笔甚至使用者可能注意不到,但是自己知道就足够了,所谓内行看门道,外行看热闹。下面我具体举几个例子。鄙人初涉WEB部分时间不久,才疏学浅,只讲几个自己注意到的细节,随着经验积累和知识的增长,我对这方面将更加看重。望大家不喜勿喷。 :arrow: [/size][/color][/b]

[b][size=medium][color=blue] 在做类似bbs这样的东东时,必定会涉及到文章的分页显示。当然啦,我前些日子遇到了分页,花了1天时间自己解决了这个问题,进步不小。 :)当有很多页码的时候,比如第30页。如果游客在浏览第30页的一篇帖子,他看完了,想回到文章列表,当点击“返回文章列表”的时候,问题出现了:总是返回到第1页。注意,这不是bug,也不能说是有问题,但就是让用户感到不便。这样的话每次都要记住自己看到多少页了,岂不是为难人家?我上过不少论坛,大多都注意到这个问题,但是有些却没有解决,造成了用户的不便。解决方法也不难,只要把分页内置偏移量传递到具体显示文章的界面就行了。但是有些人就是不做,方便了自己,难为了千万人。这是细节。[/color][/size][/b]

[color=blue][size=medium][b] 当我们点击一篇文章查看它的详细内容时,有时会做这样的需求:文章浏览次数+1。问题出现了:很多开发者在写代码的时候,产生惯性思维,当点击文章时请求后台,在后台根据文章编号从数据库取出信息,然后转到显示界面进行显示,同时浏览次数+1。这样做看起来没错啊。但是我们发现,当你在具体显示文章的界面进行刷新操作时,每当刷新一次文章浏览次数就会+1,这显然是不符合逻辑的。解决办法不难。捕获文章链接的onclick事件,通过AJAX异步处理就好了。这个问题显然需要足够的洞察力以及思考能力。这也是细节。[/b][/size][/color]

[size=medium][color=blue][b] 在做验证码的时候如果用户看不清,需要点击一个按钮(或者链接)以重新获取一张图片验证码,这是很常见的需求。但是我见过一些人点击的时候却刷新了页面,而不是只替换验证码内容。正确的做法是只更改验证码而不是刷新页面。前者和后者实现的功能完全相同,但前者的弊端在于给用户带来不便:用户上面填写的注册之类的信息必须重新填写。可见功能实现不难,难的是把握好每一个细节,把东西做好,做细,做精。[/b][/color][/size]

[size=medium][color=blue][b]在做用户的注册和登录功能的时候,必须要对用户名进行验证。我就拿注册来说。弄的高级点,用AJAX异步检查用户名,如果直接把用户名异步发送到后台(还是捕获onclick事件),就有几率出大问题。为什么说有几率,是这样。如果用户输入&,%这样的字符,在后台就会报错,别的字符我还没有检查出来,只查出这两个特殊字符不能经过AJAX的发送请求。必须要先在前台过滤这些字符,让用户输入符合规范的用户名,然后再发送到后台判断是否存在这些用户名,我称之为“二次检查”。这些看起来不起眼甚至用户永远无法知道的细节,体现的是一名开发者的逻辑思考能力和严谨的思维方式。通过这个问题我又增长了知识,url请求(其实不只是url,ajax之类也一样)中参数是不能含有&,%的。[/b][/color][/size]

[color=orange][size=medium][b] 就谈到这里,只举了几个简单的例子,实际操作中还有很多这方面的问题。总之,在追求完美的道路上没有终点,只有精益求精。[/b][/size][/color]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用!有问题请及时沟通交流。 2、适用人群:计算机相关专业(如计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网、自动化、电子信息等)在校学生、专业老师或者企业员工下载使用。 3、用途:项目具有较高的学习借鉴价值,不仅适用于小白学习入门进阶。也可作为毕设项目、课程设计、大作业、初期项目立项演示等。 4、如果基础还行,或热爱钻研,亦可在此项目代码基础上进行修改添加,实现其他不同功能。 欢迎下载!欢迎交流学习!不清楚的可以私信问我! 毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip
综合小区管理系统管理系统按照操作主体分为管理员和用户。管理员的功能包括报修管理、车位管理、车位分配管理、出入管理、字典管理、房屋管理、物业费缴纳管理、公告管理、物业人员投诉管理、我的私信管理、物业人员管理、用户管理、管理员管理。用户的功能包括管理部门以及部门岗位信息,管理招聘信息,培训信息,薪资信息等。该系统采用了Mysql数据库,Java语言,Spring Boot框架等技术进行编程实现。 综合小区管理系统管理系统可以提高综合小区管理系统信息管理问题的解决效率,优化综合小区管理系统信息处理流程,保证综合小区管理系统信息数据的安全,它是一个非常可靠,非常安全的应用程序。 管理员权限操作的功能包括管理公告,管理综合小区管理系统信息,包括出入管理,报修管理,报修管理,物业费缴纳等,可以管理操作员。 出入管理界面,管理员在出入管理界面可以对界面显示,可以对招聘信息的招聘状态进行查看,可以添加新的招聘信息等。报修管理界面,管理员在报修管理界面查看奖罚种类信息,奖罚描述信息,新增奖惩信息等。车位管理界面,管理员在车位管理界面新增。公告管理界面,管理员在公告管理界面查看公告的工作状态,可以对公告的数据进行导出,可以添加新公告的信息,可以编辑公告信息,删除公告信息。
项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值