对于小白来说web开发最难的部分是数据库的设计吗,数据库的设计有什么技巧

对于小白来说web开发最难的部分是数据库的设计吗,数据库的设计有什么技巧,第1张

就我个人的经验来说,数据库虽然在设计上确实需要有一定的经验,但是它并不是最难的。

对于数据的设计其实是对于现实中业务的一种抽象。

就我的习惯的话,我会先对于现实中的业务场景、业务的角色进行分析。

就拿一般的进销存系统来举例吧。

我有一个对于物料管理的仓库,我需要对我的物料的进销存进行管理。

那么我们就需要分析,没有系统的时候,人与人之间的业务是怎么流转的,他们都是通过哪些表单来进行流转的,上下级之间的消息传递和反馈都是怎么进行的。

当知道了业务以后,我们的数据库无非就是对于现实中的业务的一种具现。

对于业务的设计完成以后,就是针对角色的了。

例如:业务的传递都是在业务人员之间的,我们已经整理表单的传递,那角色其实就已经在这些传递中存在了。

但是,业务的角色是业务的角色,我们还要包括财务的角色,那对于财务来说,他需要在哪些环节看到这些业务的单据?并且需要怎么处理?财务的处理结果又包括哪些?不同的处理结果对于下一步的 *** 作又有什么影响。

当我们把这一切的逻辑整理完成后,我们对于数据库的功能上就已经满足了。

接下来的就是抽象数据的分类了。

例如:我们需要对不同的表进行一个分类,我个人喜欢把表分成三种,一种是基础数据表,一种是过程表,一种是结果表。

怎么解释呢?

基础数据表:顾名思义,就是对于基础数据的维护,哪些可以成为基础数据呢?就是我们的业务发生的各个过程中,这些数据都是可以参与其中的,这就是基础数据。

例如:货物的信息,客户的信息。

过程表:就是仅仅在一个过程中使用的表,当这个过程结束了,这个表就没用了。

例如:订单表,付款单表。他们表示的仅仅是订单从下单到最后关闭的这个过程,关闭以后,这个订单表其实我们就不会再去使用它了。

结果表:这个表的数据有一个特点,只允许添加,不允许删除和修改,这个表的数据本身就是对于一种最终结果的表现。

例如:日志表、账单表。

那我们在进行数据库设计的时候,就需要将这些使用情况考虑进去,将不同功能的表进行分离,尽量降低耦合,让相互表的修改不会影响使用。

例如:收款单,我们需要收一笔款的时候,就会生成这个收款单,当款收到后,这个收款单的功能就结束了。

但现实的情况中,可能财务收到了这笔钱,结束了收款单流程后,他发现填错了,本来应该收100,结果收款单写的110。

但是,收款单表示的是过程,当这个过程结束了,我们就不会再需要上一个收款单了,所以,按照我们业务的处理流程,我们应该先生成一笔冲抵的收款单,例如收到-110,然后再生成新的100的收款单。

我们每个月还会有财务统计报表,财务报表因为和现实中的财务账有关,是绝对不允许变动的,因此,这个财务报表就是一个结果表,我们会按月通过批处理程序,将收款单的明细和统计数据放到另一张表中,感觉好像比较冗余,但是这个确实非常必要的。

因为我曾经就遇到过一个情况,我们直接用过程表来进行数据的统计,然后11月30日有一笔收款已经完成了,结果发现收错了,就重新做了个收款单,结果本来已经出了11月结果的账单发生了变化,导致财务实际的处理出现了问题。

因此,数据的冗余有时候是有必要的,我们需要根据不同表的类型进行一些冗余的设计。

对于数据库设计的考虑点还有很多,可能一时半会儿也说不完,大家如果有什么好的思路,也可以在下方评论或关注我给我留言。

如果要问难不难的话,无论是大数据还是其他什么,只要你想学好的话应该都不会太简单。并且大数据入门不像学一门编程语言,自学一段时间就OK了。大数据是需要站在编程的基础上学习的。

如果你是零基础但是又真心的想要学习大数据的话,建议你可以从以下几个方面去入手,首先就是第一步:要进行大数据开发语言及其他基础的学习。第二步:学习理论及核心技术。第三步:真实项目案例实战。

1、编程语言的学习

对于零基础的同学,一开始入门可能不会太简单。因为需要掌握一门计算机的编程语言,大家都知道计算机编程语言有很多,比如:R,C++,JAVA等等。建议从Java入手,容易学而且很好用,Java只需理解一些基本的概念,就可以用它编写出适合于各种情况的应用程序。现在一般也都是从JAVA开始学起,这相当于也是一个基础。

2、大数据相关技术的学习

学完了编程语言之后,一般就可以进行大数据部分的学习了。一般来说,学习大数据部分的时间比学习Java的时间要更长,JAVA算作学习大数据要学习的一部分,除此之外学习大数据还需要学习其他相关类型的数据知识。大数据部分,包括Hadoop 、Spark、Storm开发、Hive 数据库、Linux *** 作系统等知识,还要熟悉大数据处理和分析技术。如果要完整的学习大数据的话,这些都是必不可少的。

3、项目实战阶段

学习任何一门技术,除了理论知识,项目的实战训练也是非常重要的,进行一些实际项目的 *** 作练手,可以帮助我们更好的理解所学的内容,同时对于相关知识也能加强记忆,在今后的运用中,也可以更快的上手,对于相关知识该怎么用也有了经验。在项目实战中,遇到问题最好积极动手记录下来,这样才能更好的去解决你遇到的问题。

一般来说,零基础学习大数据大概就是分为这3个阶段,学习大数据不是件容易的事,但是只要你能多努力,积极地解决自己的疑惑,多练手,相信你一定可以掌握这门技术。

就就业面而言更广泛的是数据库

java现在主要还是在一些沿海城市使用广泛,在内地使用的较少

就难度而言没有上下

如果你接触过编程语言C或者C+或者C#,JAVA相对于数据库更简单

6个月如果你认真学是肯定都能学会的

以上就是关于对于小白来说web开发最难的部分是数据库的设计吗,数据库的设计有什么技巧全部的内容,包括:对于小白来说web开发最难的部分是数据库的设计吗,数据库的设计有什么技巧、大数据开发难不难学、请问数据库技术与JAVA开发哪个更难学等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/10186976.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-06
下一篇2023-05-06

发表评论

登录后才能评论

评论列表(0条)

    保存