Welcome!

From the Trenches of the Enterprise Software

Yakov Fain

Subscribe to Yakov Fain: eMailAlertsEmail Alerts
Get Yakov Fain via: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn


Top Stories by Yakov Fain

Blood Pressure While Presenting at Conferences In June I was presenting at the Internet of @ThingsExpo at the Javits Center in New York City. During my talk I was demonstrating how to integrate consumer devices into a business workflow. In particular, I was doing live measuring of my own blood pressure to show how to integrate consumer devices into a business workflow. Internet of Things, you know. The results were automatically appearing in my customized Web application. When the results appeared on my mobile device I was quite surprised to see that my pressure was 200/120. This was damn high. My regular blood pressure is typically around 140/90. If you think that presenting in front of a large group of people makes me stressed out, this is not the case. I’m pretty experienced speaker and, actually enjoy presenting. I thought that was a device failure. I’m writin... (more)

What’s the Difference Between Abstract Classes and Interfaces?

Probably the most popular question during Java technical interviews is “What’s the difference between abstract classes and interfaces”.  In my own three year old book I’ve offered the following answer: “An abstract class may contain code in method bodies, which is not allowed in an interface.With abstract classes you have to inherit your class from the abstract one because Java does not allow multiple inheritance. On the other hand, you can implement multiple interfaces in your class.” But starting from Java 8 this answer is wrong. This is how I’d answered it now: “Both abstract... (more)

Why Java Applets should be banned

During my training classes on Web development with Java I used to ask students this question, “Do you think it would be a smart move if Amazon.com would create their online store using Java Applets?” The right answer is “Yes, if their goal is to go out of business.” While back in 1995 Java was introduced to the world with the help of Applets (remember that dancing Duke?) this technology was buried by Microsoft (remember that law suit between Sun and Microsoft back in 1998)? Web applications written with Java Applets would require the user to have the Web browser supporting specif... (more)

Methods, Constructors, Overloading and Access Levels

Methods tell us what a class can do.Developers can define their own methods and Java Developers Kit has a variety of classes and each of them may contain methods. Some methods require arguments - the incoming data that have to be processed. For example, here is the code to convert a String value to a number of the type of integer: String testStr = "5000"; int test = Integer.parseInt(testStr); It is said that the method parseInt() has one argument of type String. The method parseInt() is defined in the Java class Integer. Programmers could also define methods that take arguments, fo... (more)

JavaFX Event Handling and Property Binding

Some time ago I blogged that Java Swing should be deprecated and replaced with JavaFX. In this blog I’ll show a piece of JavaFX namely event handlers and binding. I’ve created a simple Sign In window with a GridPane layout (it’s JavaFX equivalent of Swing’s GridBagLayout). I’m not going to spend much time on the GridPane itself, but will show you a basic event handling and a binding. In JavaFX an event object is represented by the instance of the class javafx.event.Event. There are different ways of handling events. Depending on how you structured your application you can handle... (more)