Имя: Пароль:
JOB
Работа
А ты правильно разрабатываешь на 1С?
,
0 Pr-Mex
 
22.01.16
15:00
На последнем Инфостарте было много просьб - создать практикум по BDD и объяснить как всем этим пользоваться.
Как и обещали - сделали:
- видеоролики в виде инструкций https://www.youtube.com/playlist?list=PL2zlgf113YhFG_uRARjDtP1_Obj55UmY4
- чат на Gitter, где можно задать вопрос https://gitter.im/silverbulleters/vanessa-behavior
- здесь лежат остальные бесплатные OpenSource инструменты https://github.com/silverbulleters
и потом не говорите, что мы не пытались вас обучить ;-)
296 Злопчинский
 
23.01.16
20:42
(295)  качество нужно точно то, которое позволяет выполнять большинство работ на приемлемом уровне
297 Aleksey
 
23.01.16
20:48
(295) Дорога ложка к обеду. Некому не нужен отчет/доработка которая должна быть еще вчера
298 Злобный Фей
 
23.01.16
21:13
(295) Дада. 99,9% одноэснегов не используют сабжевые инструменты, поэтому им пофигу качество, поэтому они все - галимые овнокодеры. Ога, да.
299 Garykom
 
гуру
23.01.16
21:26
примеры технологий XML, КД, СКД и прочие ничему не учат?

запилит кто то (может и 1С) геркин или аналог свой и все будут как миленькие и на тех кто не пользует смотреть свысока как неосвоивших
300 Garykom
 
гуру
23.01.16
21:26
300
301 Мэс33
 
23.01.16
21:28
Честно говоря, никто не видел, что один 1Сник делал ревью кода другого 1Сника.

Может среди тех, кто пишет типовые, это практикуется, но чаще всего:
- задание должно было быть выполнено вчера, проверять времени нет;
- задача выполнена? клиент доволен? лень проверять, за это не платят;
- среди 1Сников over 90% самоучек, никогда не читавшие даже "Совершенный код" Макконнела, о чем говорить?

Поэтому, возможно сабжем кто-то и будет пользоваться, но только для:
- ускорения написания кода. Больше других целей не вижу.
- (возможно) усложнение написания кода, чтобы потом к проекту этого прогера другой прогер не подступился бы. Ну если вдруг клиент решит другого нанять.
302 Garykom
 
гуру
23.01.16
21:30
(301) еще есть вариант когда сам заказчик геркин или другое требует, и просто без него не согласен
303 Мэс33
 
23.01.16
21:35
(302) >>>сам заказчик геркин
не понял, поясни.
304 Garykom
 
гуру
23.01.16
21:43
(303) заказчик требует разработку по некоему стандарту
в том числе с тестами которые сотрудники или другая контора (по заказу от заказчика) ваяет
и с документацией по стандарту
305 Garykom
 
гуру
23.01.16
21:45
(304)+ к примеру часто при приемке системы ее проверяют не конечные пользователи, а квалифицированные сотрудники конторы
и они решают принимать/нет

а тут они чтобы не париться с тестами по приемке банально говорят "геркина давай" или "а вот наш наборчик тестов"
306 Garykom
 
гуру
23.01.16
21:46
(305)+ и вот как этот набор тестов запустить уже у кого будет голова болеть? если все прописано в договоре на разработку

ЗЫ "ларьки не рассматриваем"©
307 Мэс33
 
23.01.16
21:49
(306) ну у нас такого нет.
Если есть проект ИТ - есть уже "заинтересованные" лица, конечно, если не проект уровня 100 тысяч рублей ))). А заинтересованные лица заинтересованы всегда подписать акт не глядя. Потому что заинтересованы. По крайней все-все-все проекты я видел именно такие.
308 Garykom
 
гуру
23.01.16
22:00
(307) да, согласен
но чем хороша 1С что потом этот принятый проект иногда отдают на доработочку кому то (неважно кому)
и если с этими кто будет "дорабатывать" правильные отношения то нужные пунктики в 1-й договор будут добавлены
309 Мэс33
 
23.01.16
22:02
(307) По крайней все-все-все проекты я видел именно такие.
-->>
По крайней мере все-все-все проекты ...
310 Мэс33
 
23.01.16
22:04
(308) у нас чаще всего "тупые типовые договора". Только добавляют пункт о конфиденциальности и пункт про то, что права на разработанный продукт переходят к клиенту.
311 4St
 
