Skip to main content
Scaled Code

Tagged “java”

ArchUnit: Testing the Design of Your Library
An overview of the ArchUnit library that allows the testing of the design of your Java code.
Comparing Different Ways to Build Proxies In Java
Comparing performance of various actions using inheritance, ByteBudy, and cglib in Java to create a proxy object.
Java Virtual Threads, Millions of Threads Within Grasp
A dive into the Java 19 preview feature of virtual threads. What are they good for, what are they not good for, and more.
Performance Differences of Java Streams
A benchmark comparison between different collection grouping in Java across different Java versions.
Applying the Composite Design Pattern
Using ElasticSearch and Jackson we explore the composite design pattern and how it can be useful in our development.
Pitfall When Using Java Okta SDK JWT Verifier
Quick explanation of a issue with the use of the Okta JWT verification code in Java and how to avoid it.
Microservices Patterns by Chris Richardson Book Review
Review of Chris Richardson's "Microservice Patterns" book. Who it is for and what you can learn from it.
Effective Java! Consider Serialization Proxies Instead of Serialized Instances
A dive into chapter 90 of Effective Java
Effective Java! For Instance Control, Prefer Enum types to readResolve
A dive into chapter 89 of Effective Java
Effective Java! Write readObject Methods Defensively
A dive into chapter 88 of Effective Java
Cracking a Password Via a Side Channel
Explanation of how to build a website to help solve Wordle puzzles by analyzing how the game works.
Effective Java! Consider Using a Custom Serialized Form
A dive into chapter 87 of Effective Java
Effective Java! Implement Serializable With Great Caution
A dive into chapter 86 of Effective Java
Effective Java! Prefer Alternatives To Java Serialization
A dive into chapter 85 of Effective Java
Effective Java! Don't Depend on the Thread Scheduler
A dive into chapter 84 of Effective Java
Effective Java! Use Lazy Initialization Judiciously
A dive into chapter 83 of Effective Java
Effective Java! Document Thread Safety
A dive into chapter 82 of Effective Java
Effective Java! Prefer Concurrency Utilities Over wait and notify
A dive into chapter 81 of Effective Java
Effective Java! Prefer Executors, Tasks, and Streams to Threads
A dive into chapter 80 of Effective Java
Effective Java! Avoid Excessive Synchronization
A dive into chapter 79 of Effective Java
Effective Java! Synchronize Access to Shared Mutable Data
A dive into chapter 78 of Effective Java
Effective Java! Don't Ignore Exceptions
A dive into chapter 77 of Effective Java
Effective Java! Strive for Failure Atomicity
A dive into chapter 76 of Effective Java
Effective Java! Include Failure-Capture Information in Detail Messages
A dive into chapter 75 of Effective Java
Effective Java! Document All Exceptions Thrown By Each Method
A dive into chapter 74 of Effective Java
Effective Java! Throw Exceptions Appropriate To The Abstraction
A dive into chapter 73 of Effective Java
Effective Java! Favor The Use of Standard Exceptions
A dive into chapter 72 of Effective Java
Effective Java! Avoid Unnecessary Use of Checked Exceptions
A dive into chapter 71 of Effective Java
Effective Java! Use Checked Exceptions for Recoverable Conditions
A dive into chapter 70 of Effective Java
Effective Java! Use Exceptions for Only Exceptional Circumstances
A dive into chapter 69 of Effective Java
Effective Java! Adhere to Generally Accepted Naming Conventions
A dive into chapter 68 of Effective Java
Effective Java! Optimize Judiciously
A dive into chapter 67 of Effective Java
Effective Java! Use Native Methods Judiciously
A dive into chapter 66 of Effective Java
Effective Java! Prefer Interfaces To Reflection
A dive into chapter 65 of Effective Java
Effective Java! Refer to Objects By Their Interfaces
A dive into chapter 64 of Effective Java
Effective Java! Beware the Performance of String Concatenation
A dive into chapter 63 of Effective Java
Effective Java! Avoid Strings When Other Types Are More Appropriate
A dive into chapter 62 of Effective Java
Effective Java! Prefer Primitive Types to Boxed Types
A dive into chapter 61 of Effective Java
Effective Java! Avoid Float and Double If Exact Answers Are Required
A dive into chapter 60 of Effective Java
Effective Java! Know and Use the Libraries
A dive into chapter 59 of Effective Java
Effective Java! Prefer for-each loops to traditional for loops
A dive into chapter 58 of Effective Java
Effective Java! Minimize The Scope of Local Variables
A dive into chapter 57 of Effective Java
Effective Java! Write Doc Comments For All Exposed APIs
A dive into chapter 56 of Effective Java
Effective Java! Return Optionals Judiciously
A dive into chapter 55 of Effective Java
Effective Java! Return Empty Collections or Arrays, Not Nulls
A dive into chapter 54 of Effective Java
Effective Java! Use Varargs Judiciously
A dive into chapter 53 of Effective Java
Effective Java! Use Overloading Judiciously
A dive into chapter 52 of Effective Java
Effective Java! Design Method Signatures Carefully
A dive into chapter 51 of Effective Java
Effective Java! Make Defensive Copies When Necessary
A dive into chapter 50 of Effective Java
Effective Java! Use Caution When Making Streams Parallel
A dive into chapter 48 of Effective Java
Effective Java! Prefer Collection To Stream as a Return Type
A dive into chapter 47 of Effective Java
Effective Java! Prefer Side-Effect-Free Functions in Streams
A dive into chapter 46 of Effective Java
Effective Java! Use Stream Judiciously
A dive into chapter 45 of Effective Java
Effective Java! Favor the Use of Standard Functional Interfaces
A dive into chapter 44 of Effective Java
Effective Java! Prefer Method References to Lambdas
A dive into chapter 43 of Effective Java
Effective Java! Prefer Lambdas to Anonymous Classes
A dive into chapter 42 of Effective Java
Effective Java! Use Marker Interfaces to Define Types
A dive into chapter 41 of Effective Java
Effective Java! Check Parameters for Validity
A dive into chapter 49 of Effective Java
Effective Java! Consistently Use the Override Annotation
A dive into chapter 40 of Effective Java
Effective Java! Prefer Annotations to Naming Patterns
A dive into chapter 39 of Effective Java
Effective Java! Emulate Extensible Enums With Interfaces
A dive into chapter 38 of Effective Java
Effective Java! Use EnumMap instead of Ordinal Indexing
A dive into chapter 37 of Effective Java
Effective Java! Use EnumSet Instead of Bit Fields
A dive into chapter 36 of Effective Java
Effective Java! Use Instance Fields Instead of Ordinals
A dive into chapter 35 of Effective Java
Effective Java! Use Enums Instead of int Constants
A dive into chapter 34 of Effective Java
Effective Java! Consider Typesafe Heterogenous Containers
A dive into chapter 33 of Effective Java
Effective Java! Combine Generics and Varargs Judiciously
A dive into chapter 32 of Effective Java
Effective Java! Use Bounded Wildcards to Increase API Flexibility
A dive into chapter 31 of Effective Java
Effective Java! Favor Generic Methods
A dive into chapter 30 of Effective Java
Effective Java! Favor Generic Types
A dive into chapter 29 of Effective Java
Effective Java! Prefer Lists to Array
A dive into chapter 28 of Effective Java
Effective Java! Eliminate Unchecked Warnings
A dive into chapter 27 of Effective Java
Effective Java! Don't Use Raw Types
A dive into chapter 26 of Effective Java
Effective Java! Limit Source Files to a Single Top-Level Class
A dive into chapter 25 of Effective Java
Effective Java! Favor Static Members Classes over Non-Static
A dive into chapter 24 of Effective Java
Effective Java! Prefer Class Hierarchies to Tagged Classes
A dive into chapter 23 of Effective Java
Effective Java! Use Interfaces Only to Define Types
A dive into chapter 22 of Effective Java
Effective Java! Design Interfaces for Posterity
A dive into chapter 21 of Effective Java
Effective Java! Prefer Interfaces to Abstract Classes
A dive into chapter nineteen of Effective Java
Effective Java! Design and Document Classes for Inheritance or Else Prohibit It.
A dive into chapter nineteen of Effective Java
Effective Java! Favor Composition Over Inheritance
A dive into chapter seventeen of Effective Java
Effective Java! Minimize Mutability
A dive into chapter seventeen of Effective Java
Effective Java! In Public Classes, Use Accessors, Not Public Fields
A dive into chapter sixteen of Effective Java
Effective Java! Minimize the Accessibility of Classes and Member
A dive into chapter fifteen of Effective Java
Effective Java! Consider Implementing Comparable
A dive into chapter fourteen of Effective Java
Effective Java! Override clone judiciously
A dive into chapter twelve of Effective Java
Effective Java! Override toString
A dive into chapter eleven of Effective Java
Effective Java! Obey the hashcode contract
A dive into chapter ten of Effective Java
Effective Java! Obey the equals contract
A dive into chapter seven of Effective Java
Effective Java! Prefer try-with-resources
A dive into chapter seven of Effective Java
Effective Java! Avoid Finalizers and Cleaners!
A dive into chapter seven of Effective Java
Effective Java! Don't Leak Object References!
A dive into chapter seven of Effective Java
Effective Java! Avoid Creating Unnecessary Objects!
A dive into chapter six of Effective Java
Effective Java! Prefer Dependency Injection!
A dive into chapter five of Effective Java
Effective Java! Utility Classes!
A dive into chapter four of Effective Java
Effective Java! Singletons!
A dive into chapter three of Effective Java
Effective Java! The Builder Pattern!
A dive into chapter two of Effective Java
Effective Java! Let's Consider Static Factory Methods
A dive into chapter one of Effective Java
Working Around Classpath Issues
Working in a legacy codebase can lead difficulty with conflicts on the classpath. This article details a solution taken to get around this issue.

See all tags.