Generally, Scripting Additions extend AppleScript's dictionary and are automatically loaded whenever a relevant command is executed.
The only way to absolutely prevent this is to remove the scripting addition file(s) from /Library/ScriptingAdditions or ~/Library/ScriptingAdditions but that's clearly not an option if you're planning to distribute your script to other users - you cannot arbitrarily remove Scripting Additions from their machines since you don't know when/if they're needed.
Furthermore, there's no direct way to prevent a Scripting Addition from being used, other than very carefully targeting your commands. For example the call chain that AppleScript uses when looking for a command should be <current tell target>, <default target>, <scripting addition> so if you have a Scripting Addition-based command that conflicts with another, you may be able to circumvent that by telling another application to execute the command, e.g. 'tell application "System Events" to blahblahblah'.
Finally, if the code is yours, then you might need to consider changing some of your handler names/classes so they don't conflict. A poor solution in many ways, but one that's inherent in AppleScript's loose syntax model.