如何从大型机程序员过渡到客户端服务器程序员?

发布于 2024-08-19 09:03:56 字数 288 浏览 4 评论 0原文

截至 2002 年,我担任了 16 年的 Adabas/Natural 和 Cobol 大型机程序员。我在在线和批处理应用程序的分析、设计、开发、测试、实施和文档方面拥有丰富的经验。在抚养孩子 7 年之后,我想重新回到软件开发领域。

我听说现在 .NET 语言的需求量很大。有人可以给我一些建议,告诉我应该参加哪些课程才能获得扎实的 .NET 语言知识吗?我应该从 ASP.NET 还是 VB.NET 开始,哪个版本?或者,对于必须将编程技能从大型机环境升级到客户端-服务器环境的人,您还有什么其他建议吗?

预先感谢您的所有意见!

I was a Adabas/Natural and Cobol mainframe programmer for 16 years ending in 2002. I have a vast amount of experience in the analysis, design, development, testing, implementation and documentation of online and batch applications. I would like to get back into software development after a 7 year hiatis raising my children.

I have been told that the .NET languages are much in demand these days. Can someone give me advice on which classes I should take to get a solid knowledge of the .NET languages? Should I start with ASP.NET or VB.NET, and which versions? Or, any other advice you may have for someone having to upgrade their programming skills from a mainframe environment to a client-server environment?

Thanks in advance for any and all input!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(7

愛放△進行李 2024-08-26 09:03:56

我无法给出建议,但至少有 3 种主要类型的程序员:

  • “把事情做好的人”,他们会用 Rails、Grails 或 php 编写代码;
  • “框架人”,他们会用 Java 编写代码并创建设计模式围绕一切(有利有弊)。有几种 UI 框架;我更喜欢 wicket。大多数人在这里使用休眠作为持久性技术。
  • 是的,还有那些将在 ASP.NET 中编码的“微软人”。那我会选择C#。需求很高,但我更喜欢操作系统独立性和 Java 工具

其他语言还有其他方向,但作为一个起点......如果您感兴趣,也许可以看看云计算和移动炒作。

I cannot give suggestions, but there are at least 3 main types of programmers out there:

  • the "get it done guys", which will code in Rails, Grails or php
  • the "framework guys", which will code in Java and create design patterns around everything (with pros and cons). There are several UI frameworks out there; I prefer wicket. The most people use hibernate here as persistence technic.
  • and yes, the "Microsoft guys" which will code in ASP.NET. I would choose C# then. The demand is high, but I prefer OS independence and Java tooling

There are other directions with other languages, but for a starting point ... maybe take a look at the cloud computing and mobile hype, if you are interested.

狼亦尘 2024-08-26 09:03:56

也许你可以参加一些微软官方课程的课程;这并不先进,但很好地涵盖了基本概念。

我建议查看 Microsoft Learning 并寻找一些课堂培训。

Maybe your could to take some classes for Microsoft Official Curriculum; that isn't advanced, but cover basic concepts very well.

I suggest to take a look into Microsoft Learning and to look for some classroom training.

染柒℉ 2024-08-26 09:03:56

不确定您对面向对象有多少了解,但我会首先从学习这些基础知识开始。

我会避开 VB.NET,转而选择 C#,这是一项更有价值的技能。

我还会看看您的技能中缺少的任何现代开发实践,例如:

  • 源代码控制,如 subversion 或 git
  • 单元测试和测试驱动开发
  • 敏捷开发实践

Not sure how much exposure you've had to object-orientation, but I would start by learning these fundamentals first.

I would steer clear of VB.NET and aim for C# instead, it's a more valuable skill to acquire.

I would also look at any modern development practices you are missing in your skill set such as:

  • Source control like subversion or git
  • Unit testing and Test-driven development
  • Agile development practices
長街聽風 2024-08-26 09:03:56

使用“客户端/服务器”与任何事物一样约会;)如今一切都与网络有关(即 n 层架构)。当然,这是一种客户端/服务器架构,只是几乎没有人再使用这个术语了。

Using "client/server" dates you as much as anything ;) These days everything is all about the web (that is, n-tier architecture). Of course this is a sort of client/server architecture, it's just hardly anybody ever uses the term any more.

夏了南城 2024-08-26 09:03:56

听起来是一件很棒的事情。祝你好运。

我认为 C# 比 VB.NET 更流行,所以我认为这可能是一个起点。 ASP.NET 也比桌面开发更流行,因此这也可能更好。如果您选择 ASP.NET,请了解最新发布的版本; .Net 3.5、C#3.0、ASP.NET 3.5。下一个版本即将到来,但没有任何培训材料引用它,因此请使用 3.5 版本。

我突然想到,我会建议这样的事情。其他人也会插话;

  1. 给自己准备一些开发软件; Microsoft 提供了一系列免费工具,您可以在 http://www.microsoft.com/ 上进行学习express/Windows,因此只要您拥有一台 Windows PC,您就无需花费任何费用。
  2. 微软还提供了大量文档——我的意思是很多。如果您喜欢视频,这里有视频。如果你喜欢书面的,那就有书面的。即使对我来说,这也是令人难以承受的,而且我已经这样做了很多年;)。首先前往此处: http://www.asp.net/ 还有一个使用 ASP.NET 组合网站的分步视频课程。 msdn.microsoft.com 上也有很多内容。
  3. 不要害怕带着明显的问题回到这里。

