Есть ли какой-либо IDE, который имеет вывод подсказок кода для CakePHP или какого-либо подсказывающего коду пакета, который может быть установлен так или иначе?

Если Вы не знаете тип во время компиляции, но Вы хотите фактический тип (т.е. не List<object>) , и Вы не находитесь в общем методе / тип с соответствующим параметром типа, то необходимо использовать отражение.

Для создания отражения более простым я иногда представлял новый универсальный тип или метод в моем собственном коде, таким образом, я могу назвать это отражением, но тогда просто использовать нормальные дженерики после этого. Например:

object x = GetObjectFromSomewhere();
// I want to create a List<?> containing the existing
// object, but strongly typed to the "right" type depending
// on the type of the value of x
MethodInfo method = GetType().GetMethod("BuildListHelper");
method = method.MakeGenericMethod(new Type[] { x.GetType() });
object list = method.Invoke(this, new object[] { x });

// Later

public IList<T> BuildListHelper<T>(T item)
{
    List<T> list = new List<T>();
    list.Add(item);
    return list;
}

, Конечно, Вы не можете сделать очень много со списком впоследствии, если Вы не знаете тип... вот почему, такого рода вещь часто падает. Не всегда, хотя - я использовал что-то как вышеупомянутое в нескольких случаях, где система типов просто не вполне позволяет мне выразить все, которое я должен статически.

РЕДАКТИРОВАНИЕ: Обратите внимание на это, хотя я называю Тип. GetMethod в коде выше, если бы Вы собирались выполнить его много, который Вы, вероятно, хотели бы просто назвать им однажды - в конце концов, метод, не собирается изменяться. Можно быть в состоянии сделать его статичным (Вы могли в случае выше), и Вы, вероятно, хотите сделать его частным также. Я оставил его, как общедоступный метод экземпляра для простоты GetMethod звонит в пример кода - необходимо будет определить соответствующие обязательные флаги иначе.

9
задан jedmao 12 July 2009 в 06:01
поделиться

3 ответа

Вы можете получить эту функциональность в Netbeans, как описано в этой статье, из пекарни.

http://bakery.cakephp.org/articles/view/model-based-code-insight -and-Completion-in-netbeans

То же самое можно сделать в Eclipse PDT или Aptana.

http://mark-story.com/posts/view/code-completion-for-cakephp-in -eclipse

Все эти IDE бесплатны. Хотя они оба


Обновление

Теперь имеет плагин для CakePHP.

8
ответ дан 4 December 2019 в 15:24
поделиться

Это не IDE, но если вы пользователь textmate, то есть пакет для CakePHP: http://thechaw.com/cakephp_tmbundle

3
ответ дан 4 December 2019 в 15:24
поделиться

Komodo Edit имеет надстройку CakePHP и макрос для облегчения навигации MVC .

Он построен на базе кода Mozilla so аналогично расширяется с помощью надстроек, имеет эквивалентное потребление памяти / скорость и лицензируется на тех же условиях.

Чуть не забыл упомянуть, что это также кроссплатформенный .

1
ответ дан 4 December 2019 в 15:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: