Я новичок в Pharo, и мне было интересно, существует ли какой-то метод автоматического рефакторинга для создания конструктора с одним параметром для переменной экземпляра. Прямо сейчас, чтобы сделать это, я создаю метод класса класса, который создает новый экземпляр класса и вызывает новый экземпляр методом, который инициализирует переменные экземпляра. Это довольно скучно и долго, но я не мог найти способ сделать это автоматически (например, вместо этого я могу сделать это для создания accessors для переменной экземпляра и т. Д.).Переменная экземпляра конструктора Pharo
Есть ли способ?
ОК, но почему это лучше, чем: 'Windows initializeWithWidth: 500 height: 300 x: 5 y: 10.'? Я, ваш короткий ответ, вы говорите, что это возможно, но можете ли вы сказать мне, как это сделать? ой, и если я могу с Рождеством! :) – user1544128
@ user1544128, потому что вы не выигрываете много, делая свой путь. Возможно, у вас есть значения по умолчанию, и, возможно, у вас нет всех данных в момент инициализации. Дело в том, что вы должны быть уверены, что он очень много используется +, я бы избегал методов с длинными именами. Я скоро попытаюсь расширить свой ответ. – Uko
Иногда такие методы инициализации, как ваш #initializeWithWidth: height: x: y: полезны. Например, когда переменные экземпляра не подлежат изменению (неизменяемые объекты). Я не знаю никаких рефакторингов, чтобы сделать это. Тем не менее, когда вы создаете прототипы своего приложения, вы можете избежать этой практики. У меня было много таких методов инициализации, как этот, но я остановился, потому что было слишком много работы для поддержки (например, когда переменные экземпляра добавляются/удаляются). –