Sounds like a great thing to do. Good luck.

I think C# is much more popular than VB.NET, so I think that might be the place to start. ASP.NET is also more popular than desktop development, so that might be better, too. If you go for ASP.NET, learn the latest released versions; .Net 3.5, C#3.0, ASP.NET 3.5. The next version is just around the corner, but none of the training material out there references it, so go with the 3.5 version.

Off the top of my head, I'd suggest something like this. Other people will chime in, too;

  1. Get yourself some development software; Microsoft have a range of free tools you can use to learn at http://www.microsoft.com/express/Windows so as long as you have a Windows PC you don't have to spend anything.
  2. Microsoft also offer a lot of documentation -- and I mean a lot. If you prefer video, there's video. If you prefer written, there's written. It's overwhelming, even for me, and I've been at it years ;). Head here first: http://www.asp.net/ and there's a step-by-step video course to putting together web sites using ASP.NET. There's also lots at msdn.microsoft.com.
  3. Don't be afraid to post back here with obvious questions.
挽心 2024-08-26 09:03:56

另一条路完全是进入 UNIX 领域。获取一台 Mac 或在 PC 上安装 Linux,并开始学习如何使用一些常见的 Web 应用程序框架做一些事情; Django、Tomcat、Rails 和朋友们。这意味着学习 Python、Ruby、Java 或 Scala 中的一种或多种。

无论哪种情况,都需要了解整个 NOSQL 概念。了解 REST 的含义以及如何应用它。

The other path entirely is to head into UNIX land. Get a Mac or put Linux on a PC, and start learning how to do some things with some of the common web application frameworks; Django, Tomcat, Rails, and friends. That means learning one or more of Python, Ruby, Java or Scala.

In either case, learn about the whole NOSQL concept. Learn what REST means and how to apply it.

吻泪 2024-08-26 09:03:56

如今,C# 无疑是一个起点。

  • VB.NET 并不是一种糟糕的语言,但它的语法与所有其他流行语言如此不同,以至于技能不能很好地转移。
  • Java 的功能和与其他语言交互的能力都非常有限。它还要求您在编程时使用许多“反模式”,因为它缺少属性、委托和真正的泛型等基本功能。
  • 像 Ruby、Python 或 PHP 这样的动态语言并不像 Java 那样糟糕,但不会像 C# 那样帮助您学习许多基本编程概念,而且它们对于初学者来说更难使用,因为它们没有智能感知等
  • 功能 。像 ML、F# 和 Haskell 这样的语言确实令人费解。它们是适合全面发展的好语言,但不适合胆小的人。

我会首先在当地的社区大学上 C# 课程,然后拿起一些相关书籍并阅读一段时间。这将使您熟悉该语言和 NET 框架。

一旦您掌握了语言本身并了解如何使用 NET Framework 的某些部分,我就会下载一些简单的 WPF(或 Silverlight)应用程序的源代码并探索它们以了解它们是如何工作的。与 ASP.NET 相比,WPF 是更好的选择,因为 ASP.NET 在处理回发、HTML 和 JavaScript 方面引入了大量额外的复杂性,而 WPF 中根本不存在这些复杂性。此外,未来基于浏览器的应用程序似乎将是富互联网应用程序 (RIA),所有这些应用程序都使用比 ASP.NET 更接近 WPF/Silverlight 的机制。我会在 Silverlight 之前先从 WPF 开始,因为当您取消沙箱时,您可以自行学习用户界面技术,而无需学习沙箱引入的所有复杂性以及访问服务器上数据库的需要。

只有在完成所有这些之后,我才会深入构建 n 层应用程序。同样,在自己做一个之前,我会先看很多例子。选择简单的并模仿它们。您会发现许多设计都过于过度设计。

Nowadays C# is unquestionably the place to start.

  • VB.NET is not that bad of a language, but the syntax is so different from all other popular languages that skill don't transfer very well.
  • Java is incredibly limited, both in its capabilities and in its ability to talk to other languages. It also requires you to use many "anti-patterns" when programming because it is missing fundamental features such as properties, delegates and true generics.
  • Dynamic languages like Ruby, Python, or PHP are not as bad as Java, but will not help you learn many fundamental programming concepts as with C#, plus they are harder for a beginner to use because they don't have Intellisense, etc.
  • Functional languages like ML, F# and Haskell are real mind-benders. They are good languages to learn to be well-rounded but are not for the faint of heart.

I would start by taking a C# class at your local community college, then picking up some books on it and reading for a while. This will give you familiarity with both the language and the NET Framework.

Once you have mastered the language itself and understand how to use some portions of the NET Framework, I would download the source code for some simple WPF (or Silverlight) applications and explore them to see how they work. WPF would be a better choice to start with than ASP.NET because ASP.NET introduces a ton of extra complexity in dealing with postbacks, HTML and JavaScript that don't exist at all in WPF. Also, it appears that the browser-base applications of the future will be Rich Internet Applications (RIAs), all of which use a mechanism much closer to WPF/Silverlight than ASP.NET. I would start with WPF before Silverlight simply because when you're unsandboxed you can learn the user interface technology by itself without having to learn all the complexities introduced by the sandbox and the need to access databases on the server.

Only after doing all of this would I dive into architecting an n-tiered application. Again I would look at many examples before doing one yourself. Pick simple ones and emulate those. Many you will find are far over-engineered.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文