|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Результаты опроса: Какой язык перспективен для инженера-конструктора? | |||
С/С++ | 57 | 14.69% | |
Delphi | 17 | 4.38% | |
Пайтон | 39 | 10.05% | |
Фортран | 1 | 0.26% | |
Basic/VB/VBA/VB.NET | 93 | 23.97% | |
джава | 7 | 1.80% | |
другой, какой - см. по тексту | 29 | 7.47% | |
матерный | 145 | 37.37% | |
Голосовавшие: 388. Вы ещё не голосовали в этом опросе |
Поиск в этой теме |
|
||||
Регистрация: 10.08.2013
Сообщений: 11,049
|
Неправильно понимаете работу динблоков:
Обычный блок: Определение -> Вставка Дин.блок: Определение -> Определение анонимного обычного блока с заданными дин.параметрами -> вставка анонимного блока. Не надо думать, что использование динамических блоков позволяет что-то экономить: это лишь удобство для пользователя, а акад все равно преобразует в обычный блок перед вставкой - только делает его анонимным (со звездочкой), чтобы пользователь не видел в диалоге - сколько "мусора" в чертеже при использовании дин.блоков. |
|||
|
||||
Продуман Регистрация: 22.02.2007
Питер
Сообщений: 2,840
|
Не соглашусь, что дин. блоки не нужны программисту - это прекрасное средство для ввода графических параметров юзером, причем при соблюдении "оговоренных стандартов" юзер вполне может и сам создавать эти блоки, которые потом будут обрабатываться программно по нужному сценарию (у меня из таких блоков полный производственный цикл "вытягивается", от планирования поставок материалов, до отгрузки готовой продукции, включая ее автоматизированное производство).
Плюс для программиста, на основе этих блоков можно создавать "почти proxy" (только что ругаться не будет) с переопределенным отображением в зависимости от "внешних" условий. з.ы. Тут пару страниц назад (давно не заглядывал, заработался) был вопрос\обсуждение по поводу императивности-функиональности и ООП - могу со всей ответственность сказать ООП - может быть и таким и таким, с разными подходами и пр. Если упрощенно, то в функциональных объектах нет методов меняющих свойства - есть только порождение новых объектов на основе вызываемых с измененным свойством. За счет функциональной структуры, компилятору "видно" надо-ли порождать действительно новый объект, или можно изменить старый выдав за новый - если исходный объект больше не будет использоваться - не путать со сборкой мусора - сборка мусора это оптимизация во время выполнения, а то во время компиляции. Оптимизация эта легко проверяется при помощи отложенных вычислений и в ряде случаев дает существенный выигрыш по производительности - вычисляемые свойства для всех используемых "копий" объектов (как уже созданных, так и впоследствии), которые не зависят от внесенных изменений вычисляются один раз для всех.
__________________
Когда в руках молоток все вокруг кажется гвоздями. Последний раз редактировалось Дима_, 18.03.2017 в 00:35. |
|||
|
||||
Регистрация: 20.03.2008
Сообщений: 2,653
|
Сразу оговорюсь, что готовил ответ задолго (по крайней мере, за несколько часов) до ответа _Димы, но дописать и опубликовать не успел (спасибо Admin'у и функции черновиков).
Цитата:
Цитата:
Но возвращаясь к теме главного вопроса, надо бы сказать, что выбор языка должен бы базироваться на том, чтобы он умел в том числе программно изменять параметры дин.блоков. Ну и быть "изнутри" Автокада. Стало быть, это может быть один из списка:
|
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,049
|
Имхо, достаточная частая ошибка начинающих программистов-самоучек, занимающихся процессами автоматизации основной деятельности - вследствие возникшей эйфории от открывающихся "перспектив" начинать дублировать своим кодом уже существующий функционал программ. Вместо изучения этого функционала с последующим дополнением своим кодом для получения законченного решения нужной задачи.
|
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,049
|
|
|||
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,589
|
Цитата:
|
|||
|
||||
Регистрация: 05.11.2015
Сообщений: 585
|
Offtop: Две полных цитаты подряд от одного автора. Сколько же в них-то добавлено конструктива!
Хотя бы в offtop закрывали. ----- добавлено через ~1 ч. ----- Цитата:
Или же речь идет просто о том, что динблок используется как первичный носитель каких-то данных, которые считываются программой по ходу ее выполнения. Но тогда при чем тут динамичность этих блоков, в контексте обсуждения взаимосвязи именно динамических блоков и программирования (особенно в плане создания динблоков программно). Носителем той же самой информации может быть и обычный блок (текст, таблица, да и вообще любой примитив). Последний раз редактировалось Владимир_М, 18.03.2017 в 19:21. |
|||
|
||||
Продуман Регистрация: 22.02.2007
Питер
Сообщений: 2,840
|
На сервере, в БД, лежат дин. блоки изделий с описанием и формулами преобразования параметров дин. блоков в спецификацию исходных материалов и заданий на ЧПУ для производства деталей из последних. Через GUI'шки данные блоки изделий выбираются из базы и расставляются на чертеже с заданием параметров в соответствии с ТЗ. Далее есть набор команд для планирования производства (разбивки на смены), составления графика подвоза продукции в соответствии с ним, документов выдачи со склада, генерации производственных (монтажных) чертежей (на основе тех-же дин. блоков, специальным образом связанных с исходными блоками), спецификации на каждое производимое изделие, получения управляющих программ для обработки на ЧПУ, печати этикеток на "промежуточную" продукцию и остатков материалов, оптимизации раскроя материала, учета полезных остатков с предыдущих смен и пр. бумаг и "выгрузок" в БД для бухгалтерии. Блоки может создавать и описывать "продвинутый" пользователь, так-же через свой набор GUI'шек. В сложных случаях (когда визуализацию изделия сложно или невозможно описать дин. блоком, добавляются "overrule" модули меняющие отображение отдельных блоков - это к сожалению только программно - была мысль сделать DSL и на этот случай - но он получается сложный для "продвинутого пользователя").
__________________
Когда в руках молоток все вокруг кажется гвоздями. |
|||
|
||||
Регистрация: 05.11.2015
Сообщений: 585
|
Дима_, спасибо и большой респект! Вот это достойная задача - автоматизировать такой производственный цикл!
По сути последнего разговора хотел было продолжить возражать, что типа использование именно динамических блоков не принципиально, т. е. так оно и остается на мой взгляд блоки - блоками, программирование - программированием. Но... сам вдруг вспомнил свой недавний опыт. И как-то уже посмотрел на тот же вопрос с другой стороны. Дело, правда, касалось не Акада, а Ревита. В чем суть той "технологии"? Модель сооружения создается программно из заготовленных ранее семейств. А что такое семейства в Ревит? это практически то же самое, что и динамические блоки в Акаде. (Правда, есть большое преимущество в семействах по сравнению с динблоками, что они уже понимают "IF"). Остается в силе, что и там и там также можно было бы обойтись и без динблоков и без семейств, а изображать все от и до чисто из программного кода. Но это было бы очень и очень долго и нудно. Т. е. именно программист должен через код описать все необходимые детали конструкций, например, из типовых проектов. Но для того и придуманы семейства (читай дин. блоки) что их может создавать и описывать "продвинутый" пользователь , не владеющий ЯП. Так вот - да. Если объем задачи глобальный, и можно подключить к ее решению других пользователей, уменьшив работу по написанию кода, то идея правильная. Ну в принципе примерно об этом уже и говорилось. Использование уже существующих наработок (блоков, семейств). Но все-таки не сочтите за занудство. Так и не могу себе представить, чтобы я те же семейства создавал программно, если всю их геометрию можно создавать в параметрическом редакторе семейств наглядно, графически. |
|||
|
||||
Жалкий инженеришка-проектаст Регистрация: 31.01.2010
Сообщений: 1,986
|
|
|||
|
||||
Регистрация: 05.11.2015
Сообщений: 585
|
Что значит программно? Т. е. я примерно в курсе что такое грасхопер, Динамо. И примерно понимаю, что там можно сделать. Там, конечно же, все очень красиво смотрится, когда гоняешь разные ползунки и вся геометрия в динамике меняется любым замысловатым образом.
Но в чем преимущества путаницы всех этих шлангов, по сравнению с обычным создание параметрического семейства, если эти мультики для моей задачи вообще никак не употребить? |
|||
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,589
|
Я вот про эту тему вспомнил http://forum.dwg.ru/showthread.php?t=104517 =о) и то, что рано или поздно этот этап проходят все, совершенно согласен, впрочем указанная тема это отлично иллюстрирует и как видно от выбранного ЯП это не очень то зависит. =)
|
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,049
|
Цитата:
|
|||
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,589
|
Да, вместо использования блоков с полями, подшивок, создания листов по шаблонам, автоматических ведомостей листов, пакетной публикации и прочего функционала уже реализованного в автокаде, пишутся велосипеды с печатью из модели.
Могу продолжить этапы роста: ИМХО, после написания своих костылей, приходит пора изучения того, что уже написано другими и покупка/использование уже существующих программ. |
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,049
|
Этапы перехода на листы и подшивки: создать шаблоны на все форматы по ГОСТ 2.301-68 (чтобы потом не оказалось, что надо срочно печатать - а настроенного листа нет), настроить параметры листов под конкретные печатающие устройства + сопутствующие файлы, создать шаблон подшивки, инструкцию в картинках на 2-3 страницах (не любят у нас в стране инструкции читать обычно). Желательно устроить пробную распечатку. И выложить на сервер в защищенную от изменений папку (всегда найдутся шаловливые ручки). И это только полпути - потом еще заставить людей переходить на работу в листах на фоне криков, что это все сложно, им некогда и т.д. Т.е. это работа не на час, и не на два. А если в фирме есть "мамонты", до сих пор чертящие палочками - там саботирование перехода на листы с подшивками может принять и резко выраженную форму.
А при этом надо еще и основную работу делать. Поэтому начальство, даже если какие то действия по переходу совершались, дает отмашку - делайте как умеете. А перейдете потом - когда будет время. И в результате приходиться приделывать автоматизированные костыли к уже существующему бардаку. Это печальная действительность для многих фирм. |
|||
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,589
|
Offtop:
Цитата:
Это как купить конвеер по производству машин, разобрать его на отдельные станки и все равно выпускать машины, придумав свою технологию производства. ЗЫ. Мне повезло, в компании, где тружусь, нашелся энергичный человек, который старательно всех перетаскивает на нормальную работу с подшивками и шаблонами. |
|||
|
||||
Проектировщик электрических сетей Регистрация: 17.01.2014
Пенза
Сообщений: 176
|
Offtop:
Цитата:
В стране кризис, а Вы о закупках. Оцениваю исключительно по своему городу. Цитата:
----- добавлено через ~8 мин. ----- Цитата:
|
|||
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,589
|
Выбирающим язык может быть интересна эта заметка от микрософт по поводу перспектив развития языков .NET группы: https://habrahabr.ru/company/microsoft/blog/324548/
|
|||