24.01.16
00:45
Вставлю свои 5 копеек.
Работаю в команде. Продукт на 1С8 (внешняя обработка, 70 килострок кода, несколько десятков форм). Несколько разработчиков.
Где-то год назад доросли до автоматизированного тестирования. Написали собственный фреймворк и параллельно поразбирались с xUnitFor1C (предшественник сабжа).
Результаты - количество багов в продукте стало снижаться, причем по 2 причинам:
1) автотесты обоих видов ловят многое перед выпуском очередного релиза, видим это сразу.
2) (и это самое важное). После внедрения xUnit стало меняться мышление. При написании очередной процедуры/функции в голове всплывает мысль "а как это потом автоматически протестировать?". Даже если тесты на данный метод не пишем, код уже заранее становится более простым и разбитым на мелкие блоки, в каждом из которых допустить ошибку гораздо сложнее, чем в одной большой портянке на 300 строк.
Ну и разбираться в собственном коде и коде коллег стало теперь проще.

Попутно прикрутили связку с GIT и настроили фоновую рассылку по всей команде при коммитах. Результат - каждый видит, что изменилось в коде за сегодня, и если в глаза бросилась какая-то ошибка, это можно сразу обсудить. Заодно в каких-то спорных моментах всегда можно поднять историю изменения кода вплоть до каждой строки и увидеть, когда она менялась, кем и с какой целью.

Год назад, когда в первый раз увидели описание xUnit, первой мыслью было "шоэтозахрень????". Оказалось, очень даже полезная и удобная штука. Потом почитали про BDD, и после слова "Gherkin" появилась все та же мысль. Увы, до TDD/BDD пока не доросли. Но есть стойкое ощущение, что пора бы уже.
312 Garykom
 
гуру
24.01.16
00:53
(311) вот это https://infostart.ru/public/439926/ ?
313 4St
 
24.01.16
00:57
(312) Нет, это в свободное время, команды пока нет, и там идеология несколько поменялась.
https://infostart.ru/public/402490/ - там как раз про xUnit и GIT.
314 Хранимая Процедура
 
24.01.16
00:57
тред - доказательство простого факта, о том, что 1С-ники - это не программисты, а специалисты по нстройке конфигураций со знаниями встроенного языка
315 Хранимая Процедура
 
24.01.16
00:58
кто первый скажет, для чего нужен стаб, а для чего - мок - тот не лох.
316 Хранимая Процедура
 
24.01.16
01:01
а и да, докажите, что синглтон - это уже антинпаттерн.
317 Asmody
 
24.01.16
01:02
(316) а CAP-теорему тебе не решить?
318 Хранимая Процедура
 
24.01.16
01:08
и скажите, чем фреймворк отличается от библиотеки.

Это так, из темы для собеседований.

(317) - ты так говоришь, как будто знаешь наизусть треугольник CAP
319 Хранимая Процедура
 
24.01.16
01:12
и да, если ты такой вумный, то лайки на этом вашем фейсбучке ты в каком хранилище будешь хранить?
320 Asmody
 
24.01.16
01:14
(318) Ух ты! KabelDeutschland теперь и в Интернет пускает! Через Docsis небось? Модемчик от Motorolla или уже арисовский?
321 Asmody
 
24.01.16
01:15
И почем нынче в этих ваших дойчландах безлимит? Или все еще помегабайтам платите?
322 Garykom
 
гуру
24.01.16
01:17
(313) а где почитать подробно можно?
нам бы для ювелирки такое и для фармацевтики тоже не помешает
а то крупные игроки никак не могут к чему то придти общему
323 Ник080808
 
24.01.16
01:20
(301) "Честно говоря, никто не видел, что один 1Сник делал ревью кода другого 1Сника. " - видел и делаю. Самый тяжелый случай, когда переписывал один отчет, написанный и дописываемый программистами трех фирм. С 16 000 строк кода осталось 2500. При этом функциональность не изменилась. Зато добавление поля в отчете занимало уже не 8 часов, а 5 минут из которых 3 запуск и открытие отчета. На счет "среди 1Сников over 90% самоучек, никогда не читавшие даже "Совершенный код" Макконнела" не обязательно читать умные книжки, достаточно соблюдать стандарты 1с
324 Хранимая Процедура
 
24.01.16
01:21
(320) - ты не уходи от беседы, Цукербег буйдуйщий.

Ты какое хранилище будешь выбирать для постиков, комментов и лайков?

Сколько их должно быть?

Микросервисную архитектуру будем реализовывать? По старинке на по-ха-пе или на моднячей ноде?

А ну, да - что первое г..но, что второе.

Второе на..ся через неделю непрерывный работы из-за утечек памяти, а на первов стартапчеги уже не модно пейсать.

Будешь беседу поддерживать, коллега?
325 Хранимая Процедура
 
