информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Сетевые кракеры и правда о деле ЛевинаВсе любят медПортрет посетителя
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Бэкдор в xz/liblzma, предназначенный... 
 Три миллиона электронных замков... 
 Doom на газонокосилках 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
В каком редакторе есть подсветка не релевантных идентификаторов? 02.07.08 19:46  
Автор: Дон Амброзио Статус: Незарегистрированный пользователь
<"чистая" ссылка>
В каком редакторе есть подсветка не релевантных идентификаторов?
Что я под этим понимаю:

Допустим, есть класс и я изменил в нём некий метод. Тогда редактор должен (если я так хочу) подсветить мне все идентификаторы в программе так или иначе связанные с этим классом по причине их не релевантности.

Вообще разработка и правка программы суть некоторые транзакции, которые нельзя выполнить частично. Например все внесённые изменения в программу при переход от одной идеологии работы с сетью к другой можно рассматривать как одну большую транзакцию. Хорошо бы было, чтобы редактор распознавал тип проводимой в данный момент транзакции и как-то оповещал о её незавершённости.
Ведь не секрет, что большинство ошибок в программе происходят из-за того, что при сложных транзакциях редактирования программы, состоящих из многих операций редактирования в различных частях программы, программист забывает произвести некоторые операции, чтобы транзакция была завершённой.
Почему транзакция может состоять из нескольких операций правки в различных частях программы?
Да потому что часто бывает, что изменив что-то в одной части программы, мы просто обязаны изменить связанные с ней другие части программы. А таких связей бывает очень много. И очень трудно бывает уследить за тем, чтобы все связанные части были тоже отредактированы.

И какие ещё полезные фичи есть в программистских тестовых редакторах?
Microsoft Visual Studio 2005/2008 C#? 04.07.08 17:36  
Автор: void <Grebnev Valery> Статус: Elderman
Отредактировано 04.07.08 17:37  Количество правок: 1
<"чистая" ссылка>
Если идентификатор1 очень косвенно релевантен (в голове, считай машине нужен интеллект чтобы понять это) идентификатору2, то как предлагается это соответствие искать? 02.07.08 21:10  
Автор: Ustin <Ustin> Статус: Elderman
<"чистая" ссылка>
> В каком редакторе есть подсветка не релевантных
> идентификаторов?
> Что я под этим понимаю:
Думаю, что надо пользоваться общепринятой терминологией
> Допустим, есть класс и я изменил в нём некий метод. Тогда
> редактор должен (если я так хочу) подсветить мне все
> идентификаторы в программе так или иначе связанные с этим
> классом по причине их не релевантности.
Класс на то и класс, чтобы помимо прочего позволить сделать прозрачный переход между реализацией его методов. Если после изменения реализации надо бегать по всему коду и править сто мест... короче класс тут становится ни при чём, как и вся, как ты говоришь, парадигма ООП. Ознакомься http://www.realcoding.net/article/view/923
Это ты мне рассказываешь как должно быть в идеале. А в реале... 02.07.08 22:13  
Автор: Дон Амброзио Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> > В каком редакторе есть подсветка не релевантных
> > идентификаторов?
> > Что я под этим понимаю:
> Думаю, что надо пользоваться общепринятой терминологией
> > Допустим, есть класс и я изменил в нём некий метод.
> Тогда
> > редактор должен (если я так хочу) подсветить мне все
> > идентификаторы в программе так или иначе связанные с
> этим
> > классом по причине их не релевантности.
> Класс на то и класс, чтобы помимо прочего
> позволить сделать прозрачный переход
> между реализацией его методов. Если после изменения
> реализации надо бегать по всему коду и править сто мест...
> короче класс тут становится ни при чём, как и вся, как ты
> говоришь, парадигма ООП. Ознакомься
> http://www.realcoding.net/article/view/923

Это ты мне рассказываешь как должно быть в идеале. А в реале часто приходится перекраивать класс. И разбивать экземпляры ранее принадлежавшие одному классу на 2. Или наоборот , сливать экземпляоы разных классов в один. Проектирование - это живой процесс. Всякое бывает. Когда очень желательно чтобы редактор как -то всё же показал, что связи частей программы стали не релевантными
А в реале ты хочешь Agile/Extreme programming 03.07.08 08:44  
Автор: HandleX <Александр М.> Статус: The Elderman
<"чистая" ссылка>
> Это ты мне рассказываешь как должно быть в идеале. А в
> реале часто приходится перекраивать класс. И разбивать
> экземпляры ранее принадлежавшие одному классу на 2. Или
> наоборот , сливать экземпляоы разных классов в один.
Рефакторинг кода, о котором ты говоришь, существует в продвинутых системах разработки навроде Eclipse... Но о майн готт, какой он монстроидальный... А компоновку классов всё равно прийдётся делать ручками.

> Проектирование - это живой процесс. Всякое бывает. Когда
> очень желательно чтобы редактор как -то всё же показал, что
> связи частей программы стали не релевантными
Редактор может подсвечивать вызовы неопределённых методов или неописанных переменных. У меня — подсвечивает. И рефакторинг есть кое-какой. И история правки методов, можно откатить код назад. Но вот транзакции кода это ты круто обозначил, конечно -)) File-Save есть точно -))))

Меня спасает то, что компиляция в той среде, где я работаю, инкрементальная, т.е. буквально пометодная. Добавил класс, добавил методы, тестируешь их тут же живьём, и ничего страшного не происходит, чистый живой ОО программинг, если метод скомпилировался, он не станет причиной падения программы с каким-то злобным исключением и DrWatson'ом в качестве помошника, максимум что скажет — "класс такой-то не понимает #do:bla:bla:bla:" ;-)

Юзаю Dolphin Smalltalk X6.
В качестве редактора кода внутри использует "Scintilla — A free source code editing component for Win32 and GTK+".
Рулит ни по децки.
Думаю, нужно создать редактор, в котором релевантность можно указывать ручками 03.07.08 09:19  
Автор: Zef <Alloo Zef> Статус: Elderman
<"чистая" ссылка>
и, конечно, не только для ООП. Т.е. если есть ф-ция/переменная, то все точки из котороых к ней обращаются явным образом должны высвечиваться автоматом, но должна быть и возможность задать, для неявных обращений, связь руками.
Если он хочет создать редактор, пусть попробует Scintilla, я про него уже писал. 03.07.08 10:19  
Автор: HandleX <Александр М.> Статус: The Elderman
Отредактировано 03.07.08 10:31  Количество правок: 3
<"чистая" ссылка>
А вот "показать все методы с именем NNN", "показать все методы, вызывающие метод с именем NNN", "показать для класса все методы, обращающиеся к переменной такой-то", "показать методы, обращающиеся к классу такому-то" и проч -- всё это должна интегрировать среда разработки, а не редактор, у меня всё это есть, чему я безумно рад -))

А ещё там есть протоколы, а ещё там есть принадлежность методов к категориям (что облегчает из поиск/группировку), которые можно добавлять самому, и много ещё чего вкусного.

Вообще, очень грамотно и красиво все эти вещи получаются в средах с развитой рефлексией.
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2024 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach