Explore the similarities and differences among Java, C#, and VB .NET as you create three and implement basic applications in each of the languages.
More articles by Matt Weisfeld
Create a simple web-based interface to gather, store, organize, and search all of your important information.
Explore an idea that reinforces sound development practices and is intended to improve the integrity of your code.
One of the advantages of using object-oriented languages is that much of the error/exception handling is built directly into the language itself. Thus, many of these issues can be handled during the design of the applicationand not when the application crashes in the hands of a user.
When things go wrong in an application, what should the code do?
Duplicating objects can be a complicated process, and not fully understanding the process can lead to problems.
Copying primitives such as numbers is mostly straightforward, copying objects is a more complicated task. Completely duplicating an object is a multi-step process. Work through the examples here to learn how this is done.
Explore the issues pertaining to duplicating, or cloning, objects.
Explore how you can process the bytecodes produced by the compiler to help you improve performance, security, intellectual property protection, and readability issues.
Understanding what goes on under the hood of an application is a beneficial process. Explore how a class file is designed and how you can disassemble it.
Explore performance and security issues pertaining to serialization of dynamically loaded classes.
Explore the performance gains as well as the security issues pertaining to dynamically loaded classes.
Explore a very basic aspect of security that Java developers should be concerned about at the design level.
Create stronger Object-Oriented Designs with Interfaces & Abstract Classes.
Explore the topic of how objects relate to collections by taking an aside to cover Interfaces. Interfaces are an extremely important concept within Object-Oriented Programming; however, they are also very tricky to understand.
Discover the pros and cons of using ArrayLists in your Java applications.
If you want more detailed information on object-orientated development this is a great please to start.
Add a new array to your coding toolbox, one that can dynamically grow based on the needs of the application.
Examine how objects relate to collections within object-oriented programming. You will start by covering arrays and will consider the advantages and disadvantages of the original concept of an array. You will then cover how collections such as ArrayLists provide additional functionality.
Explore the various relationships among Java primitives, objects, and object wrappers. These are important concepts because the use of object wrappers is a very powerful technique and used in many applications.
Moving an object from one place to another is often a tricky proposition. In languages such as Java and the .Net languages, while the ability to load objects dynamically is a major strength, we have to deal with the problem of keeping the class versions in sync.
Learn how to use Java to create a simple Client/Server system and transfer an object across a network.
Expand your basic knowledge of connecting to a database from a Java application using JDBC. Discover how to use just about any database application you may want. In this example its a Microsoft Access database.
Create an application that demonstrates how to use JDBC to connect to a Microsoft Access database.
Explore the concept of object wrappers, simply another example of the paramount object-oriented concept pertaining to separating the interface from the implementation.
Avoid putting code in a frontline application that is specific to any specific implementation. The answer is to utilize the concept of wrappers.
At first, the encapsulation/inheritance dilemma may seem confusing. In fact, you may start to wonder if the whole paradigm is simply too intricate for its own good. Yet, once you finally do understand the issues behind these examples, they really do become interesting intellectual exercises and useful development techniques.
Is it possible that encapsulation and inheritance may not be totally compatible? Encapsulation and inheritance, along with polymorphism, are the guidelines by which an object-oriented language is measured. Discover if inheritance can actually break the encapsulation rule that is the cornerstone of object-oriented development.
Uncover many of the implementation issues of designing constructors by actually examining the bytecodes generated by the Java compiler.
Learn the art and science of constructing objects by exploring how constructors work and why you need them. These concepts are part of the foundation that any programmer will need to make the paradigm shift from procedural programming to object-oriented programming.
Repeat after me... 'An object must be responsible for itself.' Think of it as your new mantra. The concept of object responsibility and autonomy are key issues when designing a useful and secure object. The fact that objects are moved over networks makes object responsibility and autonomy even more important.
What really makes a programming language an object-oriented language? Explore the history and evolution of object-oriented languages so that you will have a better understanding of what makes an object-oriented language tick.
Ever wonder what is really inside a class? Learn how to take a class apart and then identify and analyze the various pieces.
A goal of every object-oriented design is to put the object into what is called a safe-state. By this we mean that the object is in a state that will not cause the system to be unstable. Learn about several of the mechanisms that are provided to assist in the construction of safe objects.
Controlling access to all attributes is one of the most important concepts of object-oriented design. By using methods to control access to attributes you can provide a much higher level of security for your class as well as providing many programming advantages.
Explore encapsulation by delving deeper into the topic of data hiding. Discover how this important concepts of object-oriented design provides a much higher level of security for your classes as well as provides many programming advantages.
Explore the basic concepts of encapsulation and how it fits in to the object-oriented programming model.
Doing things in an Object-Oriented way is more of an art than a science.
Object-oriented development is a design technique rather than a coding convention. In developing an OO model, you must focus much more on the design than the code. To create a solid design, you must first understand the concepts involved in designing the object model.
Look into the details of
Get a clear picture of Object-Oriented Development by comparing it to something you already know - procedural developement.
This is the first installment in a series of articles that will introduce and describe fundamental object-oriented concepts. These concepts are part of the foundation that any programmer will need to make the paradigm shift from procedural programming to object-oriented programming.