24.01.16
01:26
будешь везде монгу пихать, да? Или реляционку оставишь? Будешь уходить от Oracle? Куда? Маппить схемы данных при переписывании SQL->NoSQL как будешь?

Юнит тесты будешь писать? TDD внедрять? Assert first, Fail first, Continous Runner?

Каждому деву раздашь по помидору? Или в скраме помидоры не нужны?

Зы. Коллега, а вы действительно считаете, что Personal Kanaban влиоженный в Scrum - это over-micro-management?
326 4St
 
24.01.16
01:27
(322) подробнее могу пока разве что по скайпу. Если есть желание поучаствовать, буду рад.
327 Garykom
 
гуру
24.01.16
01:28
(324) нам тоже интересно про будущих владельцев сахарных гор
можно слегка раскрыть тему?
328 Asmody
 
24.01.16
01:32
(325) Мальчик, ты чей, вообще? Сбежал к фашистам — так нехуй пальцы гнуть, "коллега".
И вообще, вопросы на этом форуме задаю Я.
329 Хранимая Процедура
 
24.01.16
01:33
(328) - коллега, я ничего не гну. Я работаю простым быдлокодером вконтактике.
330 Asmody
 
24.01.16
01:39
(329) В этом сборище паленой музыки и порнухи? Не, спасибо, я давно уже не по этой части.
331 Asmody
 
24.01.16
01:40
Кстати, это правда, что ВКонтактик написан на php?
332 Хранимая Процедура
 
24.01.16
01:46
(331) - переписываем на ноду. ОК?
333 Хранимая Процедура
 
24.01.16
01:47
Коллега, вопрос на собеседовании: чем отлиичается MVC от MVP?
334 Asmody
 
24.01.16
01:50
(332) Честно? Херня какая-то получается. Мобильное приложение опять глючит. А как всю музыку с порнушкой с вконтактика выпилят, останетесь вы никому не нужные. Будете на наклеечках зарабатывать. Мейл-то одну соцсеть фактически прикрыл, тупо не зная что с ней делать. А там и с остальными двумя разберется.
335 Asmody
 
24.01.16
01:50
(333) Что-то я не помню, чтобы ты меня на собеседование звал.
336 H A D G E H O G s
 
24.01.16
01:55
(334) Я правильно понимаю, что острабайтер в Германии пишет кот для Российского Вконтактика?
337 Хранимая Процедура
 
24.01.16
01:55
(330) - коллега, когда этот форум будет летать на ноде (именно летать и именно на ноде) и пейсать постики в какое нибудь AP-хранилище, то тогда бы будет говорить о наполнении и IQ ЦА.
338 Asmody
 
24.01.16
02:01
(337) Нахер мне тратить усилия, чтобы заставить этот форум летать на ноде, когда он прекрасно летает на php?
Более того, код этого форума ужасающ. (Именно по этой причине мы с Волшебником вряд ли его выставим на всеобщее обозрение). Но со своей задачей этот код справляется вот уже более 12 лет. Заметьте, в 2003м году некто Дуров грыз гранит наук с переменным успехом и ни о каком вконтактике даже не помышлял.
339 Garykom
 
гуру
24.01.16
02:02
правильно ли я понял что мелкому винтику хочется почесать свое ЧСВ, и он решил что ЧСВ 1С-ников для этого как раз?
340 Хранимая Процедура
 
24.01.16
02:06
(338) - > когда он прекрасно летает на php?

летает? защищен? скажи это школоте с ЛОРа, которая после открытия исходников на sf за 2 минуты взломало ее и уронило .


>Более того, код этого форума ужасающ

что не удивительно.
341 Garykom
 
гуру
24.01.16
02:09
(340) а у вас уже есть три унитаза: золотой, серебряный и фаянсовый?
342 Asmody
 
24.01.16
02:10
(340) Да, и это еще одна причина, по которой код не будет открыт.
Тебе еще невдомёк, что деньги ВР и Я зарабатываем другими способами, а форум так — just for fun: заманивать "крутых перцев", вроде тебя, и наблюдать.
343 zak555
 
24.01.16
02:15
(314)  проги 1с-ники или не проги
главное, что они с лёгкостью получают больше тебя
344 Хранимая Процедура
 
24.01.16
02:20
(343) - и сколько в Москве получает 1Сник по текущему курсу?
345 Asmody
 
24.01.16
02:34
Кстати, а почему на ноде-то? Сейчас модно писать на golang.
346 Хранимая Процедура
 
24.01.16
02:34
120000 gross? больше меня? Я вас умоляю..
347 Хранимая Процедура
 
