English 中文(简体)
利用Node.js和ExtJS建立一个基于企业等级的单一网页应用程序?
原标题:Use Node.js and ExtJS to build an enterprise-grade grid-based single page application?

虽然标题建议 我想把尽可能多的词 into入问题,实际上我是严肃的。

我正在探讨我关于建立企业应用程序的各种选择,这些应用将拥有大量电网,并且需要作为 desktop。 虽然业务转变将是一个大问题(或相当同时的its合点,并可能采取解决相关问题的办法),但这种转变不可能有大量的同时用户(从50人开始,可能不会超过100人)。

虽然SmartGWT似乎解决了我们面临的许多问题,但建立这一工具的团队规模很小(可能是两个发展中国家和一个技术方案管理员)。 Node.js似乎是有吸引力的,因为两个发展中国家都可以在后台和前台工作。

In this context I have a couple of questions:

Node.js 是否适合这种说法? 她很有兴趣听取人们的发言,了解他们在诺德和这种经历。

是否有任何人与ExtJS/SmartGWT一同使用? 你在如何与诺德一道工作方面有何经验?

我确信,在找到 Java专家时,不可能找到经验丰富的诺德杰夫。 其它语言使向Node.js的过渡变得容易?

我知道这是一个相当广泛的问题,请与我谈谈。

最佳回答

通常使用:Node.js+socket.io+backbone.js

但您应真正研究:http://meteor.com/“http://meteor.com/和

问题回答

你们应该掌握你已经知道的技术。

(其余为IMHO)

I m a fan of Node.js and Java. 然而,如果你选择Node.js的话,你会有一个才智的团队。 虽然从长远来看,它较容易启动,但从长远来看,它更便于真正地沉积。

  • No clear winner for framework (Express is the closest)
  • Moving target. Libraries change all the time.
  • Refactoring in Javascript is a PITA
  • Dealing with database transactions is rather difficult (if you need transactions)
  • Its easy to accidentally write very dangerous code (miss a "var" and you will have a global variable problem).
  • Tracing/Debugging through code can be rather difficult with all the callbacks.
  • Reading other people s code (why a talented team is important)

仅仅因为客户的密码与前线相同,也无助于你。 事实上,我常常在玩 no时不知觉。 j 在我混淆了我现有的(图书馆)或客户或服务器代码Im时。

Java在服务器方面有一些巨大优势。

  • Established choices: Spring MVC or JAX-RS
  • Refactoring is easy
  • Reading Java code is easy because of the consistency of the language, static typing and cross referencing IDEs.

Your concern for finding a Java developer over a Javascript developer is becoming less and less of a concern. Besides talented people are/should be language agnostic.

就科学、科学和技术部而言,我也不使用。 Backbone + JQuery +wit post post pitsuff。

I am currently using Exactly the same setup that your question is asking about. I am using Sencha s Ext4 and nodejs to build a massive single page application with lots of grids. We are using sencha architect for most of the UI work, and our database uses PostgreSQL. This setup has a number of advantages and disadvantages.

优点:

  • There is no html! This is the biggest advantage of all. HTML is annoying. If you use nothing but the ext components, you rarely have to touch html. The most we ever have to do is tinker with the css a little. Words do not properly describe how great this is. We have successfully eliminated the need to write in a verbose, inconsistent xml derivative.
  • It made many of us better javascript programmers. This matters for one reason You can t get rid of javascript no matter what you do, if you are building any kind of web application you will have to write massive amounts of javascript. You might as well embrace it rather than try to disguise it. By hiding or disguising it, you are only compounding the problem. If you learn to write better and more efficient javascript, you only make things better in the end.
  • The database library automatically outputs in json! How cool is that? it s going to get turned into json and get read over a rest api anyways. Why not have it automatically give you what you re going to use? And this is coming from Postgres. Postgres barely has support for json on it s own, and this automatically does it for you.
  • The entirety of this project is written in only two languages pl/pgsql and javascript. and we are currently looking at replacing pl/pgsql with pl/v8 (a port of v8 to postgresql) I am almost able to program without reading documentation. How awesome is that?

缺点:

  • Nodejs isn t all fun & games though. Maby it s just me, but it takes quite a while to read through a npm module before I can even make basic use of it.
  • You have to really master javascript to make use of Nodejs. Seriously, Nodejs is not for beginners. I m not saying beginners should stay away from it, I just mean that by the time you learn how to do anything useful in it, you will no longer be a beginner. If you intend on writing anything useful, be prepared to learn javascript in depth.
  • Sencha is not exactly free. Obviously it depends on what you are doing with it, but it s the only software we had to pay for.
  • Development is not as fast as it seems like it would be. Writing a full CRUD for a table, displaying the grid, refreshing the grid adding buttons and such is still very time consuming. Basically, having really nice UI components has actually slowed us down. Now we have to have panels and modal windows and all the things that a real windowing framework has. before using sencha, things were much simpler. Eveything had limited functionality, thus, it was faster to program. Obviously, this will look better when it s done this way, but who s to say we really need all this stuff?

就业绩而言,情况已经足够快。 我确实可以作比较,但还没有业绩问题。





相关问题
ExtJS load form items/fields from database

I am using ExtJS 3 here. I would like to populate a formpanel from database with fields to be submitted. Basically, I don t know witch fields my form will have and I want to generate all formpanel ...

How to use Ext JS for role based application

I am planning to use Ext JS for a large application. The application s features are role based. When user login, they only see menu and screen features related to them. My server side technology will ...

Dynamically adding a TabPanel to a Panel Region

I have a Panel layout with a TreePanel in one region. A user clicks on an node in the tree and a TabPanel should be displayed in another region with information, editing tools etc. for that tree node....

How to embed Json result within Extjs Panel?

I have some issues with Json result and embed it within the html of the Extjs Panel. Here s that I have managed to get so far. myPanel is embedded within a mainPanel, and I have some shows/hide of ...

Ajax data update. Extjs

I need to keep certain data ( in a grid) up to date and was gonna do a poll to the server every 15 seocnds or so to get the data and refresh the grid, however it feels a bit dirty ( the grid will have ...

Better way to call superclass method in ExtJS

All the ExtJS documentation and examples I have read suggest calling superclass methods like this: MyApp.MyPanel = Ext.extend(Ext.Panel, { initComponent: function() { // do something MyPanel ...

Merged Headers in Ext JS Grid

Is it possible to have two headers in Ext JS grids? I have to show my grid as grouped data.. for example product types and products. In my case I need a grid like this: Field | Product Type A ...

热门标签