я думаю такая связь уже продумана в MS: фичи мультатача Win7 и интегрированный Code Canvas в Visual Studio в комплекте с тач-монитором или surface-стеной (мечты, мечты) дудут отличный результат
многие здесь отметившиеся не понимают или не знают о том, что кроме программистов кодом занимаются еще и архитекторы/менеджеры, которым редактировать ничего не приходится, но охватывать все вместе требуется позарезу.
Но некоторые, похоже, забывают, что так называемые «архитекторы» как раз и являются программистами, но возомнившими о себе невесть что. Anyway, к разработке «рассматривание» кода широкими жестами никак не относится…
Не возомнившие, а выросшие из программистов и умеющие решать глобальные задачи.
А описанный продукт позволяет на нужном уровне абстракции удобно работать с кодом.
Этакая лёгкая интеграция чего-то вроде UML-представления с живым проектом. )
:) в оригинале был мудрый филин и ответ его звучал примерно:
«Я ж стратег, а это тактика…»
Анекдот заставляет улыбнуться, но если вы не умеете делегировать полномочия и сосредотачиваться на глобальных задачах, а распыляетесь на каждую микро-цель, то ваше место исключительно в роли тактического исполнителя.
вот тоже хотелось бы узнать про сис. требования) я, конечно понимаю, прогресс на месте не стоит, но не хотелось бы докупать новую видеокарту для такого «счастья» :)
Тут в парарллельном топике говорилось, что MS смогла в W7 часть вычислений, предназначенных для видеокарты переложить на плечи CPU. Конечно, в сложные игры не поиграешь, а вот Aero запустить или такую среду — труда не составит (CPU не хуже Pentium 800Mhz).
Обычно да, но в том комментарии, на который я отвечал, как раз, ощущали недостаток GPU для работы с таким инструментарием. А чтобы использовать мощности видеокарт — технология в другом соседнем топике описана. Для Nvidia — это cuda, но это уже другая история =)
30 лет назад мыши были не на столько удобны. К тому же, рисование, скорее всего, воспринималось как аналогия рисования карандашом — нажал кнопку и водишь мышью по столу, а на экране след за курсором. Но, согласитесь, и сегодня это не самый удачный приём рисования мышью.
Другое дело векторная графика. Но тут уже сам принцип другой. Это не рисование в буквальном смысле, это скорее больше похоже на взаимодействие с набором специфических элементов управления.
> Другое дело векторная графика. Но тут уже сам принцип другой.
Ну принципы взаимодействия с компьютерами не менее радикально поменяются. Еще 30-40 лет назад был целый класс вычислительных машин которые программировались шнурами коммутатора или набором кодов через регистры на лицевой панели. От нынешних GUI отличие очень радикальное.
на самом деле я не думаю что это получит большое распространение. скажем, для построения глобальной структуры классов еще ничего, но для работы постоянной — думаю не то.
удобно только если ты новичок и вклиниваешься в какой-то большой проект, для понимания всей структуры проекта — очень удобно. что-то вроде майндмапа по коду.
Идея крута, только такая штука требует кардинально новых средств взаимодействия с компьютером и приложениями, мышкой это хозяйство очень медленно перетаскивать/зуммировать/кликать.
Совсем не понравилось. Да, это круто выглядит. Да, это только разработка, а потом будет вообще улётно смотреться. Но работать с этим, на мой взгляд, очень тяжело.
Намного проще нажать «хоткей» — и вот я уже «в другом классе». Кроме того, в данном случае, надо либо держать в голове визуальную структуру проекта, либо тратить время, а главное отвлекаться от основной задачи, на поиск нужного класса.
Мне кажется, что это слишком уж примитивная форма визуального программирования. В новую среду лезть со старыми методами. Это как пытаться ходить в воде, по аналогии с сушей, когда существует более удобный способ — плавать.
P.S. Хотя, тем не менее, что бы попытаться начать плавать в воде, нужно сначала очень долго ходить в ней. Так, что ребята не зря стараются. :)
Слушайте, я расскажу вам, как будет происходить освоение подобной среды.
Сначала программист радостно таращится на всю эту красоту, ходит по стрелочкам, широко скроллит и глубоко зумит.
Потом выучивает новые хоткеи, шорткаты, переоткрывает для себя пункты контекстного меню «Go to definition», «Go to declaration» и иже с ними. Нажал — и тебя автоматически оттащило и зазумило, куда надо.
Потом находит в настройках, как ускорить анимацию, происходящую при скролле и зуме. Постепенно, в несколько заходов снижает продолжительность анимации до нуля. Визуально всё это теперь выглядит, как любое гораздо более другое из ныне существующих IDE. Но мы-то знаем, что там сзади — стрелки! :)
вы когда-нибудь пробовали вклиниться в новый большой проект? или реверсить чужую программу? подобные графики очень помогают, сразу вспоминается IDA: Graphing with IDA (PDF document)
Эм… В больших проектах, как правило, есть документация, описана архитектура. И если та сама архитектура проекта продумана — то не возникает никаких проблем с его освоением. Ну а в крайнем случае подобную программу можно написать и самому за пару дней, при необходимости, взяв себе в помошники например ctags и QGraphicsScene. Да даже далеко ходить не нужно — посмотрите api.kde.org — проект достаточно большой и тем не менее чтобы включится в его разработку достаточно потратить день-два на то чтобы вникнуть в ситуацию. Так что эта вещь, по моему субъективному мнению — лишняя.
Мне это напомнило недавно вышедший плагин к OneNote — Canvas (http://b23.ru/2i9, видео) Используется тот же принцип с зумом (кажется, Раскин подобное описывал). Владельцы OneNote и Vista могут посмотреть сами, скачав плагин с сайта проекта — b23.ru/2im. Там же есть еще пара демо-роликов.
Смотреть — приятно, это как минимум. Микрософт серьезно взялись за эту концепцию, судя по всему, и внедряют ее по всем флангам.
Пару лет назад делал прототип редактора кода с нелинейным масштабированием. Обычно можно зажать Ctrl и крутить колесо мыши — все символы увеличиваются либо уменьшаются в размерах. А там было, чтобы разные веса назначить, допустим, заголовку класса, заголовку функции, в зависимости от глубины вложенности блока и т. п. И чем незначительнее, тем быстрее уменьшается и исчезает.
Такое есть в гео-софте. Некоторые элементы показываются только, начиная с определенного уровня масштаба. Например, подписи к зданиям показываются только тогда, когда само здание имеет в текущем масштабе размер не менее 1 пикселя.
Любят американцы все визуализировать… При большом количестве связей, отслеживать все эти нитки будет тем еще увлекательными занятием.
Банальные Goto Definition/Find References — для навигации все же проще и удобнее, на мой взгляд.
Стандартно позанудствую. А какую практическую задачу они хотели этим решить? Все эти стрелочки, зумы и анимации только отвлекают, раздражают и требуют кучу времени. Я нечно подобное давно представлял, но только не в таком ракурсе, а просто как плагин к IDE, который позволяет по шорткату получит карту проекта и быстро перейти в нужное место. Но совсем не так.
Новый взгляд на навигацию по коду