反思Web应用程序(WebIDE) [英] Reflective Web Application (WebIDE)

查看:103
本文介绍了反思Web应用程序(WebIDE)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

所以,这个问题已经得到解答,但由于这是我对这个项目的第一个问题,我将继续在其他问题中引用它我问这个项目的问题。

So, this question has already been answered, but as it was my first question for this project, I'm going to continue to reference it in other questions I ask for this project.

对于那些来自另一个问题的人来说,这里有一个基本的想法:创建一个可以更容易创建其他网络的网络应用程序应用程序或网站。为此,您基本上会创建一个带有小部件的模块化站点,然后将它们组合到最终的显示页面中。如果您使用Prototype或.prototype.fn,每个小部件可能会在类中组合自己的一组函数。

For anyone who came from another question, here is the basic idea: Create a web app that can make it much easier to create other web applications or websites. To do this, you would basically create a modular site with "widgets" and then combine them into the final display pages. Each widget would likely have its own set of functions combined in a Class if you use Prototype or .prototype.fn otherwise.

我正在努力降低基础知识:编辑CSS,创建用户JavaScript函数并动态查找其名称/输入以及项目的其他关键技术方面。很快我将创建一个我希望创建的功能的粗略时间表。在我这样做之后不久,我打算创建一个各种博客,让大家了解项目的状态。

I am working on getting the basics down: editing CSS, creating user JavaScript functions and dynamically finding their names/inputs, and other critical technical aspects of the project. Soon I will create a rough timeline of the features I wish to create. Soon after I do this, I intent to create a Blog of sorts to keep everyone informed of the project's status.

大家好,我目前正试图将我对个人项目的想法正式化(以后可能会变成专业项目)。该概念是反射性Web应用程序。换句话说,一个Web应用程序可以构建其他Web应用程序,并且积极地用于构建和改进自身。可以把它想象成一个用于创建webapps的webapp IDE。

Hello all, I am currently trying to formalize an idea I have for a personal project (which may turn into a professional one later on). The concept is a reflective web application. In other words, a web application that can build other web applications and is actively used to build and improve itself. Think of it as sort of a webapp IDE for creating webapps.

所以在我开始进一步解释之前,我对你们所有人的问题是:做什么你认为这将是最困难的挑战之一,哪里是最好的起点?

So before I start explaining it further, my question to all of you is this: What do you think would be some of the hardest challenges along the way and where would be the best place to start?

现在让我试着解释一些这里概括了这个概念的各个方面我希望这个应用程序尽可能接近WYSIWYG,因为你有一个显示区域,显示网站的全部或部分内容。您应该可以自由地浏览它以进入您想要处理的区域并使用JavaScript调试器/控制台询问如果......会发生什么?问题。

Now let me try to explain some of the aspects of this concept briefly here. I want this application to be as close to a WYSIWYG as possible, in that you have a display area which shows all or part of the website as it would appear. You should be free to browse it to get to the areas you want to work on and use a JavaScript debugger/console to ask "what would happen if...?" questions.

我打算通过组件构建webapps。换句话说,结果将是一个非常模块化的webapp,这样你就可以轻松地调整小规模或大规模的东西(通常它应该比在< insert中手动编码所有东西更好首选编辑> )。

I intend for the webapps to be built up via components. In other words, the result would be a very modular webapp so that you can tweak things on a small or large scale with a fair amount of ease (generally it should be better than hand coding everything in <insert editor of choice>).

网站/ webapp完成后,该网络应用程序应该能够生成安装和安装所需的所有代码运行创建的网站/ webapp(因此数据库的CSS,JavaScript,PHP和PHP安装程序)。

Once the website/webapp is done, this webapp should be able to produce all the code necessary to install and run the created website/webapp (so CSS, JavaScript, PHP, and PHP installer for the database).

以下是我提出的几个主要挑战远:

Here are the few major challenges I've come up with so far:


  • 动态更改CSS

  • 在JavaScript中实现反射

  • 准确简洁的DOM树查看器

  • 允许用户选择JavaScript库(即 Prototype jQuery Dojo extJS 等。)

  • Changing CSS on the fly
  • Implementing reflection in JavaScript
  • Accurate and brief DOM tree viewer
  • Allowing users to choose JavaScript libraries (i.e. Prototype, jQuery, Dojo, extJS, etc.)

