首页 > 其他分享 >给服务端小白的一些建议

给服务端小白的一些建议

时间:2023-02-11 18:13:56浏览次数:41  
标签:怎么 建议 不要 问题 小白 bug 服务端 页面

一、技术

看视频教程入门(B站即可),看书深入,最重要的是实践。

二、怎么提问

很多新人不知道怎么提问,问了太简单的问题怕被人鄙视,更重要的是不知道问题是否简单。

其实也没有那么严格,程序员还是很愿意帮人解决问题的,可以装一下13并且很有成就感。

值得注意的是:

  1. 这个问题百度、谷歌是否有答案,对着教程你试过没有,中间是遇到什么坎导致你无法解决。
  2. 这个问题你是怎么想的,多多少少你会有思路和想法,有了这个基础,“请教”就变成了“沟通”。
  3. 实在无法解决,请精简你的问题,精准描述,不要模糊、笼统,这样别人很难帮你。
  4. 如果他人帮了你,请说谢谢,能夸一下就更好了。至于物质上的报答看个人情况。
  5. 多总结,不要问重复的、类似的问题,答案不重要,重要的是解决的思路。
  6. 最好将你的问题、解决方案发布到网上,比如博客,这样不仅能帮到更多人,还能方便自己复盘、回顾。

最后,有问题一定一定不要闷着!!

领导最怕的不是你有问题,哪怕很基础的问题,只要影响了你的进度,比如卡了一个小时都没解决,就去寻求帮助,不要等最后领导来问题进度的时候,你再把问题抛出来,然后说没完成。切记切记!!

三、思维

客户端往往是页面驱动,即一个页面需要哪些东西,怎么优化,跳转逻辑、层级逻辑等等。

服务端更多的是数据驱动,首先设计表,然后根据页面返回数据。现在有了领域设计,但是小白还是先放放吧。

数据

从MySQL开始学最好,首先是基本的SQL语句,最好能自己针对业务设计表,怎么优化结构、优化查询,这个可以说是服务端的基本功。

其次是缓存,先看看redis吧,然后思考下什么时候该用缓存,什么时候过期,用什么结构,怎么维护数据一致性。这个没有标准答案,重点是结合业务。

交互

怎么将数据和页面结合起来,怎么返回字段更合理,怎么减少客户端工作量的时候缓解服务端的压力:

  • 并行:只是要求快,没有时序要求,可以并行工作而不是串行。
  • 队列:对于有时序要求的,可以用队列排序处理。
  • 异步:客户端不是立刻需要这个数据的,可以先接口返回然后自己慢慢处理。

并发

可以说是服务端的一生之敌。常用的解决方案就是两种:

  • 加锁:简单粗暴但是影响效率。
  • 队列:将所有请求顺序化,代码比较复杂,但是逻辑清晰合理。

四、编码(重点)

前面的说实话,干一段时间,跟几个项目基本就有体会了,但是编码,有的人可能开始就很优秀,有的人一辈子都写的很稀烂,原因就在于最开始的习惯不一样,我希望更多小白能看到。

  1. 先想,用80%的时间去想、去设计,然后再写。
  2. 代码风格因人而异,但是能抽象尽量抽象,不要一个函数梭哈到底。(没bug > 好维护 > 花里胡哨全是bug)
  3. 提交之前一定要多看看,服务端的代码往往是牵一发而动全身,而且服务端有问题往往就是大问题,所以要反复思考会不会影响其他模块?能不能兼容,他人调用会不会崩溃?会不会有效率问题?数据量大了会不会有问题?请求量大了会不会有问题?
  4. 设计的时候要方便测试,比如按天结算的按小时、分钟结算。写的时候要写单元测试。写完了要自己先过一下再发测。
  5. 上线前一定要留预案。最坏的情况是什么?万一发生了我怎么办?线上有bug我要怎么调试,怎么查?如果崩了我有没有planB?
  6. 不管是编码中,还是线上有问题,都要记得复盘,这很重要。不要在乎是谁的问题,要好好思考怎么避免,万一出现了怎么修复。
  7. 如果有bug,尤其是线上bug,一定要找到确凿的证据(日志+复现)再改。如果重大问题,及时回滚;如果容忍线上偶发,拼命加日志,抓到了再改。千万不要觉得是某个问题就改或者打补丁! 这就像你去看医生,如果医生看都没看就给你开药要你做手术,你怎么想?服务端改代码一定要像手术刀,稳准狠!

这些习惯,如果是小白,希望你从一开始就养成这样的认知,就觉得理应如此,我相信你能受益匪浅。

还有其他问题,欢迎评论区一起讨论。

标签:怎么,建议,不要,问题,小白,bug,服务端,页面
From: https://www.cnblogs.com/HappyTeemo/p/17112254.html

相关文章

  • java中的lambda表达式(从小白也能看懂做起)
    历史背景到目前为止,在Java中传递一个代码段并不容易,不能直接传递代码段,Java是一种面向对象语言,所以必须构造一个对象,这个对象的类需要有一个方法能包含所需的代码但是......
  • 小白也能做应用(三)之fusion app远程更新及免登录
    一、前言上一篇我们完成了软件的基本功能,如果想在用户使用我们的app时,自动检测新版本并让自动完成安装,这样岂不是更好?本篇我们就来探究一下远程更新的过程,并完成实际的功......
  • 新手小白适合做跨境电商吗?
    今天的跨境电商已经逐渐成熟,靠运气赚钱的时代早已过去,馅饼不可能从天上掉下来,尤其是你想做一个没有货源的小白劝你醒醒。做跨境电商真的不容易,要想做,首先要分析自己是否适合......
  • 小白也能做应用(二)之fusion app增加B站视频页面
    一、前言在上一节,我们新建了工程,做好了准备。本节在工程中加入B站网页,屏蔽页面广告。二、工程配置2.1、基础配置配置程序启动事件,填入以下代码加载网页("https:......
  • 面向对象知识点汇总(小白必会)
    目录Python基础之面向对象一、编程思想1、面向过程2、面向对象二、类与对象的创建1、类的语法结构2、定义与调用3、给对象添加独有属性4、对象独有属性修改三、动态、静态......
  • 从一个 Demo 说起 Zookeeper 服务端源码
    从一个Demo说起Zookeeper服务端源码简介Zookeeper目前是Apache下的开源项目,作为最流行的分布式协调系统之一,我们平时开发中熟知的Dubbo、Kafka、Elastic-Job、Hadoop......
  • ChatGPT 怎么用最新详细教程-新手小白一看就会
    https://www.cnblogs.com/chat-gpt/p/how-to-use-chatgpt-in-china.html便宜的虚拟电话号码https://readdevdocs.com/blog/makemoney/%E4%B8%AD%E5%9B%BD%E5%8C%BA%E6%B3......
  • 零基础小白博客园美化方法-包教会版(看完就会)
    本文参考至geek语雀傻瓜式教学第一步打开博客园点击右上角我的博客-设置-开通js权限!!!本处已经开启,未申请小伙伴点击申请,原因填美化博客就好,大概率10分钟之内通过审核......
  • 小白也能做应用(一)之fusion app介绍
    一、应用介绍”所有网页都是客户端“为fusionapp的核心概念,让我们利用它可以快速的做出属于自己的应用。由于作者已经停止更新原版app,文章采用FA重制版完成。成品展示:......
  • wow魔兽世界服务端主体结构​
    wow魔兽世界服务端主体结构服务端主要由三大块组成,数据库、服务端逻辑、脚本。数据库用的MySQL,这里不是很关键暂且不说。脚本有自己的脚本引擎,简单的任务、战斗等都可以通......