为基于 Web 的应用程序实现功能齐全的原型

发布于 2024-07-25 22:27:04 字数 548 浏览 7 评论 0原文

我正在为基于 Web 的应用程序构建原型,并正在考虑用 HTML 构建前端,然后可以在实际应用程序中重用该前端。 我之前做过一个基于 Flash 的原型,它将 .swf 嵌入到 C# 可执行文件中。 Flash 实现了快速的周转时间,而 Windows 应用程序提供了对用于数据库访问和声音的精美 API 的无限访问。

我也想为这个考虑类似的事情。 这种方法有意义吗? 我特别关心 HTML 与容器应用程序通信的方式。 据我从初步研究中了解到,这只能通过 JavaScript,这可能很快就会变得笨拙。 尤其如此,因为与在 .swf 中实现许多功能的基于 Flash 的原型不同,HTML UI 将完全依赖于 shell 来维护状态。 另外,除了访问数据库之外,我不需要任何其他东西。 所以桌面应用程序可能有点大材小用。

我想到的另一种选择是使用 PHP 构建原型并使用 Server2Go 或 XAMPP 等便携式服务器堆栈进行部署。 但我以前从未做过这样的事情。 这里有人阐明了这种方法的缺点吗?

关键需求是 UI 的快速迭代、可重用的前端代码以及无需任何安装或配置的简化部署。

I am building a prototype for a web-based application and was considering building the front-end in HTML, which can then be reused later for the actual application. I had done a Flash-based prototype earlier, which embedded the .swf into a C# executable. Flash made for rapid turnaround time while the Windows application provided unlimited access to fancy API's for DB access and sound.

I want to consider something similar for this one too. Does this approach make sense? I am particularly concerned about the way the HTML would communicate with the container app. From what I understand out of preliminary research, it would be only through JavaScript, which might quickly get unwieldy. This is especially so because unlike the Flash-based prototype which implemented a lot of its functionality in the .swf, the HTML UI will depend entirely upon the shell to maintain state. Also, I don't need anything more than access to a database. So a desktop application might be overkill.

Another alternative that comes to mind is to build the prototype using PHP and deploy it with a portable server stack such as Server2Go or XAMPP. But I've never done something like this before. Anybody here shed some light on drawbacks of this approach?

The key requirement is rapid iterations of the UI, reusable front-end code and simplified deployment without any installations or configuration.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

心安伴我暖 2024-08-01 22:27:04

我见过的一些最好的编程建议来自 Code Complete,大致如下:“进化原型是好东西,一次性原型也是好东西,但当你试图用另一种原型制作一个时,你就会遇到麻烦。” 也就是说,知道您正在开发哪种类型的原型并尊重它。 如果您正在开发一次性原型,请不要允许自己在生产系统中使用其中的任何一个,无论它多么诱人。 如果您正在开发一种进化原型(旨在成为生产系统),请不要以任何方式妥协质量。

听起来你想同时获得,即一次性产品的快速开发和进化原型的可重用性——但你做不到。 下定决心,并坚持下去。 你不能鱼与熊掌兼得。

Some of the best programming advice I've seen came from Code Complete, and was along the lines of, "evolutionary prototypes are fine things, and throwaway prototypes are fine things, but you run into trouble when you try to make one from the other." That is, know which type of prototype you're developing, and respect it. If you're developing a throwaway prototype, don't permit yourself to use any of it, however tempting it may be, in the production system. And if you're developing an evolutionary prototype - one intended to become the production system - don't compromise quality in any way.

It sounds like you're trying to get both, the rapid development of a throwaway and the reusability of an evolutionary prototype - and you can't. Make up your mind, and stand by it. You can't have your cake and eat it, too.

一花一树开 2024-08-01 22:27:04

我认为你的开始就错了。 为什么您希望您的原型功能齐全? 原型是一次性的,可以帮助充实需求和 UI。 如果您需要完整的功能,为什么不直接跳到最终产品呢? 如果您确实想做原型设计,我建议您研究一下专门的原型设计工具

I think you off to the wrong start, here. Why would you want your prototype to be fully functional? A prototype is intended to be throw-away and to help flesh out requirements and UI. If you need full functionality, why not just skip to the final product? If prototyping is really something you want to do, I suggest looking into a specialized prototyping tool.

只等公子 2024-08-01 22:27:04

