Software Information |
|
History of Java
The java programming language is becoming more and more popular each day. It is the language without which one cannot even hope to a land a job these days. But has somebody even wondered how this language came about? There are many stories about, many books have been written. Here is my version (not approved by Sun Microsystems). The java programming language originated in Indonesia. It was meant to be used by the tourists that visit that country each year. Why would tourists want to use computer? Well, these are no ordinary tourists. They are rich tourists. Have they not been rich, they would not travel half way around the world to visit this place. Most people would be content to see just what is available near by. For example, if you are a texan living in Dallas, you will visit the stockyards or may be the trinity river park. If you live in New Orleans area, you would see st. mary's bayou. Once in your lifetime, one will probably visit Hawaii or Niagara. But going to Indonesia and its islands, Bali, Java, etc is not for the ordinary people. Anyway, coming back to the question why these tourists need to use computer programs. They go there not just to have fun and also get some work done in a fun atmosphere as these people are very important people. From the very start java was supposed to be computer independent. That means if you write a program in java in one computer, it should run in all computers. This was necessary because tourists bring all kinds of computers with them. Some bring Windows machine, some Apple mackintosh. Some of the affluent ones bring Sun server workstations or even a super computer. Before starting to create java they also sought to see if there have similar stuff done already. Even though they could find none, they found they can use lots of feature from some existing laguages. One such language they found was C++. C++ was an advancement over the language called C. In fact, ideas of C++ was already hidden in C. In that language, one can increment a variable, say i, by applying the ++ operator e.g. i++. This would increase the value of the variable i by one. If i had a value of 5, it would make it 6, etc. What a vision! Anyway, coming back to C++, it made an important advancement over C by introducing the idea of a class. To understand class, one has to undestand structure which was already used in C. The structure is a group of variables. For example, you have a name, an address, age etc. for any person. In stead of using them separately, in C one can group them together and call it a person. The creator of C++ said there is no need to expose these variables (name, address, etc) to the outside world. They said these details should be hidden from the outside world. They called this concept encapsulation. Another important contribution of C++ was the concept of inheritence. This concept can be best explained by example. Let's go back to the example of the person. A person is very general concept. There can be many different kinds of persons, e.g doctors, lawyers, teachers, or just a bum! But each of these people have a name, an address, age etc. Even a bum has all these. The creator of C++ thought one can define a base class call person and other classes can be derived from it. In plain english, this would mean, a doctor is special kind of person, lawyer is another special kind of person. Now the common attributes of all these kinds of people can be put in the person class and special attributes can be put in the derived classes, e.g. hospital for the doctor, court for the lawyer, and nothing for the bum. But C++ was still complex with things like pointers, memory leak and multiple inheritence. The pointer concept was taken from C and it was very messy! The pointer is special type of variable that points to other variables. Since there was no guidelines as to how to use these pointers, it was very easy loose track of them. In a typical two thousand lines program, one would frequently end up with hundredes of pointers pointing to thousands, some of them are pointers and some just plain variables. Needless to say this made a large program extremely difficult to read and when the programmer left for another company, they would have no other choice than to just throw away his program! It was sometimes necessary to do this even when the programmer was around and very much alive. This is because the pointers he created inside his program had taken a life of their own and defy every attempt to predict how the program should behave. Memory management was also another weak point of C and C++. The programmer was responsible for cleaning up the memory their program would allocate and use. Failure to do so will result in a crash of the whole computer. Multiple inheritence, though sparingly used, was another feature of C++ which made a programmer's life miserable. It, however, had its use, especially in job interviews. This one question, they thought, helped them separate the wheat from the chaff. But C++ still had some nice and simple features, like inheritence, encapsulation, etc. They are something one can describe in plain english, something one can explain to a layman. So the creator of java decided to take the good features of inherience, encapsulation, and polymorphism from C++, while discarding the bad features such as multiple inherience, pointers etc. The memory management was improved in java where the programmer will not be held responsible for memory management. They can clean up after themselves if they want to get extra credit, but they do not need to. Needless to say all these was great news to the tourists in Indonesia! Java introduced lot of clarity in notations too. For example, in C++ they would say class doctor:person to mean doctor is derived from person. It is obviously very cryptic. The same situation can be expressed in java as class doctor extends person , which is much easier to understand. But there are few awkward stuff in java too especially when someone says class bum extends person (my last bum joke)! Java made an important contribution in the graphical user interface (GUI) area. C++ was really lacking in expertise here. They visual C++, but worked only on windows environment. But it did not work in UNIX systems or mackintoshes. Just like other features of java, this was also supposed to be platform independent. This was further necessary because one can put some little GUI on a web page which can be views over the internet. And one cannot control what kind of computers other will have. After a while, it was necessary to call programs from one computer to another computer. To do this, they created J2EE. I am not sure how they came up with the name J2EE. The 'J' of J2EE, of course, means "Java", and I can be reasonably sure '2' stands for 'To'. But I do not know what the 'EE' part is all about, probably some kind of extension. Or at this point they ran out of names to think of. So they decided to have one of those just another vague acronyms. If you would like, you can also visit my home page. Copyright � 2003 Gautam Dev. All rights reserved
|
RELATED ARTICLES
Microsoft Great Plains: Customization Upgrade & Recovery ? Visual Studio VB 6.0 Microsoft Great Plains, former Great Plains Software Dynamics, eEnterprise has very long, about 12 years customization & integration history. In earlier 1990th ? the customization tool was mostly Great Plains Dexterity, later on when Great Plains was successfully moved to MS SQL Server 6.5, 7.0 and 2000 ? we see more historical custom projects done in SQL stored procedures and front ends coded in VB in Visual Studio 6.0. This was probably wise and natural choice in that time (around 1997-2001), but if you consider Microsoft move to .Net platform and reshaping its own programming environments (ADO, OLE, VB, etc) ? you would nowadays rather be nervous relying on VB 6.0 custom front end, calling stored procs via ADO. Let's consider your options: Microsoft Great Plains customization ? Freight Forwarding/Transportation industry example Microsoft Business Solutions Great Plains version 8.5, 8.0, 7.5, Great Plains eEnterprise/Dynamics 7.0, 6.0, Dynamics C/S+ 5.5 and 5.0 serve USA, UK, South Africa, Australia, Middle East horizontal market. As being relatively inexpensive solution, it is reasonably open to be customizable to fit specific industry niche. In this small article we'll give you highlight on how Great Plains could serve specific vertical demands of transportation and freight forwarding industry Industry requirements: Microsoft CRM ? Typical Customizations Microsoft CRM was designed to be easily customizable. Microsoft CRM Software Development Kit (MS CRM SDK) which you can download from Microsoft website contains descriptions of the objects or classes, exposed for customization. It has sample code in C# and partially in VB.Net. In Visual Studio.Net you can analyze all the classes, used by Microsoft developers to create MS CRM - you will discover that most of them are not documented in MS CRM SDK. Microsoft will not support your customization if you use undocumented class or do direct SQL access to CRM database. Manufacturing Solutions for Microsoft Great Plains ? Overview for Consultant Microsoft Business Solutions Great Plains has full-featured manufacturing set of modules. In this small article we would like to give you highlights on what kinds of light customization you could deploy, before jumping into Microsoft Great Plains Manufacturing realm. Great Plains Manufacturing is targeted to discrete manufacturing clientele, which is opposite to process manufacturing ? food processing, mining, including precious metals/gold/platina, oil and gas / chemicals / agriculture. Manufacturing from accounting stand point is moving inventory into work in progress and then into finished goods. And this is where we have fundamental difference between discrete and process manufacturing. Adware and Spyware What is 'adware'? XML Parser and Their Types XML parser is a software module to read documents and a means to provide access to their content. XML parser generates a structured tree to return the results to the browser. An XML parser is similar to a processor that determines the structure and properties of the data. An XML parser can read a XML document to create an output to generate a display form. There are a number of parsers available and a few of them are listed below: Great Plains Dexterity History and Programming Overview As of now - Great Plains Dynamics/eEnterprise is transformed/renamed into Microsoft Great Plains and Microsoft Business Solutions is in process of merging all its accounting applications: Great Plains, Solomon, Navision and Axapta into somewhat granular: Microsoft Financials, Microsoft HR, Microsoft Distributions, Microsoft Project Accounting, etc. So the original design of Great Plains should be deemphasized. But even now - Great Plains is written on the programming language and technology, created in early 1990-th, named Great Plains Dexterity. And the graphical interface looks very user friendly and nice - these are all Dexterity forms and screens. Quick Summary of Basic and Common Linux Commands There are many commands that are used in linux on a daily basis, ones that everyone should know just to get by. Like back in the days of DOS, you had to know how to work with the command line and how to navigate around. Learning new commands is always hard, especially when there are so many new ones that don't always seem to make sense in their names. IT Strategy for Midsize Business: Microsoft vs. Java, Great Plains & CRM Midsize business or non-profit organization should decide if one-vendor solution would be appropriate and the associated risk acceptable. In our opinion, balancing the risk of one-vendor-approach is not economically feasible and should be avoided. This means that you need to decide if you plan to be Microsoft-oriented or Java/Unix/Linux/Oracle oriented. In the case of Java direction ? you again have to further consider your options and if possible do not deploy too many systems from different vendors. Even if you host your systems with somebody else ? we think that in the future you might have a risk of complex data conversion from one system to another. In this small article we'll show you typical way if you follow Microsoft direction: Microsoft Business Solutions Great Plains and Microsoft CRM Computer Phones ? Facts and Fallacies The stakes are high when considering security, privacy, and savings, and the old adage, "look before you leap" might be a more judicial approach when searching for a computer phone provider, aka VoIP (voice over internet protocol). Microsoft Great Plains Chemicals & Paint Industry Implementation & Customization Notes Microsoft Great Plains fits to majority of industries, in the case of Chemicals & Paint you should consider implementation with balanced approach of utilizing existing Great Plains standard module and light customization and reporting with Great Plains Dexterity, MS SQL Server stored procedures, Modifier/VBA and direct .Net publishing from Great Plains Company database. Let's consider industry requirements and their implementation in Microsoft Great Plains: Microsoft Great Plains Implementation in Russia ? Overview for Consultant Microsoft Business Solutions Great Plains is very popular ERP platform in the USA, Canada (including French speaking Quebec/Montreal), U.K., Australia, New Zealand, South Africa, Middle East: OAE, Egypt, Arabia, Latin America. Former versions ? Great Plains Dynamics/eEnterprise was also popular in Europe: France, Poland, Russia. When Microsoft acquired Navision Software ? and handed it out to its subdivision: Microsoft Business Solutions ? we saw some geo-strategy changes. Navision, the leader on the European mid-market and successfully overcoming such localization barriers as language translation, adaptation to country-specific taxes and payroll taxes ? was chosen as preferred or the only recommended solution for emerging markets. In Russia we saw dramatic situation, when multiple Great Plains Dynamics/eEnterprise resellers went out of business. At the same time, Russia is huge and lucrative market for ERP/MRP applications and we envision large number of multi-national companies, having GP as their Headquarters chosen solution and who needs Great Plains to be implemented for Russian subsidiary. Here are the implementation highlights for you: Microsoft Navision and Crystal Reports - An Overview Microsoft Business Solutions ? Navision is an integrated solution for small and midsize companies looking to expand their business operations without much interruption to its existing processes. Microsoft Navision enables businesses to alter as much or as little of its existing system, integrate add-ons and vertical segments of its development. It integrates every aspect of your organization, from customers to suppliers, from accounting to supply chain, increasing your productivity and competitive edge. Microsoft Navision has an open environment architecture making it fully customizable and easy to use and maintain. It can also be implemented rapidly so that there is only a minimal disruption to business operations. Microsoft Great Plains: carpet, textile, fabric, felt distributor ? implementation overview In this small article we will show you the possible way of deploying Microsoft Business Solutions Great Plains for the market niche of large, mid-size and small reselling and distribution business in carpeting and floor covering, textile & fabric. We will not be talking about fabric production, but rather cutting for the end-user or small retailer. Microsoft Great Plains itself in our case should be considered as a platform for light customization and modification. We'll describe industry requirements and the way them to be implemented in Great Plains Fleet Maintenance Software Reviews Innovative Maintenance Systems (IMS) is one company that offers solutions for companies in need of fleet maintenance software. One of their most popular products is Fleet Maintenance Pro�. According to the website and fleet maintenance software reviews, this product offers automatic calculations of maintenance, assists in tracking PM and repair maintenance, helps you analyze fleet costs over time and much more. This product is recommended for maintaining vehicles that are tracked by date, mileage, hours and etc. Prices range from $189.00 - $750.00 for single users, but networking capabilities are also available. What to Do if All Screensavers Fun is Grayed Out? Finally, you have some time to personalize your desktop with an interesting screensaver. But wait... What's that? Why in the world the system prevents you from doing that? The screensaver controls are grayed out or, even worse, the whole Screensaver tab is missing from Display Properties. Don't panic! This article will help you change things for the better. Unwanted Files A LOT OF UNWANTED FILES. Microsoft Update - 5 Reasons to Update Service Pack 2 Microsoft released Service Pack 2 (SP2) for the Windows XP operating system back in August (2004), representing significant improvements in many areas, especially system security. For those people that are still unsure whether they should update to it, the following five reasons may help make the decision easier. The Bluebird Project The objective for Zandi Digital is to make available clever programs to end-users that want and need something more diverse. Bluebird is the current application being developed by Zandi Digital. Bluebird will have the ability to compress multimedia(image, audio, or video) and text into one single file and later opened for reading or editing with Bluebird on Microsoft Windows� operating systems. A illustration is at http://www.videonotepad.net SpyBot - Search and Destroy versus Microsoft AntiSpyware (Beta).... My personal experiences... Ok... Where to start? |
home | site map |
© 2005 |