您如何开始构建ASP.NET Web应用程序?

时间:2023-01-19 10:31:57

Say for example you're getting a web app project that interacts with a database.

比如说你正在获得一个与数据库交互的Web应用程序项目。

How do you start your development? Do you start by designing your database, drawing simple ERD and writting a create scripts? Do you start by designing the look of your of web app, maybe using photoshop, then create a master page for it? or do you start by designing your domain models, with minimal looks, and apply a preetier design later on?

你是如何开始发展的?您是从设计数据库,绘制简单的ERD和编写创建脚本开始的吗?您是从设计Web应用程序的外观开始,也许是使用photoshop,然后为它创建一个母版页?或者您是从设计领域模型开始,外观最小化,并在以后应用预先设计?

Please share you thoughts on this... Cheers...

请分享你对此的看法......干杯......

7 个解决方案

#1


1  

You start by deciding which way you start. No but really, it depends on too much factors to have a general answer. Do you develop using concepts of agile development, are there specified functional designs, did the client give you strict requirements, what is your own experience etc..

首先,您要决定从哪个方向开始。不,但实际上,这取决于太多因素,无法得到一般答案。您是否使用敏捷开发的概念开发,是否有指定的功能设计,客户是否给出了严格的要求,您自己的经验是什么等等。

Generally we start by developing our business objects first, then creating views for them using sample data / fake databases or sometimes even plain text files. From there, we start filling in the bits and pieces. If not all requirements are set, it's best to keep the database outside your development as long as possible. That way you prevent yourself from having to change your db, sprocs and interaction with your db everytime.

通常我们首先开发业务对象,然后使用示例数据/假数据库或有时甚至是纯文本文件为它们创建视图。从那里,我们开始填补点点滴滴。如果未设置所有要求,则最好尽可能长时间地将数据库保留在开发之外。这样您就可以防止自己每次都必须更改db,sprocs以及与db的交互。

#2


1  

I tend to do the last of those ideas, "start by designing your domain models, with minimal looks, and apply a preetier design later on" I like to make my application, of any kind, does what I want it to do before I spend time on making it look pretty.

我倾向于做最后的那些想法,“首先设计你的领域模型,外观最小化,然后应用更先进的设计”我喜欢制作我的应用程序,在我之前完成我想做的事情。花时间让它看起来很漂亮。

#3


0  

Figure out how the users need to interact with your site first. What are they needing to achieve?

弄清楚用户首先需要如何与您的网站进行互动。他们需要达到什么目标?

Let this define you ERD and the database model will quickly follow.

让这个定义你ERD,数据库模型将很快跟随。

Then, when you actually start coding you'll be heading in the right direction.

然后,当你真正开始编码时,你将朝着正确的方向前进。

Many will also say, write your Unit Tests first. It's hard to do but often worth it.

许多人还会说,首先编写单元测试。这很难做但经常值得。

#4


0  

UI and DB, but it depends which one is really first. The UI is a very important thing because your customer has to work with it in the end (some say there might be developers who sometimes forget...). The database design is a very good way to put (some) structure in all the business needs which aren't always specified in a strictly and well structured way.

UI和DB,但它取决于哪一个真的是第一个。 UI是一个非常重要的事情,因为您的客户最终必须使用它(有人说可能有开发人员有时会忘记......)。数据库设计是将(某些)结构放在所有业务需求中的一种非常好的方法,这些业务需求并不总是以严格和结构良好的方式指定。

This is junior's experience, I've been working in development since 2004, beginning with a 4-year-apprenticeship in a development company.

这是初级经验,我从2004年开始从事开发工作,从开发公司的4年学徒开始。

Cheers, Matthias

#5


0  

I start with the functional UI, moving from there to the business layer and db (usually in tandem to start with). Design is normally provided in some respect by the client, so I try to apply that early on, without letting it get in the way. I like to get the domain sorted out in one step (minor changes are acceptable later), and I create my scripts as I get to them in my code.

我从功能UI开始,从那里移动到业务层和db(通常串联开始)。设计通常在某些方面由客户提供,因此我尽早应用它,而不会让它妨碍。我喜欢在一个步骤中对域进行整理(稍后可以接受小的更改),并且在我的代码中创建脚本时创建脚本。

It sounds like a bit of a runaround, but it works for me.

这听起来像是一个小跑,但它对我有用。

#6


0  

I definitely start with a UI Prototype. Clients never know what they really want untill they see it.

我绝对是从UI Prototype开始的。客户永远不会知道他们真正想要的东西,直到他们看到它。

A simple change on a UI can translate to a dramatic change in the core components of your system. So rather let the user play with a pretty prototype until they are confident it's what they looking for, and then dive into system objects and database design.

UI上的简单更改可以转化为系统核心组件的巨大变化。因此,让用户玩一个漂亮的原型,直到他们确信这是他们想要的东西,然后深入系统对象和数据库设计。

With regards to Database and System objects, I find it difficult to decide which way to go. Going database first definitely influences my class design, so I try go object first as much as possible. It turns into a more human design IMO

关于数据库和系统对象,我发现很难决定走哪条路。首先去数据库肯定会影响我的课堂设计,所以我尽可能先尝试去对象。它变成了一个更人性化的设计IMO

#7


0  

Depends on the Project Id' say. Usually it's good to have a Photoshop mockup to show your client what they're getting.

取决于项目ID'说。通常,有一个Photoshop模型可以向客户展示他们正在获得的内容。

On small no-maintenance projects I try to start by modeling the database first to get a better overview on the structure. Then it's usually quite easy to create a Web Application around it.

在小型无维护项目中,我首先尝试对数据库进行建模,以便更好地了解结构。然后,围绕它创建Web应用程序通常非常容易。