24.01.16
02:36
(345) - вот когда ты, как сеньор, сможешь собрать тим из 3-4-х гоеров, тогда и поговорим.
348 Asmody
 
24.01.16
02:39
(347) Да нахер ты мне сдался — разговаривать с тобой.
349 Asmody
 
модератор
24.01.16
02:40
Давай проще — я тебя забаню и всё.
350 Гобсек
 
24.01.16
02:53
(343)>они с лёгкостью получают больше тебя

ИМХО, эта информация устарела
351 quest
 
24.01.16
03:09
(0) И вы рассказываете как надо писать? Код vanessa-behavior.epf откройте и скажите честно - как такое можно накурить? Используя BDD/TDD/еще кучу умных слов - юзать сообщить() для отладки а потом стыдливо их комментить?  Вы обещаете научить как надо - а у самих код как у ПТУшников. Чего такого сверхмогучего дает ваша методика, если даже зная ее - код который опубликован читать не то что тяжело - просто нереально. Где эти ваши фичи на ваш собственый код?  

По парсеру - тому кто писал - медаль за терпение. 3тыс строк кода в котором понять что-то с ходу нереально. Вы про формальные грамматики что ли не слышали? про peg?

В общем, на сегодня - разочаровали... Ожидал чего-то лучше
352 rphosts
 
24.01.16
06:26
(301) >- среди 1Сников over 90% самоучек, никогда не читавшие даже "Совершенный код" Макконнела, о чем говорить?

Фантазии того кто выскочил из 1С?
353 Хранимая Процедура
 
24.01.16
14:07
(352) - а также Месароша и Ошерова
354 Злопчинский
 
24.01.16
14:39
(311) спасибо коллега за ответ
Но извините херняс
Ничего не сказано об изменении степени удовлетворенности клиента выпускаемым продуктом
Не увидел не сказано стала ли разработка быстрее
Если степень удовлетворенности клиента не поменялась или поменялась незначительно и при этом продукт не стал разрабатываться быстрее то можно говорить об общем снижении продуктивности и экономической эффективности разработки

???
355 Masquerade
 
24.01.16
15:01
(354)

Откуда вы слов-то таких понабрались?

"степень удовлетворенности клиента"
"общем снижении продуктивности"
"экономической эффективности разработки"

???

Как вы это мерять то собрались, хотя бы в мечтах?

1С-ник Уася водит хороводы с женсчиной системы "бух Маша" - вот и вся эффективность.
356 Злопчинский
 
24.01.16
15:10
(355)  а вот в этом-то и есть самая главная засада
Можно пропагандировать продвигть декларировать кучу вкусностей
Но вот какая польза от этого и как ее померять - это да, большоооой вопрос

Поэтому вот лично меня аккуратность кода, запросы в цикле, применение или неприменение какихто технологий - абсолбтно не волнуют/не напрягают. Потому как это чисто поограммистские игры, которые бизнесу абсолютно неинтересны.

Я смотрю просто - во сто обойдется переход на новую технологию, сколько будет стоить в моем времени и нервах, стану я спать лучше или нет, итд

Поэтому до сих пор контора в оперативной деятельности сидит на клюшках, ибо переход на восьмерку - абсолютно неясен по профитам, а с учетом проблем с платформой с моей точки зрения пока не прижмет - лучше повременить...
357 Masquerade
 
24.01.16
15:36
(356)

<<Поэтому до сих пор контора в оперативной деятельности сидит на клюшках, ибо переход на восьмерку - абсолютно неясен по профитам,


Это вообще другой вопрос. Если у тебя контракт до конца жизни, подписанный кровью собственника - то наверное можно было и не дергаться, а для удовольствия водить троллейбус.

Но человек на собеседовании мне сообщит, что он на работе ту же 8-ку изучать только собрался; то наверное мы с ним работать не будем; пускай у него глаза горят как гиперболоиды Гарина.
358 Злопчинский
 
24.01.16
15:42
(357)  угу, все верно пишешь
Вот все жду с горящими глазами...
Не видать чтото желающих потрахаться
359 zak555
 
24.01.16
15:50
(346) выражайтесь на русском языке
360 zak555
 
24.01.16
15:52
(350)  1с-ник без напряга получает 100 на руки
если он нам на себя  - 170-200
в разгар может и 300 получить
361 4St
 
24.01.16
17:07
(354) Как справедливо заметили выше, "степень удовлетворенности клиентов" - это абстрактное понятие, практически не имеющее аналогов в реальности, редко поддающееся измерению и зависящее от слишком многих факторов. Удовлетворенность каких-то конкретных клиентов, которым накатили новую версию продукта после полутора лет использования старой, да, можно увидеть. Иногда можно увидеть и расстройство: "верните нам старый интерфейс, там все так привычно было".

