笔记 | 产品经理必懂的技术(七)

2023-10-19 12:59

本文主要是介绍笔记 | 产品经理必懂的技术(七),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

不懂技术的产品经理可能在遇上bug时都不知道去找谁,本文说明产品前后端如何划分,相关问题属于哪个“端”,适合初级产品人阅读。

产品汪在验自己产品时,经常遇上bug了,就去找测试小姐姐,测试小姐姐看了看,就说:“这个找后台的某某吧”,“这个找前端的某某吧”。

小汪就好奇了,那么多程序猿哥哥,他们的职责是怎么划分的呢?

产品经理眼里的“端”
在这里插入图片描述在产品经理眼里,一般按业务的使用者对产品领域进行划分,例如淘宝的用户端、商家端,再例如滴滴的乘客端、司机端、运营后台;甚至会进一步细分,有网约车司机端、代价司机端等。

当然,也可能按照业务模块进行划分,例如物流系统、支付系统、订单系统等。

前后端:谁前?谁后?
在大部分公司里,一个程序员的工作,可能会覆盖很多个产品端。例如一位前端的同事,可能既要做用户端的H5,也要做商家端的网页,还要做平台运营后台的网页。一个后端的同事,工作也可能覆盖多个业务模块。

那他们的工作是怎么划分的呢?
在这里插入图片描述简单来说,对于程序猿哥哥来说,前端就是负责“用户看得见”的内容,将UI稿转换成网页、APP、电脑软件等,同时实现所有交互事件,例如用户点击、滑动、拖动等操作。

前端又会根据实现的形式进行细分,常见的有:

1)移动端APP

根据手机系统的不同,又细分为苹果iOS APP、谷歌Android(安卓) APP,甚至一些非常小众的手机系统APP,例如微软的Windows Phone(简称WP)的APP。

不同手机系统上APP开发需要用的编程语言差异较大,开发环境也有所差异,所以一个APP前端程序员,一般只会开发一个端,例如只负责安卓端,或者只负责苹果端。

另外,在移动端,大家经常能听到一个词,叫做“原生”。所谓原生就是使用系统指定的编程语言开发的软件,“非原生”,一般指套用一个网页浏览器,然后再在浏览器内用网页展示内容实现的软件。

2)PC端软件

例如我们常用的office系列软件Word、Excel、PowerPoint;电脑版的QQ、微信、QQ音乐;上网页用的Google Chrome浏览器、Firefox浏览器等,都是PC端的软件。PC端也因系统的差异,前端也会进一步的细分。

3)网页web

网页基于HTML(HyperText Markup Language,超文本标记性语言)实现,现在已经发展到了HTML5.0版本,也就是大家耳熟能详的H5。Web内容具有编程语言统一、与平台无关的特点,我们可以通过各种电脑网页浏览器、手机上的网页浏览器(UC、百度浏览器等),甚至内嵌了网页浏览器的微信、QQ、支付宝等等,实现网页的访问。

得益于网页内容编程语言统一的特点,网页前端程序员一般能做非常多的事情,例如开发电脑端网页、手机端网页、微信公众号H5等等。

4)小程序

一种新生的事物,某些软件当用户规模足够巨大时,就可以设定一套规范,然后让前端程序员们直接为这些软件,而不是不同的系统,开发“程序中的程序”。

这样的好处就是,用户不再需要手机上装各种各样的APP,一个软件里就能解决大部分事情。

现在主流的小程序,例如微信小程序、百度小程序、支付宝小程序等,都是基于HTML衍生发展出来的。开发过程与编写HTML网页相似,所以一些公司并没有专门的小程序前端,而是由网页web程序猿哥哥“被迫营业”同时从事小程序的开发。

目前很多公司推出的小程序,虽然都是基于HTML衍生出来的,但是各自衍生(魔改)方法不一样,所以具体编写时也有所差异。目前,市面上有一些小程序代码转换工具,例如写好一个微信小程序,用工具一转,就能生成一个百度小程序。

相对于“用户看得见”的前端,那用户“看不见”的部分,就是由后端负责了,后端程序猿哥哥要负责业务逻辑的实现、订单、用户资料等数据的增删改查。

一款产品的后端,一般只会用一种编程语言编写。一些功能特别丰富的产品可能会用一种编程语言作为核心,另外用1-2种语言实现一些这类语言擅长的模块,例如用Java做核心语言,但配套的数据平台用Python写之类的。

由于在同一款产品中,后端编程语言不像前端一样根据系统/设备不同各种开花。所以,后端程序猿哥哥就可以一个人负责多个业务模块的后端编写,甚至轮流负责不同模块的编写。

后端哥哥也是很辛苦的,因为他们需要去实现各种业务逻辑,订单流转、登录登出及权限管理、实现数据的存储导出、进行不同系统间的对接等等。

根据问题特征,回溯bug该找谁
介绍完了前端后端分工内容的区别,那么想区分一个bug到底归谁,那就容易些了。

如果是页面样式上的错位、缺了或多了啥字段或模块,某些按键或交互点了没反应,就优先找对应内容的前端。

相对比前端的bug,后端bug体现形式就比较丰富:

1)业务逻辑错误

例如创建订单计算金额错误、优惠券是否能用判断条件错误、订单审批流程错误等等。

