Здравствуйте, arabo_xv, Вы писали:
_>У него возможности достаточные с учётом динамической типизации. Ещё раз пробуйте ответить на вопрос
_>
_>Процедура СуперПуперПроцедура(переменная)
_> Переменная. <-Что тут должна подсказать IDE если она понятия не имеет что это за тип передан в процедуру, а передать туда можно всё что угодно?
_>КонецПроцедуры
_>
Просмотреть все места, где процедура вызвается, проанализировать во всех случаях все передаваемые типы(да, да — анализировать все возможные варианты вызовов вплоть до определений переменных), и показать подстановку. Более того, высветить ворнинги в случае, если процедура
_>
вызвается где-то для объекта(-ов), в котором метода сделатьХрень() нету, и предложить, например, добавить такой метод в объекте(-ах).
Иде должна знать все про сруктуру кода в проекте — все вызовы, объявления, а не работать с ним как с разрозненными кусками текста. Да и, если честно, если не строгую, то хотя-бы "рекомендательную" типизацию ввести не мешало бы.
_>>>Одним словом учите мат часть и не стоит быть категоричным хотя бы до того как не прочитаете документацию к продукту. Ошибиться или чего-то не знать может каждый, но исходить из позиции "я этого не знаю значит этого нет" очень глупо.
Новости очень смешные. Зря вы не смотрите. Как будто за наркоманами подсматриваешь. Только тетка с погодой в завязке.
There is no such thing as a winnable war.
Здравствуйте, wety, Вы писали:
W>Здравствуйте, arabo_xv, Вы писали:
W>>>1. Работать в конфигураторе может только один человек. То бишь разрабатывать базу можно только в одиночку. Как следствие — необходимость согласовывать график работы с конфигуратором между сотрудниками, что также увеличивает на порядок срок разработки на 1С. _>>Хм вы что 2 человека из одних исходников работаете? Для таких вещей есть разные системы контроля версий например svn. У 1С есть своя система контроля версий "хранилище конфигурации" называется. Читайте документацию.
W>Эту "систему контроля версий" мы и используем. Но она почему-то плохо работает — не может обслужить даже двух сотрудников (один делает чек-ин, второй — чек-аут). Ошибки сыпятся как из рога изобилия....
Сегодня работали 3 человек активно меняли конфигурацию никаких конфликтов и тем более ошибок. Видимо вы не совсем то делаете что нужно.
W>>>2. Чекиниться в 1С вообще как-то плохо (крайне медленно, неудобно, не пафосно). _>>Вы забываете что вы там не "чекитесь", а проводите обновление информационной базы и время которое для этого нужно зависит от размера базы и типа внесённых изменений. Хотя я думаю вы время запуска приложения для отладки также прибавляете в "чегингу", хотя это время может занимать минуты и зависит исключительно от заложенной бизнес логики которую надо отработать при запуске приложения. Учите мат часть!!!
W>>>3. Часто в период работы с ТСД (терминалом сбора данных) вылетают ошибки разрыва связи или ещё хуже.
_>>При чём тут 1С !?
W>При том, что ошибки сыпятся на стороне стандартных серверных процедур 1С в типовой конфигурации.
Вы разницу между платформой, конфигурацией и внешней библиотекой посмотрите. Конфигурация != платформа. Вот вы пишете конфигурацию, а не платформу. Если в вашем коде ошибка это не значит что 1с "балалайка", а значит что вы написали на 1с "балалайку"
W>>>4. Нет он-лайн аналога решарпера. Поэтому непонятно, какие процедуры используются, а какие — нет.
_>>Учите мат часть в конфигураторе есть проверки которые показывают список процедур/функций которые не используются. Так же показывает когда не хватает обработчика событий и ещё кучу вещей.
W>Балалайка наподобие "Конфигурация -> Проверка конфигурации" не канает. Посмотрите на неё здравыми глазами.
Что конкретно вам нужно? Вы сказали что " непонятно, какие процедуры используются, а какие — нет" это в конфигураторе есть, работает и не вызывает нареканий.
W>>>5. Нет IntelliSense (есть какая-то плохонькая поделка, которая чем-то напоминает интеллектуальную подсказку).
_>>Хм вы хоть понимаете разницу между динамической и статической типизацией ?
W>Именно поэтому 1С и есть балалайка, раз позволяет выполнять такие грубейшие ошибки. Ошибка, которая выявляется во время исполнения (а этому ОЧЕНЬ способствует как раз динамическая типизация) — может быть ещё и крайне трудно обнаружимой и недетерминированной.
Мда вас занесло кажись. Динамическая типизация это особенность 1С и её положительная черта за которую приходиться платить. Для примера я на 1с сделал конфигурацию для учёта материальных ценностей IT департамента и систему планирования затрат за 3 полных рабочих дня. По функционалу это разработка даст фору любой которую вы напишете за этот же период. 1С заточен не под написание драйверов и утилит, а под создание ERP.
W>Так что согласен с Вами по поводу того, что 1С — это очень сложный и своеобразный язык программирования.
1с имеет один из самых простых языков программирования и я его освоил за 1 день, как и все остальные мои сотрудники. А вот изучение платформы заняло больше времени целых 3 недели.
Здравствуйте, Eugeny__, Вы писали:
E__>Здравствуйте, arabo_xv, Вы писали:
_>>У него возможности достаточные с учётом динамической типизации. Ещё раз пробуйте ответить на вопрос
_>>
_>>Процедура СуперПуперПроцедура(переменная)
_>> Переменная. <-Что тут должна подсказать IDE если она понятия не имеет что это за тип передан в процедуру, а передать туда можно всё что угодно?
_>>КонецПроцедуры
_>>
E__>Просмотреть все места, где процедура вызвается, проанализировать во всех случаях все передаваемые типы(да, да — анализировать все возможные варианты вызовов вплоть до определений переменных), и показать подстановку. Более того, высветить ворнинги в случае, если процедура
Кажется вы не оцениваете масштабов вычислительных ресурсов которые на это понадобятся. Для заметки в среднем конфигурация это 40-60 мб кода и структур описания данных. А какой у вас самый большой объём кода в с# ?
_>>
E__>вызвается где-то для объекта(-ов), в котором метода сделатьХрень() нету, и предложить, например, добавить такой метод в объекте(-ах). E__>Иде должна знать все про сруктуру кода в проекте — все вызовы, объявления, а не работать с ним как с разрозненными кусками текста. Да и, если честно, если не строгую, то хотя-бы "рекомендательную" типизацию ввести не мешало бы.
Про структуру она знает всё, а вот про код не очень много. Рекомендательную типизацию ввести можно но мало когда она вам поможет.
_>>>>Одним словом учите мат часть и не стоит быть категоричным хотя бы до того как не прочитаете документацию к продукту. Ошибиться или чего-то не знать может каждый, но исходить из позиции "я этого не знаю значит этого нет" очень глупо.
Здравствуйте, arabo_xv, Вы писали:
_>>>У него возможности достаточные с учётом динамической типизации. Ещё раз пробуйте ответить на вопрос
_>>>
_>>>Процедура СуперПуперПроцедура(переменная)
_>>> Переменная. <-Что тут должна подсказать IDE если она понятия не имеет что это за тип передан в процедуру, а передать туда можно всё что угодно?
_>>>КонецПроцедуры
_>>>
E__>>Просмотреть все места, где процедура вызвается, проанализировать во всех случаях все передаваемые типы(да, да — анализировать все возможные варианты вызовов вплоть до определений переменных), и показать подстановку. Более того, высветить ворнинги в случае, если процедура
_>Кажется вы не оцениваете масштабов вычислительных ресурсов которые на это понадобятся. Для заметки в среднем конфигурация это 40-60 мб кода и структур описания данных. А какой у вас самый большой объём кода в с# ?
40-60 метров это не так много. Это вообще немного. Даже если парсить каждый раз. Но учтем, что в 1С код хранится в собственном формате а не как текстовые файлы, и его можно править только средствами 1С, а значит, метаинформацию о структуре можно хранить рядышком с кодом, а не парсить каждый раз при загрузке программы. Ну и изменять только то, что относится к редактируемому сейчас коду. Вобщем, все более чем реально, просто в 1С на это положили толстый болт.
Новости очень смешные. Зря вы не смотрите. Как будто за наркоманами подсматриваешь. Только тетка с погодой в завязке.
There is no such thing as a winnable war.
Здравствуйте, Eugeny__, Вы писали:
E__>Здравствуйте, arabo_xv, Вы писали:
_>>>>У него возможности достаточные с учётом динамической типизации. Ещё раз пробуйте ответить на вопрос
_>>>>
_>>>>Процедура СуперПуперПроцедура(переменная)
_>>>> Переменная. <-Что тут должна подсказать IDE если она понятия не имеет что это за тип передан в процедуру, а передать туда можно всё что угодно?
_>>>>КонецПроцедуры
_>>>>
E__>>>Просмотреть все места, где процедура вызвается, проанализировать во всех случаях все передаваемые типы(да, да — анализировать все возможные варианты вызовов вплоть до определений переменных), и показать подстановку. Более того, высветить ворнинги в случае, если процедура
_>>Кажется вы не оцениваете масштабов вычислительных ресурсов которые на это понадобятся. Для заметки в среднем конфигурация это 40-60 мб кода и структур описания данных. А какой у вас самый большой объём кода в с# ?
E__>40-60 метров это не так много. Это вообще немного. Даже если парсить каждый раз. Но учтем, что в 1С код хранится в собственном формате а не как текстовые файлы, и его можно править только средствами 1С, а значит, метаинформацию о структуре можно хранить рядышком с кодом, а не парсить каждый раз при загрузке программы. Ну и изменять только то, что относится к редактируемому сейчас коду. Вобщем, все более чем реально, просто в 1С на это положили толстый болт.
Поставив только один чекбокс я затрону не менее 30% объектов ну и соответственно ваш кеш накрылся. А кеш у вас будет неимоверных размеров так как 40 мб это запакованный код.
Попробуйте сами сделать такой механизм который вы предлагаете сделать 1с.
Здравствуйте, arabo_xv, Вы писали:
E__>>>>Просмотреть все места, где процедура вызвается, проанализировать во всех случаях все передаваемые типы(да, да — анализировать все возможные варианты вызовов вплоть до определений переменных), и показать подстановку. Более того, высветить ворнинги в случае, если процедура
_>>>Кажется вы не оцениваете масштабов вычислительных ресурсов которые на это понадобятся. Для заметки в среднем конфигурация это 40-60 мб кода и структур описания данных. А какой у вас самый большой объём кода в с# ?
E__>>40-60 метров это не так много. Это вообще немного. Даже если парсить каждый раз. Но учтем, что в 1С код хранится в собственном формате а не как текстовые файлы, и его можно править только средствами 1С, а значит, метаинформацию о структуре можно хранить рядышком с кодом, а не парсить каждый раз при загрузке программы. Ну и изменять только то, что относится к редактируемому сейчас коду. Вобщем, все более чем реально, просто в 1С на это положили толстый болт.
_>Поставив только один чекбокс я затрону не менее 30% объектов ну и соответственно ваш кеш накрылся. А кеш у вас будет неимоверных размеров так как 40 мб это запакованный код.
Чекбокс изменит код 30% объектов?
Пример?
_>Попробуйте сами сделать такой механизм который вы предлагаете сделать 1с.
Ну, во-первых, код и форматы 1С закрыты.
А во вторых... Из-за во-первых, это не имеет смысла.
Ну а вообще, если есть реальное предложение — обращайся, например, в JetBrains — эти люди очень хорошо знают, как работать с кодом. И их почему-то не останавливают ни нетипизированность языков, ни объемы(реально смешно читать, когда ты про 50 мегабайт кода думаешь, что это "очень много"). Думаю, если в 1С хотели бы нормальную IDE, то или сами бы написали, или у тех же ДжетБерйнсов заказали. Но они монополисты, которым срать на программеров(уу, а какая у них техподдержка, просто сказка), потому мы этого не увидим.
Новости очень смешные. Зря вы не смотрите. Как будто за наркоманами подсматриваешь. Только тетка с погодой в завязке.
There is no such thing as a winnable war.
Здравствуйте, wety, Вы писали:
W>1. Работать в конфигураторе может только один человек. То бишь разрабатывать базу можно только в одиночку. Как следствие — необходимость согласовывать график работы с конфигуратором между сотрудниками, что также увеличивает на порядок срок разработки на 1С.
Используй хранилище.
W>5. Нет IntelliSense (есть какая-то плохонькая поделка, которая чем-то напоминает интеллектуальную подсказку).
Переходи на 77 — там это реализовано
Да и для 8.2 пишется потихоньку.
S>> Определения= новый WSОпределения(АдресВэбСервиса+"?wsdl","Юзер","Пароль"); S>> Прокси= Новый WSПрокси(Определения,URiПространстваИмен,ИмяВэбСервиса,ИмяТочкиПодключения);
S>> Прокси.Пользователь = "Юзер"; S>> Прокси.Пароль = "Пароль";
S>> возврат прокси S>>КонецФункции
K>Что — так и пишете, одновременно на двух языках, постоянно переключая раскладку? Это же ппц полный...
При этом многие(по статистике) не знают, или не придают внимание, что точка с запятой может ставиться в русской раскладке как шифт+4, и постоянно клацают раскладку для этого...
Новости очень смешные. Зря вы не смотрите. Как будто за наркоманами подсматриваешь. Только тетка с погодой в завязке.
There is no such thing as a winnable war.
Здравствуйте, Eugeny__, Вы писали:
E__>При этом многие(по статистике) не знают, или не придают внимание, что точка с запятой может ставиться в русской раскладке как шифт+4, и постоянно клацают раскладку для этого...
Я просто помню, когда ещё в России работал над веб-проектами — необходимость постоянно переключаться просто выбивала из колеи... А тут вообще — идентификаторы сразу на двух языках — с ума сойти можно...
E__>>При этом многие(по статистике) не знают, или не придают внимание, что точка с запятой может ставиться в русской раскладке как шифт+4, и постоянно клацают раскладку для этого...
K>Я просто помню, когда ещё в России работал над веб-проектами — необходимость постоянно переключаться просто выбивала из колеи... А тут вообще — идентификаторы сразу на двух языках — с ума сойти можно...
Прибавь к этому полную деревянность IDE для 1С в плане управления кодом(она лучше блокнота только подсветкой и кривой подстановкой, работающей через раз — господи, я был рад почти до оргазма убогому решарперу, который сам по себе не более, чем тень от Идеи, после возвращения из 1С редактора в студию), которая тормозит и глючит, и ты поймешь, почему я сменил прошлую работу несмотря на обещания повысить зп в два раза, если останусь(до этого работал с шарпом и горя не знал, но потом начался проект по интеграции 1С с шарпом...).
Новости очень смешные. Зря вы не смотрите. Как будто за наркоманами подсматриваешь. Только тетка с погодой в завязке.
There is no such thing as a winnable war.
Здравствуйте, Eugeny__, Вы писали:
E__>Прибавь к этому полную деревянность IDE для 1С в плане управления кодом(она лучше блокнота только подсветкой и кривой подстановкой, работающей через раз — господи, я был рад почти до оргазма убогому решарперу, который сам по себе не более, чем тень от Идеи, после возвращения из 1С редактора в студию), которая тормозит и глючит, и ты поймешь, почему я сменил прошлую работу несмотря на обещания повысить зп в два раза, если останусь(до этого работал с шарпом и горя не знал, но потом начался проект по интеграции 1С с шарпом...).
Я в своё время успел поработать и с перлом, и с пыхыпы, так что я знаю очень неплохо, что такое отсутствующая ИДЕ. Студия после этого кошмара кажется просто манной небесной.
Здравствуйте, arabo_xv, Вы писали:
_>Повторюсь при чём тут 1с? Данный в 1С приходят от внешней компоненты которая и занимается вопросами соединения с устройством и чтения данных.
У Вас есть решение проблемы с разрывом соединения с ошибкой в DataExchangeTCPClientImpl.cpp? Можно в личку подробности? Версия 8.1.15.
Здравствуйте, _ABC_, Вы писали:
_AB>Здравствуйте, arabo_xv, Вы писали:
_>>Повторюсь при чём тут 1с? Данный в 1С приходят от внешней компоненты которая и занимается вопросами соединения с устройством и чтения данных.
_AB>У Вас есть решение проблемы с разрывом соединения с ошибкой в DataExchangeTCPClientImpl.cpp? Можно в личку подробности? Версия 8.1.15.
DataExchangeTCPClientImpl.cpp, а это как связанно с ТСД ? Вы определитесь у вас разрыв соединения у ТСД или у платформы ошибка ?
Здравствуйте, Eugeny__, Вы писали:
E__>Здравствуйте, arabo_xv, Вы писали:
E__>>>>>Просмотреть все места, где процедура вызвается, проанализировать во всех случаях все передаваемые типы(да, да — анализировать все возможные варианты вызовов вплоть до определений переменных), и показать подстановку. Более того, высветить ворнинги в случае, если процедура
_>>>>Кажется вы не оцениваете масштабов вычислительных ресурсов которые на это понадобятся. Для заметки в среднем конфигурация это 40-60 мб кода и структур описания данных. А какой у вас самый большой объём кода в с# ?
E__>>>40-60 метров это не так много. Это вообще немного. Даже если парсить каждый раз. Но учтем, что в 1С код хранится в собственном формате а не как текстовые файлы, и его можно править только средствами 1С, а значит, метаинформацию о структуре можно хранить рядышком с кодом, а не парсить каждый раз при загрузке программы. Ну и изменять только то, что относится к редактируемому сейчас коду. Вобщем, все более чем реально, просто в 1С на это положили толстый болт.
_>>Поставив только один чекбокс я затрону не менее 30% объектов ну и соответственно ваш кеш накрылся. А кеш у вас будет неимоверных размеров так как 40 мб это запакованный код.
E__>Чекбокс изменит код 30% объектов? E__>Пример?
Сделать тип у реквизита составным.
_>>Попробуйте сами сделать такой механизм который вы предлагаете сделать 1с.
E__>Ну, во-первых, код и форматы 1С закрыты. E__>А во вторых... Из-за во-первых, это не имеет смысла.
Для 7.7 людей это не остановило и сделали альтернативный IDE. Коды и структура конфигурации достаётся из 1С легким движением руки. Есть даже готовые парсеры кода 1с и даже компиляторы кода 1с в C# .net. Дерзайте.
E__>Ну а вообще, если есть реальное предложение — обращайся, например, в JetBrains — эти люди очень хорошо знают, как работать с кодом. И их почему-то не останавливают ни нетипизированность языков, ни объемы(реально смешно читать, когда ты про 50 мегабайт кода думаешь, что это "очень много"). Думаю, если в 1С хотели бы нормальную IDE, то или сами бы написали, или у тех же ДжетБерйнсов заказали. Но они монополисты, которым срать на программеров(уу, а какая у них техподдержка, просто сказка), потому мы этого не увидим.
Вот объясните мне смысл тролить о том 1с белая и пушистая или дьявол во плоти.
Для языка с динамической типизацией это много. Нет в природе IDE который делает то что вы хотите (я могу ошибаться но тогда просветите меня ), а именно чтобы понимала какой тип может быть передан в процедуру если язык имеет динамическую типизацию. То есть туда как int можно передать так и динамически генерированную структуру состоящую из микса сложных объектов. Невозможного ничего нет многое можно предугадать, но остаётся вопрос о цене такого предугадывания.
Здравствуйте, arabo_xv, Вы писали:
_AB>>У Вас есть решение проблемы с разрывом соединения с ошибкой в DataExchangeTCPClientImpl.cpp? Можно в личку подробности? Версия 8.1.15. _>DataExchangeTCPClientImpl.cpp, а это как связанно с ТСД ? Вы определитесь у вас разрыв соединения у ТСД или у платформы ошибка ?
Не, не с ТСД, прошу прощения. У платформы ошибка при работе в терминале. Как говорится, что у кого болит, за то глаз и зацепится.
Нашёл ещё одну багофичу.
Работа в 1С напоминает игру с пошаговой стратегией.
Поставить ещё одну точку останова, находясь в Runtime занимает 8-12 секунд.
Хотя иногда достаточно быстро добавляет точки останова в других функциях/процедурах/модулях.
И ещё, в режиме просмотра значения переменной (функция "Вычислить выражение") не работает IntelliSense (платформа 8.1 и 8.2). Хм...
Здравствуйте, wety, Вы писали:
W>Здравствуйте, arabo_xv, Вы писали:
W>Нашёл ещё одну багофичу. W>Работа в 1С напоминает игру с пошаговой стратегией. W>Поставить ещё одну точку останова, находясь в Runtime занимает 8-12 секунд.
3 года уже как приходиться работать с 1С. Установка точки остановки в рантайме основной сценарий работы. Что-то я не помню такой проблемы.
W>Хотя иногда достаточно быстро добавляет точки останова в других функциях/процедурах/модулях.
W>И ещё, в режиме просмотра значения переменной (функция "Вычислить выражение") не работает IntelliSense (платформа 8.1 и 8.2). Хм...
А там его и нет с чего ему там работать Хотя именно там он может точно определить что за методы и свойства есть у объекта так как его тип уже известен.
Здравствуйте, arabo_xv, Вы писали:
_>3 года уже как приходиться работать с 1С. Установка точки остановки в рантайме основной сценарий работы. Что-то я не помню такой проблемы.
Ну да, если использовать файловый режим работы, то так прокатывает. А вот при работе в серверном варианте (MS SQL 2008) — нет.
Недавно вот выдалась ещё одна непонятная и страшная ошибка:
"Попытка передачи в функцию .... мутаторного значения 3-го параметра".
На сайте крутых спецов по 1С — Волшебный форум — посоветовали "... мутатор мыть надо было!".
Ой, мрак...
Здравствуйте, wety, Вы писали:
_>>3 года уже как приходиться работать с 1С. Установка точки остановки в рантайме основной сценарий работы. Что-то я не помню такой проблемы. W>Ну да, если использовать файловый режим работы, то так прокатывает. А вот при работе в серверном варианте (MS SQL 2008) — нет.
Не позорься. Сходи на тот же форум, где тебе гигиене учили, и спроси, как отлаживать серверную часть... Там всё елементарно.