Welcome / Programming Challenges
Subtitles of the Movie
Now let's talk about some of the programming challenges that we're being faced with now and let's talk about some of the things that Microsoft's doing in C Sharp to try to alleviate some of these challenges. Now, unless you've been living in a cave or under a rock somewhere, then you've probably noticed some things changing out there in the programming world for the past few years. Most of these changes have been brought about thanks to the Internet. Now, when the Internet first started, we thought it was kind of a cool little novelty but it has very rapidly changed the way we develop our applications. One of the things Microsoft looked at when they built this new language, C#, was how does the language need to be built to handle this new programming environment we find ourselves in? Well, let's take a look here. I set up a little animation I'm going to show you. In the old days we wrote applications that used multiple machines. We had multiple tiers and so forth. But in those old days and by old days of course I'm talking about the 1990's, just about ten years ago and even less in a lot of cases. All of these machines were very nice and neatly packed into a secure local area network and if you went back a few years, even if you got your MCSE, if you're into certification, back on NT4 we did a lot of talking about local area networks, MANS, metropolitan area networks and networks within buildings and so forth and we don't even hardly think that way anymore. We're now out to the Internet and we're talking about world-wide networking. But in those days, all of our machines, notice here, were very neatly packed inside this secure area and this secure network. They were all connected by at least ten megabit network connections and that quickly became hundred megabit and so we almost had virtually unlimited network space. If we made a call out to another machine using technologies like DCom, the process ran, it spit us a result right back real quick and everything was cool. But then, of course, the Internet came along and really began to change some things and now that network has shrunk considerably. We can no longer assume that all of our machines are in that same safe little network with that same privileged connection constantly connected, reliably connected with high bandwidth. All of that's gone away. So notice what's happened now. A lot of times some of our machines in that private networked environment and then others are out there and we're connecting to them via the Internet. Now, this has created quite a few challenges. OK? Probably the first big one that comes to mind is security. If we're going to pass calls across the Internet to a machine, get a response and bring it back, we have got some security concerns right here, right? What's happening to our data in transit? Who's looking at it? Who's capturing it? Who could capture it? So we're going to have to encrypt it, protect it. We're also going to have to make sure that these people who are coming across the network and connecting to use are being authenticated. So we've got some security concerns. We also have some other concerns. Once we jump out of our nice, neat, little network here and we jump onto the Internet, we can no longer just assume that we're going to connect straight to this machine. There could be some sort of outage. There could be some sort of event that has happened in the world that has caused certain sites and certain Internet routes to become congested and so what are we going to do now? Just because we've made a call from this machine to this one and we're using Internet technologies to do it, do we want to hold up our application right here until that call comes back? Or do we want to send the call and use asynchronous programming with web services and we want our application here to continue to run and we will let this happen and we'll let it crank over here until it has a result and then we'll have it call us back and we can use separate threads and this is asynchronous programming. You'll hear me elude to that quite a bit as we go through the course here. So as you can see, we've got some new programming challenges and Microsoft's given us a lot of technologies and in C# you're going to see no big surprise for C programmers. If you're coming from a VB world, welcome to a world of absolute object-oriented design and architecture because that's what you need to deal with. We need to stay strict on our object-oriented design. We need to be ever aware about security. We're going to have to do some asynchronous programming. You need to get familiar with web services. So a lot of things are going to have to happen here and we'll touch on a lot of these as we go through the course here. But I just want you to kind of get oriented a little bit and see what you're up against and why C# was such a big deal when it came out because Microsoft really did. They looked at the C language, they looked at Java and all the various C-based languages out there and said how can we, knowing what we know now, knowing the guidelines, the foundation we're coming from now with Internet technologies and disconnected environments, what can we add to our language functionalities to help us solve these problems? As a result we have their web services, classes as part of the .NET Framework that you'll use in C Sharp. We have things on the database side like datasets and data adapters and so forth and so we'll kind of touch on a lot of these things. This is an intro course so we don't delve too deeply but I just want to kind of help you get your head wrapped around kind of some of the things we're trying to deal with in today's development environment. OK? Now let me, I'll just say this and end the video. I used to say to my students in live classes boy, it'd really be hard to get into programming now. There's so much to learn. But actually we've almost reset it to zero because the programming paradigm has almost been reset by the Internet so it's actually a good time to jump in and learn these technologies. OK? So let's get on with the course and let's talk about how to actually take care of these programming challenges.
Tutorial Information
| Course: | Introduction to Microsoft C# 2008 |
| Author: | Mark Long |
| SKU: | 34046 |
| ISBN: | 1-935320-78-5 |
| Release Date: | 2009-10-09 |
| Duration: | 7 hrs / 76 lessons |
| Work Files: |
Yes |
| Captions: | Available on CD and Online University |
| Compatibility: |
Vista/XP/2000, OS X, Linux QuickTime 7, Flash 8 |
VTC Sign up & Benefits
- Unlimited Access
- 98,729 Video Tutorials (23,265 free)
- Video Available as Flash or QuickTime
- Over 1026 Courses
- $30 for One Month Access
- Multi-User Discounts Available
United States 