On bigger projects I usually start by creating (basic) prototypes of critical pieces of the software. I then show those to clients and afterwards throw them away. They're just there to help me understand the upcoming challenges better.

在更大的项目中,我通常首先创建关键软件的(基本)原型。然后我向客户展示这些,然后扔掉它们。他们只是帮助我更好地了解即将到来的挑战。

But as said, it's a matter of taste and project.

但正如所说,这是一个品味和项目的问题。

#1


1  

You start by deciding which way you start. No but really, it depends on too much factors to have a general answer. Do you develop using concepts of agile development, are there specified functional designs, did the client give you strict requirements, what is your own experience etc..

首先,您要决定从哪个方向开始。不,但实际上,这取决于太多因素,无法得到一般答案。您是否使用敏捷开发的概念开发,是否有指定的功能设计,客户是否给出了严格的要求,您自己的经验是什么等等。

Generally we start by developing our business objects first, then creating views for them using sample data / fake databases or sometimes even plain text files. From there, we start filling in the bits and pieces. If not all requirements are set, it's best to keep the database outside your development as long as possible. That way you prevent yourself from having to change your db, sprocs and interaction with your db everytime.

通常我们首先开发业务对象,然后使用示例数据/假数据库或有时甚至是纯文本文件为它们创建视图。从那里,我们开始填补点点滴滴。如果未设置所有要求,则最好尽可能长时间地将数据库保留在开发之外。这样您就可以防止自己每次都必须更改db,sprocs以及与db的交互。

#2


1  

I tend to do the last of those ideas, "start by designing your domain models, with minimal looks, and apply a preetier design later on" I like to make my application, of any kind, does what I want it to do before I spend time on making it look pretty.

我倾向于做最后的那些想法,“首先设计你的领域模型,外观最小化,然后应用更先进的设计”我喜欢制作我的应用程序,在我之前完成我想做的事情。花时间让它看起来很漂亮。

#3


0  

Figure out how the users need to interact with your site first. What are they needing to achieve?

弄清楚用户首先需要如何与您的网站进行互动。他们需要达到什么目标?

Let this define you ERD and the database model will quickly follow.

让这个定义你ERD,数据库模型将很快跟随。

Then, when you actually start coding you'll be heading in the right direction.

然后,当你真正开始编码时,你将朝着正确的方向前进。

Many will also say, write your Unit Tests first. It's hard to do but often worth it.

许多人还会说,首先编写单元测试。这很难做但经常值得。

#4


0  

UI and DB, but it depends which one is really first. The UI is a very important thing because your customer has to work with it in the end (some say there might be developers who sometimes forget...). The database design is a very good way to put (some) structure in all the business needs which aren't always specified in a strictly and well structured way.

UI和DB,但它取决于哪一个真的是第一个。 UI是一个非常重要的事情,因为您的客户最终必须使用它(有人说可能有开发人员有时会忘记......)。数据库设计是将(某些)结构放在所有业务需求中的一种非常好的方法,这些业务需求并不总是以严格和结构良好的方式指定。

This is junior's experience, I've been working in development since 2004, beginning with a 4-year-apprenticeship in a development company.

这是初级经验,我从2004年开始从事开发工作,从开发公司的4年学徒开始。

Cheers, Matthias

#5


0  

I start with the functional UI, moving from there to the business layer and db (usually in tandem to start with). Design is normally provided in some respect by the client, so I try to apply that early on, without letting it get in the way. I like to get the domain sorted out in one step (minor changes are acceptable later), and I create my scripts as I get to them in my code.

我从功能UI开始,从那里移动到业务层和db(通常串联开始)。设计通常在某些方面由客户提供,因此我尽早应用它,而不会让它妨碍。我喜欢在一个步骤中对域进行整理(稍后可以接受小的更改),并且在我的代码中创建脚本时创建脚本。

It sounds like a bit of a runaround, but it works for me.

这听起来像是一个小跑,但它对我有用。

#6


0  

I definitely start with a UI Prototype. Clients never know what they really want untill they see it.

我绝对是从UI Prototype开始的。客户永远不会知道他们真正想要的东西,直到他们看到它。

A simple change on a UI can translate to a dramatic change in the core components of your system. So rather let the user play with a pretty prototype until they are confident it's what they looking for, and then dive into system objects and database design.

UI上的简单更改可以转化为系统核心组件的巨大变化。因此,让用户玩一个漂亮的原型,直到他们确信这是他们想要的东西,然后深入系统对象和数据库设计。

With regards to Database and System objects, I find it difficult to decide which way to go. Going database first definitely influences my class design, so I try go object first as much as possible. It turns into a more human design IMO

关于数据库和系统对象,我发现很难决定走哪条路。首先去数据库肯定会影响我的课堂设计,所以我尽可能先尝试去对象。它变成了一个更人性化的设计IMO

#7


0  

Depends on the Project Id' say. Usually it's good to have a Photoshop mockup to show your client what they're getting.

取决于项目ID'说。通常,有一个Photoshop模型可以向客户展示他们正在获得的内容。

On small no-maintenance projects I try to start by modeling the database first to get a better overview on the structure. Then it's usually quite easy to create a Web Application around it.

在小型无维护项目中,我首先尝试对数据库进行建模,以便更好地了解结构。然后,围绕它创建Web应用程序通常非常容易。

On bigger projects I usually start by creating (basic) prototypes of critical pieces of the software. I then show those to clients and afterwards throw them away. They're just there to help me understand the upcoming challenges better.

在更大的项目中,我通常首先创建关键软件的(基本)原型。然后我向客户展示这些,然后扔掉它们。他们只是帮助我更好地了解即将到来的挑战。

But as said, it's a matter of taste and project.

但正如所说,这是一个品味和项目的问题。