自己做项目,一般是先写前端还是后端?

2020-04-12 21:25:44 +08:00
 zhuwd

新入行的小白,想问一下前辈们,如果自己一个人负责前后端,一般是先把页面按照产品原型写完,然后根据页面需要的数据写后台接口,还是先根据大体得功能模块写出接口,再由前端覆盖每个接口功能呢

16363 次点击
所在节点    程序员
77 条回复
mumbler
2020-04-13 02:33:11 +08:00
必须先做前端

理由:个人开发不会去做需求分析,画原型图什么的,思考不一定很全面。先做前端的好处是相当于系统性思考了,不要后端也能出个 demo 先把玩一下,感觉不好地方及时修改,才知道需要后端那些接口
lihongming
2020-04-13 03:00:53 +08:00
用什么平台也很关键。

用 PHP+MySql 时,我习惯先设计数据库,然后后端伪代码->无样式前端->后端具体代码->美化前端

现在以 AWS Serverless 为主,顺序就成了先做前端大致框架,然后后端伪 API->设计数据库->后端具体代码->美化前端

其中最主要的变化有两点:一是数据库设计后移,这是 DynamoDB 的特点决定的;二是前端开发提前了,因为 React 开发会用到大量的开源组件,这些组件对数据源格式的要求不尽相同,先做这些可以更好的设计 API,减少对数据的二次加工。
dodo2012
2020-04-13 03:20:27 +08:00
数据库设计,api,前端
wzw
2020-04-13 03:38:15 +08:00
@lihongming 一直是传统开发,我是不是要看看学学 serverless 了,区别很大?
kaiki
2020-04-13 07:04:16 +08:00
先写后端完全摸瞎,以前是看心情写,后来是先写前端了。
love
2020-04-13 08:06:27 +08:00
很明显要先写后端,至少写到能输出前端需要的基本数据,然后前后端一起进化。先写前端数据哪里来的?
gaodeng
2020-04-13 08:21:17 +08:00
自己一个人一把梭,还分什么先后,当然是一边写前端,一边写后端啊。
shakoon
2020-04-13 08:25:58 +08:00
一个人的话,分啥前后端啊,一锅端了
handsomehaitao
2020-04-13 08:48:07 +08:00
@jakezh 真实
DOLLOR
2020-04-13 09:03:24 +08:00
@love 当然是用假数据了。简单的用*.json 和*.xml ,高级点的用 mock.js 。
BarZu
2020-04-13 09:07:01 +08:00
9 楼正解
CzaOrz
2020-04-13 09:07:54 +08:00
我一般是先想好要实现的功能,然后定好大致的数据结构
先写后端传输假数据,再开始搞前端,配合着改后端。。

因为这个过程中,你会慢慢发现很多功能实现不了,然后慢慢的阉割.....
xmge
2020-04-13 09:09:17 +08:00
1 、设计功能
2 、设计数据库
3 、定义接口
4 、写后端然后前端
Desiree
2020-04-13 09:17:42 +08:00
做项目都是按功能需求来得啊,哪有想到哪做哪得。功能模块-> 前端布局(模拟数据) -> 后端接口。这样应该是比较舒服的把
NotFoundEgg
2020-04-13 09:19:21 +08:00
设计表->功能 A->前(mock)->后->功能 B->前->后。。。
对于每个相对独立的功能 /模块的开发周期内 是同时包含了前和后的
securityCoding
2020-04-13 09:19:25 +08:00
@love mock 一下就行了呗
taxiaohaohhh
2020-04-13 09:22:27 +08:00
先前端,前端下来不用整理一眼就能看清结构
xinxing260
2020-04-13 09:25:10 +08:00
画原型 --> 创建 json 的 mock 数据 --> 前端 --> 根据 json 文件生成建表 sql --> 后端 --> 调试
cwjokaka
2020-04-13 09:26:17 +08:00
先前端,因为前端就是测试(狗头),这样就有测试驱动的模样了(再次狗头)
pumily
2020-04-13 09:32:02 +08:00
个人感觉是前端先行吧,说白了后端的接口就是为了前端信息展示提供服务的。在你先写前端时,能够比较容易的加深你对产品和需求的理解,知道你需要个什么样的接口,这样在你后前编写起来前端时就能得心应手的。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/661764

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX