Вот пример из очень старой версии того же решарпера.
Сложность в том, что вы должны проанализировать используемые переменные в блоке кода и сформировать из них сигнатуру нового метода + возвращаемое значение, которое может быть как в return, так и через out/ref (в случае с C#).
А еще бывают не только локальные переменные, но и поля класса и тп.
Я просто хотел сказать, что всегда приятно/удобно/спокойно, когда вы можете взять и удалить приложение из системы и ГАРАНТИРОВАННО не затронуть никаких компонентов, не оставить следов использования и т.д.
Хороший пример (возведенный в абсолют) — использование виртуальных машин. Я могу держать свою систему (хост) в чистоте, полностью изолировав ее от влияния.
Как вариант, для изоляции некоторого ПО (в данном случае это Skype) от основной системы.
Лично мне спокойнее, когда любое ПО (не обязательно проприетарное, от злющих корпораций, следящих за мной) не может повлиять на стабильность моей системы, не сможет внести туда изменения ЛЮБЫЕ.
Да, с открытым ПО это проще контролировать, но почему бы просто не ГАРАНТИРОВАННО изолировать его?
Порекомендую для конспектов более-менее серьезных книг (очень техническая и научная литература) использовать ПО типа Citavi (был обзор на хабре, есть бесплатная версия).
Лично мне очень помогает группировать знания по разным тематикам и из разных источников.
Органайзеры знаний это вообще большая отдельная тема…
Если производитель связывает эту модель с наукой, то в обзоре стоило бы подробнее рассмотреть работу с PDF и DJVU.
В статье лишь несколько слов об этом.
Насколько комфортно читать техническую и научную литературу в этих форматах? Как быстро масштабируется текст? Как понять фразу «если не за секунды»? Может стоит снять небольшой ролик?
Без рассмотрения этих вопросов это, конечно, качественно сделанная, но обычная электронная книга, удобная лишь для чтения художественных произведений.
Подскажите, пожалуйста, по поводу примеров с volatile-не-volatile.
Правильно ли я понимаю, что в третьем и четвертом вариантах программа может остановиться или не остановиться из-за того, что поток может запускаться после запуска цикла в случае, если run — НЕ volatile?
При компиляции с параметром debug+ (или наличии атрибута сборки System.Diagnostics.DebuggableAttribute) JIT считает что время жизни локальной переменной — до завершения метода. В противном случае, JIT оптимизирует код, а GC, не найдя ссылок на переменную, выполнит финализацию.
Сложность в том, что вы должны проанализировать используемые переменные в блоке кода и сформировать из них сигнатуру нового метода + возвращаемое значение, которое может быть как в return, так и через out/ref (в случае с C#).
А еще бывают не только локальные переменные, но и поля класса и тп.
В общем, это трудоемко…
Дело в том, что выделение блока кода в отдельный метод не сводится в Copy/Paste, и в общем случае требует разбора логики и синтаксиса текущиего ЯП.
Подозреваю, что самостоятельно писать «почти-компилятор» будет несколько трудоемко, а скопировать, да, можно быстро.
Я просто хотел сказать, что всегда приятно/удобно/спокойно, когда вы можете взять и удалить приложение из системы и ГАРАНТИРОВАННО не затронуть никаких компонентов, не оставить следов использования и т.д.
Хороший пример (возведенный в абсолют) — использование виртуальных машин. Я могу держать свою систему (хост) в чистоте, полностью изолировав ее от влияния.
Как вариант, для изоляции некоторого ПО (в данном случае это Skype) от основной системы.
Лично мне спокойнее, когда любое ПО (не обязательно проприетарное, от злющих корпораций, следящих за мной) не может повлиять на стабильность моей системы, не сможет внести туда изменения ЛЮБЫЕ.
Да, с открытым ПО это проще контролировать, но почему бы просто не ГАРАНТИРОВАННО изолировать его?
Порекомендую для конспектов более-менее серьезных книг (очень техническая и научная литература) использовать ПО типа Citavi (был обзор на хабре, есть бесплатная версия).
Лично мне очень помогает группировать знания по разным тематикам и из разных источников.
Органайзеры знаний это вообще большая отдельная тема…
Я не конкретно про вас, да и мысль не моя.
В статье лишь несколько слов об этом.
Насколько комфортно читать техническую и научную литературу в этих форматах? Как быстро масштабируется текст? Как понять фразу «если не за секунды»? Может стоит снять небольшой ролик?
Без рассмотрения этих вопросов это, конечно, качественно сделанная, но обычная электронная книга, удобная лишь для чтения художественных произведений.
Правильно ли я понимаю, что в третьем и четвертом вариантах программа может остановиться или не остановиться из-за того, что поток может запускаться после запуска цикла в случае, если run — НЕ volatile?
Может быть дело в этом?