ThingWorx Edge SDK Extensions for the C SDK > Best Practices for Developing Edge Extensions
  
Best Practices for Developing Edge Extensions
Here are recommended best practices for developing Edge Extensions with the ThingWorx C SDK:
1. Namespacing occurs at the shape level to prevent service or property name conflicts. Make sure that you pass the namespace into the TW_DECLARE_SHAPE macro to support it. You can only ever have one template, so if you pass the namespace into TW_DECLARE_SHAPE, you are done.
2. Never register properties or services using a wildcard for the name of a property or service. The use of a wildcard during registration can interfere with your ability to use the wildcard name.