2)点了之后报错
一个按钮不是点了没反应,而是点了就弹出一大堆英文的错误信息,这种情况下一般可以先找后端看看问题。
在这里插入图片描述
3)404、500错误

这种有明显数字代码的错误,先找后端就没错了。
在这里插入图片描述这下子,小汪就明白了,原来前后端的程序猿哥哥们是这样分工的。

用户可见的界面、进行的交互操作就是前端负责,业务的逻辑、流程、数据的处理就是后端的职责。

这篇关于笔记 | 产品经理必懂的技术(七)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/239955

相关文章

【专题】2024飞行汽车技术全景报告合集PDF分享(附原数据表)

原文链接: https://tecdat.cn/?p=37628 6月16日,小鹏汇天旅航者X2在北京大兴国际机场临空经济区完成首飞,这也是小鹏汇天的产品在京津冀地区进行的首次飞行。小鹏汇天方面还表示,公司准备量产,并计划今年四季度开启预售小鹏汇天分体式飞行汽车,探索分体式飞行汽车城际通勤。阅读原文,获取专题报告合集全文,解锁文末271份飞行汽车相关行业研究报告。 据悉,业内人士对飞行汽车行业

金融业开源技术 术语

金融业开源技术  术语 1  范围 本文件界定了金融业开源技术的常用术语。 本文件适用于金融业中涉及开源技术的相关标准及规范性文件制定和信息沟通等活动。

【学习笔记】 陈强-机器学习-Python-Ch15 人工神经网络(1)sklearn

系列文章目录 监督学习:参数方法 【学习笔记】 陈强-机器学习-Python-Ch4 线性回归 【学习笔记】 陈强-机器学习-Python-Ch5 逻辑回归 【课后题练习】 陈强-机器学习-Python-Ch5 逻辑回归(SAheart.csv) 【学习笔记】 陈强-机器学习-Python-Ch6 多项逻辑回归 【学习笔记 及 课后题练习】 陈强-机器学习-Python-Ch7 判别分析 【学

系统架构师考试学习笔记第三篇——架构设计高级知识(20)通信系统架构设计理论与实践

本章知识考点:         第20课时主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中经常考查,但分值也不高。本课时内容侧重于对知识点的记忆和理解,按照以往的出题规律,通信系统架构设计基础知识点多来源于教材内的基础网络设备、网络架构和教材外最新时事热点技术。本课时知识

AI(文生语音)-TTS 技术线路探索学习:从拼接式参数化方法到Tacotron端到端输出

AI(文生语音)-TTS 技术线路探索学习:从拼接式参数化方法到Tacotron端到端输出 在数字化时代,文本到语音(Text-to-Speech, TTS)技术已成为人机交互的关键桥梁,无论是为视障人士提供辅助阅读,还是为智能助手注入声音的灵魂,TTS 技术都扮演着至关重要的角色。从最初的拼接式方法到参数化技术,再到现今的深度学习解决方案,TTS 技术经历了一段长足的进步。这篇文章将带您穿越时

系统架构设计师: 信息安全技术

简简单单 Online zuozuo: 简简单单 Online zuozuo 简简单单 Online zuozuo 简简单单 Online zuozuo 简简单单 Online zuozuo :本心、输入输出、结果 简简单单 Online zuozuo : 文章目录 系统架构设计师: 信息安全技术前言信息安全的基本要素:信息安全的范围:安全措施的目标:访问控制技术要素:访问控制包括:等保

论文阅读笔记: Segment Anything

文章目录 Segment Anything摘要引言任务模型数据引擎数据集负责任的人工智能 Segment Anything Model图像编码器提示编码器mask解码器解决歧义损失和训练 Segment Anything 论文地址: https://arxiv.org/abs/2304.02643 代码地址:https://github.com/facebookresear

数学建模笔记—— 非线性规划

数学建模笔记—— 非线性规划 非线性规划1. 模型原理1.1 非线性规划的标准型1.2 非线性规划求解的Matlab函数 2. 典型例题3. matlab代码求解3.1 例1 一个简单示例3.2 例2 选址问题1. 第一问 线性规划2. 第二问 非线性规划 非线性规划 非线性规划是一种求解目标函数或约束条件中有一个或几个非线性函数的最优化问题的方法。运筹学的一个重要分支。2

【C++学习笔记 20】C++中的智能指针

智能指针的功能 在上一篇笔记提到了在栈和堆上创建变量的区别,使用new关键字创建变量时,需要搭配delete关键字销毁变量。而智能指针的作用就是调用new分配内存时,不必自己去调用delete,甚至不用调用new。 智能指针实际上就是对原始指针的包装。 unique_ptr 最简单的智能指针,是一种作用域指针,意思是当指针超出该作用域时,会自动调用delete。它名为unique的原因是这个

查看提交历史 —— Git 学习笔记 11

查看提交历史 查看提交历史 不带任何选项的git log-p选项--stat 选项--pretty=oneline选项--pretty=format选项git log常用选项列表参考资料 在提交了若干更新,又或者克隆了某个项目之后,你也许想回顾下提交历史。 完成这个任务最简单而又有效的 工具是 git log 命令。 接下来的例子会用一个用于演示的 simplegit