Affirmer ou non une bonne pratique?

Est-il une bonne pratique d'utiliser Valoir pour les paramètres de la fonction à appliquer à leur validité. J'ai été en passant par le code source du Framework Spring et j'ai remarqué qu'ils utilisent Assert.notNull beaucoup. Voici un exemple

   public static ParsedSql parseSqlStatement(String sql) {
    Assert.notNull(sql, "SQL must not be null");}

En voici une Autre:

public NamedParameterJdbcTemplate(DataSource dataSource) {
            Assert.notNull(dataSource,
                    "The [dataSource] argument cannot be null.");
            this .classicJdbcTemplate = new JdbcTemplate(dataSource);
        }

        public NamedParameterJdbcTemplate(JdbcOperations classicJdbcTemplate) {
            Assert.notNull(classicJdbcTemplate,
                    "JdbcTemplate must not be null");
            this .classicJdbcTemplate = classicJdbcTemplate;
      }

Pour info, Le Assert.notNull (pas le assert déclaration) est définie dans un util classe comme suit:

public abstract class Assert { 
   public static void notNull(Object   object, String   message) {
      if (object == null) {
          throw new IllegalArgumentException  (message);
      }
   }
}
  • Remarque, ce n'est pas assert. Vous devriez toujours jeter une exception dans ce cas. Par défaut, assert est éteint.
  • Je ne suis pas sûr de ce que cela Assert classe est utilisée pour. Je suis habitué à la assert déclaration: java.sun.com/j2se/1.4.2/docs/guide/lang/assert.html
  • Demandez-vous si le fait d'avoir des assertions est bon (oui, c'est)? Ou si l'assertion de mots clés, ce qui permet d'écrire une affirmation, puis l'éteindre pour le déploiement, est plus utile pour cet effet, puis un "régulier" si l'instruction qui lève une exception (pas sûr)?
  • Désolé pour la confusion, j'ai été plus d'allusion à des Assertions, en général, pas nécessairement le mot-clé
InformationsquelleAutor ken | 2010-03-14