Комментарии

Табличный метод check ()
( 0 Голосов )

В методе check () проверяется достоверность или значимость данных в строке таблицы. Этот метод действует немного иначе, чем остальные табличные методы. Во-первых, в родительском классе JTable метод check () объявлен как пустой, и поэтому он не вызывается. И во-вторых, в этом методе предпринимается попытка исправить ошибку в данных, если такое вообще возможно, вместо того, чтобы просто сообщать о ней.

Для веб-ссылок в данном методе проверяется следующее.

  • Содержит ли URL только достоверные символы.
  • Не является ли заглавие пустым.
  • Начинается ли URL с правильных символов (если требуется, добавляется префикс http://).
  • Имеется ли уже веб-ссылка с таким же именем.
  • Задан ли достоверный псевдоним (если он пустой, то задается).
  • Правильно ли отформатированы ключевые слова, если они введены, и не содержат ли они запрещенные символы.

Если сравнить методы check () из разных базовых табличных классов, в том числе WeblinksTableWeblink, ContactsTableContact, BannersTableBanner и News-feedsTableNewsfeed, то в них можно обнаружить немало дублирующегося кода. В частности, каждый из них содержит один и тот же код для проверки и исправления дат публикации. Это положение можно было бы исправить, перенеся дублирующийся код в родительский класс и вызвав его метод check () для проверки из метода check () в каждом его подклассе, как это делается, например, в методе store () или publish (). Следует, однако, иметь в виду, что удаление дублирующегося кода никак не изменило бы функционирование самих программ, а только сократило бы размеры кодовой базы. Ведь дублирующийся код затрудняет сопровождение программ. Так, если потребуется исправить программные ошибки в дублирующемся коде, это придется сделать в нескольких местах программы.

Процесс усовершенствования кода без изменения его функционирования называется реорганизацией кода. Такая реорганизация может быть произведена по целому ряду причин, включая и сокращение дублирующегося кода, чтобы упростить код, облегчить его чтение и улучшить его стандартизацию. В такой крупной и сложной программе, как Joomla, реорганизация кода происходит постоянно. И поэтому очень важно, чтобы она не приводила к случайным изменениям в работе программы и не нарушала ее функционирование.


Понравился материал? Пригодилась информация? Плюсани в социалки!


 
Похожие новости