Речь идет о другом. Очень важно, чтобы удобно было разработчикам. Если весь код состоит из костылей, то продукт становится крайне сложно развивать. Например, из-за высокой вероятности регрессионных ошибок (почесали ухо - отвалилась пятка). Потери времени на исправление таких багов - это уже вполне измеримая величина. Потеря мотивации развивать продукт дальше после серии таких багов - величина не измеримая, но тоже влияющая на команду.

Для мелких разовых работ, которые будут выполнены один раз и забыты навсегда после оплаты, TDD/BDD вряд ли имеет смысл. Для разработок покрупнее, тем более тиражируемых, тем более командных, требуется подход, отличный от "оп-оп-продакшен".

Мы решали эти проблемы разными способами, xUnit - лишь один из них.

Да, "херняс" - тоже понятие субъективное, неизмеримое и обсуждению не подлежащее.
362 Kupogun
 
24.01.16
18:02
(346) рублей? Это не такая большая сумма. Чего тут умолять?
363 Сияющий Асинхраль
 
24.01.16
18:39
(361) Продукт может быть тяжело развивать не только из-за костылей, но даже просто из-за сложности изначальной конфы, речь о том, что практически не приходилось встречать сильно перепиленных УПП, УТ11 и ERP2.0, думаю не из-за костылей, а просто потому, что сложность этих конф вылезла за некую удобоваримую грань, и большая часть сторонних разработчиков старается сильно в логику конф не влезать - себе дороже...
364 4St
 
24.01.16
21:55
(363) И такое тоже бывает. Мы в своем трижды упирались в критическую сложность некоторых алгоритмов. Несколько лет назад, когда разработка только начиналась, требования были проще, но со временем стали более изощренными. Заканчивалось все одинаково: мы писали параллельно что-то более отвечающее требованиям, какое-то время развивали новое и сопровождали старое. А потом, скрипя зубами, старое вырезали насовсем.

Но вот про типовые конфигурации соглашусь далеко не со всем. Например, крайне редко стали переписывать ЗУП 2.1. Не помню с какой версии, но как только там дали произвольные формулы расчета (пряник) и сделали длинные пакетные запросы без возможности отладки (кнут), разработчики в большинстве плюнули и сказали "мы туда больше ни ногой". Хотя не так давно бывший коллега переписывал на проекте ЗУП 3.0.

УПП - переписывали все кому не лень. В том числе и я (каюсь, было дело неоднократно). Ут11 - видел переписанные весьма сильно. Розница 2.0 у знакомых ребят переписана чуть меньше чем полностью.

Я к тому, что сложность системы - не единственный фактор, влияющий на частоту ее кастомизации. Тут влияют еще давность выхода продукта на рынок - и, как следствие, его зрелость/сырость, а также наличие разработчиков, способных его осилить. До сих пор не все разработчики освоили управляемые формы - вот еще одна из причин.

Код ERP 2.0 мне нравится больше, чем той же УПП 1.3. По крайней мере там стали соблюдать правило "Один метод - один результат". И, кстати, TDD без соблюдения этого правила практически невозможно.
365 H A D G E H O G s
 
24.01.16
23:40
(364) "Код ERP 2.0 мне нравится больше, чем той же УПП 1.3."

Вы его хоть смотрели то?
366 4St
 
24.01.16
23:47
(365) Смотрел. И там есть позитив.
367 H A D G E H O G s
 
24.01.16
23:51
Код ERP (да и сама архитектура) написана отвратно. Так писать нельзя от слова ВООБЩЕ.

Я мало понимаю в этих ваших паттернах, абстракциях и прочей теоретической мутотени, которая интересна для причесывания ЧСВ и не далее.

Я просто открываю 2.1.2.91 обработку ОбеспечениеПотребностей, ее основную форму и захожу в процедуру

ЗаполнитьДеревоИндексов(Запасы)

и говорю, что если во флагмане присутствует такой код - то он писан долбоящурами (я могу уже так говорить, так как больше не работаю в франче :-).
368 H A D G E H O G s
 
24.01.16
23:52
(367) При УПП такой херни не было.
369 Armando
 
