In today's lesson, we're going to go over some of the basics of the Java language. Java is a very robust language that can run in almost any environment and almost any platform. There are, however, three major software platforms that make up the Java programming language. These platforms include J2SC, J2EE, and J2ME. Now let's take a minute and look at the first technology on our list, which is J2SC. J2SE stands for Java2 Standard Edition. And it is considered to be the core Java development language because the other technologies that we will talk about in a few minutes actually expand on the J2SE technology. J2SE is normally run from a desktop computer because it requires a pretty modest amount of resources to run properly. The J2SE platform includes many features such as swing, which is a great technology for creating what's known as a GUI or a graphical user interface. Swing is actually an amazing technology because it allows the programmers to create these user-friendly GUIs. And when combined with an IDE, we're actually going to talk about what an IDE is in a later lesson. It becomes a quite trivial task to create professional looking applications. J2SE also includes some, what's known as IO packages. IO by the way stands for input output. And this technology is used for reading and writing of files as well as networking operations that are a little bit more advanced like streaming data, socket communications, client server. These are some pretty advanced technologies and should be left for a more advanced course. J2SE in and of itself can do pretty much anything that you want to accomplish on a desktop computer. By desktop computer, I mean the type of computer that you're probably using right now to view this webinar. Unlike a server or a smaller device like a cell phone, J2SE technology actually incorporates what is known as an applet as well. You may have seen an applet before while browsing the internet. An applet's actually pretty similar to a Java application, but it normally runs from within the context of a web browser. In fact, converting a desktop application to an applet and vice versa is a pretty trivial process. And it entails in many instances just switching a few lines of code. When looking at web pages, you may have noticed some buzzwords are sometimes used such as JavaScript and Ajax, which actually stands for asynchronous JavaScript and XML. Even though these web-based technologies have the name Java in them, they're technically not part of the Java language. They are instead scripting languages, so it's pretty important to distinguish between these to avoid confusion. For this course, we're going to focus pretty much on J2SE technology because building a firm knowledge base of core Java technology is essential before attempting to utilize the other two platforms that we mentioned in the last slide. Now let's take a look at the second Java technology that is on our list. This technology is known as J2EE. Now J2EE stands for Java 2 Enterprise Edition. And this technology is probably the most commonly used Java platform for server programming. J2EE can be viewed as an extension of the core Java J2SE technology. That is a great solution for larger organizations, actually. This platform is essentially an extension to the core Java technology that we just talked about. And it normally utilizes what's known as a multi-tier approach. This allows software architects, these are the individuals that design the software, to break up functionality into what's called tiers, several tiers. J2EE technology includes some incredible packages, such as JSP, Servlets, EJB, and much more. JSP stands for Java Server Pages, and is actually quite similar to ASP, so if you've ever written some Microsoft ASP technology, then you're probably pretty familiar with how JSP works. And if you've ever visited a website, and you noticed a .JSP in the URL field, then you have actually probably experienced J2EE technology firsthand. It's a great way for web pages to process information, such as credit cards, transactions, grab information from databases, etc. JSP is actually exposed to the end user via a web browser. Unlike J2SE technology, J2EE normally uses a multi-tier approach, which essentially means that the processes are broken up into several layers, such as a client tier, a web tier, any JB tier, and the interactions are tied together using some third-party service. Normally, an application server of some sort is used to manage this J2EE technology. This is a fairly complicated technology, and is important to understand the core Java language first, so for the purpose of this course, we'll be not focusing too much on J2EE technology. Now, the third technology on our list is J2ME. This platform is used primarily for small devices with very limited resources, such as a cell phone. This technology actually incorporates only the most basic of the Java features. Because it's aimed at running on devices that have a very small processor and a very limited amount of memory, now you may ask yourself, why would there be devices out there that have such small processors? Well, cost is a huge factor in many instances, as well as size of the device. A cell phone, for example, is fairly small. Also, energy consumption is a large factor of why you would use a smaller processor. Now, you may have noticed when running an application or a game on your cell phone that the classic Java coffee cup would appear, and maybe it even mentions something like Java running on your phone, some kind of text like that. Well, this is probably going to be J2ME technology in action. Of course, not all the games and apps that are running on your phone are developed using Java technology, but you may have run across it nonetheless. Now, it's important to note that J2ME is not only used in cell phones. It's also a great solution for many devices with limited resources. Now, we've discussed in this lesson a few of the more popular Java platforms that are available. However, the Java community is constantly improving and providing us with brand new technologies. So, I suggest checking out Sun's website to see what's new today.