To improve consistency between the various parts of the ever-growing
travel sample, I'd like to propose the following naming conventions:
Contribution names:
All lower case, can contain hyphens
Examples: calendar, car, creditcard-payment-jaxb, emailgateway
Java package names:
Interfaces should be in com.tuscanyscatours
Implementation classes should be in com.tuscanyscatours.impl
Use other packages where needed for specific scenarios
- e.g., com.goodvaluetrips and com.goodvaluetrips.impl
Implementation class names:
CamelCase with initial capital, ending with "Impl" suffix
Examples: TripBookingImpl, ShoppingCartImpl, SCAToursImpl
Interface names:
CamelCase with initial capital, no special suffix
Impl classes with 1 service interface: impl name with "Impl" suffix removed
Impl classes with >1 service interface: don't use the impl name with "Impl"
suffix removed
Examples: TripBooking, SCAToursSearch, SCAToursBooking
Component names:
Impl class name (without Java package) with "Impl" suffix removed
Examples: TripBooking, ShoppingCart, SCATours
Service names:
Interface name (without Java package)
Examples: TripBooking, SCAToursSearch, SCAToursBooking
Reference names:
camelCase with no initial capital
Examples: payment, cartStore
Property names:
camelCase with no initial capital
Examples: currency, exchangeRate
Comments, suggestions, questions?
Simon