24.01.16
23:53
Юмор почти в тему
Тестирование двери.
1. Проверить, что дверь открывается.
2. Проверить, что дверь закрывается.
3. Попытаться закрыть уже закрытую дверь.
4. Попытаться открыть уже открытую дверь.
5. Проверить табличку на двери.
6. Проверить покраску двери.
7. Проверить наличие дверной ручки.
8. Проверить, что правильным ключом дверь открывается.
9. Проверить, что неправильным ключом дверь не открывается.
10. Проверить, что закрытую на ключ дверь нельзя открыть.
11. Проверить, что не закрытую на ключ дверь можно открыть без ключа.
12. Позвонить в дверь. Если там никого нет, дверь не должна открыться сама.
13. Постучать в дверь. Если там кто-то есть и он спросит: "Кто?", ответить: "Полиция". Дверь должна открыться.
14. Открывайте и закрывайте дверь ключом на протяжении 12 часов.
15. Постучать в дверь.
16. Позвонить в звонок.
17. Открыть ключом. Открыть дверь. Закрыть дверь. Закрыть ключом.
18. Прочитать табличку на двери.
19. Проверить, что ручка двери помещается в ладонь.
20. Проверить, что ручка находится именно на двери, а не на соседней стене на высоте 20 см.
21. Проверить, что высота двери больше человеческого роста
22. Проверить, что усилие для поворота ключа в двери в пределах допустимого
23. Начать с использования двери одним человеком. Увеличивать количество пользователей с шагом 5 человек в 5 сек. Увеличивать нагрузку, пока дверь не сломается.
24. Проверка документации к двери - инструкции пользователя, технического паспорта..
25. Проверка сердцебиения и давления открывающего. Действия по открыванию-закрыванию не должны пожирать все ресурсы пользователя.
26. Проверить влияние функционирования двери на появление трещин в стене.
27. проверить волокна древесного полотна на параллельность. Проверить отдельные элементы (классы) на предмет избыточности (а может там 6 замочных скважин). Проверка алгоритма запирания двери.
370 4St
 
25.01.16
00:07
(367) При УПП была в порядке вещей передача 15 разносортных параметров в методы, вызываемые алгоритмом проведения документа. Читабельность? По полдня с отладчиком сидеть приходилось. А потом править последовательно вызовы 5-6 вложенных методов. И попробуй ошибиться в количестве запятых.
Пляски с попыткой сделать загрузку курсов валют регламентным заданием в 1.3 тоже сильно доставили. Ага, давайте-ка мы в момент получения файла с HTTP что-нибудь у пользователя спросим. Ладно хоть на УФ такого написать уже не получится.
А еще забавно было обнаружить, что разный набор флажков "УУ-БУ-НУ" при восстановлении последовательности партионного учета приводит к разному применению "Первые 1" в запросе на определение границы. Разработчики этот факт так и не признали, поскольку бодро развивали РАУЗ в тот момент. В чем-то я их понимаю.

Описанный вами блок оценить пока не могу, под рукой только 2.0.10.51. Если не сложно, закиньте на почту внешней обработкой, любопытно глянуть.
371 4St
 
25.01.16
00:11
(369) шутки шутками, но наши тестировщики примерно так и работают )) И иногда после пятого закрытия двери ключом выясняется, что табличка слегка покосилась, а в тексте не хватает запятой.
372 4St
 
25.01.16
00:21
(368) А вообще исходный код всех типовых решений 1С сильно страдает из-за того, что когда-то авторы решили "мы сделаем все с нуля, никаких классов, ООП, прямого доступа к СУБД, будет абстрактный конструктор". Пока остальной мир придумывал SVN и GIT, 1С угробила нереальное количество ресурсов в "хоронилище". Итог? Выгрузка файлов конфигурации в xml на последних 8.3 и эксперименты с работой в Eclipse. Типа, "ну ладно, ребяты, пусть будет". Никаких классов, перегрузки методов и т.д.? Ок, все равно пришлось со временем придумать подписки на события, переопределяемые методы и т.д. Снова шаг назад. Свой упрощенный язык запросов в 7.7? Один фиг вернулись к почти чистому SQL в 8.
Автотесты? Стали наконец прикручивать в УФ. Надеюсь, и до юнитов доберутся.

1С сделала классные штуки вроде регистров. И в то же время сильно отгородилась от остальных практик в програмировании. Результат - толпы разработчиков во франчах, которые пишут "Предупреждение" при проведении документа при отрицательных остатках. Ну как, они же на типовом коде учились. И я в том числе.
373 Garykom
 
гуру
25.01.16
00:35
(372) это все очень верно
только выход то какой?

как только появится что то лучше для построения учетных систем чем 1С то туда очень быстро переберутся

но вот не видать почему то ничего, доморощенные убийцы 1С пока в пролете
374 Ник080808
 
25.01.16
00:44
(373) о убийце 1с я слышу уже 10 лет) Проблема не в более лучшем по для построения учетных систем, а в бизнесмодели. 1с франчайзинг позволил 1с выпилить конкурентов.
375 H A D G E H O G s
 
