ari*_*iso 8 c# database-design backend java-ee
为什么大多数人都说数据服务和数据库是系统中最重要的部分?
从我所看到的,它是前端开发:GUI,WEBUI,XAML是最重要的.当然比中间层和数据库层更重要.
我认为构建应用程序的数据库并不重要.毕竟,数据模式来自业务分析,数据库开发人员几乎没有"创造性"的工作.业务逻辑方面(中间层)也是如此.此外,J2EE和.NET企业框架都有助于使业务逻辑易于开发.
那么,数据库开发人员做什么这么重要呢?为什么我们甚至需要一个独立的数据库开发人员?为什么大多数公司仍然向中/后端开发人员而不是前端开发人员支付更高的薪水?
我相信构建UI(使用Java或C#)的开发人员应具备数据库知识.这将让他们构建整个应用程序.在我看来,无论如何都不可能让非数据库知识人员开发应用程序.
请让我知道我在这里缺少什么.
非常感谢.
Jim*_*m W 11
前端通常更容易更改,而后端需要更多的需求和设计阶段.如果对后端进行了更改,则前端很可能需要更改,因此处理后端服务(db等)的更改请求通常会导致中间和前端发生大量更改.前端的变化通常不会影响后端.
DBA问题实际上取决于项目的大小.如果您正在谈论带有一些简单表格和几千条记录的项目,那么您可能是对的.真正的DBA可能会认为他/她的价值无论如何都要在该项目上工作.真正的DBA更像是专门从事DBMS优化的系统管理员.几乎任何程序员都可以构建表,关系,视图,存储过程等等.特别是对于易于使用的ORM,DBA过去常常需要的很多东西都不是真正需要的.但是,在处理大型项目和大型数据库系统以进行DBMS优化,系统配置,故障转移配置等时,DBA至关重要.
您的原始问题没有谈到项目范围,我认为这是您感到困惑的地方或者没有看到真正的DBA的重要性(不要与知道一点SQL或进行数据输入和调用的人混淆他们自己是DBA).
Mat*_*nes 10
我相信前端方面:GUI,WEBUI,XAML比中间层和数据库层更重要.
这有点像说汽车的颜色比发动机和轮胎更重要.
构建数据库可能不是什么大问题.然而,正确构建一个,优化现有数据并维护精心设计的数据存储是一件大事.国际海事组织,这就是为什么数据库/数据存储空间获得巨大成本的原因.
我作为程序员完成的一些最具挑战性的工作是处理用户界面(xhtml,xaml,servlets,mvc,asp.net等).话虽如此,我认为你遇到了两个不同的问题.正如Mathew所说,在数据库方面,真正的DBA将能够以常规开发人员不知道的方式优化大型(数百万条记录)数据库.在中间层,我认为UI通常如此复杂的原因是因为开发人员通常并不真正构建真正的中间/业务逻辑层.因此他们最终将应用程序中的所有逻辑放在用户界面中,这是错误的.找到知道如何构建一个知道域驱动设计和OO设计模式的可靠,面向对象的业务层的优秀开发人员是RARE.使用与数据库对象匹配的getter/setter构建一堆类不是面向对象的设计.因此他们更有价值.
除此之外,我同意,UI工作仍然是非常具有挑战性的编程,应该被认为比现在更重要.