【问题标题】:Switching from desktop development to web-based development从桌面开发切换到基于 Web 的开发
【发布时间】:2012-09-22 10:52:56
【问题描述】:

我最近正在考虑更改我作为开发人员的主要个人资料,我想对此提出一些意见和见解。

我不住在硅谷,我在一个东欧国家,硅谷的嗡嗡声大约在 5 年后才出现,如果有的话。 Python、Rails、node.js 根本不是主流或“时髦”,一切都围绕着 PHP、Java、.NET。

我并不是说我们产生了糟糕的代码,有很多优秀的开发人员,我只是说在技术方面,我们有点落后。

我的经验主要是 C# 桌面,但我也使用 PHP 和 Java,2/3 部分是桌面应用程序。最近,我正在深入研究 JavaScript 技术和 Python — 我真的很喜欢它!

我决定主要转向网络技术,包括可以传输到桌面领域的技术。

例如:

最近我有一个涉及桌面应用程序的项目。客户并不真正关心我使用什么技术,但我选择了 C# WinForms,因为我从中获得了最丰富的经验。但是,这可以通过其他任何方式轻松完成,我在想也许有一个基于 JavaScript 的应用程序的解决方案,或者其他什么,我不知道。

我的问题是你们建议哪些语言可以同时应用于桌面和网络。

我在玩 node.js 和 Python,但老实说,我不太熟悉这些可能性。我看到了云应用程序和移动开发的未来,所以我的决定是一项战略性的决定。

请省略“如果你喜欢桌面开发,坚持下去”,因为我也喜欢网络开发,我只是想主要转向它。

【问题讨论】:

  • 对此没有正确答案。重要的开关是 Winforms 到桌面。技术堆栈查看您所在位置的就业市场并赌博。无论您选择哪一个,您都将使用 HTML(5) 和 javascript。你必须知道多少取决于技术堆栈中有多少支持,但即便如此,你也必须学习他们隐藏在背后的实现的 DSL。尝试预测您应该选择哪种口味是您应该留给 Gartner numties 的事情。在winforms中问要不要学C++、C#、Java等也没什么区别
  • 那么我可能会细化这个问题。如果我想了解 Web 技术,但偶尔会做一个桌面项目而不切换到完全不同的语言,有什么可能性?据我所知,基于win8的新metro设计支持html5 + js开发,但如果我们考虑linux,那么这也不是一个选择。有这样的吗?
  • 你可以在 .net 中编写 ECMA 脚本、Python 和 Ruby。我不明白为什么切换语言是某种主要问题,如果你可以用 C# 编程,你可以用任何东西编程,而且你正在做基于 web 的,你正在交付 HTML、CSS 和 javascript,无论你使用哪个堆栈采用。这不值得担心。

标签: web web-applications cloud


【解决方案1】:

如果你正在做的应用程序可以作为网络应用程序完成,但你只是希望它坐在用户桌面上并且在没有互联网连接的情况下工作,那么你应该去网络开发恕我直言

主要挑战是以一种易于桌面用户使用的方式打包 Web 服务器应用程序。

我知道有两种解决方案:

  1. 将包含所有依赖项的 Web 应用程序打包到单个 Java EE .war 文件中,并使用简单的 Tomcat Web 服务器将其放在桌面上(这可以使用 JRuby/warbler 完成)。

  2. 另一种方法是使用 Web 服务器创建 VMware 映像(Web 服务器将在服务器启动脚本中启动,因此用户只需启动 VMware 实例)。

【讨论】:

    猜你喜欢
    • 2011-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多