25.01.16
00:47
(373) Все это очень неверно.
376 Garykom
 
гуру
25.01.16
00:54
(374) это типа 1С г0вно и только франчайзинг рулит?
может не быть настолько катогоричным?

конкуренты были и есть, но они предлагают только готовое решение, которое часто невозможно дорабатывать
платформа то где?

http://www.nsgsoft.ru/ тихо помер без приличных решений готовых (нельзя делать только платформу)
https://www.cuba-platform.com/ живет только за счет 1 решения, сама платформа никакая для освоения и написания с 0

т.е. нужна удобная платформа и несколько тиражных решений на ней, причем все должно постоянно дорабатываться и обновляться

вот сделали бы на nsg framework'е хотя бы обычный налогоплательщик программу или еще что то подобное и уже развивались бы
377 H A D G E H O G s
 
25.01.16
00:56
(370) нет, не скину.
рекомендую оценить
ОМ ПланированиеПроизводства
Функция ЗаполнитьСпецификациюЗаказаПоСпискуНоменклатуры(Объект, МассивДанных, КэшированныеЗначения, ЗаполнятьИнформациюПоАвтовыбору, ЕстьУточненияМатериалов, ХарактеристикиИспользуются)


Там и куча параметров и цикл в цикл, экспотенциально растущий от числа продукции в заказе на производство.
378 Ник080808
 
25.01.16
00:57
(376) я не говорил что 1с го***о) я говорю о том, что были системы и лучше в свое время,но франчайзинг помог выпилить конкурентов.
379 Garykom
 
гуру
25.01.16
00:57
(375) смотря с какой стороны, для массовой платформы лишние заморочки не нужны, согласен
но вот то что их там нет и низзя добавить это плохо

самый большой минус, который попытались исправить сделав NativeAPI для ВК, это невозможность добавления своих расширений нормальных для платформы
с неким аналогом пакетной онлайн установки

т.е. в требования к конфе стоит пакет, и при запуске автоматом скачивается

ЗЫ блин заняться что ли...
380 H A D G E H O G s
 
25.01.16
00:58
(372)  "мы сделаем все с нуля, никаких классов, ООП, прямого доступа к СУБД, будет абстрактный конструктор".

Это прекрасно что они так сделали. Толпы дятлов не угробили работающие системы и вошли в профессию, накопив достаточную массу программистов для поддержания жизнедеятельности.
381 bzs015
 
25.01.16
01:22
Просто надо писать про БДД - это новый расширенный разработанный отладчик, в дополнение к механизмам ранее существующим. И все ясно. А то вокруг, да около.
382 4St
 
25.01.16
08:30
(377) 6 параметров - это еще не куча. По своему опыту, 5-7 параметров - это как раз максимум, который мозг способен переварить. Все, что выше, уже напрягает.
Код в ЗаполнитьСпецификациюЗаказаПоСпискуНоменклатуры написан на первый взгляд не так уж плохо. Спорные моменты:

    Для ИндексТекущихДанных = 0 По МассивДанных.ВГраница() Цикл
    
        СтруктураДанных = ДанныеСпецификаций.Получить(ИндексТекущихДанных);
        
        Если СтруктураДанных = Неопределено Тогда
            
            Продолжить;
            
        КонецЕсли;
        
        ДанныеПоНоменклатуре = МассивДанных[ИндексТекущихДанных];

....


костыли в

        Если ТипЗнч(Объект) = Тип("ДокументОбъект.ЗаказНаПроизводство")
            ИЛИ ТипЗнч(Объект) = Тип("ДанныеФормыСтруктура")
            И Объект.Свойство("Продукция")
            И ТипЗнч(Объект.Продукция) = Тип("ДанныеФормыКоллекция") Тогда
        
            Для каждого ПродукцияСтрока из Объект.Продукция Цикл
                
                Если ПродукцияСтрока.КлючСвязи = ДанныеПоНоменклатуре.КлючСвязиПродукция
                    И НЕ ЗначениеЗаполнено(ДанныеПоНоменклатуре.КлючСвязиПолуфабрикат) Тогда
                    
                    ПродукцияСтрока.ОптимальноеКоличествоПередачиМеждуЭтапами = СтруктураДанных.ОптимальноеКоличествоПередачиМеждуЭтапами;
                    
                КонецЕсли;
                
            КонецЦикла;
            
        ИначеЕсли Объект.Свойство("ОптимальноеКоличествоПередачиМеждуЭтапами") Тогда
            
            Объект.ОптимальноеКоличествоПередачиМеждуЭтапами = СтруктураДанных.ОптимальноеКоличествоПередачиМеждуЭтапами;
            
        КонецЕсли;

