Java Fundamentals (Part 4)

[v.1.0] (10/2/2023): Post started (On-going)! Linked Lists In the previous post, we learnt that List can be implemented in ArrayLists or LinkedLists and they both behave in the same way. So why choose one over the other? Although the functional behaviours of ArrayLists and LinkedLists are the same, their performance behaviours are different. If we need to access or update a value, ArrayLists is a to-go choice, but if we anticipate to insert or delete value in the middle of the array, we should choose LinkedLists....

October 2, 2023 · 4 min · Minh T. Nguyen

Java Fundamentals (Part 3)

[v.1.0] (09/25/2023): Post published! Test-Driven Development Types Of Tests In software development, there are different ways to test softwares: Beta testing: Provides a finished or near-finished application to a group of users and sees what problems they come up with. Performance testing: Uses profiling tools to measure if we are getting acceptable response time. Is this application running as fast as it should be or it need to be? Stress testing: A type of performance testing....

September 25, 2023 · 5 min · Minh T. Nguyen

Java Fundamentals (Part 2)

[v.1.0] (09/11/2023): Post published! Static & Final Modifiers Static Members Static members Are shared among all objects of the class (and available without any objects) Static Methods: Are stateless utility operations, intended to be used without any instances. For example, Math.abs(), Character.isDigit(), Double.parseDouble(). Static Fields: As a best practice, these are always decleared in conjection with final for storing constant. For example, Math.PI, Integer.MAX_VALUE, Integer.MIN_VALUE.However, some final values are not actually constant....

September 11, 2023 · 4 min · Minh T. Nguyen

Java Fundamentals (Part 1)

[v.1.0] (08/11/2023): Post published! Object-Oriented Concepts Terminologies Method: Stores the program statements what perform the task. Class: A proggram unit to store the set of methods that perform the class’s tasks. Object: An instance of the class. Reuse: Of existing classes when building new classes and programs saves time and effort. Also, it helps you build more reliable and effective systems, as the existing classes and components often have undergone extensive testing, debugging, and performance tuning....

August 23, 2023 · 6 min · Minh T. Nguyen