我应该学习哪些开发堆栈才能从 ASP.NET 开发迁移到 Java?
故事是这样的:我目前是一名 C# 开发人员,从事 ASP.NET 工作。虽然我喜欢 C#,但我不喜欢 .NET 社区的整体质量;我过去的大部分经验是,许多.NET 开发人员完全不了解实际的软件工程(例如设计模式、代码分离等)。即使您不得不忍受偶尔出现的“架构宇航员”,Java 区域在这方面似乎要好得多。
我的实际问题是:我可以很容易地掌握 Java 语法,因为我已经了解 C#。然而,我只使用过完整的 Microsoft 堆栈进行 Web 开发(WebForms,尽管我了解过一些 MVC,并且做了一些 Ruby on Rails 演示,所以我对 MVC 相当了解)。如果我想学习足够的适销对路的技能,以便能够申请公司的初级 Java 开发职位,我应该考虑什么堆栈? Java Web 框架有数十种;公司中最常用的是什么?看来 Hibernate 是持久性的默认标准(我已经使用 NHibernate 做了一些工作),所以我对此表示同意。我还看到了几个看起来很有趣的新 Java Web 框架,但是学习它们并不会让我在申请公司工作时占据优势,因为我更喜欢它们未经企业界测试并且针对初创公司和大多数新框架类似。
为了开始向更高质量的社区过渡,我应该开始学习哪个框架最有可能在典型的公司中使用?
So here's the story: I currently work as a C# developer doing ASP.NET. While I like C# I don't like the overall quality of the .NET community; most of my past experiences have been that many .NET developers are totally ignorant of actual software engineering (e.g. design patterns, code separation, etc.). The Java area seems a lot better in this regard even if you do have to put up with the occasional "architecture astronaut".
My actual question is this: I can pick up the Java syntax easy enough since I already know C#. However, I've only worked with the full Microsoft stack for web development (WebForms, although I've looked a bit at MVC and I've done some Ruby on Rails demo stuff so I know MVC fairly well). If I want to learn enough marketable skills to be able to apply for junior-level Java development positions at companies, what stack should I look at? There are dozens of Java web frameworks out there; what would be the most common one used in companies? It seems that Hibernate is the default standard for persistence (I've done a little bit with NHibernate) so I'm okay with that. I've also seen several new Java web frameworks that seem interesting, but learning them won't give me a leg up in applying for a job at a company because I'm bettering they're untested in the corporate world and aimed at startups and similar like most new frameworks.
Which framework would be the most likely to be used at a typical company that I should start to learn in order to begin a transition to a better quality community?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
实际上,我建议您首先学习用于数据库访问的直接 JDBC 和用于 Web 前端的 servlet+JSP,并使用它们来实现一个(非常)简单的 Web 应用程序。 JDBC 是基本上构建所有其他 Java 数据库库的 API,servlet 也是如此。这些将需要最少的配置来让您的应用程序运行。一旦你完成了这些,你就会有更好的基础理解,并且可以看看:
如果您希望在成熟的 Java EE 容器上执行此操作,我建议您使用 Glassfish 作为服务器。但 Tomcat 更简单(只是一个 servlet 容器),并且可能更适合从第一个项目开始。
I'd actually recommend that you start by learning straight JDBC for database access and servlets+JSP for the web front end, and using those to implement a (very) simple web app. JDBC is the API on which basically all other Java database libraries are built, and likewise for servlets. These will require the least configuration necessary to get your app running. Once you've done that, you'll have a better foundational understanding and can take a look at:
If you're looking to do this on a full-blown Java EE container, I'd recommend using Glassfish as your server. But Tomcat is simpler (just a servlet container), and might be better for starting out with the first project.
除了上面的答案之外,熟悉 Apache 和 JSP 也会很有帮助。
Get familiar with Apache and JSP stuffs would also be helpful in addition to the answer above.