您正在为客户制作用户界面原型吗? 如果是的话,请考虑使用一些不太笨重的东西,例如纸质原型或演示软件(例如PowerPoint),直到你确定 UI。 如果您可以建立 UI 并且清楚客户的需求,那么您就可以在任何实际平台上开发应用程序,并牢记清晰的模型。

在我当前的项目中,我首先在 PowerPoint 中制作了 UI 原型。 在随后的迭代中,我使用静态网页和一些 jQuery 插件来模拟实际的用户交互。 事实证明,这对于演示界面非常有效,而且我不必先构建应用程序。

Are you prototyping the user interface for a customer? If you are, consider something less unwieldy like paper prototypes or presentation software (like PowerPoint) until you get the UI nailed down. If you can establish the UI and are clear about the customer's requirements, you can then develop the application in whatever the actual platform is going to be with a clear model in mind.

In my current project, I prototyped the UI in PowerPoint first. In a subsequent iteration, I used static web pages and some jQuery plugins to simulate actual user interaction. That proved to be very effective in demonstrating the interface, and I didn't have to build the application first.

贱人配狗天长地久 2024-08-01 22:27:04

我会加入人们的行列,建议将纸质原型作为“想法”,但不一定是实施。 这里最重要的一点是,诸如 HTML 或 Flash 之类的工具会让您“陷入细节”——这种颜色是什么样的? 这个东西的文字是什么? 很多时间可以这样过去。 相反,您应该关注的是用户流量。

Balsamiq 是一种保持纸质原型设计精神而没有所有“纸质”缺点的工具:http ://www.balsamiq.com/demos/mockups/Mockups.html。 Jeff 和 Joel 在 Stack Overflow 播客之一中对此进行了报道; 我在自己的项目中使用它已经有一段时间了。 它是免费软件,并且能够出色地完成其工作。

I would join in on folks suggesting paper prototyping as the "idea", but not necessarily the implementation. The biggest point here is that tools such as HTML or Flash let you get "bogged down" in the details - what does this color look like? What's the text on this thing? Lots of time can pass by that way. Instead, what you should be focusing on is user flows.

One tool that keeps the spirit of paper prototyping without all the "paper" drawbacks is Balsamiq: http://www.balsamiq.com/demos/mockups/Mockups.html. It was covered by Jeff and Joel in one of the Stack Overflow podcasts; I've been using it for my own projects for a while. It's freeware, and it does its job magnificently.

℉絮湮 2024-08-01 22:27:04

如果您了解 C#,那么您可以考虑的另一个选择是 Silverlight。 然后,您可以利用您的 C# 和/或 JavaScript 知识并与丰富的对象模型进行交互。

这会满足您的需求吗? 客户端的安装量很小 - 下载并安装 Silverlight 插件

If you know C# then another option you can look at is Silverlight. You can then leverage your knowledge of C# and/or JavaScript and interact with a rich object model.

Would that do what you are looking for? The installation would be minimal on the part of the client - download and install the Silverlight plugin

你如我软肋 2024-08-01 22:27:04

如果原型制作是您真正希望在这里完成的事情,那么纸和铅笔将是您最好的朋友。 您可以根据需要绘制任意数量的迭代。 虽然一旦你开始编码,这些最终都没有什么用处,但它进展得很快。

如前所述,有许多原型设计工具都有一定的学习曲线,但可以考虑的替代方案是使用 CakePHP 或 Ruby on Rails 等框架,它们可以实现快速应用程序逻辑,并将自定义前端作为主要任务留下了辛苦的工作。 另外,当您完成原型设计后,您将得到一个功能齐全的应用程序,可以根据需要进行调整。

在任何一种情况下,您都需要预先支付时间(在学习新框架的情况下),或者随着时间的推移付款(在纸上制作原型或手动编码的情况下)。

If prototyping is something you truly wish to accomplish here, paper and pencil will be your best friends. You can draw out as many iterations as necessary. While none of this is ultimately useful later on once you begin coding, it is as quick and rapid is it goes.

As mentioned previously, there are many prototyping tools which have a bit of a learning curve, but an alternative to consider would be using a framework such as CakePHP or Ruby on Rails which make for fast application logic and leave customizing the front end being the primary hard work left. And plus, you're left with a mostly functional application when you're done with your prototyping which can be tweaked as needed.

In either scenario, you're paying with your time either upfront (in the case with learning a new framework), of over time in payments (with the case of prototyping on paper or coding by hand).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文