Opendaylight масштабируемость

  • Не предоставлять методы «setter» - методы, которые изменяют поля или объекты, на которые ссылаются поля.
  • Сделать все поля окончательными и частными.
  • Не выполнять позволить подклассам переопределять методы. Самый простой способ сделать это - объявить класс окончательным. Более сложный подход заключается в том, чтобы сделать конструктор частным и создавать экземпляры в заводских методах.
  • Если поля экземпляра включают ссылки на изменяемые объекты, не разрешайте эти объекты изменять: не предоставляйте методы, которые изменить изменяемые объекты. Не используйте ссылки на изменяемые объекты. Никогда не храните ссылки на внешние, изменяемые объекты, переданные конструктору; при необходимости, создавать копии и хранить ссылки на копии. Аналогичным образом создайте копии своих внутренних изменяемых объектов, когда это необходимо, чтобы избежать возврата оригиналов в ваши методы.
0
задан satlearner 28 February 2019 в 19:09
поделиться