А потом всю эту кучу придется разгребать в ручную? Где же тут автоматизация?
Сам пользуюсь Redmine и ToDoList — в первом хранятся рабочие задачи, а второй подсчитывает затраченное время для всех задач и хранит мелкие подзадачи (для которых создавать таски в redmine излишне), что особенно актуально при глобальных изменениях в проекте. В конце дня остается только перенести затраченное время из ToDoList в Redmine или же можно сразу указывать его в сообщениях к коммитам (вот это уже настоящая автоматизация). В конце периода в Redmine строиться отчет по каждому проекту (версии и т.д.).
Кстати, ToDoList и сам умеет строить неплохие отчеты, поэтому в тех случаях когда ведение отдельного проекта излишне, можно обойтись только им.
У меня немного в другом проблема — есть большой проект, есть задача «исправить в модуле X ...», если работать только с файлами модуля все нормально, а вот когда приходится смотреть API самого проекта — все эти файлы тоже в контекст попадают.
Хотя, возможно, «второе» как раз решит данную проблему, надо попробовать.
> И третье
Старые и редко используемые файлы действительно становятся менее заметными (правда в PDT это довольно часто глючит — после включения/выключения/переключения между задачами «подсветка» файлов не всегда сбрасывается).
Да удобно, но, ИМХО, главный недостаток в том что сохраняются вообще все просмотренные файлы — в крупных/сложных/запутанных проектах постоянно приходится включать/выключать активную задачу, а если забываешь это делать, то контент очень быстро замусоривается и перестает быть полезным.
Пока так и не придумал как решить для себя эту проблему.
Mylyn забыли (http://eclipse.org/mylyn/) — продвинутое управление тасками, в т.ч.поддержка различных трекеров. Еще одна полезная фича у него это поддержка wikitext-а (textile, markdown и т.д.)
> почему-то в eclipse по умолчанию нет поддержки Maven
Наверное потому что им далеко не все пользуются. Ваш КО.
> SVN team provider
Их 2 (разницы между ними практически нет):
* subversive — не знаю как сейчас, но до НГ не поддерживал svn 1.7
* subclipse — перешел на него с первого
Для git есть egit (http://eclipse.org/egit/) — аналогичный хотя и менее интуитивно понятный.
> Сейчас для установки зависимостей практичнее использовать composer.
Чем больше программирую на PHP, тем больше убеждаюсь в том, что это путь вечного велосипедостроения. Ivy, ИМХО, более практичен — т.к. универсальный и может использовать и для других языков (т.е. в последствии не придется переучиваться на что-то другое).
> Потому по случаю спрошу были ли подобные попытки у кого и к чему привели?
Сам не пробовал, но недавно тоже задавался этим вопросом, как я понял вполне успешно переделывают и печатают. Для затравки techref.massmind.org/techref/pcb/etch/directinkjetresist.htm По форумам в рунете основные сложности это прогрев платы перед печатью и подбор чернил.
Интересная статья, спасибо. Но, ИМХО, все равно как то сложно. + мне не совсем понятно как в pear-е решается задача отслеживания всех нужных текущему проекту (который не будет непосредственно публиковаться в pear-е) библиотек и их версий.
Поэтому, не так давно думал вместо pear-а приспособить ivy (http://ant.apache.org/ivy/) — паковать классы ant-ом в phar-ы и публиковать в ivy-репозитории. Если учесть универсальность ant-а и возможность написания новых задач для него даже на самом PHP (не без граблей, к сожалению), то должно получиться гораздо удобнее (ИМХО) pear-а (все phar-ы будут храниться где-то в проекте).
Тогда почему не упомянуто об одном важном моменте:
> www.emspost.ru/chastnim_clients/reimbursement/
> При неисполнении или ненадлежащем исполнении обязательств по оказанию услуг EMS, *****отправитель***** вправе предъявить «EMS Russian Post» претензию на выплату возмещения. Претензии на выплату возмещения принимаются в течение 6 месяцев со дня приема отправления. Срок рассмотрения претензии на выплату возмещения составляет 2 месяца с момента получения заявления. Возмещение выплачивается на основании результатов служебного расследования по факту заявления.
Т.о. чтобы вам, как получателю, получить компенсацию нужно получить «отказ отправителя от получения возмещения в пользу получателя страны назначения».
Если каких то библиотек нет в «стандартных» репозиториях, возможно, они есть в Ivy RoundUp (http://code.google.com/p/ivyroundup/). Кстати, советую обратить внимание на способ организации хранилища — храниться только описание пакетов и их зависимости, ресурсы же выкачиваются автоматически.
> Если бы я не позорился, уважаемый DeusModus не смог бы указать мне на XMLSerializer.
Опыта у вас мало? Я прав?
> Насчет 4-го пункта, что вы увидели в этом такого криминального (нет, я серьезно, объясните)?
В этом то и проблема, при поддержке это боком выйдет, т.к. название и поведение этой функции подразумевает получение SimpleXMLElement. Пройдет время и кому то понадобится получить SimpleXMLElement, но без вложенных элементов — вот радости то ему привалит…
— Наиболее логично функция выглядела бы так (псевдо код):
/**
* @param mixed $object конвертируемый объект
* @param bool $recursive нужно ли обрабатывать вложенные элементы?
* @param DOMNode $parent родительский узел
*
* @return DOMNode
*/
function convertToDom($object, $recursive, $parent = null);
// 1
$node = convertToDom($object, true, new DOMDocument()); // DOMDocument
$html = (new XSLTProcessor())->transformToXML($node);
1) Извините, но это, как бы сказать по-мягче, глупость — сначала создавать DOM объект, а потом конвертировать его в simplexml/строку, который потом будет снова конвертирован в DOM.
2) Хм, ну не знаю — вообще то в DOMDocument::createElement ( string $name [, string $value ] ), под $value понимается текстовое значение, для добавления детей нужно использовать DOMNode->appendChild()
3) Наличие html_entity_decode от непонимания — см. предыдущий пункт.
4) Я бы с удовольствием оторвал вам руки за то, что функция std2simplexml при передаче одних агрументов возвращает SimpleXMLElement, а при других строку.
5) Охренеть, а зачем?!
$new_xml = str_replace(array('','',''),'',$new_xml);
Вопрос не совсем про разработку собственного процессора, но по смежной теме — эмуляции цифровых схем.
Может быть кто-то может поделиться ссылками на литературу описывающую алгоритмы/подходы используемые для реализации компьютерных моделей цифровых цепей? (т.е. описывающую алгоритмы по которым работает Logisim).
Зря, попробуйте C# (из того что сам пробовал) и get-еры и set-еры очень удобны, после них использовать убогие костыли __get и __set нет никакого желания.
Блин, так я про то и пишу — свойство класса переименовать ЛЕГЧЕ чем тоже свойство устанавливаемое через общий метод setProperty.
— Или вы и вправду хотите сказать, что PhpStorm сможет корректно и автоматически переименовать все $SomeObject->setProperty('xxx') и $SomeObject->setProperty($name) (в тех случаях когда $name == 'xxx') на $SomeObject->setProperty('xxx1')?
Хм, хотя наверное вы про тот случай когда для изменения каждого свойства используется разные методы? В таком случае, да, проблем нет. Но вот кода набирать приходиться больше и классы сильно распухают (особенно когда свойств много), поэтому в некоторых случаях может быть целесообразнее все свойства хранить в массиве, а не в виде свойств класса (тут каждый сам решает как ему удобнее).
Сам пользуюсь Redmine и ToDoList — в первом хранятся рабочие задачи, а второй подсчитывает затраченное время для всех задач и хранит мелкие подзадачи (для которых создавать таски в redmine излишне), что особенно актуально при глобальных изменениях в проекте. В конце дня остается только перенести затраченное время из ToDoList в Redmine или же можно сразу указывать его в сообщениях к коммитам (вот это уже настоящая автоматизация). В конце периода в Redmine строиться отчет по каждому проекту (версии и т.д.).
Кстати, ToDoList и сам умеет строить неплохие отчеты, поэтому в тех случаях когда ведение отдельного проекта излишне, можно обойтись только им.
> Ваш запрос не может быть выполнен
> В данный момент запрошенный Вами объект недоступен в Русский магазин
Это только я такой криворукий?
Хотя, возможно, «второе» как раз решит данную проблему, надо попробовать.
> И третье
Старые и редко используемые файлы действительно становятся менее заметными (правда в PDT это довольно часто глючит — после включения/выключения/переключения между задачами «подсветка» файлов не всегда сбрасывается).
Пока так и не придумал как решить для себя эту проблему.
Проверил — оказывается уже поддерживает.
> почему-то в eclipse по умолчанию нет поддержки Maven
Наверное потому что им далеко не все пользуются. Ваш КО.
> SVN team provider
Их 2 (разницы между ними практически нет):
* subversive — не знаю как сейчас, но до НГ не поддерживал svn 1.7
* subclipse — перешел на него с первого
Для git есть egit (http://eclipse.org/egit/) — аналогичный хотя и менее интуитивно понятный.
Чем больше программирую на PHP, тем больше убеждаюсь в том, что это путь вечного велосипедостроения. Ivy, ИМХО, более практичен — т.к. универсальный и может использовать и для других языков (т.е. в последствии не придется переучиваться на что-то другое).
Сам не пробовал, но недавно тоже задавался этим вопросом, как я понял вполне успешно переделывают и печатают. Для затравки techref.massmind.org/techref/pcb/etch/directinkjetresist.htm По форумам в рунете основные сложности это прогрев платы перед печатью и подбор чернил.
Поэтому, не так давно думал вместо pear-а приспособить ivy (http://ant.apache.org/ivy/) — паковать классы ant-ом в phar-ы и публиковать в ivy-репозитории. Если учесть универсальность ant-а и возможность написания новых задач для него даже на самом PHP (не без граблей, к сожалению), то должно получиться гораздо удобнее (ИМХО) pear-а (все phar-ы будут храниться где-то в проекте).
Тогда почему не упомянуто об одном важном моменте:
> www.emspost.ru/chastnim_clients/reimbursement/
> При неисполнении или ненадлежащем исполнении обязательств по оказанию услуг EMS, *****отправитель***** вправе предъявить «EMS Russian Post» претензию на выплату возмещения. Претензии на выплату возмещения принимаются в течение 6 месяцев со дня приема отправления. Срок рассмотрения претензии на выплату возмещения составляет 2 месяца с момента получения заявления. Возмещение выплачивается на основании результатов служебного расследования по факту заявления.
Т.о. чтобы вам, как получателю, получить компенсацию нужно получить «отказ отправителя от получения возмещения в пользу получателя страны назначения».
Опыта у вас мало? Я прав?
> Насчет 4-го пункта, что вы увидели в этом такого криминального (нет, я серьезно, объясните)?
В этом то и проблема, при поддержке это боком выйдет, т.к. название и поведение этой функции подразумевает получение SimpleXMLElement. Пройдет время и кому то понадобится получить SimpleXMLElement, но без вложенных элементов — вот радости то ему привалит…
— Наиболее логично функция выглядела бы так (псевдо код):
/**
* @param mixed $object конвертируемый объект
* @param bool $recursive нужно ли обрабатывать вложенные элементы?
* @param DOMNode $parent родительский узел
*
* @return DOMNode
*/
function convertToDom($object, $recursive, $parent = null);
// 1
$node = convertToDom($object, true, new DOMDocument()); // DOMDocument
$html = (new XSLTProcessor())->transformToXML($node);
// 2
$node = convertToDom($object, true); // DOMNode
$html = (new XSLTProcessor())->transformToDoc($node)->saveXML();
string XSLTProcessor::transformToXML ( DOMDocument $doc )
Однако, в комментах есть пример и с SimpleXMLElement (http://php.net/manual/en/book.xsl.php) + да и ваш код его же принимает, разве нет?
> что вместо него нужно было использовать DOMDocument?
В данном случае да.
6) У вас создается новый DOMDocument при каждом вызове функции. Зачем?
2) Хм, ну не знаю — вообще то в DOMDocument::createElement ( string $name [, string $value ] ), под $value понимается текстовое значение, для добавления детей нужно использовать DOMNode->appendChild()
3) Наличие html_entity_decode от непонимания — см. предыдущий пункт.
4) Я бы с удовольствием оторвал вам руки за то, что функция std2simplexml при передаче одних агрументов возвращает SimpleXMLElement, а при других строку.
5) Охренеть, а зачем?!
$new_xml = str_replace(array('','',''),'',$new_xml);
Вывод: Говнокод. Выбросьте. Не позорьтесь.
Может быть кто-то может поделиться ссылками на литературу описывающую алгоритмы/подходы используемые для реализации компьютерных моделей цифровых цепей? (т.е. описывающую алгоритмы по которым работает Logisim).
— Или вы и вправду хотите сказать, что PhpStorm сможет корректно и автоматически переименовать все $SomeObject->setProperty('xxx') и $SomeObject->setProperty($name) (в тех случаях когда $name == 'xxx') на $SomeObject->setProperty('xxx1')?