вместо хотя бы НайтиСтроки(). И непонятно, индексированы ли поля в перебираемой ТЗ. Видимо, это и есть причина экспоненциального роста.

Также присутствует копипаста явного костыля:

                    Если ДанныеПоНоменклатуре.Свойство("Склад") И ЗначениеЗаполнено(ДанныеПоНоменклатуре.Склад) Тогда
                        НоваяСтрока.Склад = ДанныеПоНоменклатуре.Склад;
                    Иначе
                        НоваяСтрока.Склад = ВыходныеИзделияЭлемент.СкладМатериалов;
                    КонецЕсли;



Самое загадочное для меня пока - это
    Возврат МатериалыПроизводимыеВПроцессе;

и перебор этого результата в вышестоящей функции, поведение которой без отладчика уже не понять.

Резюме: скорей всего, какой-то магией это работает, но на больших объемах данных может приводить к жутким тормозам. Рефакторинг не помешает.
Справедливости ради - УПП 1.3.42.1, ОМ "РазузлованиеНоменклатуры", метод "РазузловатьНоменклатуру", и вызов "ПолучитьВыходныеИзделия" в цикле. Очень похожий код. На 1С:Специалист за такое тоже ставят неуд.
383 4St
 
25.01.16
08:42
(373) не будет никаких убийц 1С )) Разве что облачные учетные системы могут попробовать поконкурировать, да и то - Fresh наступает. Будет другое: 1С постепенно избавляется от старых болячек, и это очень хорошо. Приоткрыли конфигуратор, добавили работу с JSON, постепенно прокачивают асинхронность. Дали возможность читать заголовки HTTP ответов в 8.2.19. Полнотекстовый поиск - опять же свой, но хоть что-то. Все жду не дождусь нативной поддержки регэкспов и нормального взаимодействия с разными VCS.
Речь не о том, что 1С - это бесперспективная платформа, скорее наоборот. Речь о том, что 1С постепенно делает шаги "обратно в мир". А большая часть разработчиков "на местах" кодит по старинке. Аргументов два: учиться новому некогда и незачем. И действительно незачем в случае каких-то мелких разовых заданий, и некогда в условиях франча. В других условиях - может быть вполне применимо и оправданно. Автор темы активно продвигает свои подходы. Я убежден, что каждому свое.
384 Pr-Mex
 
25.01.16
12:06
(356) Технологии обозначенные в сабже - это не только инструменты для повышения качества разработки, но и инструменты для снижения рисков.
Риски (в итоге) - это деньги.
Отсюда считается и экономическое обоснование, и окупаемость и т.д.
385 Записьдампа
 
25.01.16
13:10
(384) То-то вы из Связного все сбежали. Или таки там бизнес что-то подсчитал? =)
386 H A D G E H O G s
 
25.01.16
14:05
(382) Да. Абсолютно правильно. На больших данных - это мощнейшие тормоза, решаются через НайтиСтроки().

И есть еще одно люто узкое место, которое элегантно обходится.

И это только сцуко ЗаказНаПроизводство.
А что в других местах?
387 Vovan1975
 
27.01.16
08:44
достали уже эти ООП-нутые...
388 Garykom
 
гуру
27.01.16
10:30
(387) это как: не освоил, но осуждаю ))
389 DailyLookingOnA Sunse
 
27.01.16
11:05
(388)
Название темы провокационное: "а ты правильно"?
Да, я как раз правильно, ИМХО.
А вот у претендующих на правильность доказать это окружающим не получается. Почему они вообще в турагентстве работают?
390 Мебиус
 
28.01.16
18:06
(385)
+100500
Парадигма Ноготкова сменилась здравым смыслом)

Удивительно, что он только банк про..рал.
Ритейл видимо сложнее было угробить.
391 Garykom
 
гуру
28.01.16
18:12
(390) а разве ритейл тоже не того уже?
у нас несколько точек закрылись по СЗ
392 Мебиус
 
28.01.16
20:35
(391)
Да нет вроде
Офисом переехали из омеги в в место попроще
насчет ритейла негатива не слышал
393 Garykom
 
гуру
28.01.16
21:09
(392) негатива нет, просто точки закрывают которые нерентабельны стали сильно
раньше удобно терминал (в Связном) был рядом с работой, а на прошлой неделе прихожу и нету больше отдела

почитал, еще много где позакрывали
394 Злопчинский
 
28.01.16
22:22
у нас на м.бабушкинская офис Аэрофлота закрыли
395 Злопчинский
 
30.01.16
00:46
вон, можно на кошках тренироваться: http://www.forum.mista.ru/topic.php?upd&id=764024