欢迎任何其他意见和建议。

Any other comments and suggestions are also welcome.

编辑1:我非常喜欢AppJet的想法,我会检查出来详细说明我这个周末的时间。但是,我唯一担心的是这应该创建可以转到其他网络服务器上的代码,所以虽然AppJet可能是我更快速开发这个应用程序的好方法,但我仍然认为我必须为我的用户生成PHP代码加上他们的服务器。

Edit 1: I really like the idea of AppJet and I will check it out in detail when I get the time this weekend. However, my only concern is that this is supposed to create code that can go onto others webservers, so while AppJet might be a great way for me to develop this app more rapidly, I still think I will have to generate PHP code for my users to put on their servers.

此外,当我觉得这已经为beta测试人员做好准备时,我肯定会为这个网站上的每个人免费发布它。但我认为,在测试版中我应该遵循类似于git的方案:免费开源应用程序,为私人/专有应用程序付费。

Also, when I feel this is ready for beta testers, I will certainly release it for free for everyone on this site. But I was thinking that out of beta I should follow a scheme similar to that of git: Free for open source apps, costs money for private/proprietary apps.

推荐答案

从概念上讲,您将构建小部件,小部件工厂和工厂制造工厂。

所以,您必须找到所有不同类型的交互,这些交互可以在制作小部件,小工具之间,工厂内以及多个小工具制造工厂之间获得想法。

So, you would have to find all the different types of interactions that could be possible in making a widget, between widgets, within a factory, and between multiple widget making factories to get an idea.

有什么东西可以保持抽象的距离太远?

Something to keep on top of how far would be too far to abstract?

**我认为你需要能够完全抽象几层应用程序空间本身。然后你必须为它创建一些管理工具。 **

**I think you would need to be able to abstract a few layers completely for the application space itself. Then you'd have to build some management tool for it all. **

- 演示文稿,工作流程和数据层。

演示文稿:您要么接收反馈,要么输入信息。通常是点击或输入内容的结果。一个简单的例子是在数据库中制作动态Web表单。你需要在数据库中存储它来自哪里?这可能构成表示层。这可能是最好的练习,以便了解您可能需要使用的内容。

Presentation: You are either receiving feedback, or putting in input. Usually as a result of clicking, or entering something. A simple example is making dynamic web forms in a database. What would you have to store in a database about where it comes/goes from? This would probably make up the presentation layer. This would probably be the best exercise to start with to get a feel for what you may need to go with.

工作流程:构建一个是明智之举简单的工作流引擎。我建立在Windows Workflow上模拟的 e ,我已经在2天内启动并运行了。它可以设置应该运行的初始事件等。从设计者的角度来看,我会想象一个visio类型的程序来链接这些事件。然后,工作流中的事件将驱动表示层。

Workflow: it would be wise to build a simple workflow engine. I built one modeled on Windows Workflow that I had up and running in 2 days. It could set the initial event that should be run, etc. From a designer perspective, I would imagine a visio type program to link these events. The events in the workflow would then drive the presentation tier.

数据您必须存储与应用程序相关的数据。应用程序中的数据。因此,表单,事件,数据结构可以通过存储xml文档来完成,具体取决于您是否需要使用表单中的任何数据。应用程序的数据也可以存储在您填写的空xml模板中,或存储在实际表中。此时,您必须创建一个表创建例程,该例程将为应用程序维护规范表。 谷歌谷歌数据库在网上有这样的东西。

Data: You would have to store the data about the application as much as the data in the application. So, form, event, data structures could possibly be done by storing xml docs depending on whether you need to work with any of the data in the forms or not. The data of the application could also be stored in empty xml templates that you fill in, or in actual tables. At that point you'd have to create a table creation routine that would maintain a table for an app to the spec. Google has something like this with their google DB online.

希望有所帮助。分享你最终想出的结果。

Hope that helps. Share what you end up coming up with.

这篇关于反思Web应用程序(WebIDE)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