首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >决定是否应该使用Java技术-初学者

决定是否应该使用Java技术-初学者
EN

Stack Overflow用户
提问于 2010-08-15 04:22:31
回答 3查看 195关注 0票数 1

我对软件开发并不陌生,但在过去的几年里,我几乎完全参与了web应用程序的开发,最有可能的是使用MySQL/PostgreSQL进行PHP开发。

现在我要改变焦点了。我想开始用Java为桌面应用程序编程。关于语言的决定是出于以下原因:它是一种成熟的语言,有进入市场的空间,它是多平台的,资源丰富,并且有一些非常好的IDE(我正在使用netbeans 6.9)。

我对OOP概念并不陌生(或者至少大部分),但是Java有大量的解决方案(技术、框架等等),我对此迷失了方向。无法决定采用和学习什么是最合适的解决方案。

这就是说,让我们进入重点。我将描述软件的目标,一些我到目前为止已经采用的东西,并期待有人给我一些线索来填补混乱的点。

我的应用程序是一个小型企业应用程序。关于产品,销售,现金管理的常识。它需要运行到一个小办公室,有一些计算机(不是一个完全独立的桌面应用程序)。并不是每个用户都能做所有的事情。有些人有访问金融资料的特权,有些人只卖东西,有些人只满足产品要求,等等。

根据上面的高级定义,我们知道它将像客户端-服务器应用程序一样运行。一台服务器将只安装在一台机器上,所有其他服务器将只安装客户端。我使用HSQL作为持久化的后端。

我想使用Swing来构建UI (以保持基于操作系统的主题)。客户端的可能性包括发送电子邮件(不是直接发送,而是通过一些已经设置的电子邮件客户端Thunderbird,Outlook)和打印(到网络中任何可用的打印机)。

为此,我使用桌面API。

好了,最后我们得到了我正在松开的抓手:你推荐哪种框架/技术来使开发更快(基于可用表的预先构建的表单),并尽可能地模块化?

正如我所说的,不同的用户将拥有不同的权限,但我希望保持模块的分离,而不仅仅是检查和禁用。装在不同的包里,或者类似的东西。

EJB?BlueJ?JavaBeans?OSGi?Swing应用程序框架?我对这些有点迷惑。任何帮助都将不胜感激。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-08-15 04:29:37

如果你迷路了,那就简单点。

对于您描述的那种桌面应用程序,您将需要Swing和JDBC。如果您切换到web,请替换仅使用JSTL和servlets编写的JSP。您必须了解HTML和CSS才能编写JSP。您可以根据需要使用JavaScript对其进行修饰。

只需要这些,你就能走很长一段路。

你提到的其他的只是噪音,直到你变得更舒服:

  1. EJB适用于企业级应用程序。您可以将许多复杂的事情(如线程、对象池和生命周期等)留给应用程序服务器,而专注于在称为Enterprise Java Beans的分布式事务组件中表达业务逻辑。
  2. BlueJ是一个初学者集成开发环境,旨在保护人们不受Java语言复杂性的影响。我不推荐。
  3. OSGi- web应用的模块化部署。不需要启动。
  4. Swing应用程序框架?我不熟悉它--我不写Swing。如果你指的是Spring,我认为它是一个很好的框架,但不是启动的必要。
票数 3
EN

Stack Overflow用户

发布于 2010-08-15 09:15:11

这有点离题,但我认为无论如何都应该说出来。

我的应用程序是一个小型企业应用程序。关于产品,销售,现金管理的常识。它需要运行到一个小办公室,有一些计算机(不是一个完全独立的桌面应用程序)。并不是每个用户都能做所有的事情。有些人有访问金融资料的特权,有些人只卖东西,有些人只满足产品要求,等等。

在这里你正在尝试一些非常有野心的东西。有无数的现有应用程序为小企业做这类事情,其中一些是家喻户晓的名字。是什么让你认为你可以做得更好?是什么让你认为你可以竞争?

您是Java的新手,这一事实使这一目标更加雄心勃勃。

我的建议是:

  • 如果你有想从中赚大钱的梦想,那就算了吧。
  • 如果你是为了某个客户、你的公司或你自己来做这件事,他们/你可能会更好地使用一个现成的业务application.
  • If你做这件事是为了“公共利益”,如果你加入一些现有的开源业务应用程序项目,你的劳动将会更有成果。
  • 如果你只是“为了乐趣”做这件事...勇敢点儿。(虽然我并不觉得这是一个“有趣”的项目……)
票数 2
EN

Stack Overflow用户

发布于 2010-08-15 09:45:21

从java开始,swing桌面应用很正常……我必须说,虽然默认中包含的组件,我从来不喜欢,我认为他们太丑陋了。https://substance.dev.java.net/是一个面向java的外观库。所以,做你的应用程序,仔细考虑一下,确保你的脑海中有某种设计。与刚开始编码并希望到达你喜欢的地方相比,如果你有一个视觉上的想法,它会更容易,而且通常更快。

拿出纸和铅笔,草草写下你的图形用户界面的笔记和图画。如果您的应用程序需要存储数据,那么可以查看JDBC驱动程序以连接到mysql,或者查看嵌入式数据库,如HSQLDB。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3484960

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档