Здравствуйте, Eugeny__, Вы писали:
E__>>>Я, как человек, который сталкивался ранее(слава яйцам, несильно) с программированием на 1с, заявляю, что неудобство интерфейса просто ничто по сравнению с убожеством и глючностью тамошнего редактора кода. V>>Чисто ради интереса. 6, 7 или 8? E__>Восьмерка. Что там в более ранних версиях, я даже боюсь думать.
1. Насчёт глючности. Ни разу сам ни на какие глюки не нарывался, и никто из знакомых не жаловался. Работает как часы. Что я делаю не так?
2. Насчёт убожества. Что плохо? Всё как у всех. Даже CodeAssist есть несмотря на тотальную динамическую типизацию (соответственно, работает только тогда, когда в принципе можно разобраться, какого типа будет переменная). Немножко не хватает средств коммуникации, привязанных к коду (ну очень экзотическое пожелание), иногда не хватает поиска с использованием регулярных выражений. Всё остальное, чего душенька пожелает, вроде бы есть.
Ах да... Всё ж по-русски. Ну да, совсем стрёмное убожество
Некоторые наверняка предпочли бы, чтобы всё было по-китайски.
V>1. Насчёт глючности. Ни разу сам ни на какие глюки не нарывался, и никто из знакомых не жаловался. Работает как часы. Что я делаю не так?
Сейчас за давностью лет могу спутать с чем-то другим, не менее убогим. Но сильно бесило, что "переити к определению"[функции] переходило не к тому, что нужно, а к первому попавшемуся. Куча мелких багов, которых уже не вспомню. Ну, и чудная привычка конфигуратора(ну, не сам редактор, но все-таки) при потере связи с сервером вылетать нахрен с ошибкой, унося все сделанные за последние часы изменения в известном направлении — это просто доводило до белого каления, особенно учитывая весьма тормозной процесс сохранения изменений на сервере: просто так после каждого ввода не посохраняешься.
V>2. Насчёт убожества. Что плохо? Всё как у всех. Даже CodeAssist есть несмотря на тотальную динамическую типизацию (соответственно, работает только тогда, когда в принципе можно разобраться, какого типа будет переменная). Немножко не хватает средств коммуникации, привязанных к коду (ну очень экзотическое пожелание), иногда не хватает поиска с использованием регулярных выражений. Всё остальное, чего душенька пожелает, вроде бы есть.
Как у всех — это как у кого? Как у блокнота? Рефакторинга нет(вообще нет, даже простейших функций), навигация по коду через поиск(причем регекспов нет, и исходы не являются текстовиками, т.е. хрен поищешь внешними средствами — е..тесь на здоровье, называется), да и вообще, чем искать недостатки, проще перечислить то, что это убожество умеет. По сути, кроме редактирования, глюковатого и неполноценного ассиста, и подсветки — ничего. В результате действие, которое в студии/идее/эклипсе делается парой хоткеев/кликов и занимает секунду, превращается в дикий геморрой, состоящей из тупой ручной работы. Меня выводило из себя, что приходится делать работу, которую давно уже умеет делать компьютер.
V>Ах да... Всё ж по-русски. Ну да, совсем стрёмное убожество V>Некоторые наверняка предпочли бы, чтобы всё было по-китайски.
Вот это как раз совсем не напрягало. Ну, разве что чуть-чуть, из-за переклациваний раскладок, но по сравнению с жутким убожеством редактора это меньшее зло.
Новости очень смешные. Зря вы не смотрите. Как будто за наркоманами подсматриваешь. Только тетка с погодой в завязке.
There is no such thing as a winnable war.
Здравствуйте, Eugeny__, Вы писали:
V>>1. Насчёт глючности... E__>Сейчас за давностью лет могу спутать с чем-то другим, не менее убогим. E__>Но сильно бесило, что "переити к определению"[функции] переходило не к тому, что нужно, а к первому попавшемуся.
Ну не знаю... У меня всегда перескакивало куда нужно.
E__>Куча мелких багов, которых уже не вспомню.
E__>Ну, и чудная привычка конфигуратора(ну, не сам редактор, но все-таки) при потере связи с сервером вылетать нахрен с ошибкой, унося все сделанные за последние часы изменения в известном направлении — это просто доводило до белого каления, особенно учитывая весьма тормозной процесс сохранения изменений на сервере: просто так после каждого ввода не посохраняешься.
Обычно народ всё же ведёт разработку на локалках. Соответственно, этой беды никто и не знает.
V>>2. Насчёт убожества... E__>Как у всех — это как у кого? Как у блокнота? Рефакторинга нет(вообще нет, даже простейших функций)
Рефакторинг — большая отдельная тема. Чего конкретно не хватает?
E__>навигация по коду через поиск
Враньё. Т.е. через поиск, конечно, тоже можно, но есть способы и получше.
E__>(причем регекспов нет, и исходы не являются текстовиками, т.е. хрен поищешь внешними средствами — е..тесь на здоровье, называется)
Чего нет, того нет. Впрочем, стонов по этому поводу не слышно. И даже не могу сходу вспомнить, когда последний раз горевал по этому поводу.
E__>да и вообще, чем искать недостатки, проще перечислить то, что это убожество умеет. По сути, кроме редактирования, глюковатого и неполноценного ассиста, и подсветки — ничего. В результате действие, которое в студии/идее/эклипсе делается парой хоткеев/кликов и занимает секунду, превращается в дикий геморрой, состоящей из тупой ручной работы. Меня выводило из себя, что приходится делать работу, которую давно уже умеет делать компьютер.
Ругани много, а конкретики мало.
E__>>Ну, и чудная привычка конфигуратора(ну, не сам редактор, но все-таки) при потере связи с сервером вылетать нахрен с ошибкой, унося все сделанные за последние часы изменения в известном направлении — это просто доводило до белого каления, особенно учитывая весьма тормозной процесс сохранения изменений на сервере: просто так после каждого ввода не посохраняешься. V>Обычно народ всё же ведёт разработку на локалках. Соответственно, этой беды никто и не знает.
Я себе слабо это представляю. Как они синхронизировались? Я еще понимаю, всем работать на сервере через RDP, но это неприятно даже по стомегабитке, а если сервер физически хрен знает где(как было у нас)?
Вот есть 20 человек, работают одновременно над конфигурацией. Каким образом организовать так, чтобы все работали на локали?
V>>>2. Насчёт убожества... E__>>Как у всех — это как у кого? Как у блокнота? Рефакторинга нет(вообще нет, даже простейших функций) V>Рефакторинг — большая отдельная тема. Чего конкретно не хватает?
Как минимум выделение/индалайн функций/переменных, переименования. Ну, переносы и работа с классами для 1с не особо нужна, зато там можно накопать кучу очень специфических именно для этой платформы рефакторингов. Да даже элементарное: хочу я в try-catch блок заключить(вообще-то, это даже рефакторинг, так, мелочь) — ручками все, следить за видимостью переменных тоже ручками. Это то, что используется постоянно, и отсутствие бесит.
E__>>навигация по коду через поиск V>Враньё. Т.е. через поиск, конечно, тоже можно, но есть способы и получше.
Как мне найти все использования метода СуперДокумент.сделатьХрень()? Причем желательно без вхождений СуперДокумент.сделатьХрень(чтототамб, ещечтототам), и без СуперДокумент.сделатьХрень2(), и без СуперДокумент2.сделатьХрень()?
E__>>(причем регекспов нет, и исходы не являются текстовиками, т.е. хрен поищешь внешними средствами — е..тесь на здоровье, называется) V>Чего нет, того нет. Впрочем, стонов по этому поводу не слышно. И даже не могу сходу вспомнить, когда последний раз горевал по этому поводу.
Это потому, что в нормальных ide не приходилось работать. Впрочем, в них обычно настолько навороченные системы навигации по коду, что регекспы нужны только для ооооочень хитрых случаев.
Новости очень смешные. Зря вы не смотрите. Как будто за наркоманами подсматриваешь. Только тетка с погодой в завязке.
There is no such thing as a winnable war.
Здравствуйте, Eugeny__, Вы писали:
E__>>>Я, как человек, который сталкивался ранее(слава яйцам, несильно) с программированием на 1с, заявляю, что неудобство интерфейса просто ничто по сравнению с убожеством и глючностью тамошнего редактора кода. V>>Чисто ради интереса. 6, 7 или 8? E__>Восьмерка. Что там в более ранних версиях, я даже боюсь думать.
Здравствуйте, Eugeny__, Вы писали:
V>>Обычно народ всё же ведёт разработку на локалках. Соответственно, этой беды никто и не знает. E__>Я себе слабо это представляю. Как они синхронизировались? Я еще понимаю, всем работать на сервере через RDP, но это неприятно даже по стомегабитке, а если сервер физически хрен знает где(как было у нас)? E__>Вот есть 20 человек, работают одновременно над конфигурацией. Каким образом организовать так, чтобы все работали на локали?
В 8-ке есть штука типа SourceSafe, называется "хранилище конфигурации". Захватываешь объект, правишь, выкладываешь. Работает как по локалке, так и через HTTP. CVS, конечно, мощнее и интереснее, но эта штука тоже вполне ничего себе работает. Вдвадцатером, конечно, тяжковато толкаться локтями, но при грамотной постановке процесса неудобства почти минимальны.
V>>Рефакторинг — большая отдельная тема. Чего конкретно не хватает? E__>Как минимум выделение/индалайн функций/переменных, переименования. Ну, переносы и работа с классами для 1с не особо нужна, зато там можно накопать кучу очень специфических именно для этой платформы рефакторингов. Да даже элементарное: хочу я в try-catch блок заключить(вообще-то, это даже рефакторинг, так, мелочь) — ручками все, следить за видимостью переменных тоже ручками. Это то, что используется постоянно, и отсутствие бесит.
У каждого есть свои любимые "фишки", отсутствие которых будет бесить до тех пор, пока им не найдётся полноценной альтернативы. Или не изменится юзкейс.
E__>Как мне найти все использования метода СуперДокумент.сделатьХрень()? Причем желательно без вхождений СуперДокумент.сделатьХрень(чтототамб, ещечтототам), и без СуперДокумент.сделатьХрень2(), и без СуперДокумент2.сделатьХрень()?
Только рУками через поиск. Потому что динамическая типизация. Невозможно отследить, чем является МояПеременная.сделатьХрень() — СуперДокумент.сделатьХрень() или СуперДокумент2.сделатьХрень().
С обращением к атрибутам вообще ситуация может быть драматичной (извиняюсь за нетипично выглядящий на КЫВТе код):
Функция НайтиЧушь(СуперДокумент, МассивИменРеквизитов)
Для каждого ИмяРеквизита из МассивИменРеквизитов Цикл
Если СуперДокумент[ИмяРеквизита] = "Чушь" Тогда
Сообщить("Опаньки! В реквизите "+ИмяРеквизита+" какая-то чушь!");
КонецЕсли;
КонецЦикла;
КонецФункции
На мой взгляд, инструмент пусть или работает абсолютно надёжно, или лучше ну его на фиг.
E__>Это потому, что в нормальных ide не приходилось работать. Впрочем, в них обычно настолько навороченные системы навигации по коду, что регекспы нужны только для ооооочень хитрых случаев.
Многие IDE видел, многие юзал, некоторые из них — годами. Бывали не принципиально лучшие, бывали чудовищно хуже (например, у Navision 3).
есть факт №30: COBOL – это очень плохой язык, но все остальные (для обработки бизнес-данных) гораздо хуже.
В современной России он звучит немножко по-другому: 1С – это очень плохой язык, но все остальные (для обработки бизнес-данных) гораздо хуже.
Здравствуйте, Voblin, Вы писали:
V>В 8-ке есть штука типа SourceSafe, называется "хранилище конфигурации". Захватываешь объект, правишь, выкладываешь. Работает как по локалке, так и через HTTP. CVS, конечно, мощнее и интереснее, но эта штука тоже вполне ничего себе работает. Вдвадцатером, конечно, тяжковато толкаться локтями, но при грамотной постановке процесса неудобства почти минимальны.
Для вас CVS мощная штука?
Не знаю стоит ли, но я бы посоветовал хотяб познакомиться с нормальными системами контроля версий: git, hg, svn на худой конец
Здравствуйте, Курилка, Вы писали:
К>Для вас CVS мощная штука? К>Не знаю стоит ли, но я бы посоветовал хотяб познакомиться с нормальными системами контроля версий: git, hg, svn на худой конец
Я имел в виду не сам CVS, а тот принцип коллективной работы, когда не нужно "намертво" захватывать исходники.
V>В 8-ке есть штука типа SourceSafe, называется "хранилище конфигурации". Захватываешь объект, правишь, выкладываешь. Работает как по локалке, так и через HTTP. CVS, конечно, мощнее и интереснее, но эта штука тоже вполне ничего себе работает. Вдвадцатером, конечно, тяжковато толкаться локтями, но при грамотной постановке процесса неудобства почти минимальны.
Ну, я и имел ввиду это самое хранилище конфигурации, говоря "сервер". Так вот при ошибке связи до этого самого хранилища конфигуратор регулярно падал. Если я ничего не путаю, давно было. Помню точно что проблема была, и соков выпила более чем достаточно.
V>>>Рефакторинг — большая отдельная тема. Чего конкретно не хватает? E__>>Как минимум выделение/индалайн функций/переменных, переименования. Ну, переносы и работа с классами для 1с не особо нужна, зато там можно накопать кучу очень специфических именно для этой платформы рефакторингов. Да даже элементарное: хочу я в try-catch блок заключить(вообще-то, это даже рефакторинг, так, мелочь) — ручками все, следить за видимостью переменных тоже ручками. Это то, что используется постоянно, и отсутствие бесит.
V>У каждого есть свои любимые "фишки", отсутствие которых будет бесить до тех пор, пока им не найдётся полноценной альтернативы. Или не изменится юзкейс.
Знаешь, возвращаясь в студию с решарпером(проект был интеграционный), чтобы сделать что-то в шарповой части проекта, я испытывал огромное удовольствие от работы в контрасте с 1с — в ней мне не приходилось воевать со средой, оставалось только заниматься работой, не отвлекаясь на всякую херню.
E__>>Как мне найти все использования метода СуперДокумент.сделатьХрень()? Причем желательно без вхождений СуперДокумент.сделатьХрень(чтототамб, ещечтототам), и без СуперДокумент.сделатьХрень2(), и без СуперДокумент2.сделатьХрень()?
V>Только рУками через поиск. Потому что динамическая типизация. Невозможно отследить, чем является МояПеременная.сделатьХрень() — СуперДокумент.сделатьХрень() или СуперДокумент2.сделатьХрень().
Ну вот, как раз про поиск я и говорил. Который без регекспов. Процесс поиска бесит очень сильно. А вариантов все равно нет.
V>С обращением к атрибутам вообще ситуация может быть драматичной (извиняюсь за нетипично выглядящий на КЫВТе код): V>
V>Функция НайтиЧушь(СуперДокумент, МассивИменРеквизитов)
V> Для каждого ИмяРеквизита из МассивИменРеквизитов Цикл
V> Если СуперДокумент[ИмяРеквизита] = "Чушь" Тогда
V> Сообщить("Опаньки! В реквизите "+ИмяРеквизита+" какая-то чушь!");
V> КонецЕсли;
V> КонецЦикла;
V>КонецФункции
V>
Ага, видел похожие финты. Очень увлекательно диагностировать ошибки в таком коде, выполняющемся хрен знает где на живой базе, особенно учитывая, что кто-то мог что-то модифицировать.
E__>>Это потому, что в нормальных ide не приходилось работать. Впрочем, в них обычно настолько навороченные системы навигации по коду, что регекспы нужны только для ооооочень хитрых случаев. V>Многие IDE видел, многие юзал, некоторые из них — годами. Бывали не принципиально лучшие, бывали чудовищно хуже (например, у Navision 3).
Посмотри студию с решарпером, идею, да на крайняк хоть эклипс — это нормальные современные IDE. Я понимаю, что бывает и хуже 1с, но до современной IDE он не дотягивает ну никак. И если изначально писать только на 1с, то может и нормально, но после пользования указанными продуктами, 1с кажется просто кошмаром.
V>В книжке, представленной здесь
есть факт №30: COBOL – это очень плохой язык, но все остальные (для обработки бизнес-данных) гораздо хуже. V>В современной России он звучит немножко по-другому: 1С – это очень плохой язык, но все остальные (для обработки бизнес-данных) гораздо хуже.
Это-то и плохо. Была бы вменяемая конкуренция, прогресс продвигался бы куда быстрее.
Новости очень смешные. Зря вы не смотрите. Как будто за наркоманами подсматриваешь. Только тетка с погодой в завязке.
There is no such thing as a winnable war.
Здравствуйте, Voblin, Вы писали:
V>Здравствуйте, Курилка, Вы писали:
К>>Для вас CVS мощная штука? К>>Не знаю стоит ли, но я бы посоветовал хотяб познакомиться с нормальными системами контроля версий: git, hg, svn на худой конец
V>Я имел в виду не сам CVS, а тот принцип коллективной работы, когда не нужно "намертво" захватывать исходники.
Тут как раз хз. В принципе, ничего особо плохого нет в захвате — нет геморроя со сведением дифов. Вообще говоря, в нормально организованном проекте должно быть пофиг: просто не должна возникать необходимость в одновременной правке разными людьми одного кода. Вот только из-за специфики, как раз в 1с довольно часто было, что нужно поправить что-то в уже залоченом кем-то документе. Учитывая, что географически разработчики могли находиться далеко друго от друга, иногда это было проблемой.
Новости очень смешные. Зря вы не смотрите. Как будто за наркоманами подсматриваешь. Только тетка с погодой в завязке.
There is no such thing as a winnable war.