В чем зло VBA?
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Сообщество > Разное > В чем зло VBA?

В чем зло VBA?

Закрытая тема
Поиск в этой теме
 
Автор темы   Непрочитано 29.07.2008, 10:46 В чем зло VBA?
#1
Vildar

AutoCAD
 
Регистрация: 26.07.2007
Москва
Сообщений: 1,064


Складывается такое впечатление, что здесь его недолюбливают.

Перейдя в проектный институт, 3 мес назад, для меня сложились благоприятные условия для автоматизации работы (в Автокадк в первую очередь). Начал изучить лисп. Между прочим посматривал VBA. Оказалось, что он намного проще. Переключился на него. В итоге, получилось написать макрос (в одном файле ~1Мб), для расчета и построения чертежей спецификаций ростверка.

Так вот, есть желание продолжить изучение VBA и возможно ARX.
На этом форуме, стоит это делать?
Судя по нескольким моим темам. Как-то не очень. Кроме Алексея Кулика, который плохо относится к VBA (где-то встречал в его постах), никто не помогает.

Куда податься?
Мне нравится этот форум. Хотелось, что бы здесь было побольше тем по VBA и ObjectARXу.
Vildar вне форума  
 
Непрочитано 29.07.2008, 10:59
#2
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Почему лично я не люблю VBA:
  1. Его можно отключить (а вот лисп - фигушки)
  2. У меня на работе есть 20 мест AutoCAD LT, где штатного программирования кот наплакал (DIESEL и больше ничего). Используя LT Extender, можно в LT подключить lisp и arx. lisp более прост для изучения мне показался, поэтому я все силы кинул на него.
  3. В VBA невозможно, например, вычислить ближайшую точку к указанному примитиву (аналог vlax-curve-getclosestpointto). Также недоступны некоторые другие функции lisp'a.
  4. В VBA очень плохо сделана работа с массивами (в чистом варианте. Я не учитываю квалификацию fixo, который там творит чудеса).
  5. VBA, начиная с версии 2007 (точнее, формы, созданные и хранимые с dvb), начинают привязываться к версии. То есть если форму создать в 2007, то в 2005 или 2006 открыть ее может составлять приличную проблему.
  6. Дальнейшая судьба VBA тонет в тумане: MS уже в последнем офисе начала потихоньку отходить от него. Логично ожидать, что и Autodesk пойдет этим же путем. Где-то мелькала информация по этому поводу - то ли здесь, то ли на caduser.ru, уже не помню.
  7. Вечная проблема с передачей данных в лисп и обратно. Хотя и решаемая проблема
Вот черт, отвлекся, что-то еще хотел написать, но забыл.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 29.07.2008, 12:56
#3
Regby


 
Регистрация: 05.10.2007
р. Татарстан
Сообщений: 4,840


прошу прощения - грубо говоря ничего не понимаю в данном вопросе, но почему лисп нельзя отключить? его ведь еще включить надо сначала... или тут имеется ввиду некоторая защита от тупости?
__________________
Категории - нет
Главспеца - нет
ГИПА - нет
Начальник - архитектор
Regby вне форума  
 
Непрочитано 29.07.2008, 13:04
#4
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Имеется в виду прежде всего: поддержка VBA может быть элементарно не установлена (посмотри подробности установки). Даже на "полный" AutoCAD. LISP таким манером не отключается.
Я сейчас не помню, но где-то можно установить, что при попытке загрузки VBA-кода AutoCAD будет задавать глупые вопросы.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 29.07.2008, 14:28
#5
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


"Зло VBA" заключается в том, что оно калечит мозги. Люди начинают думать примерно так:
Цитата:
Оказалось, что он намного проще. Переключился на него. В итоге, получилось написать макрос (в одном файле ~1Мб), для расчета и построения чертежей спецификаций ростверка
1Мб - это вроде как и предмет гордости (так мало)? Или наоборот (так много)? После этого начинают думать, что могут сделать что-то серьезное. Типа "и возможно ARX". Вот ARX может быть уже и невозможно будет. Мозги уже не те будут.

С конкретными ограничениями VBA в AutoCAD столкнетесь позже. Тогда и поймете, почему столько про LISP рассуждают.

Кое-где VBA совсем не "зло" - где оно к месту. В MS Office, например. И даже сам язык Basic не является "абсолютным злом". Там, где его различные диалекты встроены в разные системы и являются единственным доступным инструментом для программирования.

А в AutoCAD VBA - "зло". Потому что до его встраивания туда по наущению Microsoft уже было достаточно разных инструментов - LISP и ARX и кое-что еще. А теперь есть и COM, и .NET. Но приделали "пятое колесо" к телеге. Исключительно в конъюнктурных целях.

"Зло" еще и в том, что все MS-Basic-и продвигались как личная любимая игрушка Билла Гейтса. А теперь ушел он "на пенсию". Политику будут диктовать другие люди, которым это чудо самим обрыдло. И очень скоро (не завтра) MS "кинет" всех почитателей идеи - "раз Билл самый богатый, то он и самый умный. А раз он придумал VBA, то и я буду его пользовать и тоже буду богатым".
ShaggyDoc вне форума  
 
Автор темы   Непрочитано 29.07.2008, 14:36
#6
Vildar

AutoCAD
 
Регистрация: 26.07.2007
Москва
Сообщений: 1,064


У меня пока, нет причин для сверх-универсальности программ (макросов). У всех (в отделе , все в одной комнате сидим) стоят АА2008.
- По массивам. Я не очень в них разбираюсь, и пользовался коллекциями.
- С формами есть косяк. Сталкивался с проблемой связанной с версией используемых Controls (типа ListViev). У меня дома (дом мой в Балаково, в Саратове я работаю и живу в коммуналке) стоит тоже АА2008 тока кря., но форма сделанная на работе, с применением этого ListViev'ера, не пашет. Уже забыл, но, пишет что-то типа: У вас нет прав на исп. этого элемента управления (тока на английском). Че за фигня, так и не понял.
- по 6, пока ниче не нашел.

Мне удобен VBA тем, что можно быстро сварганить макросик, для оперативной работы. Объектная модель, как на ладони (только поболее внимательности нужно ).

Думаю о перспективе изучения ObjectARXa. Это вообще реально.
С чего лучше начать. Какой язык выбрать. Пока, я не знаю никакой.
Посмотрел первые шаги для Visual C++, на http://www.firststeps.ru/, и испугался, совсем не похоже на VB.
Можно ли использовать VB.NET (должен быть похож на VB) с ObjectARX'ом.
Vildar вне форума  
 
Автор темы   Непрочитано 29.07.2008, 14:58
#7
Vildar

AutoCAD
 
Регистрация: 26.07.2007
Москва
Сообщений: 1,064


Цитата:
Сообщение от ShaggyDoc Посмотреть сообщение
"Зло VBA" заключается в том, что оно калечит мозги. Люди начинают думать примерно так:
1Мб - это вроде как и предмет гордости (так мало)? Или наоборот (так много)? После этого начинают думать, что могут сделать что-то серьезное. Типа "и возможно ARX". Вот ARX может быть уже и невозможно будет. Мозги уже не те будут.
Это Ваши домыслы. Могу пояснить. Я, как смог (а ведь получилось, пусть и работает только у меня на машине, нет универсальности), написал этот макрос, для ускорения своей работы. Раньше расчеты делались в экселе, с последующим ручным составлением таблиц спецификаций. Уходило несколько дней. Теперь, я курю, а он (макрос) работает. И за 10 мин, все готово.

Цитата:
Типа "и возможно ARX". Вот ARX может быть уже и невозможно будет. Мозги уже не те будут.
Это что, типа табу. Да, я деллитант в программировании. Но ведь, у человека есть мечты, и ничего невозможного для него нет.

У меня есть время, есть желание и мне за это еще деньги платят.
Буду пытаться. И с помощью этого форума, в первую очередь (привязался уже).
Vildar вне форума  
 
Непрочитано 29.07.2008, 14:58
#8
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Использовать VB.NET для AutoCAD возможно. Но arx-приложения на нем писать - нет.
Лично для меня сейчас в изучении ARX несколько препятствий: слабое понимание разницы между конструкцией int* p и int *p (если она вообще есть); страх перед теми же указателями (и за компанию строками). И есть еще один момент, самый трудный - достаточно богатая фантазия + лень. Ежедневно придумываю себе несколько десятков отговорок, только чтобы не начать работать на C++ или C#. Каждый день новые...
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 29.07.2008, 16:23
#9
Sleekka

-
 
Регистрация: 24.07.2005
Москва
Сообщений: 1,335


Получать доступ к объектам объектной модели может оно и проще. Да вот не все можно достать через объектную модель. ето минус раз.
Работа с данными. Чтобы создать на лиспе пятимерный массив данных (к примеру) (по логике программы нужно) - ето пара строк, потому как лисп для этого предназначен. Встроенные функции, на ВБА же придется запускать кучу циклов, постоянно определять размерность динамических массивов и т.п. Про скорость работы этих высокоуровневых циклов на пятимерных массивах - молчу, лисп быстрее будет на несколько порядков.
off:
Цитата:
Ежедневно придумываю себе несколько десятков отговорок, только чтобы не начать работать на C++ или C#. Каждый день новые...
Такое бывает - похоже на усталость.
Sleekka вне форума  
 
Непрочитано 29.07.2008, 17:10
#10
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


Цитата:
Сообщение от Vildar Посмотреть сообщение
Складывается такое впечатление, что здесь его недолюбливают.
Я один из тех, кто его недолюбливает.
Цитата:
Сообщение от Vildar Посмотреть сообщение
Куда податься?
Мне нравится этот форум. Хотелось, что бы здесь было побольше тем по VBA и ObjectARXу.
Здесь традиционно больше вопросов по VisualLisp. Вопросы по VBA и ObjectARX чаще задают на caduser.ru
Собираешься стать профессиональным программистом? Если нет, то лучше в ObjectARX не лезь.

Леша. А int* p и int *p - это одно и тоже.
Александр Ривилис вне форума  
 
Непрочитано 29.07.2008, 20:06
#11
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
Сообщение от Vildar Посмотреть сообщение
Это Ваши домыслы.
Когда говорят "не пей из копытца" или "не лижи металл на морозе" детям, обычно такой же ответ - "домыслы".

Цитата:
Сообщение от Vildar Посмотреть сообщение
Могу пояснить. Я, как смог (а ведь получилось, пусть и работает только у меня на машине, нет универсальности)...
Ну, это типа "я только кончиком языка лизну". Вопросов-то нерешаемых много будет, и проблемы с формами - пустяк, "батонокидательство". Хотя и с хорошими визуальными формами - это не уровень VBA.
Цитата:
Сообщение от Vildar Посмотреть сообщение
Это что, типа табу. Да, я деллитант в программировании. Но ведь, у человека есть мечты, и ничего невозможного для него нет.
Почему же табу? Дерзайте. Только программирование (настоящее) дисциплина строгая. И если там будете писать как здесь - "деллитант" (очень похоже на последствия для мозга, о которых я писал), то ничего хорошего не выйдет. Уж если к родному языку так относиться, то что будет в ARX?

Цитата:
Сообщение от Vildar Посмотреть сообщение
У меня есть время, есть желание и мне за это еще деньги платят.
Буду пытаться. (привязался уже).
Надо не пытаться, а изучать. И если время есть, да еще и платят, то не надо тратить его на такую чепуху, как VBA - оно как раз для "деллитантов". Займитесь лучше изучением .NET, да не на диалекте VB, а на C#. Или действительно, если есть желание стать профессионалом, можно изучать ObjectARX. Пользы будет гораздо больше, в том числе и в плане дисциплины для мозга. И даже если останетесь дилетантом, это лучше, чем остеться деллитантом.
ShaggyDoc вне форума  
 
Непрочитано 29.07.2008, 20:28
#12
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Александр Ривилис, спасибо
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 29.07.2008, 20:32
#13
Хворобьев

make love not war
 
Регистрация: 22.05.2008
Сообщений: 681


VBA, Basic - полезные для инженера языки. Хотя бы потому, что навыки программирования пригождаются в MS Office или Open Office.
Если вы смогли написать приложение и оно работает так, как вам именно нужно, и при этом ощущаете, что и остальные приложения сможете разработать в том же духе - это и есть критерий достаточности его для вас.
У инженера одна цель - повысить производительность труда и заработать больше денег, в конце концов. Продажей программ вы вряд ли будете зарабатывать, поэтому и доводить до совершенства вам их не нужно.
Просто Lisp исторически лучше работает с автокадом (кстати и с интелликадом тоже работает). Критерии, перечисленные kpblс-ом довольно убойно действуют - если вам ваши знания в какой то момент окажутся бесполезными, то лучше получать те, хчто может быть немного сложнее, но прослужат вам верой и правдой при любом развитии событий и на любой работе. Будь у меня время и потребность я бы и сам Лисп подучил.
__________________
РАМА и MaXiMa
Хворобьев вне форума  
 
Непрочитано 29.07.2008, 20:39
#14
Александр Бауск

FEA/CAD/МКЭ/САПР
 
Регистрация: 20.03.2007
48,38°:35,03°
Сообщений: 1,056
Отправить сообщение для Александр Бауск с помощью Skype™


>ShaggyDoc

Доктор, а ходить я буду?

Подпись: счастливо ударенный об VBA со стажем.
__________________
Reshaping the STEM field
Александр Бауск вне форума  
 
Непрочитано 29.07.2008, 23:24
#15
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
Сообщение от Александр Бауск Посмотреть сообщение
>ShaggyDoc

Доктор, а ходить я буду?

Подпись: счастливо ударенный об VBA со стажем.
Ходить, батенька, будете. Летать - нет. Впрочем, кто-то счастлив и ползая.

Цитата:
VBA, Basic - полезные для инженера языки. Хотя бы потому, что навыки программирования пригождаются в MS Office или Open Office.
Речь то ведь не об языке программирования, а о применении определенных сред в разных условиях.

VBA - это система, проталкиваемая (проталкивавшаяся) Microsoft для того, чтобы другие разработчики программ встраивали её в свои продукты и делились бабками с MS. Под это дело и распространяются легенды, что это "полезные для инженера языки". Когда MS впервые ввела VBA в свой Office - это было хорошо и к месту - заменили вообще ублюдочный WordBasic. VBA в Office соотносится с моделью офисных документов. Встраивать туда, например, LISP, было бы глупостью. Но даже в Office многие ли воспользовались возможностями VBA?

А вот для AutoCAD LISP родной, потому что наибольшим образом соответствует структуре данных. Да и одна функция command чего стоит - именно она позволила "простым инженерам" делать в AutoCAD вполне профессиональные программы.

VBA в AutoCAD появился в R14. И где результаты в виде полезных програм? Есть, конечно, единичные "полезняшки" локального значения, но разв их сравнить с LISP? Пусть я тут "злобно клевещу", так ткните мне в морду результатами - вот, мол, сумей так сделать.

Для инженера по настоящему полезен грамотный родной литературный язык, технический, и иностранный (сейчас, видимо, английский). А языки программирования - ерунда, преходящее. Студентов 60-70-х годов (инженеров, не программистов) мучили Фортраном, Алголом и даже PL/1 и тоже рассказывали сказки про "полезность". В 80-х годах, когда появились Искра-226, где единственным доступным средством был Basic (очень неплохая версия), стали рассказывать сказки про него.

Потом на первых PC появился BASICA, который не надо было "доставать" и на него стали напирать. Потом было еще много всяких (GW-Basic, TurboBasic, TrueBasic, QuickBasic, PowerBasic) и их стали проталкивать. Например, TurboBasic мог делать настоящие автономные EXE, и это понравилось. Но "простые инжененры" делавшие на него ставку бывали очень разочарованы в последний момент, когда натыкались на его ограничения.

VisualBasic был революционным - он дал возможность намного легче проектировать интерфейс, а это самое трудоемкое. Но "визуальность" быстро вошла во все среды програмирования. Если говорить только про инженеров, не программистов, так для них гораздо лучше оказалась Delphi. Язык (именно язык) Pascal гораздо лучше, так как он специально разрабатывался Виртом чтобы вправлять мозги. А сама среда програмирования неизмеримо эффективнее. И я знаю немало "простых инженеров", которые так и работают. При этом еще и их программы очень популярны. Где-то в Download лежит Научный Инженерный Калькулятор Николая Волкова - он "простой ОВ-шник" из Минска. Есть и такие, которые "подсели" на C-платформу. Начинали с TurboC, теперь в VS работают. Немало "простых инженеров" прошли эволюцию от dBase до VisualFoxPro. Там и язык-то почти естественный, но это профессиональные инструменты.

А профессиональным инструментом (хоть ножовкой, хоть автомобилем, хоть средой программирования) всегда лучше пользоваться даже любителю. Даже "для себя".

Линия же VB - это любительский инструмент. Несмотря на то, что встречаются и очень хорошие програмы, сделанные на VB. Но это уж от рук мастера зависит. Только таких мастеров очень и очень мало, по сравнению с общей массой блаженно верующих.
ShaggyDoc вне форума  
 
Непрочитано 30.07.2008, 09:18
#16
serov


 
Регистрация: 06.03.2008
Сообщений: 165


ShaggyDoc! Спасибо хоть ходить и ползать разрешили. Написать прикладные программы можно на любом языке программирования. Тут дело привычки и вкуса.VBA для AutoCAD- это математика + векторная алгебра, правда не всегда выполненая удачно. Считай и рисуй и все в одном dvb.
Хотелось бы чтобы Вы на простых примерах, а не голословно, обосновали свою точку зрения.
serov вне форума  
 
Непрочитано 30.07.2008, 10:10
#17
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Простенькие примеры? Пожалуйста - хоть с математикой, хоть с векторной алгеброй.

1. Нарисуйте с помощью VBA интерактивный круг. Указали центральную точку - а радиус динамически, чтоб "резиновый круг" тянулся. Lisp не использовать по религиозным соображениям. А также блочки повставлять, чтоб на курсоре висели, поворочать что-то.

2. Сделайте несколько проектов, использующих одну и ту же функцию. Потом попробуйте изменить эту функцию (допустим, ошибка нашлась), и добейтесь новой работы без изменения проектов.

3. Попробуйте создать размерный стиль и установить его параметры средствами VBA. Параметры - это то, что отображается в диалоге - форма стрелок и прочее.

4. Попробуйте нарисовать какую-нибудь интерактивную трассу, наподобие того, как это делается командой PLINE.

Это как раз детские задачки.
ShaggyDoc вне форума  
 
Непрочитано 30.07.2008, 11:30
#18
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Кстати, п.4 в VBA реализовать можно. Но у меня сию секунду мозгов хватит только на прямые участки, дуговые сегменты мне не осилить. А вот п.3 на VBA нереализуем в принципе
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 30.07.2008, 12:00
#19
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


От себя добавлю несколько оценок VBA (по 5-бальной шкале):
1. Возможности интерактивного взаимодействия с пользователем AutoCAD : 3
2. Отсутствуют начисто возможности по работе с кривыми: 2
3. В отличие от VisualLisp/ARX/.NET есть возможность работать с AutoCAD только через COM-интерфейс, так что возможности взаимодействия покрываются разве что на 50%: 3
P.S.: А почему тема не в программировании?

Последний раз редактировалось Александр Ривилис, 30.07.2008 в 12:42.
Александр Ривилис вне форума  
 
Непрочитано 30.07.2008, 12:02
#20
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Изначально тема находилась в "разном", да и заголовок такой, достаточно расплывчатый. Кто ж знал, что сюда придут такие спецы, как Александр Ривилис, ShaggyDoc. Alaspher'a еще сюда притащить бы
Если есть желание - можно и перенести.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 30.07.2008, 14:17
#21
serov


 
Регистрация: 06.03.2008
Сообщений: 165


ShaggyDoc! Спасибо за "детские примеры", но меня очень трудно переубедить, привычка - вторая натура.
Вот я и ползаю.
По п1. А для чего нужны формулы кривых, сопромата, теории упругости, таблицы в ГОСТах и тд?. Сосчитал размеры и рисуешь без всяких резинок автоматом. А блочок вставил и rotate повернул, тоже на расчетный угол. Интерактивно не могу, а для чего тогда прикладная программа.
По п.2 Проще всего - переименовал модуль кода (подпрограммы или функции)
По п.3 Даже в TurboBasic можно было постаравшись проставлять размеры не говоря о VB но зачем? В листе определил размерный стиль в соответствии с ГОСТ или СПДС и все- среда готова, тоже с текстом.
И последнее - вполне возможно сочетание. старого известного многим бейсиковского языка, с Lisp, Delpfi и тд.
Результат д.б. один - нажал на кнопку получил чертеж.
serov вне форума  
 
Непрочитано 30.07.2008, 14:46
#22
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Пока ADT считает спецификацию на 125 этажей, выскажусь.
п.1 : ага, а место установки, например, вентиля тоже по формулам определять? Или место установки розетки?
п.3 : А я позьму и руками переопределю размерный стиль. И потом высказываться буду типа "что за дела, чертеж не того вида!" И попробуй меня переубеди. Думаешь, я зря в свое время делал создание размерных стилей?
"Сочетание известного многим бейсиковского языка" - это имеется в виду VB? И на нем делать dll? Да, знакомо. До определенного момента этого более чем достаточно. Только вот незадача - dll надо регистрировать. И все связанные компоненты тоже. А еще учесть вариант "неклассической" схемы оформления Windows XP (именно в VB с этим есть определенные трудности).
Цитата:
Результат д.б. один - нажал на кнопку получил чертеж.
Кнопка должна быть большой, жирной и красной. Неистребимая мечта.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 30.07.2008, 14:51
#23
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
Сообщение от serov Посмотреть сообщение
ShaggyDoc! Спасибо за "детские примеры", но меня очень трудно переубедить, привычка - вторая натура.
Конечно, трудно словами убедить "не лижи железо на морозе". Двух детей и трех внуков не смог убедить - лизали.

Цитата:
Вот я и ползаю.
Ну, я же разрешил.

Цитата:
По п1. А для чего нужны формулы кривых, сопромата, теории упругости, таблицы в ГОСТах и тд?. Сосчитал размеры и рисуешь без всяких резинок автоматом.
Не знаю для чего нужны. А вот пользователю "нада" (С) просто визуально нарисовать круг. Или 10 рядышком. Чтоб видеть. И плевать ему в этом случае на теорию упругости. И подобных задач, по которым VBA получит "неуд" - множество. Простых, реальных задачек для "простых инженеров".
Незачет.

Цитата:
А блочок вставил и rotate повернул, тоже на расчетный угол. Интерактивно не могу, а для чего тогда прикладная программа.
Незачет. Прикладная программа для того, чтобы делать то, что нужно и как нужно пользователю, а не то, что умееет и как может программист и его любительская тупая и неразведенная "пила". Визуальная вставка блока, висящего на курсоре, да еще предварительно смасштабированного и, возможно,повернутого - самая распространенная задача.

Цитата:
По п.2 Проще всего - переименовал модуль кода (подпрограммы или функции)
Незачет. Это корректировка программы. А если таких программ сотни?

Цитата:
По п.3 Даже в TurboBasic можно было постаравшись проставлять размеры не говоря о VB но зачем? В листе определил размерный стиль в соответствии с ГОСТ или СПДС и все- среда готова, тоже с текстом.
Незачет. Не спрашивайте "зачем" - решайте задачу. Задача - программное создание размерного стиля и установка его свойств. Назначение элементарное - чтоб не портить чужие любимые стили. И при чем тут TurboBasic - древняя DOS-овская среда, не имеющая ни малейшего отношения к AutoCAD?

Цитата:
И последнее - вполне возможно сочетание. старого известного многим бейсиковского языка, с Lisp, Delpfi и тд.
Результат д.б. один - нажал на кнопку получил чертеж.
Вот она где заветная кнопка! "А мужики-то не знают!". Нажал и получил! Но при чем тут VBA? Только из-за старого бейсиковского языка? Или в нем есть в компонентах такая кнопка? Разочарую - её нет даже в ObjectARX.

Сочетание технологий дает действительно наилучшие результаты. Еще можно было бы говорить о сочетании "большого" VB и LISP - но тема-то "в чем зло VBA".

Продолжайте тренироваться в ползании по-пластунски. Только при ползании дальше своего носа трудно что-то разглядеть. Даже пару действительных преимуществ VBA по сравнению с Visual LISP.
ShaggyDoc вне форума  
 
Непрочитано 30.07.2008, 14:54
#24
serov


 
Регистрация: 06.03.2008
Сообщений: 165


Еще за VBA. На растерзание пример- все в одном стакане!
Александр Ривилис, Зачем 2 ставить за кривые. Любую кривую в
VB можно апроксимирировать формулами и построить в 2D или 3D?
Вложения
Тип файла: rar Фланцы с креплением на 280807.rar (102.7 Кб, 124 просмотров)

Последний раз редактировалось serov, 31.07.2008 в 08:49.
serov вне форума  
 
Автор темы   Непрочитано 30.07.2008, 15:14
#25
Vildar

AutoCAD
 
Регистрация: 26.07.2007
Москва
Сообщений: 1,064


Offtop:
Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Пока ADT считает спецификацию на 125 этажей, выскажусь.
Это где такой небоскреб будет? Кстати, я CADware скачал без спросу. Извиняюсь. Там есть ARX файлы. А можно попросить исходники? Пожалуйста. Мне бы одним глазком глянуть, в сугубо личных, ознакомительных целях.
Vildar вне форума  
 
Непрочитано 30.07.2008, 15:19
#26
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


arx писал не я. Исходников на них нет. этот "небоскреб" - 5 секций по 25 этажей в каждом. Считает что-то долго, зараза.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 30.07.2008, 16:38
#27
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


Цитата:
Сообщение от serov Посмотреть сообщение
Еще за VBA. На растерзание пример- все в одном стакане!
Александр Ривилис, Зачем 2 ставить за кривые. Любую кривую в
VB можно апроксимилировать формулами и построить в 2D или 3D?
Речь идет не просто о кривых, а кривых AutoCAD (AcDbCurve), к которым относятся отрезки (AcDbLine), полилинии (AcDbPolyline), эллипсы (AcDbEllipse), сплайны (AcDbSpline) и т.д. Так вот в VBA нет возможности с ними работать в той мере, в которой это позволяет lisp и особенно arx. Элементарный пример - проставить точки (засечки) на одинаковом расстоянии вдоль кривой (произвольной) или разбить кривую на заданное число кусков в VBA упирается в сложные вычисления, а на lisp и arx делается в несколько строк кода, т.к. разработчики AutoCAD это предусмотрели в указанных средах разработки, а утруждаться написанием таких методов для VBA они не стали. И это далеко не единственный пример. Я не хаю VBA вообще, хотя это не инструмент профессионалов. Но под AutoCAD он "не заточен" и никогда уже не будет заточен.
Александр Ривилис вне форума  
 
Непрочитано 30.07.2008, 17:13
#28
C1


 
Регистрация: 13.06.2005
Сообщений: 314


Не понимаю проблем в VBA с размерными стилями. К параметрам размерного стиля можно обращаться через системные переменные через тот же VBA. Или есть какие-то другие проблемы?
Религиозного отношения к VBA быть не должно. Но VBA (а лучше VB)можно совмещать с лиспом. Мне лично формы проще делать на VB.
C1 вне форума  
 
Непрочитано 30.07.2008, 17:52
#29
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


Цитата:
Сообщение от C1 Посмотреть сообщение
Не понимаю проблем в VBA с размерными стилями. К параметрам размерного стиля можно обращаться через системные переменные через тот же VBA. Или есть какие-то другие проблемы?
Проблема в том, что меняя значения системных переменных ты меняешь настройки текущего размерного стиля, что является признаком плохого стиля программирования. Главная заповедь - "Не навреди".
Цитата:
Сообщение от C1 Посмотреть сообщение
Религиозного отношения к VBA быть не должно. Но VBA (а лучше VB)можно совмещать с лиспом. Мне лично формы проще делать на VB.
Формы безусловно проще делать на VB/VBA/VB.NET чем на лиспе (уж очень DCL упрощенный и практически не изменился с времен DOS). А вот совмещать VB/VBA с lisp достаточно не просто - ну не предназначены они для этого. Уже одно то, что lisp работает в контексте документа, а VBA - в контексте приложения и синхронизация их - дело заморочливое.
Александр Ривилис вне форума  
 
Непрочитано 31.07.2008, 08:37
#30
Alaspher


 
Регистрация: 11.10.2004
e•burg
Сообщений: 755


"Не буди лихо..."

Тема, мне каэца, вполне на месте - речь не о программировании, как таковом.

По самой сути - несмотря на некоторую резкость формулировок, ShaggyDoc (собсно и все те, кому VBA в Автокаде не люб) прав в главном - VBA искуственно прикрученный к Автокаду инструмент. Прикрутили, как получилось, а получилось - так себе... В принципе, конечно можно и на нём чтото писать, но перспективы изучение VB (любого диалекта) - не имеет. Причины уже привёл опять же ShaggyDoc. Могу только подтвердить - с очень большой вероятностью, MS в ближайшем будущем откажется от использования VB, вероятно оставив его, на какоето время, только в виде VB.NET. Не сказать, чтоб я был этому как то рад - всё равно не использовал почти, разве что в Экселе, но уж точно сожалений не испытаю.
Alaspher вне форума  
 
Непрочитано 31.07.2008, 09:52
#31
ssn

Инженер проектировщик (раздел ТМ - фриланс)
 
Регистрация: 06.12.2003
Геленджик
Сообщений: 1,783
Отправить сообщение для ssn с помощью Skype™


зато в защиту ВБА можно сказать следующее - это как велосипед, сел и поехал... ну упал пару раз, повилял, но проехал таки...
понятное дело есть мотоциклы и прочая, более сложная техника...
Главный плюс ВБА для любителей (а для них он и сделан) - куча примеров в хелпе. Вырезай целыми кодами и вставляй к себе в программу... да, не красиво (с точки зрения высших сфер), но зато как действует!
Надо написать мелкую програмку (не ту, которая делит прямую на участки, или круги интерактивно рисует, или блоки вставляет с повисанием на курсоре... (повисание на курсоре - 5 баллов, долго искал в своё время вроде бы простую функцю) или ещё чего заковыристое).. дак чаще всего это надо в огромных мега проектах которыми потом планируется делиться с народом или ещё лучше - продавать... а если от макроса требуется простая рутина, ну что ж плохого, если я не буду клянчить у мастеров лиспа и АРХа, ну пожалуйста, ну сделайте так... ну очень надо... а в ответ можно получать - в детстве лизать металл пробовал? конечно да. все пробовали. а если в детстве не пробовали, то потом всеравно попадались.
так что, каждому своё.
а лисп... после поверхностного знакомства с ВБА пробовал почитать умные книги по лиспу... дак все уже противится внутри этой кажущейся простоте и куче скобок....
главный конечно же минус это изменяемость от версии к версии и вообще реальная опасность обрезания этого дела в дальнейшем.
ssn вне форума  
 
Непрочитано 31.07.2008, 10:00
#32
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
это как велосипед, сел и поехал... ну упал пару раз, повилял, но проехал таки...
Вот потому и говорю - "любительский" инструмент. Любитель-путешественник может всю страну проехать на велосипеде. Профессионал - поедет на автомобиле. Ему нельзя "ну упал пару раз". Может быть и велосипедист-профессионал, но на любительских исполнениях велосипедов он не ездит. Ему также нельзя "повилял".

А "зло" в том, что любитель-новичок, еще не упав, начинает воображать себя профессионалом или хотя бы "инженером умеющим ездить".
ShaggyDoc вне форума  
 
Непрочитано 31.07.2008, 10:28
#33
serov


 
Регистрация: 06.03.2008
Сообщений: 165


Все надеваю каску, бронежилет, копаю траншею и через бинокль смотрю на «летающих» высоко, высоко на этом форуме господ. Зло, прежде всего, находится в людях, а не в средстве разработки приложений VBA. Вот они и «калечат мозги». А какие перспективы у Lisp’a ? Может “ruCAD” – так это «курица в полете», или еще лучше - «nanoCAD»?
А может и Lisp совместно с VB сойдет на нет из-за своей древности?
serov вне форума  
 
Непрочитано 31.07.2008, 10:33
#34
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Позволю себе немного высказаться:
Цитата:
Зло, прежде всего, находится в людях, а не в средстве разработки приложений
"Нет изначально злых" - слышал про такое? Среда разработки (точнее, выбранный язык) тоже оказывает свое влияние. Иногда трудноисправимое (посмотри на меня - я испорчен VB весьма прилично).
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 31.07.2008, 10:50
#35
Alaspher


 
Регистрация: 11.10.2004
e•burg
Сообщений: 755


Цитата:
Сообщение от ShaggyDoc Посмотреть сообщение
Может быть и велосипедист-профессионал, но на любительских исполнениях велосипедов он не ездит.
Ну, так то наверное нельзя утрировать - в умелых руках и вилка ОМП...

Цитата:
Сообщение от serov Посмотреть сообщение
А какие перспективы у Lisp’a ?
Никаких. АвтоЛИСП сойдёт со сцены вместе с последним Автокадом, другие диалекты ЛИСПа окажут влияние на какие-то узкие сферы деятельности и языки (типа Питона) и тоже исчезнут (ну разве что в какихто очень специальных нишах может чтото сохраниться). Но принципы программирования, которыя заложены в ЛИСП уже используются не только в нём самом. VB же уходит совсем, вместе с идеологией.

Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
"Нет изначально злых" - слышал про такое? Среда разработки (точнее, выбранный язык) тоже оказывает свое влияние. Иногда трудноисправимое (посмотри на меня - я испорчен VB весьма прилично).
И злые "с пелёнок" есть и среда влияет, но чё-ж на себя то клеветать?
Alaspher вне форума  
 
Непрочитано 31.07.2008, 10:54
#36
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Alaspher, если б ты знал, сколько времени я мозги себе вправлял для понимания лиспа
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 31.07.2008, 11:03
#37
Vildar

AutoCAD
 
Регистрация: 26.07.2007
Москва
Сообщений: 1,064


Плиз. Давайте не будем разделяться на противоборствующие (религиозные ) лагеря. Это уже точно идет от "зла" внутри нас (ведь "зло" - это одно из свойств человека (типа Object properties, чтоб понятно было )).
Я уважаю всех участников форума, независимо от используемого ими языка программ-ия (а уж "непосильный" мне лисп тем более уважаю).

"Непосильный" потому что, с наскока не получилось. А чем более детально его изучать, думаю перспективней ObjectARX. Тока пока не могу определиться C#.NET(совет VB[b]ShaggyDoc[/b)], VB.NET (это мне ближе, но Алексей сказал что там нет OARXа, вроде пишут на нем как-то) или С++ (вроде бы родной для OARX).

Продолжайте. Слушаем внимательно и воспринимаем!
Vildar вне форума  
 
Непрочитано 31.07.2008, 11:06
#38
Alaspher


 
Регистрация: 11.10.2004
e•burg
Сообщений: 755


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Alaspher, если б ты знал, сколько времени я мозги себе вправлял для понимания лиспа
Так бы и писал тогда:
Цитата:
...посмотри на меня - я испорчен VB весьма прилично, был...
Мало ли, у кого, какие скелеты по шкафам рассованы...
Alaspher вне форума  
 
Непрочитано 31.07.2008, 11:23
#39
sevich


 
Регистрация: 17.08.2006
Israel
Сообщений: 19


Не являясь лично пользователем VBA но токмо справедливости ради.
Если уж ставить оценки - позвольте и мне
Лисп:
1. Простота изучения для пользователя непрограммиста - 2
2. Арифметические выражения (т.е. хлеб и масло пользовательского программирования) - 2
3. Диалоги - 2
4. Невозможность работы с DLL (в том числе с Windows API) е являющихся COM обектами (в последние время Microsoft практически сделал невозможным регистрацию COM обьектов на многих компьютерах) - 2.

ObjectARX (C++)
1. Доступность - в отличие от VBA вы должны покупвть Microsoft Visual Studio, изучать ее и платить снова каждые 2 года - 2-.
2. Совместимость версий - требует рекомпиляции для различных версий Акада - 2.
3. Сложность изучения - 2
4. Диалоги - 3
5. Производительность труда (скорость написания прикладных программ) -2.
__________________
Sevich
sevich вне форума  
 
Непрочитано 31.07.2008, 11:52
#40
Alaspher


 
Регистрация: 11.10.2004
e•burg
Сообщений: 755


Прокоментирую некоторые оценки
Цитата:
Сообщение от sevich Посмотреть сообщение
Лисп:
1. Простота изучения для пользователя непрограммиста - 2
Более простого в изучении языка, чем АвтоЛИСП - не знаю, да и программисты крайне редко пользуются им...
Цитата:
Сообщение от sevich Посмотреть сообщение
2. Арифметические выражения (т.е. хлеб и масло пользовательского программирования) - 2
А тут какие сложности? Отсутствие некоторых тригонометрических функций компенсируется простотой их собственноручного написания...
Alaspher вне форума  
 
Непрочитано 31.07.2008, 12:07
#41
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


sevich, ты б уж сравнивал тогда по одним и тем же критериям (это для начала):
Auto / Visual LISP:
1. Простота изучения - после понимания базовых вещей (алгоритма вызова) проблем уже никаких.
2. Арифметические выражения - ИМХО они там проще чем в VB. Особенно для работы с массивами
3. Диалоги на lisp'e не пишутся вообще-то. На DCL - да, но это отдельная тема.
4. Ай-яй-яй, обманывать нехорошо. См."САПР на базе" - отсылаю сразу к источнику. Ну и за компанию http://www.arcada.com.ua/forum/viewtopic.php?t=460
5. Доступность: поставляется вместе с AutoCAD.
6. Совместимость версий - решается 1-2 функциями и проверками
Остальное определяется квалификацией программиста. И не больше. И не меньше.
P.S. Напоминаю про подпись
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 31.07.2008, 12:12
#42
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
Сообщение от sevich Посмотреть сообщение
Не являясь лично пользователем VBA но токмо справедливости ради.
Если уж ставить оценки - позвольте и мне
Лисп:
1. Простота изучения для пользователя непрограммиста - 2
2. Арифметические выражения (т.е. хлеб и масло пользовательского программирования) - 2
3. Диалоги - 2
4. Невозможность работы с DLL (в том числе с Windows API) е являющихся COM обектами (в последние время Microsoft практически сделал невозможным регистрацию COM обьектов на многих компьютерах) - 2.

ObjectARX (C++)
1. Доступность - в отличие от VBA вы должны покупвть Microsoft Visual Studio, изучать ее и платить снова каждые 2 года - 2-.
2. Совместимость версий - требует рекомпиляции для различных версий Акада - 2.
3. Сложность изучения - 2
4. Диалоги - 3
5. Производительность труда (скорость написания прикладных программ) -2.
Какая уж тут справедливось? Смех, да и только. ObjectARX только в диалогах на троечку вытянул? И эти диалоги на троечку? В объективно самом мощном средстве разработки? "Не надо лохматить бабушку". Ладно, про него Ривилис напишет, если захочет. Но у OA есть такие достоинства, которые перекрывали бы все эти недостатки.

Про LISP:

Цитата:
1. Простота изучения для пользователя непрограммиста - 2
Чушь. Вот тут Кулик Алексей aka kpblc на наших глазах начинал осваивать LISP, при том, что, как он сам написал, в условиях "испорчен VB" и "мозги вправлял". Так он очень быстро LISP освоил, причем на профессиональном уровне - получше, чем изучающие LISP на программистских факультетах.
Цитата:
2. Арифметические выражения (т.е. хлеб и масло пользовательского программирования) - 2
Чушь. Чем = 2*2 "арифметичнее", чем (* 2 2). Это функциональный язык со своим синтаксисом, а уж все арифметические действия есть в любом
Цитата:
3. Диалоги - 2
Согласен - по сравнению с VBA. Но эти диалоги, с описанием в обычном текстовом файле, были еше когда вообще визуальных средств не было.

Цитата:
4. Невозможность работы с DLL (в том числе с Windows API) е являющихся COM обектами (в последние время Microsoft практически сделал невозможным регистрацию COM обьектов на многих компьютерах) - 2.
Насчет обращения к обычным dll - правда. Здесь преимущество VBA несомненное. А насчет невозможности регистрации COM (на Vista намек?) - чушь, основанная на незнании и слухах.

Но зачем выдергивать для оценки только то, что может быть или казаться недостатками? (Александр Ривилис - OA и на трояк не вытянул. Ха-ха)

Вместо бла-бла просто решите элементарные задачки, которые я задавал. А можно даже и на диалогах повеселиться.
ShaggyDoc вне форума  
 
Непрочитано 31.07.2008, 12:23
#43
опус


 
Сообщений: n/a


Граждане!
Я не такой умный как вы, и зря, наверное, влезаю в тему (если что то - то уберусь отсель, как лишний элемент).

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

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

Но эфто программирование кадовское сводит меня с ума, своей, на мой взгляд изначальной слабость - разумеется оно будет развиваться!
Но сейчас, что оно дает? По-моему - чистый мизер в сухом остатке, во всяком случае, для меня, как для "чайника" ?

Я буду признателен за отзывы!

Последний раз редактировалось опус, 31.07.2008 в 12:36.
 
 
Непрочитано 31.07.2008, 13:04
#44
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


опус, отлично. Вот тебе задачка (в полном объеме я ее не осилил, но для моих задач достаточно): в ADT собрано здание. Подсчитать площадь отделки помещений, вычтя все проемы. Или вторая, попроще: во всех файлах dwg, лежащих в определенном каталоге (возможно, на сервере), пройтись по всем блокам, всем примитивам внутри блоков выставить свойства "слой 0, тип, вес и цвет линии - ПоБлоку"; исключить текстовые надписи и примитивы, лежащие на непечатаемых слоях. Обработать все возможные ошибки. Количество файлов - около 200, блоков в каждом - от 10 до 500. Еще одна задачка, совсем простая: пройтись по всему текущему файлу и установить текстам (однострочным и многострочным), атрибутам (в том числе и многострочным) стандартизированный текстовый стиль. Если стиль есть, привести его к нормальному виду. Аналогичную работу провести над размерами и выносками. Исключать из обработки внешние ссылки, в том числе и вложенные. Обязательно пройтись по всем блокам (в том числе и динамическим).
Руками такое (я про последнюю задачу) ты будешь делать хорошо если день. Лиспом - максимум 10 минут на выполнение (на сверхнасыщенных чертежах, где количество текстов превышает 10 000).
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 31.07.2008, 13:19
#45
sevich


 
Регистрация: 17.08.2006
Israel
Сообщений: 19


Каждый язык имеет свои достоинства но и свои недостатки.
Каждый язык имеет свою область применения. Поскольку все "профи" дружно набросились на VBA я только хотел показать для симметрии что для многих наиболее массовых применений другие языки имеют не только достоинства но и недостатки.

Кулик Алексей aka kpblc

Не слышал чтобы MS Visual Studio поставлялся вместе с Автокадом.

ShaggyDoc

Самое мощное средство разработки вовсе не означает самое лучшее. Да, то что делает Александр Ривлис можно делать только в ObjectARX. Но для тысяч и тысяч пользователей да и для большинства профессиональных приложений без этого можно обойтись.



По поводу арифметики - абсолютно ве может быь запрограммировано на ассемблере, но если непривзятый человек сравнит 2 выражения
a + b*(c+d) и (+ (a (* b (+ c d)))) то ответ напрашивается сам собой.
Конечно для программирования исеуственного тнтеллекта это не так существенно, но для расчетчика, подсчитывающего нагрузки наглядность гарантирует меньшее количество ошибок.
sevich вне форума  
 
Непрочитано 31.07.2008, 13:24
#46
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


sevich, я вообще-то говорил только LISP. Про его недостатки я кое-что знаю
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 31.07.2008, 13:38
#47
опус


 
Сообщений: n/a


Кулик Алексей aka kpblc
Я понял Вашу мысль! Задачи Вашего уровня - передо мной никогда не стояли (они у меня значительно меньше) и площади я не считаю в автокаде - мне эфто тоже ни к чему (задач таких нет)!
Тем не менее, понятно стало зачем нужен встроенный язык - при таких объемах и задачах - я точно бы сразу в магазин за учебником побежал!
Спасибо за разъяснение!
 
 
Непрочитано 31.07.2008, 13:40
#48
Alaspher


 
Регистрация: 11.10.2004
e•burg
Сообщений: 755


Цитата:
Сообщение от sevich Посмотреть сообщение
По поводу арифметики - абсолютно ве может быь запрограммировано на ассемблере, но если непривзятый человек сравнит 2 выражения
a + b*(c+d) и (+ (a (* b (+ c d)))) то ответ напрашивается сам собой.
Насчёт "напрашивающихся" ответов я-бы не торопился (даже без учёта того, что ЛИСП выражение содержит ошибку).

Во первых, это всего лишь нотация языка и к ней достаточно легко привыкнуть, во вторых, именно благодаря такой нотации в ЛИСПе возможны вычислительные конструкции сложно реализуемые другими средствами, в том числе операции с заранее неизвестным числом аргументов, операции со списками и многие другие вкусности. Так что спич про сложности арифметики в ЛИСПе - в молоко.
Alaspher вне форума  
 
Непрочитано 31.07.2008, 13:41
#49
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Offtop: Хорошо, что не в топку
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 31.07.2008, 16:53
#50
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,413
Отправить сообщение для Александр Ривилис с помощью Skype™


Цитата:
Сообщение от sevich Посмотреть сообщение
Лисп:
1. Простота изучения для пользователя непрограммиста - 2
2. Арифметические выражения (т.е. хлеб и масло пользовательского программирования) - 2
3. Диалоги - 2
4. Невозможность работы с DLL (в том числе с Windows API) е являющихся COM обектами (в последние время Microsoft практически сделал невозможным регистрацию COM обьектов на многих компьютерах) - 2.

ObjectARX (C++)
1. Доступность - в отличие от VBA вы должны покупвть Microsoft Visual Studio, изучать ее и платить снова каждые 2 года - 2-.
2. Совместимость версий - требует рекомпиляции для различных версий Акада - 2.
3. Сложность изучения - 2
4. Диалоги - 3
5. Производительность труда (скорость написания прикладных программ) -2.
Лисп:
1. Спорно. После других языков программирования лисп действительно несколько непривычен. Но если начинать с нуля, то вполне. Просто другая нотация.
2. Очень спорно и в первую очередь связано с п.1
3. С диалогами согласен. Если не считать ObjectDCL/OpenDCL
4. Тоже согласен. Впрочем и VBA не безгрешен - далеко не все функции из обычной DLL им можно загрузить.
ObjectARX (C++)
1. Изучать нужно все, а не только VS. Что касается оплаты, то есть всякие Express версии. Но я ни разу не утверждал, что ObjectARX'ом должен пользоваться непрофессионал(!!!).
2. Раз в три года можно и перекомпилировать. Хотя можно и основной функционал (не обращающийся к AutoCAD) вынести в отдельные dll-файлы и тогда рекомпилируется только небольшая часть, которой нужен доступ к AutoCAD.
3. Это полная ерунда. Ничем C++ не сложнее чем VBA
4. Диалоги? Не смешите. Хочется "красивостей" - пользуемся сторонними библиотеками, а без них и MFC вполне достаточно. А можно и .NET-овские диалоги прикрутить.
5. Тоже полная ерунда. Евгений Елпанов может подтвердить, когда я ему за минут десять-пятнадцать присылал готовый arx-файл, реализующий необходимые ему функции, которые ни в VBA, ни в LISP'е не реализиемы или крайне не оптимальны (это я и о времени выполнения, и о времени написания кода).
Александр Ривилис вне форума  
 
Непрочитано 01.08.2008, 09:26
#51
Димас

джедай
 
Регистрация: 31.01.2005
Магадан
Сообщений: 460
<phrase 1=


балин) очередной холивор) думал хоть на этом форуме не будет такого)

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

ну и довод в пользу бейсика - изучив язык на примере автокада, можно писать програмки как для офиса так и отдельные программные продукты. Степень их "серьезности", конечно, спорный вопрос, но тем не менее, свои задачи они решать будут. А вот приведите пример программы написанной на лиспе не для автокада? желательно в этом, ну может прошлом году?

да и переход с vb/vba на vb.net считаю более вероятным, чем с лиспа

и еще добавлю: бейсик - простой инструмент для быстрого решения простых проблем
нужно что-то специфичное или хотите стать программистом? - учите еще один язык
__________________
тут была подпись(

Последний раз редактировалось Димас, 01.08.2008 в 09:31.
Димас вне форума  
 
Непрочитано 01.08.2008, 11:13
#52
Vlaword


 
Регистрация: 22.04.2008
Сообщений: 21


По моим наблюдениям, на серьезных программистских сайтах сравнения языков обычно заканчиваются выводом: "Нет плохих языков программирования, нет универсальных языков программирования. Можно говорить только о том, что для конкретной задачи больше подходит какой-нибудь конкретный язык."
Думаю, так и с языками для написания программ для Автокада. Что-то глобальное писать - наверное, Лисп или ObjectARX (C++). Что-то попроще - наверное, VBA.
Согласен с Димасом "...бейсик - простой инструмент для быстрого решения простых проблем...". Если возможностей VBA начнет не хватать - пользователь Автокада сам придет к мысли об изучении, скажем, Лиспа.
VB (и его диалект VBA) "портит" человека как программиста? Не знаю, не уверен. Но то, что после VB проще, при необходимости, научиться VB.NET (Delphi, C#...), чем после Лиспа - думаю, в этом со мной согласятся форумчане. А это может понадобиться пользователю Автокада для решения других профессиональных вопросов: ведь не только чертить приходится строителю (конструктору...).
---
Сегодня программы без дружественного красивого интерфейса как-то архаично смотрятся. Кто-нибудь может сказать, почему Лисп не сделали RAD-системой (типа VB (VBA) или Delphi) с набором компонентов? Это принципиально невозможно для Лиспа или разработчики Автокада почему-то не считают нужным этим заниматься?
Vlaword вне форума  
 
Непрочитано 01.08.2008, 11:28
#53
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Димас, при чем тут языки программирования?

Я уже писал здесь (самоцитата)

Цитата:
Речь то ведь не об языке программирования, а о применении определенных сред в разных условиях.
Не путайте кислое с зеленым. Спор об языке, это когда дети в песочнице доказывают друг другу, что a = b+c лучше, чем a:= b+c.

Причем тут "холивор"? Злобные джыгыты не воюют с детьми. Они их даже не едят. Как правило.

А вот это заблуждение:
Цитата:
ну и довод в пользу бейсика - изучив язык на примере автокада, можно писать програмки как для офиса так и отдельные программные продукты
Вот как раз на примере Автокада и не научитесь. Я бы еще согласился, если бы человек, хорошо владеющий VBA в Office, говорил, что ему удобнее это делать и в AutoCAD. Но хорошо владеющий VBA в Office, прекрасно понимают, что возможности ограничиваются только объектной модели. Так как и Officе и VBA делала одна фирма, то там наверняка доступ к кишкам более полный. А в AutoCAD - нет.

Насчет "можно писать". А Вы лично чего для офиса написали? На VBA? Не принимая во внимание всякую мелочевку? Или те инженеры, которые научились VBA в Автокаде?

Цитата:
А вот приведите пример программы написанной на лиспе не для автокада?
Мы про Автокад, или вообще? Так и таких программ полно, только это не "гуёвые" приложения для секретарш. Это целая отрасль, к фанатам которой я не отношусь.

А вот приведите пример хоть одной программы на VBA, написанной вне какого-то приложения?

Тема про "в чем зло". Я сразу написал - "калечит мозги". Что и было подтверждено в ряде дальнейших постов самими "постующими".
ShaggyDoc вне форума  
 
Непрочитано 01.08.2008, 11:57
#54
Alaspher


 
Регистрация: 11.10.2004
e•burg
Сообщений: 755


Цитата:
Сообщение от Vlaword Посмотреть сообщение
VB (и его диалект VBA) "портит" человека как программиста? Не знаю, не уверен.
Ну вообще, положа руку на что-нибудь дорогое... - есть такой момент, хоть лично я не склонен оценивать его так серьёзно, как ShaggyDoc.

Цитата:
Сообщение от Vlaword Посмотреть сообщение
Но то, что после VB проще, при необходимости, научиться VB.NET (Delphi, C#...), чем после Лиспа - думаю, в этом со мной согласятся форумчане.
За форумчан не скажу, я - нет. Зачем изучать VB.NET вообще не понимаю - какойто странный язык с весьма туманными перспективами. Delphi - среда разработки, а не язык, к её изучению VBA практически никак не подготовит. Сишные языки - боюсь, что там навыки приобретённые в Васике больше вреда принесут, чем пользы.
Alaspher вне форума  
 
Непрочитано 01.08.2008, 11:59
#55
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Цитата:
Сишные языки - боюсь, что там навыки приобретённые в Васике больше вреда принесут, чем пользы.
Подтверждаю всеми конечностями.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 01.08.2008, 12:15
#56
Vildar

AutoCAD
 
Регистрация: 26.07.2007
Москва
Сообщений: 1,064


Offtop: Позитиффу маловато )
Может кто нибудь вольёт его.
Что бы Надежда появилась
Луч света, так сказать.
Vildar вне форума  
 
Непрочитано 01.08.2008, 12:36
#57
Vlaword


 
Регистрация: 22.04.2008
Сообщений: 21


"...Но то, что после VB проще, при необходимости, научиться VB.NET (Delphi, C#...), чем после Лиспа - думаю, в этом со мной согласятся форумчане...."
"...За форумчан не скажу, я - нет..." Почему нет? Типы данных, переменные, константы, организация ветвления и циклов, создание процедур и функций, работа с компонентами и многое другое - все эти базовые понятия практически одинаковы в перечисленных мною языках.
"...Delphi - среда разработки, а не язык, к её изучению VBA практически никак не подготовит..." С некоторого времени объектная версия языка Паскаль стала называться Delphi, как и среда разработки. Например, см. Культин "Основы программирования в Delphi 7", стр.1.
Vlaword вне форума  
 
Непрочитано 01.08.2008, 14:18
#58
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


VB (например, VB6) и VB.NET - две большие разницы. Здесь ключевое слово - .NET, а это не язык программирования, а среда, Framework.

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

Наилучшим образом .NET сочетается с C# - потому что этот язык специально для платформы .NET и вырабатывался. Наилучшей средой для разработки, видимо, является Visual Studio от Microsoft (есть и бесплатные весьма приличные "Express Editions"). "Видимо" - это потому, что один производитель делает. А сомнения могут быть потому, что мнения о самих средах от Microsoft бывают разные. В том числе парадоксальные - люди, пишущие на VC++ хотели бы, чтобы оболочка (IDE), была бы как у Delphi.

Так как .NET все больше завоевывает позиций, то и многие софтовые фирмы начали работать на эту среду. А так как заодно в фирме Borland наблюдаются всякие шараханья организационные - некоторые "дельфины" переходят на C# и находят там много привлекательного. И это действительно так, а переход осуществляется безболезненно. Некоторые даже на VB.NET переходят (кто совсем боится буквы C почему-то).

Не желающие переходить во "вражескую" IDE продолжают работать в продуктах Borland. Для .NET можно писать и на Delphi. Кстати, Delphi, начиная с версии 7, это не только среда, но и язык - так стали именовать авторы.

А вот перескочить с VB6 на VB.NET гораздо сложнее, хоть там и там "VB". Это ведь не просто использование таких же синтаксических конструкций, наподобие Sub - End Sub, и прочего. Это иная идеология, иной образ мысли. Там непозволительны вольности, к которым многие привыкают в VB. Если в любом Pascal имеется строгая типизация, любую переменную надо объявить в строго определенном месте, к этому все привыкли, то в VB побольше анархии. А от анархии к порядку переходить сложнее. Хотя и "анархия - мать порядка". VB.NET и ввели-то, наверное, чтобы некоторые думали, что они туда легко перескочат с VBA. Чтобы сделать окончательный уход постепенным, как хвост коту из жалости частями обрубать.
ShaggyDoc вне форума  
 
Непрочитано 01.08.2008, 14:57
#59
Alaspher


 
Регистрация: 11.10.2004
e•burg
Сообщений: 755


Цитата:
Сообщение от Vlaword Посмотреть сообщение
Почему нет? Типы данных, переменные, константы, организация ветвления и циклов, создание процедур и функций, работа с компонентами и многое другое - все эти базовые понятия практически одинаковы в перечисленных мною языках.
Синтаксис, это то, что в любом языке изучается проще всего, куда сложнее освоить (и пересторить соответственно) логику мысли и программирования. Лиспист это не тот, кто на ЛИСПе начился писать работающие программы (это-то очень просто), а тот, кто научился на нём думать. Точно так же и с другими языками.

Цитата:
Сообщение от Vlaword Посмотреть сообщение
С некоторого времени объектная версия языка Паскаль стала называться Delphi, как и среда разработки.
Мои эксперименты с Паскалем/Дельфи закончились ещё в те времена, когда это были разные понятия. Каюсь - не знал, про переименование Паскаля. Ну а про "схожесть" Паскаля (при любом названии) и Васика, авторитетнее ShaggyDoc'а тут наверное никто и не скажет.
Alaspher вне форума  
 
Непрочитано 01.08.2008, 22:53
#60
sbi


 
Регистрация: 27.04.2008
SPB
Сообщений: 3,285
Отправить сообщение для sbi с помощью Skype™


Последний пост 58 ShaggyDoc просто великолепен! Спасибо!
sbi вне форума  
 
Непрочитано 01.08.2008, 23:16
#61
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Кстати, в Fedora вроде была заявлена поддержка .NET-приложений. Подробностей не знаю
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 02.08.2008, 08:03
#62
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


С .NET вообще особый разговор. Очень хорошая задумка для разработки больших систем, работающих с Интернет. Замечательно привязывает "к решениям Microsoft" - например, к IIS. Не случайно в последние годы доля IIS заметно увеличилась по сравнению с Apache. Но менеджеры способны угробить все.

Цитата: "Безграмотные (или еще хуже - полуграмотные) менеджеры - твари исключительно опасные. Истребление этого вида было бы моим величайшим вкладом в развитие цивилизации".

Это из книги David S. Platt Introduing Microsoft .NET, выпущенной, между прочим, издательством Microsoft Press.

Так вот, подученные менеджерами VB-программисты начинают переходить на VB.NET. На VB вообще большие и серьезные приложения не делаются, но вполне успешно могут создаваться небольшие, но очень полезные программы. Попадаются такие. И вот тут есть ловушка.

Программа, написанная во времена DOS на TurboBasic была в виде EXE и для работы не требовала ничего дополнительного. Пользователь вообще не знал (и зачем ему) как сделана программа.

Программа, написанная на VB6, требует VB6_runtime. Никаких гарантий, что у пользователя этот набор dll имеется, нет. Значит, надо включать в поставку. По нынешним временам немного - 1 Мб инсталляции и 2.5 на диске. Но это лишние хлопоты. Часто предлагается пользователю самому скачать этот набор откуда-то. Типа, у всех всегда круглосуточно Интернет должен быть.
Но тут еще ловушка - в vb6_runtime.exe включены и системные dll, которые без спроса заменят штатные. Вот из-за таких умников и переставляют периодически Windows.

Далее VB-программист перейдет на VB.NET. Если он будет разрабатывать, например, приложения для AutoCAD, то не страшно - с AutoCAD поставляется .NET. Не уверен, что обязательно надо было использовать эту платформу, но в огромном дистрибутиве .NET не мешает.

А если "VB-нетчик" сделает простенькую самостоятельную программу с какой-то единственной формочкой? А если при этом воспользуется самой последней версией .NET, например, 3? Сделает, например утилитку для просмотра превьювок Автокада. Или вообще для вывода в окошко IP-адреса компьютера (реальный случай).

Пользователю будет сказано, что такой версии .NET у него нетути. Ты, мол, лох, у всех пацанов есть, беги на сайт Microsoft, скачай и поставь. Плевать, что у тебя уже есть AutoCAD 2008, что вместе с ним установлена .NET 2. А для моей супер-пупер утилиты подавай 3.0.

На сайте Microsoft, после длительных поисков, можно найти инсталлятор. И, вроде небольшой - всего несколько Мб. Но его же надо найти и скачать. А когда скачали и запустили - выяснится, что этот "инсталлятор" сам лезет куда-то в закрома Microsoft и качает уже 52 Мб "настоящей" инсталляции. И не факт, что скачается за один раз - качаете-то не каки-нибудь менеджером закачек.

Вот и вся любовь.

Почему я обращаю внимание именно на VB-программеров, ведь точно также может сделать и Delphi-программист? Да потому, что подавляющее большинство Delphi- или C-программистов так не сделают. Они не будут ради непонятно-чего стрелять из пушки по воробьям. Они знают, когда и что нужно и можно применять.

А вот VB-программисты как раз очень легко зомбируются упоминавшимися менеджерами. Свято верят рекламным слоганам.
ShaggyDoc вне форума  
 
Непрочитано 02.08.2008, 10:42
#63
Малявка


 
Регистрация: 28.02.2007
Егорьевск Моск.обл.
Сообщений: 206


Мальчишки, ну чего вы сталкиваетесь лбами?
Ну люблю я VBA, и аж тащусь, когда очередная моя примочка в Excel вкалывает за юзера-моего коллегу, весело подмигивая прогрессбаром, а коллега уже тащит мне коробку с обалденными конфетами!
Не знаю, может вы и правы, когда упираете на скорый уход VBA. Но сейчас-то он честно отрабатывает свою миссию в MSOffice. Ну да, "пролез" VBA в AutoCAD. Так ведь для пользы! Рассматривайте это как эксперимент. А вдруг бы эксперимент удался, и VBA стал таким же полноправным языком AutoCAD? Да, хотя, наверное, и стал: вон уже сколько программ и примочек в форуме Caduser.ru!
А LISP - видно не судьба мне освоить. Ну блондинка я по натуре, не дается мне лисп.
Но вы же мне поможете в очередной раз, правда же? (когда мне понадобится в лиспе какую-нибудь феньку отмочить, чтобы все в моей конторе рты поразевали).
Удачи вам всем - и LISPикам и VBAшникам, и программерам других языков!
Малявка вне форума  
 
Непрочитано 03.08.2008, 15:28
#64
sbi


 
Регистрация: 27.04.2008
SPB
Сообщений: 3,285
Отправить сообщение для sbi с помощью Skype™


ShaggyDoc! Для меня лично важнее всего, стоит вопрос не о том, какой язык и т.д. в программировании важнее в настоящее время, а в том по какому пути должно пойти должно пойти развитие в этой отрасли. Выросли дети, подрасли внуки, что их ждет? Чему учить?
Что нас ожидает- дальнейшее разделение или глобализация? Куда идти?
sbi вне форума  
 
Непрочитано 03.08.2008, 16:17
#65
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
Сообщение от sbi Посмотреть сообщение
ShaggyDoc! Для меня лично важнее всего, стоит вопрос не о том, какой язык и т.д. в программировании важнее в настоящее время, а в том по какому пути должно пойти должно пойти развитие в этой отрасли. Выросли дети, подрасли внуки, что их ждет? Чему учить?
Что нас ожидает- дальнейшее разделение или глобализация? Куда идти?
А разве не ясно? Конечно, глобализация. При стремлении создать глобальные монополии. Microsoft это пытается сделать. Другие пытаются не дать ей этого сделать, имея ввиду, что это они должны монополизировать всё. В результате получится как в резултьтате становления империализма - будут несколько империй.

Причиной глобализации является Интернет. Именно из-за подключения миллионов компьютеров (или уже миллиардов?) в Сеть и возникают новые технологии.

.NET нафиг не была нужна лет 20 назад, когда не было такого развития Сети. О ней начали задумываться 10 лет назад, когда Сеть стала реальностью (почем именно .NET нужна именно в Сети здесь не место обсуждать). Пока еще без .NET можно обойтись, но скоро будет нельзя.

Другая "империя" - JAVA нафиг не была нужна лет 20 назад, когда не было такого развития Сети. О ней начали задумываться 10 лет назад, когда Сеть стала реальностью. Пока еще без JAVA можно обойтись, но скоро будет нельзя.

Поэтому, если думать о перспективе, надо рассчитывать на .NET (если иметь ввиду только платформу Windows) и на JAVA ( действительно межплатформенное решение).

"Последняя битва империй" еще впереди. Кто победит - неизвестно. Не исключено, что в этой битве оба "динозавра" погибнут, а выживет какое-нибудь "млекопитающее", на которого сейчас никто не обращает внимания.
ShaggyDoc вне форума  
 
Непрочитано 03.08.2008, 18:05
#66
sbi


 
Регистрация: 27.04.2008
SPB
Сообщений: 3,285
Отправить сообщение для sbi с помощью Skype™


ShaggyDoc! Большое спасибо за ответ. Извините за назойливость, я не разбираюсь в тонкостях политики, но должна же какая -либо альтернатива (" млекопитающее"). Есть какой-то Linux format. Какие у него перспективы на существование. А то все, сказанное мрачные мысли навеевает.

Последний раз редактировалось sbi, 03.08.2008 в 19:32.
sbi вне форума  
 
Непрочитано 03.08.2008, 20:05
#67
GlebbI4

проектирование, обследование
 
Регистрация: 22.10.2006
Днепропетровск
Сообщений: 115
<phrase 1=


Цитата:
Сообщение от ShaggyDoc Посмотреть сообщение
...
Поэтому, если думать о перспективе, надо рассчитывать на .NET (если иметь ввиду только платформу Windows) и на JAVA ( действительно межплатформенное решение).

"Последняя битва империй" еще впереди. Кто победит - неизвестно. Не исключено, что в этой битве оба "динозавра" погибнут, а выживет какое-нибудь "млекопитающее", на которого сейчас никто не обращает внимания.
Microsoft для кроссплатформенности .NET'a достаточно выпустить среду выполнения для того же Linux'a, Mac'a, etc. По типу JVM (Java Virtual Machine). Так как принцип работы у них во многом схож.
__________________
Мосты важнее, чем дома, они более святы, чем церкви, ибо сильнее объединяют.. ..они возводятся именно в тех местах, где сходится множество человеческих потребностей, они долговечнее других строений и никогда не служат какой-то скрытой или злой цели..
GlebbI4 вне форума  
 
Непрочитано 04.08.2008, 06:40
#68
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
Microsoft для кроссплатформенности .NET'a достаточно выпустить среду выполнения для того же Linux'a, Mac'a, etc. По типу JVM (Java Virtual Machine). Так как принцип работы у них во многом схож.
Ага, и выпустить MS Linux, MS Mac, etc. Или скупить всех конкурентов ради уничтожения.

MS плевать на кроссплатформенность. Это не их задача. Им надо, чтобы была платформа одна (для значимой доли рынка), и чтобы это была платформа Microsoft. А "кроссплатформенность" - в пределах своей платформы и средств разработки. Как у старика Форда было - "Автомобиль может быть любого цвета, при условии, что этот цвет - черный".

Ну, пусть какие-то "нехлебные" ниши занимают конкуренты. .NET создалась еще и как альтернатива JVM. Надо же было давать "достойный" ответ, или видимость достойного ответа.

Вот JVM - действительно альтернатива. Яркий пример - Open Office. Мало того, что кроссплатформенный, так еще пытается отхватить рынок офисных приложений, который Microsoft считает "своей добычей". Беда только в том, что альтернативные OS (и JVM) слишком либеральны. Их делают чуть ли не все, кому не лень, царит определенный разброд внутри сообщества, неосвместимость решений. Это вcё на руку Microsoft.
ShaggyDoc вне форума  
 
Непрочитано 10.09.2008, 09:33
#69
stas_org


 
Регистрация: 05.04.2007
Самара
Сообщений: 1,202


Может зло VBA не в том что он чегото там не может, а в том как его прикручивают к приложению. Посмотрите VBA для ZwCAD, там есть ряд отличий, в часность определение начальных и конечных точек всех примитивов может находиться в одном массиве. Visual Basic for Application может и канет в лету только потому что .NET вытеснит, ну лиспу там воообще ничего не светит.
stas_org вне форума  
 
Непрочитано 10.09.2008, 11:36
#70
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Хоть "не в том что он" а "в том как его" - всё равно зло.
ShaggyDoc вне форума  
 
Непрочитано 16.10.2008, 23:58
#71
ganjour


 
Регистрация: 16.10.2008
Сообщений: 45


LISP+COM - криво
ganjour вне форума  
 
Непрочитано 17.10.2008, 00:16
#72
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


ganjour, аргументируй. А то можно "нарваться" на ответ типа "кривыми руками ничего не прямо".
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 17.10.2008, 00:22
#73
ganjour


 
Регистрация: 16.10.2008
Сообщений: 45


Цитата:
Сообщение от ShaggyDoc Посмотреть сообщение
Пользователю будет сказано, что такой версии .NET у него нетути. Ты, мол, лох, у всех пацанов есть, беги на сайт Microsoft, скачай и поставь. Плевать, что у тебя уже есть AutoCAD 2008, что вместе с ним установлена .NET 2. А для моей супер-пупер утилиты подавай 3.0.
Если он уже скачал и пытается загрузить .Net приложение, то достать netframework3, 3.5, 4, 5, .и.т.д. для него не станет неразрешимой задачей а ведь .Net может быть необходим не только для ACADa
ganjour вне форума  
 
Непрочитано 17.10.2008, 06:20
#74
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
LISP+COM - криво
Мозги уже искалечены? Устриц кушали, чтоб рассуждать об их вкусе?

Цитата:
Если он уже скачал и пытается загрузить .Net приложение, то достать netframework3, 3.5, 4, 5, .и.т.д. для него не станет неразрешимой задачей
Устриц кушали, чтоб рассуждать об их вкусе?

Да, неразрешимых задач почти нет. Есть решаемые с трудом. Одна из них - как раз отдельно "достать" netframework нужной версии. Например, DwgTrueView2009, скачанный с сайта Autodesk недоинсталлирует именно .NET. Не всегда, но бывает - глюки закачки. Надо найти и поставить NET отдельно - не неразрешимая задача. Но надо найти. Зачем скачать интсталлятор. Но это еще не "настоящий" инсталлятор, он сам побежит на сайт и будет качать полную инсталляцию. А если как раз сейчас сбои в сети? А надо срочно? А "инсталлятор" докачку не поддерживает? Нахлебаетесь.

А если это приложение, ради которого новая версия качается, не такая солидная вещь, как DWGTrueView, а какая-нибудь вшивенькая программулька, в которой зачем-то форма из .NET использована?

Но .NET, при наличии всяких недостатков, всё-таки гораздо меньшее зло, чем VBA.
ShaggyDoc вне форума  
 
Непрочитано 17.10.2008, 20:00
#75
ganjour


 
Регистрация: 16.10.2008
Сообщений: 45


ShaggyDoc до сих пор не знает как, где и чем скачивать, ну чтож, позволь тебя просветить:
framework3.5 SP1 (последнее на данный момент обновление): http://download.microsoft.com/downlo...Fx35Client.exe
то чем это можно скачать без проблем:
http://down6.flashget.com/flashget196en.exe

ЗЫ: заметь - при инсталляции не требуется подключения к интернету
ganjour вне форума  
 
Непрочитано 17.10.2008, 20:11
#76
ganjour


 
Регистрация: 16.10.2008
Сообщений: 45


разумеется если приложение требует для работы дополнительных модулей, в данном случае net, не лишним было бы указать подобную ссылку потенциальному пользователю, дабы он не тратил свое драгоценное время в поисках
ganjour вне форума  
 
Непрочитано 17.10.2008, 20:32
#77
Хворобьев

make love not war
 
Регистрация: 22.05.2008
Сообщений: 681


Идея .NET хорошая - собрать все в одном месте, но практически .NET программы нужно компилировать на старых версиях, которые входят в поставку большинства дистрибутивов.
Предлагать пользователю возиться с закачкой и установкой чего то там можно, если программа действительно незаменимая. А в этом случае все что нужно должно поставляться в дистрибутиве. Т.к. для многих это непростая задача, где то чего то скачать и поставить (интернет медленный и дорогой, или нет знаний - человек просто теряется. Или нет прав админа чего то ставить - примерно для 2/3 юзеров это сложность).
У меня нет нового FrameWork на компьютере - просто он мне не нужен. Как шел первый с виндой, так он и стоит, все нужные мне программы работают, а лубочные-симпатичные калькуляторы или, там, программы по расчетам балок мне не нужны, как, скажем фикус или канарейки.
И меня реально напрягает, когда некоторые люди начинают кого то там ложать из за неустановленности какой то новой приблуды (которая для программы данной функциональности на фиг не нужна к тому же). Лучшая программа - которая для начала работает везде и всегда. Это первое условие.
__________________
РАМА и MaXiMa

Последний раз редактировалось Хворобьев, 17.10.2008 в 20:40.
Хворобьев вне форума  
 
Непрочитано 17.10.2008, 21:43
#78
ganjour


 
Регистрация: 16.10.2008
Сообщений: 45


Цитата:
Сообщение от Хворобьев Посмотреть сообщение
Предлагать пользователю возиться с закачкой и установкой чего то там можно, если программа действительно незаменимая. А в этом случае все что нужно должно поставляться в дистрибутиве.
netframework в дистрибутиве? а может быть он уже установлен, ты об этом не подумал? и человек должен качать десятки мегабайт просто так?

Цитата:
Сообщение от Хворобьев Посмотреть сообщение
Т.к. для многих это непростая задача, где то чего то скачать и поставить (интернет медленный и дорогой, или нет знаний - человек просто теряется. Или нет прав админа чего то ставить - примерно для 2/3 юзеров это сложность)
поверь, такие "юзеры" уж тем более не станут искать в инете проги для када и не только писанные под .Net но и те же VBA, Lisp и ObjectARX, а если вдруг скачают то наверняка не станут даже пытаться их устанавливать, в лучшем случае попросят это сделать того у кого есть права админа
Цитата:
Сообщение от Хворобьев Посмотреть сообщение
У меня нет нового FrameWork на компьютере - просто он мне не нужен. Как шел первый с виндой, так он и стоит, все нужные мне программы работают, а лубочные-симпатичные калькуляторы или, там, программы по расчетам балок мне не нужны, как, скажем фикус или канарейки.
И меня реально напрягает, когда некоторые люди начинают кого то там ложать из за неустановленности какой то новой приблуды (которая для программы данной функциональности на фиг не нужна к тому же). Лучшая программа - которая для начала работает везде и всегда. Это первое условие.
аминь!
ganjour вне форума  
 
Непрочитано 17.10.2008, 22:12
#79
Красин


 
Регистрация: 05.09.2008
Сообщений: 24


Я пытался использовать программирование для облегчения своей работы в Автокаде, но пришел к выводу, что разделение труда рулит. Тем не менее в процессе узнал много нового.

Цитата:
Сообщение от ShaggyDoc Посмотреть сообщение
Но .NET, при наличии всяких недостатков, всё-таки гораздо меньшее зло, чем VBA.
NET - это никакое не зло, а огромный прогресс. NET.framework - это огромная библиотека классов, в которой есть все для программиста, в отличие от VBA или AutoLISP. И эта библиотека есть почти на каждой машине, что делает размер программ маленьким, так почти все необходимое собрано в dll-ках в папке c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\, например. Есть возможность легкого использования библиотек, написанных на С,Delphi и т.д. Есть возможность безпроблемного использования СОМ в NET
Если хотите примеры хороших настольных не-интернет NET-приложений вот 2 сслыки (скачайте и установите - маленький размер дистрибутивов вас удивит):
http://www.soft4science.com/products/SciWriter/ - практически word
http://www.paint.net/ - практически photoshop

Мое мнение о VBA - плохой язык, хоть и служит хорошую службу в Excel, для которого есть VBA-надстройки для финансового анализа, инженерных расчетов. VB.NET - неоправдано сложный язык, лучше пользоваться С#. мне думается, что С# даже проще, чем VBA.
Мое мнение о Lisp - отличный язык, но он скорее для интеллектуалов.
Кстати, есть возможность реализовать Lisp для NET, это было бы супер.
И связка Lisp-COM - это здорово.
И что еще хотелось отметить - это возможность легко расширять Visual Lisp новыми функциями с помощью ARX.NET, то есть существует еще более эффективная связка (для Автокад 2007 и старше) Lisp-NET, т.е. теоретически можно обеспечить использование NET-framework в Visual Lisp, но видимо, созданием такого моста никто пока не заморочился. Такие вещи, как DosLib, можно быстро реализовать на C#, и это не потребовало бы такой колосальной подготовки, какая нужна для использования C++
Красин вне форума  
 
Непрочитано 17.10.2008, 22:25
#80
ganjour


 
Регистрация: 16.10.2008
Сообщений: 45


http://cdburnerxp.se практически Nero
ganjour вне форума  
 
Непрочитано 17.10.2008, 23:06
#81
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Пам-пам-пам... Ребята, не все так просто, как хочется.
1. AutoCAD (ведь разговор все же о нем в первую очередь) поддерживает .NET "как родной" начиная всего с 2005-й версии.
2. Написать на C# lisp-функцию возможно только для 2008 (возможно, и для 2007 пойдет, но я не уверен, а проверить нет возможности) и выше версии.
3. AutoCAD очень сильно завязан на конкретную среду .NET'a (2005..2006 - .NET 1.1; 2007..2008 - .NET 2.0; 2009 для программирования требует .NET 2.0, а в процессе установки вроде бы ставит 3. Опять же, давно не ставил, а проверять сейчас нет желания).
ganjour, ты так и не ответил на #72 (наводит на нехорошие мысли). И смысла #80, если честно, я не понял. Подобных программ полно (я сам в свое время пользовался RSS-читалкой, использовавшей .NET 2.0, и что?).
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 18.10.2008, 08:10
#82
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
ShaggyDoc до сих пор не знает как, где и чем скачивать,
Вот только не надо меня учить что-то закачивать. Поверьте, я это знаю, возможно, получше всех. Просто по служебным обязанностям. Да и все дистрибутивы .NET, Java и прочего у нас просто лежат на сервере. Речь идет об обычных пользователях. Наподобие того, что написано в #77.

Большие приложения, такие как AutoCAD, включают NET в дистрибутив. Там размер этой среды, по отношению к основному продукту, небольшой. Да и поставка идет на дисках. А при скачивании могут быть ошибки, а раз могут, то происходят. Как с DwgTrueView. И уж тем более со всякими мелкими приблудами. Вот в таких ситуациях и NET становится злом.

Не надо меня и убеждать в достоинствах .NET, если я упомянул про какие-то недостатки среды. В этой ветке речь про "зло", с моей точки зрения "зло" - в изменении мозгов. Одно из таких проявлений и в том, что про .NET начинают считать: "
Цитата:
это огромная библиотека классов, в которой есть все для программиста
"
"Всё" - это для тех, кто слаще морковки ничего не ел. Далеко не всё, иначе бы тысячи программистов не расширяли бы .NET. Достоинства
.NET (многочисленные и реальные) совершенно в другом, но здесь не место их обсуждать.

Алексей справедливо напомнил, что речь про AutoCAD, а не "вааще за жизнь". Пока в AutoCAD .NET еще не заняла уверенно свою нишу для прикладных программистов. Хотя, несомненно, займет. Препятствием, на мой взгляд, является постоянная смена поддерживаемых версий. В этом и заключается "меньшее зло".

Но, тем, кому "скобки не нравятся", лучше переходить (или осваивать) .NET, причем сразу на C#, не теряя время на VB.NET. Тем более на VBA. Хвост коту надо рубить сразу, а не частями.
ShaggyDoc вне форума  
 
Непрочитано 18.10.2008, 12:00
#83
ganjour


 
Регистрация: 16.10.2008
Сообщений: 45


Цитата:
Сообщение от ShaggyDoc Посмотреть сообщение
Речь идет об обычных пользователях. Наподобие того, что написано в #77.
А #78 смотрел? там об "обычных" пользователях
ganjour вне форума  
 
Непрочитано 18.10.2008, 12:26
#84
Хворобьев

make love not war
 
Регистрация: 22.05.2008
Сообщений: 681


Зло .NET в попадании на крючек коммерческой политики Майкрософт.
Чего нужно пользователю? Чтобы честно приобретенная им софтина пахала и выполняла свои функции. До тех пор, пока основательно морально не устареет. А устарел ли морально-функционально, скажем мс-офис98? Для 90% пользователей, печатающих записки и прочую лабуду - нет.
Но и в случае покупки чего то нового рачительный хозяин стремится найти старой программе применение - поставить на какой нибудь старый компьютер и посадить за нее какого-нибудь не очень обученного пользователя.
А языки программирования? "Потерянное поколение" программистов под DOS? После выхода sp2 для Win98, если не ошибаюсь, досовские приложения перестали нормально функционировать. А там были целые жемчужины, вроде SUDM, которые до сих пор вне конкуренции.
Нужна ли человеку Виста с ее наворотами? Нахрена попу гармонь? А все, товарищи - через пару годочков чорта с два вы найдете драйвера на новый комп под любимый вашему сердцу ХР. И программы, которые под него работали придется в лучшем случае обновлять, а в худшем - выбрасывать. Работать нормально они уже вряд ли будут.
Понятно, что навязывая пользователям то, чего им не всегда нужно, майкрософт обеспечивает работой молодые поколения программеров. Любовь в ежовых рукавицах.
Но получается как то по советски - пользователь должен определять что ему нужно, а не продавец, то, что нужно пользователю.
Должна быть здоровая конкуренция - программы должны дешеветь и одновременно улучшаться.
Поэтому идея консервативной среды достаточно популярна. Многие VB программисты плюнули на .NET и перешли на С++ и внимательно следят за тем, чтобы их наработки не пришли к тому виду, что их придется смывать в унитаз.
__________________
РАМА и MaXiMa
Хворобьев вне форума  
 
Непрочитано 18.10.2008, 12:27
#85
ganjour


 
Регистрация: 16.10.2008
Сообщений: 45


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Пам-пам-пам... Ребята, не все так просто, как хочется.
1. AutoCAD (ведь разговор все же о нем в первую очередь) поддерживает .NET "как родной" начиная всего с 2005-й версии.
2. Написать на C# lisp-функцию возможно только для 2008 (возможно, и для 2007 пойдет, но я не уверен, а проверить нет возможности) и выше версии.
а чем плох 2008 и выше? на моем дохлом компе celeron 2000Мгц + 512DDR1 вполне сносно работает (2D разумеется)
Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
3. AutoCAD очень сильно завязан на конкретную среду .NET'a (2005..2006 - .NET 1.1; 2007..2008 - .NET 2.0; 2009 для программирования требует .NET 2.0, а в процессе установки вроде бы ставит 3. Опять же, давно не ставил, а проверять сейчас нет желания).
если ставит .net 3 значит и .net 1.1 и .net 2, если требует 1.1 или 2 то .net3 будет вполне достаточно, поскольку каждая последующая версия .net поддерживает все предидущие
Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
ganjour, ты так и не ответил на #72 (наводит на нехорошие мысли). И смысла #80, если честно, я не понял. Подобных программ полно (я сам в свое время пользовался RSS-читалкой, использовавшей .NET 2.0, и что?).
#71 это чтоб вас расшевелить а вообще я писал только на AutoLisp и с "VisualLisp" почти не знаком
Если программ для net полно, может быть среда .NET'a не так уж и бесполезна?
ganjour вне форума  
 
Непрочитано 18.10.2008, 12:35
#86
ganjour


 
Регистрация: 16.10.2008
Сообщений: 45


Цитата:
Сообщение от ShaggyDoc Посмотреть сообщение
Вот только не надо меня учить что-то закачивать. Поверьте, я это знаю, возможно, получше всех.
Если знаешь - зачем пишешь неправду?
ganjour вне форума  
 
Непрочитано 18.10.2008, 12:39
#87
ganjour


 
Регистрация: 16.10.2008
Сообщений: 45


Цитата:
Сообщение от Хворобьев Посмотреть сообщение
Зло .NET в попадании на крючек коммерческой политики Майкрософт.
ты уже попал к micro$oft на крючек установив Windows
ganjour вне форума  
 
Непрочитано 18.10.2008, 13:05
#88
Хворобьев

make love not war
 
Регистрация: 22.05.2008
Сообщений: 681


Цитата:
Сообщение от ganjour Посмотреть сообщение
ты уже попал к micro$oft на крючек установив Windows
попал ... и доволен пока. надо будет скушать приманку и искать новый крючек.
У меня достаточно скромные запросы, все мое ПО так или иначе: 50% собственное, 30% открытое. И 20% - приобретенное или бесплатное.
__________________
РАМА и MaXiMa

Последний раз редактировалось Хворобьев, 18.10.2008 в 13:11.
Хворобьев вне форума  
 
Непрочитано 18.10.2008, 14:58
#89
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
вообще я писал только на AutoLisp и с "VisualLisp" почти не знаком
Значит устриц мы всё-таки не ели, но категоричное мнение о их вкусе и процедуре их схлюпывания имеем. Обычное явление. То же самое, видимо, и с NET.

Цитата:
Зло .NET в попадании на крючек коммерческой политики Майкрософт.
Вот это близко к истине. Не вообще на крючок Майкрософт в виде использования Windows - это как раз неплохо. Для пользователя Windows, при всех её недостатках, благо. И для программистов тоже - потому что именно под Windows стало намного легче писать программы на основе событийно-управляемой концепции и единых базовых интерфейсов - в любой среде программирования.

А вот использование .NET подталкивает неокрепшие души к идее, что там есть всё, что нужно программисту. Что это такое "всё" - определила Майкрософт. И как это "всё" должно выглядеть и как работать - тоже решила Майкрософт. Если чего-то надо сделать своё, можно и в NET добавить, но это будут ещё дополнительные библиотеки, привязанные к версии NET.
ShaggyDoc вне форума  
 
Непрочитано 18.10.2008, 23:02
#90
ganjour


 
Регистрация: 16.10.2008
Сообщений: 45


Цитата:
Сообщение от ShaggyDoc Посмотреть сообщение
А вот использование .NET подталкивает неокрепшие души к идее, что там есть всё, что нужно программисту. Что это такое "всё" - определила Майкрософт. И как это "всё" должно выглядеть и как работать - тоже решила Майкрософт. Если чего-то надо сделать своё, можно и в NET добавить, но это будут ещё дополнительные библиотеки, привязанные к версии NET.
тебе не нравится то что делает микрософт? так сделай свое, может лучше получится. За них решила Майкрософт и тебе это не нравится - предложи свое решение и вперед к светлому будущему. Уверен ты предложишь такое решение где не будет никаких версий, и все будет выглядеть и работать уж точно не так как решила микрософт
А многие VB программисты вдруг дружно плюнут на .NET и перейдут на С++ по предложению г. Хворобьева.
Да и вообще чем плох этот С++, уверен все VB программисты в состоянии его быстро освоить, а ведь это такой мощный и гибкий язык и что главное программы написанные на нем работают везде и всегда, наверняка изучение программирования COM на С++ VB программистам покажется легкой прогулкой, а чего только стоит работа со строками, а указатели, а эта прелесть WinAPI или MFC! итак VB программисты срочно все переходите на С++ и вас ждет многократное увеличение производительности труда и программы ваши заработают сразу, везде и всегда и во веки веков. Аминь

Последний раз редактировалось ganjour, 19.10.2008 в 00:03.
ganjour вне форума  
 
Непрочитано 18.10.2008, 23:29
#91
ganjour


 
Регистрация: 16.10.2008
Сообщений: 45


Цитата:
Сообщение от Хворобьев Посмотреть сообщение
попал ... и доволен пока. надо будет скушать приманку и искать новый крючек.
У меня достаточно скромные запросы, все мое ПО так или иначе: 50% собственное, 30% открытое. И 20% - приобретенное или бесплатное.
а ACAD и Windows куда входят в 5% приобретенного или в 15% бесплатного или может быть 50% собственное? ты глава корпорации аутодеск? а может быть у тебя АКАД и виндофс не установлены, ты сидишь под линухом и попал на этот форум случайно?
ganjour вне форума  
 
Непрочитано 19.10.2008, 00:12
#92
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


ganjour, я сам немного программист на VB, и, уверяю тебя, перейти с VB (особенно 6-й версии и прилично посидев под VBA) на С++ не так уж и легко.
Цитата:
программы написанные на нем работают везде и всегда
Звездец. Ну, запусти, например, MS Office на Fedora. Без WINE. А если ты пишешь по приколу - так ставь смайлики. Лично у меня чувство юмора атрофировано давно и прочно - особенно если это касается форума.
Цитата:
а ACAD и Windows куда входят в 5% приобретенного или в 15% бесплатного или может быть 50% собственное? ты глава корпорации аутодеск? а может быть у тебя АКАД и виндофс не установлены, ты сидишь под линухом и попал на этот форум случайно?
Замаксированный вариант "подсчета чужих денег". Ты б хоть поинтересовался сначала, чем "дышит" Хворобьев, а потом уже высказывался.
Слишком уж ты скоропалительно высказываешься. Слишком.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 19.10.2008, 00:23
#93
ganjour


 
Регистрация: 16.10.2008
Сообщений: 45


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Лично у меня чувство юмора атрофировано давно и прочно
это заметно
ganjour вне форума  
 
Непрочитано 19.10.2008, 06:56
#94
Хворобьев

make love not war
 
Регистрация: 22.05.2008
Сообщений: 681


Я не против в том числе и монополии Майкрософт, если это в разумных пределах и мне не мешает.
А что касается программирования под .NET - тут все зависит от программы. Не заметил, чтобы все взяли и ринулись на .NET. Кто работал в VB - работают в нем же (соответствующие рантаймы м-софт пообещал включать в поставки новых своих ос-ей). Если человек уже несколько лет работает на VB, для него он в любом случае легче и проще любой новинки - масса же наработок, все действия на автомате. Соотв. - выше производительность труда и зарплата. А С/С++ - это же просто классика, которая не умрет никогда. Куда денется классика?
Если человек до старости лет собирается зарабатывать на хлеб программированием, он не должен привыкать к тем решениям, к которым исподволь подталкивает майкрософт. Пожилому учиться чему то новому трудно, чисто психологически, в случае с любой технологией МS - придется. Раз в 10 лет примерно происходят серьезные изменения. Не всегда нужные кстати и почти всегда с обрубанием старых концов.
Lisp и AutoLisp - почетные языки. Как минимум в Автокаде и в Интелликадах они поддерживаются. Улучшаются и обогащаются, но не уничтожаются совсем. Инженер, освоивший лисп лет 10 назад, может использовать свои старые наработки, пусть где то с изменениями.
__________________
РАМА и MaXiMa

Последний раз редактировалось Хворобьев, 19.10.2008 в 09:28.
Хворобьев вне форума  
 
Непрочитано 19.10.2008, 10:27
#95
ganjour


 
Регистрация: 16.10.2008
Сообщений: 45


Цитата:
Сообщение от Хворобьев Посмотреть сообщение
#94
да для акада лисп весьма не плох, жалко только что это почти единственная (доступная для меня) область его применения. Ну а насчет .Net - кто же знает что там будет завтра, живи и надейся
ganjour вне форума  
 
Непрочитано 19.10.2008, 19:33
#96
Александр Бауск

FEA/CAD/МКЭ/САПР
 
Регистрация: 20.03.2007
48,38°:35,03°
Сообщений: 1,056
Отправить сообщение для Александр Бауск с помощью Skype™


Offtop: Юноша, зачем вы такой агрессивный?
__________________
Reshaping the STEM field
Александр Бауск вне форума  
 
Непрочитано 20.10.2008, 19:43
#97
stas_org


 
Регистрация: 05.04.2007
Самара
Сообщений: 1,202


Offtop:Lamer ©
stas_org вне форума  
 
Непрочитано 20.10.2008, 20:12
#98
VBA

Проектируем потихоньку
 
Регистрация: 19.10.2008
USSR
Сообщений: 60


В чем зло VBA

Попрошу без оскорблений. Шутка
VBA вне форума  
 
Непрочитано 20.10.2008, 20:37
#99
Александр Бауск

FEA/CAD/МКЭ/САПР
 
Регистрация: 20.03.2007
48,38°:35,03°
Сообщений: 1,056
Отправить сообщение для Александр Бауск с помощью Skype™


ААААААА!!1 БЕЙ ЕГО!
__________________
Reshaping the STEM field
Александр Бауск вне форума  
 
Непрочитано 20.10.2008, 22:10
#100
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Второпях я пропустил
Цитата:
Сообщение от ganjour Посмотреть сообщение
<...>если ставит .net 3 значит и .net 1.1 и .net 2, если требует 1.1 или 2 то .net3 будет вполне достаточно, поскольку каждая последующая версия .net поддерживает все предидущие<...>
.NET, может, и поддерживает. А вот программы, написанные с использованием .NET - необязательно. acad.exe.config придуман "для красоты", да?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 29.10.2008, 09:59
#101
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,692


VBA - эта "нелепая игрушка злобных боссов Microsoft" Offtop: немало помог мне в облегчении собственной рутинной работы, но он повинен в том, что я до сих пор не знаю Lisp. 5 лет назад я устроился работать в свой отдел совсем зеленым овощем (с Autocad столкнулся впервые). Правда, благодаря тому, что большинство остальных сотрудников относились к категории "тетка" (причем пожилая), уже через месяц благодаря учебнику Полещука, caduser.ru (тогда еще autocad.ru) и данному сайту считался уже продвинутым пользователем. Работу мне для начала дали трудную и творческую: убивать кракозябры в файлах, перекинутых с 10 acada в 2000 (других способов, кроме как ручками править текст, никто не знал). Lisp, скачанный с одного из сайтов, и повешенный на кнопку себе и людям, превратил меня в глазах коллег и начальника во что-то среднее между Гэндальфом серым и наикрутейшим программистом. Захотелось этому мнению хоть как-то соответствовать (да и программирование меня увлекало еще в студенческие годы). Купил "Visual lisp и секреты адаптации..." того же Полещука (в бумажном виде искал его очень долго и был крайне счастлив, что нашел), торжественно открыл, и ...не пошло! Теория вроде понятна ("списки-атомы-точечные пары"), но как доходит до того, чтобы самому написать простейшую программу- скрипят извилины, да еще по тем временам сам Autocad каждый день удивлял новыми (для меня) возможностями,- не до лиспа! А когда однажды открыл редактор VBA и понял, что здесь мне многое известно и понятно (студенческий basiq, spectrum-basic -был такой супер-компьютер, если помните...-, qbasic, на котором писал я когда-то, развлекаясь, всякие тетрисы - в общем, сознание обезображено навсегда),- тут Полещук отправился в долгий ящик, где до сих пор и лежит.
Правда, в оправдание VBA скажу, что для моих задач его возможностей вполне хватает, как для простейших утилит (типа добавить-убрать к тексту спецсимволы (%%c и т.д.), или пройтись по примитивам всех блоков и скинуть их на слой 0, или заменить определенный текст во всех файлах определенной папки, ну и т.д.), так и для более-менее сложных программ - хотя и в них востребован минимум возможностей языка (работа с .txt - .xls файлами, создание описаний блоков, вставка блоков, работа с примитивами текущего чертежа - подсчет, сортировка, генерация спецификаций с экспортом в Exel). Пусть мои программы несовершенны и у здешних "монстров" вызовут только усмешку, зато - мои и работают!(и иногда я даже понимаю, как )
Ну а тем, кто только начинает изучать программирование, я б посоветовал все-таки прислушаться к мнению "старших товарищей" и делать упор на лисп; с VBA переходить на него действительно трудно.

Последний раз редактировалось AlexV, 29.10.2008 в 10:36.
AlexV вне форума  
 
Непрочитано 29.10.2008, 11:13
#102
Baldares


 
Регистрация: 17.10.2008
Саратов
Сообщений: 426


AlexV, ощущение что мы свами один человек, но в паралельных мирах, совпадение 100%.
Я закончив институт, понятия не имел об автокаде, мы все делали в компасе. Но был убежден что нужно его освоить, так как в любой проектной конторе работают в нем, судя по объявам о работе.
После мытарств по стройкам, шарашкам, попал в проектный институт, где и сейчас работаю. Вокруг одни тетки. Акад начал изучать тоже с этого форума, книги В.Свет. Ни одного продвинутого пользователя у нас в отделе нет (был правда внештатный программист-любитель на лиспе, ща я за ним все переделываю). И я тоже превратился в коперфильда. Потом купил НН.Полещука "AutoLisp и VisualLisp в среде AutoCAD", но не асилил, случайно перешел на VBA, а там все просто как два пальца. Начал писать програмки. Пошло поехало.
Теперь я уже и не инженер как-бы.
Таже фигня, отдельные программы-операции на VBA без проблем, а вот увязать это все в единое приложение - косяк.
Щас стою перед Эверестом из C++, NET, ну и на вершине меня ждет ObjectARX (лисп мне кажется посложнее будет )
Первые впечатления такие что разница между C++ и С#, примерно такая же как и между Lisp и VBA. Или это потому что я хватанулся сразу за Струструпа, после которого книга по C# как-будто для дураков написана.

А у Вас какие планы (что ждет меня впереди)?

зы кстати я тот Vildar, который тут раньше "ползал" по определению уважаемых гуру, теперь я это осознал и переименовался. Что бы мои посты не воспринимались слишком серьезно, как мне казалось было с прошлым ником. Сейчас чуствую себя комфортнее. Могу нести любую чушь

Последний раз редактировалось Baldares, 29.10.2008 в 11:30.
Baldares вне форума  
 
Непрочитано 29.10.2008, 11:59
#103
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,692


Цитата:
Я закончив институт, понятия не имел об автокаде, мы все делали в компасе...
Вам всем еще повезло...Я учился в те времена, когда все делали "в кульмане" (просто между окончанием ВУЗа и началом работы инженером у меня пролегли 4 года службы в ВС РФ и 3 года работы не по специальности)
Цитата:
лисп мне кажется посложнее будет...
Ну да, у меня аналогичное впечатление возникло 5 лет назад. Как раз приятель-недоучившийся программист отдал мне свою литературу по C++, я ее для общего развития изучал. Так вот, несмотря на разговоры о том, что си неимоверно сложен для восприятия (кстати, тоже подразумевалось, что первоначально изученный basiq программиста убивает на корню...), мне он казался намного понятнее и логичнее, чем Lisp. Но мечты о C++ остались мечтами (тем более среды программирования сишной не было на работе), Лисп, как я писал, забуксовал. Ну а сейчас вот предполагал на курсы записаться VB6 (теории все-таки не хватает, + сертификат разработчика, пусть и по не самому серьезному языку), тем более что контору нашу разогнали до нового года в вынужденный (благо, оплачиваемый) отпуск - время есть. Хотя после прочтения авторитетов в этой ветке сомнения появляются - есть ли в етих курсах смысл?
Цитата:
Теперь я уже и не инженер как-бы.
-интересно, а кто? Неужели штатный программист? (собственно, моя должность теперь тоже гордо обзывается не просто "инженер", а "ведущий инженер САПР"!)

Последний раз редактировалось AlexV, 29.10.2008 в 12:07.
AlexV вне форума  
 
Непрочитано 29.10.2008, 12:20
#104
Baldares


 
Регистрация: 17.10.2008
Саратов
Сообщений: 426


Цитата:
Сообщение от AlexV Посмотреть сообщение
Ну а сейчас вот предполагал на курсы записаться VB6 (теории все-таки не хватает, + сертификат разработчика, пусть и по не самому серьезному языку), тем более что контору нашу разогнали до нового года в вынужденный (благо, оплачиваемый) отпуск - время есть. Хотя после прочтения авторитетов в этой ветке сомнения появляются - есть ли в етих курсах смысл?
Про курсы и сертифицированный специалист это интересно. Ну и правда VB6 это "несерьезно"(с). А вот что такое сертифицированный специалист, это что дает. Примерно тоже что и диплом инженера. Тобиш без него не возьмут програмистом на работу? Да, тогда у меня с этим тоже проблема.
Цитата:
Сообщение от AlexV Посмотреть сообщение
-интересно, а кто? Неужели штатный программист? (собственно, моя должность теперь тоже гордо обзывается не просто "инженер", а "ведущий инженер САПР"!)
Нет, пока инженер. Но сам я на распутье. Короче пока и как инженер 0, и как программист. Пока склонен себя считать инженером, владеющим программированием для облегчения/ускорения работы.
Baldares вне форума  
 
Непрочитано 29.10.2008, 12:24
#105
Baldares


 
Регистрация: 17.10.2008
Саратов
Сообщений: 426


Ну слушайте это наваждение просто. Посмотрите даты реги и кол-во сообщений у нас тоже почти совпадает. Ну точно паралельные миры (просто эту тему недавно обсуждали на работе, прицепилась).
Baldares вне форума  
 
Непрочитано 29.10.2008, 13:02
#106
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,692


По курсам - тут непростой выбор между "хочу, могу и надо". По оконании выдается диплом переподготовки специалиста + сертификат Microsoft. По идее, при поиске работы доп. образование "есть хорошо". В принципе, аналогичные по стоимости и продолжительности есть по C++ и многим другим языкам. Но курс непродолжительный, вся информация дается быстро и сжато, так что освоить всерьез что-то из этого с нуля- лично для меня кажется проблематичным, а с VBA все-таки уже знаком. Другой вариант - фактически получение новой специальности (в той же конторе), но это означает год ежедневной вечерней учебы (что как-то меня отпугивает + стоимость приличная).
Ну а "параллельные миры", в отличие от прямых, пересекаются)) Иногда на параллельных форумах (на caduser.ru мы с тобой, если не ошибаюсь, в паре тем тоже пересекались)
AlexV вне форума  
 
Непрочитано 29.10.2008, 13:47
#107
Baldares


 
Регистрация: 17.10.2008
Саратов
Сообщений: 426


Да, курсы, сертифисировные микрософтом, пригодились бы. Поищу. Год вечерних занятий, мне не проблема, и так этим занимаюсь самостоятельно.
На caduser да, это тоже я, настоящий), но там более рабочая обстановка.
А тут такое совпадение, удивило.

Так-с пригрузили, ростверк надо пощитать.
Baldares вне форума  
 
Непрочитано 29.10.2008, 14:15
#108
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,692


Цитата:
Год вечерних занятий, мне не проблема
Да и мне была бы не проблема, но- 1,5 часа в одну сторону (+ маршрутка метро) -> с работы не успеть. На месяц-другой можно договориться, но на год...
AlexV вне форума  
 
Непрочитано 29.10.2008, 14:18
#109
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,692


Цитата:
(+ маршрутка метро)
- уже почти лисп-выражение...)))
AlexV вне форума  
 
Непрочитано 29.10.2008, 14:27
#110
Baldares


 
Регистрация: 17.10.2008
Саратов
Сообщений: 426


У нас в засранске их еще надо поискать (курсы).
Baldares вне форума  
 
Непрочитано 29.10.2008, 14:31
#111
Baldares


 
Регистрация: 17.10.2008
Саратов
Сообщений: 426


Цитата:
Сообщение от AlexV Посмотреть сообщение
(+ маршрутка метро)
Вспомнил лисповский синтаксис, но с трудом) а это только элементарная операция.
Зато мозги выворачивает на изнанку.
Baldares вне форума  
 
Непрочитано 29.10.2008, 14:37
#112
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


(нормально(работают(мозги)) вопрос (привычки))
Тайна речи Йоды магистра раскрыта - просто на лиспе он старый программер
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 29.10.2008, 14:46
#113
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,692


Как вариант:
Код:
[Выделить все]
On error goto Shop
If Privichka = "Вторая натура" Then
  Goto http://www.caduser.ru/cgi-bin/f1/board.cgi?p=025
Else
  Call http://www.caduser.ru/cgi-bin/f1/board.cgi?p=23 
End if
end
Shop:
Dim my bez'Variant'ov
Set my=my.BeerAdd("Пиво Невское Оригинальное")
Err.Clear
Resume Next

Последний раз редактировалось AlexV, 15.11.2008 в 01:50. Причина: модернизировал
AlexV вне форума  
 
Непрочитано 29.10.2008, 15:19
#114
Baldares


 
Регистрация: 17.10.2008
Саратов
Сообщений: 426


Кулик Алексей aka kpblc, а ты курсы какие проходил, или не дипломированный).
Я так понимаю ты тоже бывшый наш, инженер-ПГС. И где-то с 2003 начал программить. Прошел школу на всех известных форумах.
Тебя на теперешнюю работу взяли конкретно программистом, ну там САПР или как, без диплома?
Расскажи о себе ))) , гугль дает аж 18800 страниц по твоему нику, но из первых рук надежней), как ты стал тем кем стал )
Просто интересно.
Baldares вне форума  
 
Непрочитано 29.10.2008, 15:40
#115
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Не думаю, что это всем интересно. Потому перевожу в белый цвет (а не оффтоп ) Я знаю, я сволочь та еще
Я не дипломированный (самоучка практически всю дорогу). В 95-м году в течении 3 месяцев мне помимо моего желания читали VB 3.0 (для Windows 3.11).
"Программить" начал еще в институте где-то в 93-94 гг, под Excel VBA (курсовые делал по МК / ЖБК - там слишком все просто алгоритмитизировалось, чтобы это дело пропустить "просто так"), в 97-м под Excel 97 уже нечто поинтереснее делал, но тоже на любительском уровне. Под AutoCAD программирование началось в 2004 году. В силу разных причин был выбран лисп (как сейчас понимаю, зря - надо было учить ObjectARX, благо время позволяло). VBA под AutoCAD специально отложил в сторону - программки приходилось тогда разрабатывать и под AutoCAD LT, а в него максимум можно lsp и arx загрузить, dvb-проекты там курят в сторонке). Вот, как-то так...
P.S. На работу брали как человека для наладки AutoCAD'ов. Без диплома, с улицы. По результатам собеседования.

Гугел, кстати, выдает в качестве результатов в 2 раза меньше ссылок
Цитата:
Результаты 1 - 10 из примерно 8 980 для Кулик Алексей aka kpblc. (0,70 секунд)
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 29.10.2008, 15:55
#116
Baldares


 
Регистрация: 17.10.2008
Саратов
Сообщений: 426


AlexV, э маловато будет:
Код:
[Выделить все]
do
   Set my=my.BeerAdd("Пиво Невское Классическое")
loop until my.consistencion="в дюпель"
Baldares вне форума  
 
Непрочитано 29.10.2008, 16:03
#117
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Тогда уж
Код:
[Выделить все]
do
   Set my=my.BeerAdd(Beer.Light)
loop until UCase(CStr(my.consistencion)) Like "В*"
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 29.10.2008, 16:07
#118
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,692


Цитата:
AlexV, э маловато будет...
Да ладно, если при каждом запуске будет сбой по Goto или Call, то "в дюпель" получится даже без do ... loop until
AlexV вне форума  
 
Непрочитано 29.10.2008, 16:07
#119
Baldares


 
Регистрация: 17.10.2008
Саратов
Сообщений: 426


Кулик Алексей aka kpblc, ничего, мы это дела скопируем и в ворде почитаем.)
Спасибо что ответил. Бог стал немного ближе).
А как же теперь. В трудовой какая должность. Если инженер САПР, или что-то того, для этого нужно дипломное подкрепление.
Ты извини. Я что интересуюсь то, может получится так что тоже переквалифицируюсь, может прямо в этой организации (ПроектныйИнститут), или буду искать. Мне это более интересно стало, чем инженерить (задолбался копи-пастом заниматься, а серьезные вещи не дают делать).
А еще, а то забуду, с высоты орлиного полета, скажи что должен знать/делать штатный атокадовский программист.
Спасибо, ну и от себя добавь, а то я что упускаю важное.
Baldares вне форума  
 
Непрочитано 29.10.2008, 16:08
#120
Baldares


 
Регистрация: 17.10.2008
Саратов
Сообщений: 426


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Тогда уж
Код:
[Выделить все]
do
   Set my=my.BeerAdd(Beer.Light)
loop until UCase(CStr(my.consistencion)) Like "В*"
А, это когда язык не вяжется)
Baldares вне форума  
 
Непрочитано 29.10.2008, 16:14
#121
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,692


Цитата:
Set my=my.BeerAdd("Пиво Невское Оригинальное")
Set my=my.BeerAdd("Пиво Невское Классическое")
Set my=my.BeerAdd(Beer.Light)
Если я правильно понял, я предпочитаю оригинальное, Baldares- классическое, Кулик Алексей aka kpblc - любое светлое...
Не будь эта тема в "Разное", можно было бы пометить OFFTOP от начала и до конца... По крайней мере, на этой странице
AlexV вне форума  
 
Непрочитано 29.10.2008, 16:15
#122
Baldares


 
Регистрация: 17.10.2008
Саратов
Сообщений: 426


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Гугел, кстати, выдает в качестве результатов в 2 раза меньше ссылок
По "kpblc" = 18600 (меняется). Не скромничай)
Baldares вне форума  
 
Непрочитано 29.10.2008, 16:18
#123
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Baldares, я не бог. Далеко не бог. Лично я богами считаю совершенно других людей.
Кстати, предлагаю подобные разговоры в ПМ перенести (времени на чат у меня физически нет ).
P.S. У меня объявление перечисления typeBeer такое:
Код:
[Выделить все]
Type typeBeer
  Light = 1
  LightUnfiltered = 0
  DarkUnfiltered = 2
End Type
P.P.S. "kpblc"'ов достаточно много, и не все из них - я
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 29.10.2008, 16:18
#124
Baldares


 
Регистрация: 17.10.2008
Саратов
Сообщений: 426


Цитата:
Сообщение от AlexV Посмотреть сообщение
Если я правильно понял, я предпочитаю оригинальное, Baldares- классическое, Кулик Алексей aka kpblc - любое светлое...
Мне разное пыво нравится, но между светлым и класикой я сделал четкий выбор)
Baldares вне форума  
 
Непрочитано 29.10.2008, 16:22
#125
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,692


Цитата:
что должен знать/делать штатный атокадовский программист.
Уж флудить, так флудить... Должен знать Lisp, ObjectARX, .Net, VBA и как минимум 3 сорта пива. А делать то, что из перечисленного списка умеет лучше всего. Лично я пошел за пивом... Тем более, в отпуске я...
AlexV вне форума  
 
Непрочитано 29.10.2008, 16:22
#126
Baldares


 
Регистрация: 17.10.2008
Саратов
Сообщений: 426


Кулик Алексей aka kpblc, а будет время напишешь (я как маленький ребенок прям).
Хм, а в ПМ у тебя время есть). И какой чат.
Лады, не отвлекаем больше.
Baldares вне форума  
 
Непрочитано 29.10.2008, 16:26
#127
Baldares


 
Регистрация: 17.10.2008
Саратов
Сообщений: 426


AlexV, давай, тока меру знай, а то получиться как Алексей написал.
Baldares вне форума  
 
Непрочитано 29.10.2008, 16:30
#128
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Baldares, в ПМ я могу ответить и вечером
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 29.10.2008, 16:39
#129
Baldares


 
Регистрация: 17.10.2008
Саратов
Сообщений: 426


Понял. Я там пишу как можно более подробный список вопросов. А ты - ответы сочинишь. Договорились я так понял.
Журналюгой себя уже почуствовал.)
Не переживай, постараюсь не отклонятся сильно от темы программирования и автокада.
С чего начать...?..?...
Baldares вне форума  
 
Непрочитано 29.10.2008, 16:44
#130
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


С постановки задачи
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 29.10.2008, 16:47
#131
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,692


Цитата:
AlexV, давай, тока меру знай, а то получиться как Алексей написал.
Да нет, я пока по своему коду обработки ошибки, разово (в магазин и обратно), а не в тобой предложенном цикле. И кстати, что такое ПМ, не врубаюсь? Неужели Пространство Модели? Серьезно, я не в курсе.
AlexV вне форума  
 
Непрочитано 29.10.2008, 16:52
#132
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


ПМ = PM = Private Message. Личные сообщения, грубо говоря
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 29.10.2008, 17:11
#133
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,692


Понял.
Цитата:
Я там пишу как можно более подробный список вопросов. А ты - ответы сочинишь
Baldares, буду благодарен, коли скинешь результаты "собеседования" мне в пресловутый ПМ. То есть мне интересны как вопросы, так и ответы kpblc.
AlexV вне форума  
 
Непрочитано 29.10.2008, 18:07
#134
Baldares


 
Регистрация: 17.10.2008
Саратов
Сообщений: 426


Сочинил. Не знаю с постановкой задачи или без. Я лиспом не владею, мозги не упорядочены, надежда на мастера Йода.
AlexV, я не против, что скажет магистр.
Baldares вне форума  
 
Непрочитано 29.10.2008, 23:01
#135
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Только до машины полноценно добрался.
---
Добавлено: Mamma mia! Теперь бы все что хочу сказать в ответ влезло...
---
Добавлено 2: если ответ пришел, сообщи.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.

Последний раз редактировалось Кулик Алексей aka kpblc, 30.10.2008 в 00:35.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 30.10.2008, 09:30
#136
Baldares


 
Регистрация: 17.10.2008
Саратов
Сообщений: 426


Звиняюсь, вчерась отрубился рано.
Щас получил.
В предвкушении...
Baldares вне форума  
 
Непрочитано 30.10.2008, 09:57
#137
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,692


Цитата:
Сообщение от Baldares Посмотреть сообщение
Кулик Алексей aka kpblc, ничего, мы это дела скопируем и в ворде почитаем.)
Спасибо что ответил. Бог стал немного ближе).
+
Цитата:
Baldares, я не бог. Далеко не бог. Лично я богами считаю совершенно других людей.
Навеяло...(dwg.ru посвящается) Хотя, может, это надо в "Рифмоплетство"...

Пускай инженера дорога
Извилиста так, что беда!
Однажды он в поисках бога
Зайдет на минутку сюда

И тихо замрет в восхищеньи,
Не сразу найдя нужных слов.
Пусть вечностью станет мгновенье!
Ведь здесь очень много богов!

С вершины Олимпа взирает
На смертных, печален и строг
Бог Lisp-а - обширного края,
Что имя приня'л: ShaggyDoc

О, да - вначале было Слово!
Но тайный смысл слова обнажил
Бог, что зовется просто Vova
(Из слов он макросы сложил)

Юпитера здесь не бывает
И Будды нет с тысячей рук
Зато, говорят, забредает
Инкогнито сам Полищук!

Ты можешь попросить совета,
Взыскуя помощь высших сфер.
И вот они, в потоках света!
VK, Ривилис, Alaspher...

Весь в лучезарном ореоле
Наверно, каждый пятый ник!
Здесь первый шаг к подобной роли
Проделал Алексей Кулик.

Он сам учился понемногу
Чему-нибудь и как нибудь
И стал теперь подобен богу
Для "начинающего путь".

Последний раз редактировалось AlexV, 30.10.2008 в 13:41.
AlexV вне форума  
 
Непрочитано 30.10.2008, 10:42
#138
Baldares


 
Регистрация: 17.10.2008
Саратов
Сообщений: 426


Браво, брависимо.
Круто, это ты сам, афигеть.
Надеюсь никто не обидется.
Baldares вне форума  
 
Непрочитано 30.10.2008, 11:26
#139
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,692


Ну, вроде ничего оскорбительного не имел в виду... К вышеперечисленным людям отношусь с уважением и даже с завистью, т.к. понимаю, что в силу объективных и субьективных причин их высот никогда не добьюсь.
AlexV вне форума  
 
Непрочитано 30.10.2008, 11:46
#140
Baldares


 
Регистрация: 17.10.2008
Саратов
Сообщений: 426


Я имел ввиду возможно тех кого ты не за-рифмовал.
А вообще, повторрюсь, эксклюзивненько получилось.
Baldares вне форума  
 
Непрочитано 11.11.2008, 23:27 Lisp+COM=VisualLisp
#141
ganjour


 
Регистрация: 16.10.2008
Сообщений: 45


Цитата:
Сообщение от ShaggyDoc Посмотреть сообщение
"Зло VBA" заключается в том, что оно калечит мозги.
а разве использование COM в Lisp не есть нечто подобное использованию VBA, на днях на caduser.ru некто привел вот такой код:
Код:
[Выделить все]
;;;процедура преобразования вектора из вида |расстояние,градусы,минуты,секунды,| в вид |расстояние<градусыdминуты'секунды"
  (defun zapros	()
    (setq pnt
	   (getstring
	     (strcat
	       "Ведите точку в виде |расстояние,угол_в_градусах,минуты,секунды, |: "
	     )
	   )
    )
    (if	(= pnt "")
      (command "_ucs" "_w")
      ""
    )
    (setq is (strlen pnt))
    (if	(not (zerop is))
      (progn
	(setq is_1 (1- is))
	(if (not (vl-string-search "," pnt is_1))
	  (setq pnt (strcat pnt ","))
	)
	(while (setq n_dis (vl-string-search "," pnt))
	  (setq pnt (vl-string-subst "<" "," pnt))
	  (while (setq n_dis (vl-string-search "," pnt))
	    (setq pnt (vl-string-subst "d" "," pnt))
	    (while (setq n_dis (vl-string-search "," pnt))
	      (setq pnt (vl-string-subst "'" "," pnt))
	      (while (setq n_dis (vl-string-search "," pnt))
		(setq pnt (vl-string-subst (chr 34) "," pnt))
	      )
	    )
	  )
	)
      )
    )
  )
просто применяет COM функцию vl-string-subst для замены символа, ведь это почти тот же VBA, хотя тоже можно сделать на чистом Autolisp например так:
Код:
[Выделить все]
;;;процедура преобразования вектора из вида |расстояние,градусы,минуты,секунды,| в вид |расстояние<градусыdминуты'секунды"| отредактировано
  (defun zapros	()
    (setq pnt
	   (getstring
	     "Ведите точку в виде |расстояние,угол_в_градусах,минуты,секунды, |: "
	   )
    )

    (if	(= pnt "")
      (command "_ucs" "_w")
      ""
    )
    (setq is (strlen pnt))
    (if	(not (zerop is))
      (progn
	(if (/= (substr pnt is 1) ",")
	  (setq pnt (strcat pnt ","))
	)

	(setq slist (list))
	(setq i 0)
	(setq sbegin 1)

	(while (< i 4)
	  (setq sbegin0 sbegin)
	  (while (/= (substr pnt sbegin 1) ",")
	    (setq sbegin (+ sbegin 1))
	  )
	  (setq sbegin (+ sbegin 1))
	  (setq i (+ i 1))
	  (setq spnt (substr pnt sbegin0 (- sbegin sbegin0 1)))
	  (setq slist (cons spnt slist))
	)
	(setq slist (reverse slist))
	(setq pnt "")
	(setq i 0)
	(while slist
	  (setq	pnt
		 (cond
		   ((= i 0) (strcat pnt (car slist) "<"))
		   ((= i 1) (strcat pnt (car slist) "d"))
		   ((= i 2) (strcat pnt (car slist) "'"))
		   ((= i 3) (strcat pnt (car slist) (chr 34)))
		 )
	  )
	  (setq slist (cdr slist))
	  (setq i (+ i 1))
	)
      )
    )
  )
Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
ganjour, аргументируй. А то можно "нарваться" на ответ типа "кривыми руками ничего не прямо".
Может быть COM в Lisp тоже способен "калечить мозги" как VBA, а?
ganjour вне форума  
 
Непрочитано 11.11.2008, 23:40
#142
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Что первый, что второй коды - с точки зрения программирования написаны отвратительно, если ты это хотел знать.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 11.11.2008, 23:51
#143
ganjour


 
Регистрация: 16.10.2008
Сообщений: 45


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Что первый, что второй коды - с точки зрения программирования написаны отвратительно, если ты это хотел знать.
Так Кулик Алексей aka kpblc оказывается познал великую истину "точки зрения программирования"
ganjour вне форума  
 
Непрочитано 12.11.2008, 01:00
#144
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Цитата:
Сообщение от ganjour Посмотреть сообщение
Так Кулик Алексей aka kpblc оказывается познал великую истину "точки зрения программирования"
Как обычный человек я расцениваю это как наезд. Как модератор - пока в недоумении. Как программист: на слабО решил взять? Ну на, держи тебе вариант кода:
Код:
[Выделить все]
(defun conv-string-to-string (lst                      /
                              res                      fun_conv-string-to-list
                              fun_get-symbol-pos       fun_conv-string->list
                              fun_conv-double-to-string
                              )
                             ;|
*    Преобразование строки из вида <Расстояние>,<УголГрадусы>,<УголМинуты>,<УголСекунды>
* в расстояние<градусыdминуты'секунды
*    Параметры вызова:
	lst	либо строка вида "Расстояние,УголГрадусы,УголМинуты,УголСекунды"
		либо список вида '("Расстояние" "УголГрадусы" "УголМинуты" "УголСекунды")
*    Возвращает строку
*    Неуказанные параметры принимаются равными 0
*    Допустимые значения lst:
"0,16,32.65,32"
'(nil nil 32.65 32)
'(160.65)
*    Примеры вызова:
$ ( conv-string-to-string '(0 nil 16))
"0<0d16'0''"
_$ ( conv-string-to-string "0,,5")
"0<0d5'0''"
_$ ( conv-string-to-string "0,5")
"0<5d0'0''"
|;

  (defun fun_conv-double-to-string (value)
    (cond
      ((member (type value) (list 'int 'real)) (rtos value 2))
      ((= (type value) 'str) value)
      (t "")
      ) ;_ end of cond
    ) ;_ end of defun

  (defun fun_conv-string-to-list (string separator / i)
                                 ;|
*    Функция разбора строки. Возвращает список либо точечную пару.
*    Параметры вызова:
*	string		разбираемая строка
*	separator	символ, используемый в качестве разделителя частей
*    Примеры вызова:
(fun_conv-string-to-list "1;2;3;4;5;6" ";")	;'(1 2 3 4 5 6)
(fun_conv-string-to-list "1;2" ";")		;'(1 2)
*    За основу взяты уроки Евгения Елпанова по рекурсиям
|;
    (cond
      ((= string "") nil)
      ((setq i (fun_get-symbol-pos string separator))
       (cons (substr string 1 i)
             (fun_conv-string-to-list
               (substr string (+ (strlen separator) 1 i))
               separator
               ) ;_ end of fun_conv-string-to-list
             ) ;_ end of cons
       )
      (t (list string))
      ) ;_ end of cond
    ) ;_ end of defun

  (defun fun_conv-string->list (str / count res)
                               ;|
*    Преобразование строки в список символов
|;
    (setq count 0)
    (repeat (strlen str)
      (setq res (cons (ascii (substr str (setq count (1+ count)) 1)) res))
      ) ;_ end of repeat
    (reverse res)
    ) ;_ end of defun

  (defun fun_get-symbol-pos (str sep / len)
                            ;|
(fun_get-symbol-pos "abcdef" "c") 	; 2
(fun_get-symbol-pos "a,b,d,c" ",")	; 1
*    Многосимвольные разделители не обрабатываются
|;
    (if (wcmatch (strcase str) (strcat "*" (strcase sep) "*"))
      (if
        (/= (setq len (length (member (ascii sep) (fun_conv-string->list str))))
            0
            ) ;_ end of /=
         (- (strlen str) len)
         ) ;_ end of if
      ) ;_ end of if
    ) ;_ end of defun

  (cond
    ((= (type lst) 'str)
     (setq res (conv-string-to-string (fun_conv-string-to-list lst ",")))
     )
    ((and lst
          (listp lst)
          ) ;_ end of and
     (setq res
            (strcat (cond
                      ((and (car lst)
                            (/= (car lst) "")
                            ) ;_ end of and
                       (fun_conv-double-to-string (car lst))
                       )
                      (t "0")
                      ) ;_ end of cond
                    "<"
                    (cond ((and (cadr lst) (/= (cadr lst) ""))
                           (fun_conv-double-to-string (cadr lst))
                           )
                          (t "0")
                          ) ;_ end of cond
                    "d"
                    (cond ((and (caddr lst) (/= (caddr lst) ""))
                           (fun_conv-double-to-string (caddr lst))
                           )
                          (t "0")
                          ) ;_ end of cond
                    "'"
                    (cond ((and (cadddr lst) (/= (cadddr lst) ""))
                           (fun_conv-double-to-string (cadddr lst))
                           )
                          (t "0")
                          ) ;_ end of cond
                    "''"
                    ) ;_ end of strcat
           ) ;_ end of setq
     )
    ) ;_ end of cond
  res
  ) ;_ end of defun
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 12.11.2008, 06:35
#145
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
...просто применяет COM функцию vl-string-subst для замены символа, ведь это почти тот же VBA...
Вот они, искалеченные мозги. С какого это бодуна это стало COM-функцией? И с чего это вдруг "почти VBA"?

То, что в VisualLisp становятся доступными дополнительные функции после выполнения (vl-load-com) никак не говорит о "почти VBA". Это всего лишь дополнительная библиотека, которую решили не встраивать в ядро, чтобы всё не перелопачивать. Эта библиотека, в числе обычных дополнительных функций наподобие vl-string-subst даёт доступ из LISP к COM-технологиям, то есть доступ к любым COM-объектам, как самого AutoCAD, так и любых других, зарегистрированных на компьютере.

COM это технология, на которой построена Windows и многие приложения к ней. VBA - всего лишь несложная система программирования, предназначенная для встраивания в другие приложения. И работающая с основным приложением исключительно через COM-технологии. VBA очень хорошо вписывается в Microsoft Office. Для него VBA и разрабатывался, там он к месту.

Подобных систем программирования много бывает. Далеко не все фирмы попались в лапы Microsoft, и начали встраивать VBA в свои системы. А вот Autodesk заглотила наживку. Вместо того, чтобы доработать LISP в "вижуальной" части, решили - пусть эти придурки на VBA диалоги делают. А за это получим ящик печенья и банку варенья.
ShaggyDoc вне форума  
 
Непрочитано 14.11.2008, 21:17
#146
Baldares


 
Регистрация: 17.10.2008
Саратов
Сообщений: 426


Ой чую погибаю я с этим VBA, как последний нарик.
Совет всем, берегитесь его, засосет, а сделать ничего путного нельзя.

Ощущаю балдежность лиспа, и безграничные возможности арха.
Только бы соскочить...
Baldares вне форума  
 
Непрочитано 15.11.2008, 08:13
#147
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
...балдежность лиспа, и безграничные возможности арха
Вот такое определение мне нравится. И наиболее эффективным для практических целей является сочетание балдежности и безграничных возможностей.
ShaggyDoc вне форума  
 
Непрочитано 15.11.2008, 08:27
#148
MMV


 
Регистрация: 13.09.2005
Челябинск
Сообщений: 1,014


Гм... Люди, посоветуйте, у нас тут организовываются курсы повышения квалификации в универе, есть выбор - основы программирования в делфи, или основы программирования на платформе net... Я пока записался на net...

Последний раз редактировалось MMV, 15.11.2008 в 22:00.
MMV вне форума  
 
Непрочитано 15.11.2008, 20:29
#149
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,692


Цитата:
Сообщение от Baldares Посмотреть сообщение
Ой чую погибаю я с этим VBA, как последний нарик.Совет всем, берегитесь его, засосет, а сделать ничего путного нельзя.Ощущаю балдежность лиспа, и безграничные возможности арха.Только бы соскочить...
Чую, пора открывать курсы/тренинги. Что-то типа "Избавлю от VBA-зависимости за один сеанс"; "Легкий способ бросить писать на basic"; "От VBA к Lisp. Путь к свободе. Исцеление по методике доктора ShaggyDoc".
AlexV вне форума  
 
Непрочитано 15.11.2008, 20:44
#150
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


"Гарантия 100%. Постоянным клиентам скидка"
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 15.11.2008, 23:54
1 | #151
DEM

YngIngKllr
 
Регистрация: 29.03.2005
СПб
Сообщений: 12,968


Не знаю как с VBA а на Делфях мне нравится писать програмки
Код:
[Выделить все]
uses
  CRT;

const
  MHOrO_TEKCTOB     = 15;
  nPOPEXA           = nil;

type
  A_KTO_EBO_3HAET   = (HO_KTO_TO_BEgb_3HAET, BCE_ETO_BECbMA_CTPAHHO);

  HyMEP             = Byte;

  CTPOKA            = String[15];

  TEKCTuK           = record
                            OHA: CTPOKA;
                            TOPMO3: HyMEP;
                          end;

  TAM_ABTOMAT       = ^ABTOMAT;

  ABTOMAT           = object
                        MOE_X, MOE_Y: HyMEP;
                        TEKCTOB_BCEBO: HyMEP;
                        TEKCTbl: array[1..MHOrO_TEKCTOB] of TEKCTuK;
                        KAKOE: HyMEP;
                        TOPMO3uM: HyMEP;
                        XPEH_EMy: TAM_ABTOMAT;

                        constructor BOT_EBOHOE_MECTO(X, Y: HyMEP);
                        procedure BOH_ETOT_XPEH
                                  (KOMy_XPEH: TAM_ABTOMAT);
                        procedure ETO_CTPOKA(OHA_CAMA: CTPOKA;
                                             EE_TOPMO3: HyMEP);
                        procedure BblBOg;
                      end;

  XMblPb            = object
                        HE_KACEKOB: A_KTO_EBO_3HAET;
                        KTO_TAM_CAMOE_TAKOE: TAM_ABTOMAT;

                        constructor Hy_HuKAK_MHE_EBO_HE_HA3BATb;
                        procedure B_nyTb;
                        procedure u_EBO_TO3E
                        (uMEHHO_ETO_MOXHATOE_OHO_CAMOE: TAM_ABTOMAT);
                      end;


procedure BAM_TEMHO;
begin
  ClrScr;
end;


procedure TOPMO3HyTb(CKOKO: HyMEP);
begin
  Delay(CKOKO);
end;


procedure rge_EMy_KBACuTb(EBO_X, EBO_Y: HyMEP);
begin
  GoToXY(EBO_X, EBO_Y);
end;


function WyXEP: Boolean;
begin
  WyXEP: = KeyPressed;
end;


constructor ABTOMAT.BOT_EBOHOE_MECTO(X, Y: HyMEP);
begin
  MOE_X: = X;
  MOE_Y: = Y;
  TEKCTOB_BCEBO: = 0;
  KAKOE: = 0;
  TOPMO3uM: = 0;
end;


procedure ABTOMAT.BOH_ETOT_XPEH(KOMy_XPEH: TAM_ABTOMAT);
begin
  XPEH_EMy: = KOMy_XPEH;
end;


procedure ABTOMAT.ETO_CTPOKA(OHA_CAMA: CTPOKA; EE_TOPMO3: HyMEP);
begin
  if TEKCTOB_BCEBO < MHOrO_TEKCTOB then begin
    Inc(TEKCTOB_BCEBO);
    with TEKCTbl[TEKCTOB_BCEBO] do begin
      OHA: = OHA_CAMA;
      TOPMO3: = EE_TOPMO3;
    end;
  end;
end;


procedure ABTOMAT.BblBOg;
begin
  if TEKCTOB_BCEBO > 0 then begin
    if TOPMO3uM = 0 then begin
      Inc(KAKOE);
      if KAKOE > TEKCTOB_BCEBO then KAKOE: = 1;
      rge_EMy_KBACuTb(MOE_X, MOE_Y);
      with TEKCTbl[KAKOE] do begin
         Write(OHA);
         TOPMO3uM: = TOPMO3;
      end;
    end;
    Dec(TOPMO3uM);
  end;
end;


constructor XMblPb.Hy_HuKAK_MHE_EBO_HE_HA3BATb;
begin
  KTO_TAM_CAMOE_TAKOE: = nPOPEXA;
  HE_KACEKOB: = BCE_ETO_BECbMA_CTPAHHO;
end;


procedure XMblPb.u_EBO_TO3E
          (uMEHHO_ETO_MOXHATOE_OHO_CAMOE: TAM_ABTOMAT);
begin
  if KTO_TAM_CAMOE_TAKOE = nPOPEXA then begin
    KTO_TAM_CAMOE_TAKOE: = uMEHHO_ETO_MOXHATOE_OHO_CAMOE;
    uMEHHO_ETO_MOXHATOE_OHO_CAMOE^.XPEH_EMy: 
                           = uMEHHO_ETO_MOXHATOE_OHO_CAMOE;
  end
  else begin
    uMEHHO_ETO_MOXHATOE_OHO_CAMOE^.XPEH_EMy: 
                           = KTO_TAM_CAMOE_TAKOE^.XPEH_EMy;
    KTO_TAM_CAMOE_TAKOE^.XPEH_EMy: 
                           = uMEHHO_ETO_MOXHATOE_OHO_CAMOE;
  end;
end;


procedure XMblPb.B_nyTb;
var
  ETOT_PAXuT: TAM_ABTOMAT;

begin
  ETOT_PAXuT: = KTO_TAM_CAMOE_TAKOE;

  while not WyXEP do
    with ETOT_PAXuT^ do begin
      BblBOg;
      ETOT_PAXuT: = XPEH_EMy;
      rge_EMy_KBACuTb(1, 10);
      TOPMO3HyTb(10);
    end;
end;


procedure BAM_XOPOWO;
begin
  BAM_TEMHO;
  WriteLN('OH TOPMO3 v1.0  Copyright The Future Hackers, 1993');
  WriteLN("  Written by Kirill Shirokov 
            and Dmitry Moskovich, May 93');
  WriteLN;
end;


var
  EBO_3EHKu,
  EBO_HOC,
  EBO_POT,
  EBO_XBOCT: ABTOMAT;

  KACEKOB: XMblPb;


begin
  with KACEKOB do begin
    Hy_HuKAK_MHE_EBO_HE_HA3BATb;
    with EBO_3EHKu do begin
      BOT_EBOHOE_MECTO(1, 1);
      ETO_CTPOKA('-  -', 20);
      ETO_CTPOKA('o  o', 3);
      ETO_CTPOKA('O  O', 16);
      ETO_CTPOKA('0  0', 23);
      ETO_CTPOKA('O  O', 14);
      ETO_CTPOKA('o  o', 5);
    end;
    u_EBO_TO3E(@EBO_3EHKu);

    with EBO_HOC do begin
      BOT_EBOHOE_MECTO(1, 2);
      ETO_CTPOKA('..", 21);
      ETO_CTPOKA(" oo ", 16);
    end;
    u_EBO_TO3E(@EBO_HOC);

    with EBO_POT do begin
      BOT_EBOHOE_MECTO(1, 3);
      ETO_CTPOKA(" -- ", 22);
      ETO_CTPOKA(" == ", 4);
      ETO_CTPOKA('-==-', 6);
      ETO_CTPOKA('/--\', 19);
      ETO_CTPOKA('-!! -', 16);
      ETO_CTPOKA('\==/', 21);
      ETO_CTPOKA('-!! -', 3);
    end;
    u_EBO_TO3E(@EBO_POT);

    BAM_TEMHO;
    B_nyTb;
    BAM_XOPOWO;
  end;
end.
__________________
Работаю за еду.
Working for food.
Für Essen arbeiten.
العمل من أجل الغذاء
Працую за їжу.
DEM вне форума  
 
Непрочитано 16.11.2008, 09:28
#152
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
Сообщение от MMV Посмотреть сообщение
Гм... Люди, посоветуйте, у нас тут организовываются курсы повышения квалификации в универе, есть выбор - основы программирования в делфи, или основы программирования на платформе net... Я пока записался на net...
Выбор правильный. Изучение .NET - это изучение технологии. Относительно новой, тут надо понять основы. Зная технологию, потом можно с ней работать в любых конкретных системах программирования.

Изучение Delphi - это изучение конкретной среды, то есть более узкий вопрос. На курсах по Delphi просто физически могут дать самый минимум - "батонокидательство". А это легко изучить самостоятельно, это - самое простое.

Основы .NET вполне могут преподнести и на курсах. Зная основы, можно работать с .NET и в Delphi. Но не наоборот.
ShaggyDoc вне форума  
 
Непрочитано 16.11.2008, 09:33
#153
MMV


 
Регистрация: 13.09.2005
Челябинск
Сообщений: 1,014


ShaggyDoc, Спасибо
MMV вне форума  
 
Непрочитано 16.11.2008, 09:52
#154
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


DEM, для того и создавался язык Pascal, чтобы приучить сначала студентов очень четко излагать свои мысли. Уже тогда было множество языков, которые, стремясь объять необъятное, только ценой больших усилий позволяли писать понятные программы. Потом еще и доказали, что достаточно применять всего несколько синтаксических конструкций, чтобы решить задачу любой сложности.

Текст программы пишется человеком и прежде всего для человека. Но его еще должен понять компилятор. Поэтому в Pascal обязательно объявление типа данных.

В твоем примере объявлен тип
A_KTO_EBO_3HAET = (HO_KTO_TO_BEgb_3HAET, BCE_ETO_BECbMA_CTPAHHO) с двумя возможными значениями. И, если ты в своей програме допустишь опечатку, например применишь, BCE_ЭTO_BECbMA_CTPAHHO, то компилятор укажет на ошибку. Если обратиться к необъявленной переменной также будет сообщение об ошибке, но при компиляции программы, а не во время работы.

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

Впоследствии в Delphi была релизована и очень удачная и простая (по сравнению с Pascal) система ООП. А также чрезвычайно удобная среда програмирования.

А вот в LISP объявление типов не требуется. Там сознательно это сделано, чтобы придать языку "балдёжность". А не для того, чтобы дать возможность разгильдяям не описывать переменные.
ShaggyDoc вне форума  
 
Непрочитано 16.11.2008, 10:00
#155
DEM

YngIngKllr
 
Регистрация: 29.03.2005
СПб
Сообщений: 12,968


ShaggyDoc
Угу синтаксис Языка уже немного понимаю, в сравнении с Lisp более строг, и как правильно вы заметили большинство ошибок с объявлением переменых отлавливаются еще на стадии компиляции.
Да и потом в режиме отладки легко найти ошибки.
__________________
Работаю за еду.
Working for food.
Für Essen arbeiten.
العمل من أجل الغذاء
Працую за їжу.
DEM вне форума  
 
Непрочитано 16.11.2008, 13:48
#156
Елпанов Евгений

программист
 
Регистрация: 20.12.2005
Москва
Сообщений: 1,439
Отправить сообщение для Елпанов Евгений с помощью Skype™


Цитата:
Сообщение от ganjour Посмотреть сообщение
а разве использование COM в Lisp не есть нечто подобное использованию VBA, на днях на caduser.ru некто привел вот такой код:
Код:
[Выделить все]
;;;процедура преобразования вектора из вида |расстояние,градусы,минуты,секунды,| в вид |расстояние<градусыdминуты'секунды"
  (defun zapros	()
    (setq pnt
	   (getstring
	     (strcat
	       "Ведите точку в виде |расстояние,угол_в_градусах,минуты,секунды, |: "
	     )
	   )
    )
    (if	(= pnt "")
      (command "_ucs" "_w")
      ""
    )
    (setq is (strlen pnt))
    (if	(not (zerop is))
      (progn
	(setq is_1 (1- is))
	(if (not (vl-string-search "," pnt is_1))
	  (setq pnt (strcat pnt ","))
	)
	(while (setq n_dis (vl-string-search "," pnt))
	  (setq pnt (vl-string-subst "<" "," pnt))
	  (while (setq n_dis (vl-string-search "," pnt))
	    (setq pnt (vl-string-subst "d" "," pnt))
	    (while (setq n_dis (vl-string-search "," pnt))
	      (setq pnt (vl-string-subst "'" "," pnt))
	      (while (setq n_dis (vl-string-search "," pnt))
		(setq pnt (vl-string-subst (chr 34) "," pnt))
	      )
	    )
	  )
	)
      )
    )
  )
просто применяет COM функцию vl-string-subst для замены символа, ведь это почти тот же VBA, хотя тоже можно сделать на чистом Autolisp например так:
Код:
[Выделить все]
;;;процедура преобразования вектора из вида |расстояние,градусы,минуты,секунды,| в вид |расстояние<градусыdминуты'секунды"| отредактировано
  (defun zapros	()
    (setq pnt
	   (getstring
	     "Ведите точку в виде |расстояние,угол_в_градусах,минуты,секунды, |: "
	   )
    )

    (if	(= pnt "")
      (command "_ucs" "_w")
      ""
    )
    (setq is (strlen pnt))
    (if	(not (zerop is))
      (progn
	(if (/= (substr pnt is 1) ",")
	  (setq pnt (strcat pnt ","))
	)

	(setq slist (list))
	(setq i 0)
	(setq sbegin 1)

	(while (< i 4)
	  (setq sbegin0 sbegin)
	  (while (/= (substr pnt sbegin 1) ",")
	    (setq sbegin (+ sbegin 1))
	  )
	  (setq sbegin (+ sbegin 1))
	  (setq i (+ i 1))
	  (setq spnt (substr pnt sbegin0 (- sbegin sbegin0 1)))
	  (setq slist (cons spnt slist))
	)
	(setq slist (reverse slist))
	(setq pnt "")
	(setq i 0)
	(while slist
	  (setq	pnt
		 (cond
		   ((= i 0) (strcat pnt (car slist) "<"))
		   ((= i 1) (strcat pnt (car slist) "d"))
		   ((= i 2) (strcat pnt (car slist) "'"))
		   ((= i 3) (strcat pnt (car slist) (chr 34)))
		 )
	  )
	  (setq slist (cdr slist))
	  (setq i (+ i 1))
	)
      )
    )
  )
Может быть COM в Lisp тоже способен "калечить мозги" как VBA, а?
Все это написано с VBA-шным подходом.
На лиспе, это должно выглядеть примерно так:
Код:
[Выделить все]
(defun test (s a)
  ;;(test "4,5,6,7" "<d'\"")
  (cond
    ((= s "") a)
    ((= (substr s 1 1) ",")
     (strcat (substr a 1 1) (test (substr s 2) (substr a 2)))
    )
    (t (strcat (substr s 1 1) (test (substr s 2) a)))
  )
)
ps. Алексей написал более расширенную программу, а я только пример другого мышления...
Елпанов Евгений вне форума  
 
Непрочитано 18.11.2008, 23:24
#157
ganjour


 
Регистрация: 16.10.2008
Сообщений: 45


Цитата:
Сообщение от Елпанов Евгений Посмотреть сообщение
Все это написано с VBA-шным подходом.
На лиспе, это должно выглядеть примерно так:
Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Как программист: на слабО решил взять? Ну на, держи тебе вариант кода:
Не знаю что такое "уроки Евгения Елпанова по рекурсиям" и вообще признаюсь - я не понимаю рекурсии и понимать не желаю , wcmatch - а что это такое, может объяснишь?
А этот cadddr дыр-дыр-дыр ты чё там трактор заводишь что ли?
Переведи с марсианского!
То-то я смотрю программы стали разрастаться до немыслимых размеров при минимальной функциональности - aka kpblc хотел показать всю свою значительность? мой тебе совет - спустись с небес на землю.
Подобный код с "мышлением на лиспе" только оттолкнет новичка от лиспа в сторону VB.
Ну держите теперь мой вариант кода Помня заветы дедушки Вирта постарался быть минималистом в использовании встроенных функций. По крайней мере в 1.5 раза короче варианта kpblc, расширена функциональность и надеюсь этот код будет понятен также людям с мышлением не на лиспе ответы типа "отвратительно" прошу аргументировать
Код:
[Выделить все]
;|
***** Преобразование любой строки к виду *<*d*'*" (расстояние/градусы/минуты/секунды) *****
Примеры ввода:
что желаешь то и вводи :)
разделителем может служить что угодно, кроме цифр разумеется:
54,45,32,23
54,,,45,,32,,,,,,,23
54<45d32'23
54<<<<<45ddd32'''''23""""""""
54влалападпп45апавп32,уйцекгн23
54,45,32
54,45
54

Вызов: загрузи и введи в текстовом окне команду test
|;

;;; Преобразование строки в список
(defun input_string->list (inp_string / char_list islen)
  (setq islen (strlen inp_string))
  (setq char_list (list ""))
  (while (< 0 islen)
    (setq char_list (cons (substr inp_string islen 1) char_list))
    (setq islen (1- islen))
  )					; end of while
  char_list
)					; end of input_string->list

;;; Преобразует список в строку необходимого вида
(defun result_list (inp_string	 /	      element	   i
		    j		 symbol_list  char_list	   int_matrix
		    out_string
		   )
;;;  Инициализация
  (setq symbol_list (list "<" "d" "'" "\""))
  (setq int_matrix (list 0 1 2 3))
  (setq i 0)
  (setq element "")
  (setq out_string "")
;;;  Извлечение и группирование элементов списка char_list 
  (setq char_list (input_string->list inp_string))
  (while char_list
;;;    Если элемент цифра
    (if	(and (<= (ascii (car char_list)) 57)
	     (>= (ascii (car char_list)) 48)
	)
      (progn
	(setq element (strcat element (car char_list)))
	(setq j t)
      )
;;;      Если элемент не цифра
      (progn
	(if j
	  (progn
	    (setq int_matrix (subst element i int_matrix))
	    (setq element "")
	    (setq j nil)
	    (setq i (1+ i))
	  )
	)
      )
    )
;;;    Следующий элемент
    (setq char_list (cdr char_list))
  )					; end of while
;;;  Очищаю список на всякий случай
  (setq char_list nil)
;;;  Если введенных данных недостаточно
  (while (< i 4)
    (setq int_matrix (subst "0" i int_matrix))
    (setq i (1+ i))
  )					; end of while
;;;  Преобразую список int_matrix в строку и добавляю необходимые символы "<" "d" "'" "\""
  (while symbol_list
    (setq out_string
	   (strcat out_string (car int_matrix) (car symbol_list))
    )
;;;    Следующий элемент
    (setq int_matrix (cdr int_matrix))
    (setq symbol_list (cdr symbol_list))
  )					; end of while
  out_string
)					; end of result_list

;;; Функция тестирования
(defun C:test (/ inp_string)
  (setvar "cmdecho" 0)
  (setq inp_string (getstring "Строка: "))
  (princ (result_list inp_string))
  (terpri)
  (setvar "cmdecho" 1)
)					; end of test
ganjour вне форума  
 
Непрочитано 19.11.2008, 00:00
#158
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


А я не хочу что бы то ни было доказывать. Код написан под конкретные задачи, исходя из того, что было заявлено. Короче и быстрее Елпанова все равно не напишешь:
Код:
[Выделить все]
(BENCHMARK '((conv-string-to-string "4,5,6,7") (result_list "4,5,6,7") (test "4,5,6,7" "<d'\"")))
Benchmarking ................Elapsed milliseconds / relative speed for 8192 iteration(s):

    (TEST "4,5,6,7" "<d'\"")..............3328 / 1.47 <fastest>
    (CONV-STRING-TO-STRING "4,5,6,7").....4046 / 1.21
    (RESULT_LIST "4,5,6,7")...............4906 / 1 <slowest>
Кстати, а как ты собираешься обрабатывать "пропущенные" символы? Например, надо строку вида "16,15,,1" преобразовать в "16<15d0'1''. Чего делать будем? Этот момент в задании не был оговорен, вот и пошли кто во что горазд.
Ты при написании функции учитывай все возможные варианты. И невозможные тоже. Тогда и длина кода будет сопоставима.
По коду:
  1. Зачем делать несколько строк с setq, когда можно обойтись одним? Имеется в виду заменить
    Код:
    [Выделить все]
    (setq symbol_list (list "<" "d" "'" "\""))
      (setq int_matrix (list 0 1 2 3))
      (setq i 0)
      (setq element "")
      (setq out_string "")
      (setq char_list (input_string->list inp_string))
    на
    Код:
    [Выделить все]
    (setq symbol_list (list "<" "d" "'" "\"")
            int_matrix  (list 0 1 2 3)
            i           0
            element     ""
            out_string  ""
            char_list   (input_string->list inp_string)
            ) ;_ end of setq
    Скорость выполнения будет выше.
  2. У тебя не учитывается (точнее, неверно учитывается) вариант десятых долей секунд. Попробуй запустить (result_list "16,15,,1.16") и сравни, например, с (conv-string-to-string "16,15,,1.16"). Кстати, (test) выдаст свой результат.
  3. В коде присутствуют лишние progn.
Читать тебе лекции по штатным функциям AutoLISP'a у меня нет никакого желания, особенно учитывая тональность, в которой ты общаешься.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 19.11.2008, 00:25
#159
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,692


Цитата:
...и вообще признаюсь - я не понимаю рекурсии и понимать не желаю
Главное, что компилятор понимает..
AlexV вне форума  
 
Непрочитано 19.11.2008, 06:31
#160
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


А что, ветка про "зло" превращается в очередные "уроки"?
"Не знаю что такое", "не понимаю, и понимать не желаю", но "а что это такое", "дыр-дыр".

Это уже "медицинский факт" (С).
ShaggyDoc вне форума  
 
Непрочитано 19.11.2008, 08:46
#161
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Да, кстати, ganjour, поскольку ты поклонник VB(A), нарисуй код для работы с массивом неопределенного размера. На VB(A), естественно.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 19.11.2008, 11:36
#162
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,692


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Да, кстати, ganjour, поскольку ты поклонник VB(A), нарисуй код для работы с массивом неопределенного размера. На VB(A), естественно.
А что этот код должен делать?И в чем может быть проблема?
AlexV вне форума  
 
Непрочитано 19.11.2008, 11:42
#163
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Проблема в постоянном переопределении границ массива. А что должен делать? Ну, например, добавить элемент в конец массива (это делается достаточно просто, если забыть о потерях ресурсов, связанных с ReDim); удалить элемент(ы) по какому-либо условию (аналог vl-remove-if); заменить элемент, вычисленный по какому-либо условию (аналог subst); применить ко всем элементам какую-либо (заранее не определенную) функцию (аналог mapcar).
По рекурсии просить ничего не буду, поскольку у меня в свое время не получилось нормального решения на VB.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 19.11.2008, 11:44
#164
ganjour


 
Регистрация: 16.10.2008
Сообщений: 45


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
По коду:
  1. Зачем делать несколько строк с setq, когда можно обойтись одним? Имеется в виду заменить
    Код:
    [Выделить все]
    (setq symbol_list (list "<" "d" "'" "\""))
      (setq int_matrix (list 0 1 2 3))
      (setq i 0)
      (setq element "")
      (setq out_string "")
      (setq char_list (input_string->list inp_string))
    на
    Код:
    [Выделить все]
    (setq symbol_list (list "<" "d" "'" "\"")
            int_matrix  (list 0 1 2 3)
            i           0
            element     ""
            out_string  ""
            char_list   (input_string->list inp_string)
            ) ;_ end of setq
    Скорость выполнения будет выше.
  1. Здесь с тобой абсолютно согласен, именно так следовало мне и сделать.
    Цитата:
  2. У тебя не учитывается (точнее, неверно учитывается) вариант десятых долей секунд. Попробуй запустить (result_list "16,15,,1.16") и сравни, например, с (conv-string-to-string "16,15,,1.16"). Кстати, (test) выдаст свой результат.
  3. это я знаю, доли секунд не учитываются, а так ли это необходимо? в большинстве случаев это будет излишняя точность.
    Цитата:
  4. В коде присутствуют лишние progn.
по моему это не беда, а вдруг нужно будет что нибудь добавить
Цитата:
Читать тебе лекции по штатным функциям AutoLISP'a у меня нет никакого желания, особенно учитывая тональность, в которой ты общаешься.
я просто пошутил
ganjour вне форума  
 
Непрочитано 19.11.2008, 11:46
#165
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Цитата:
а так ли это необходимо?
Живой пример не полностью составленного ТЗ... А если будут вводиться нецелые расстояния (типа 6035.65478? Мне уже лениво проверять, что какой код вернет.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 19.11.2008, 11:55
#166
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,692


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Проблема в постоянном переопределении границ массива. А что должен делать? Ну, например, добавить элемент в конец массива (это делается достаточно просто, если забыть о потерях ресурсов, связанных с ReDim); удалить элемент(ы) по какому-либо условию (аналог vl-remove-if); заменить элемент, вычисленный по какому-либо условию (аналог subst); применить ко всем элементам какую-либо (заранее не определенную) функцию (аналог mapcar).
По рекурсии просить ничего не буду, поскольку у меня в свое время не получилось нормального решения на VB.
Все это вполне реализуемо, хотя согласен - зачастую через большую букву Ж, с затратой немалых усилий как на написание кода, так и аппаратных при исполнении. Особенно с удалением элемента из середины массива.
AlexV вне форума  
 
Непрочитано 19.11.2008, 12:03
#167
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,692


Ну а пример рекурсивной функции на VBA- вот
Код:
[Выделить все]
Public Function Factorial(N As Integer) As Integer
  If N <= 0 Then
            Factorial = 1
   Else
            Factorial = N * Factorial(N - 1)
   End If
End Function
AlexV вне форума  
 
Непрочитано 19.11.2008, 12:10
#168
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


AlexV, факториал и я писал - все работало нормально. Но как только начинается более сложное что-то, все, я пас (Добавлено: пробовал нарисовать аналог Replace для чистого VB, результат был плачевным).
Кстати, еще один прикол: а что, если надо использовать аналог Select Case, только условия могут быть разными? То есть
Код:
[Выделить все]
Select Case <?>
  Case Value1=1
  Case Value2="abc"
  Case Value=False
End Select
Я долго мучался, пока не подсмотрел решения
---
Специально пролистал тему обратно. Вроде я не говорил, что VB(A) полный отстой и зло вселенского масштаба... Для некоторых целей он очень даже неплох. При соблюдении некоторых условий
Желающим поразмыслить на досуге: прочитайте топик начиная примерно с #70, становится забавно
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 19.11.2008, 13:35
#169
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,692


Что-то недопонял я конструкцию:
Код:
[Выделить все]
Select Case <?>
  Case Value1=1
  Case Value2="abc"
  Case Value=False
End Select
Имеется в виду, проверка сразу по 3-м условиям в одном операторе? А если одновременно выполняются все условия (Value1=1, Value2="abc", Value=False), то что- должен выполнится код после всех Case? Мне кажется, работать не будет.
AlexV вне форума  
 
Непрочитано 19.11.2008, 13:46
#170
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


AlexV, нет. Я имел в виду:
Код:
[Выделить все]
Option Explicit

Sub test()
Dim sVar As String
Dim iVar As Integer
Dim bVar As Boolean
Dim sVar2 As String
Dim iRes As Integer
  sVar = "a": sVar2 = "b": iVar = 100: bVar = True
  Select Case ' Вот что здесь надо поставить / сделать?
    Case UCase(sVar) = "C"
      iRes = iRes + 1
    Case UCase(sVar) = "A" And sVar2 <> ""
      iRes = iRes + 2
    Case UCase(sVar2) = "B"
      iRes = iRes + 4
    Case bVar
      iRes = iRes + 8
    Case iVar > 10 And iVar < 1000
      iRes = iRes + 16
    Case iVar <= 10 Or iVar >= 1000
      iRes = iRes + 32
  End Select
  MsgBox "Сумма битов выполнения условий : " & CStr(iRes), _
    vbOKOnly + vbInformation + vbApplicationModal, _
    "iRes"
End Sub
---
Добавлено: iRes при правильном выполнении будет равен 2 на момент окончания процедуры
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 19.11.2008, 14:01
#171
ganjour


 
Регистрация: 16.10.2008
Сообщений: 45


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Живой пример не полностью составленного ТЗ... А если будут вводиться нецелые расстояния (типа 6035.65478? Мне уже лениво проверять, что какой код вернет.
Ну уж если ты это сделал камнем преткновения...
необходимо просто немного изменить условные операторы, а именно
Код:
[Выделить все]
(or (and (<= (ascii (car char_list)) 57)
		 (>= (ascii (car char_list)) 48)
	    )
	    (and (= (ascii (car char_list)) 46) (or (= i 0) (= i 3)))
	)
вместо
Код:
[Выделить все]
    (if	(and (<= (ascii (car char_list)) 57)
	     (>= (ascii (car char_list)) 48)
	)
и добавить
Код:
[Выделить все]
(if (/= (ascii (car char_list)) 46)
вот и все!
полный код:
Код:
[Выделить все]
;|
***** Преобразование любой строки к виду *<*d*'*" (расстояние/градусы/минуты/секунды) *****
Примеры ввода:
что желаешь то и вводи :)
разделителем может служить что угодно, кроме символа ".":
54,45,32,23
54,,,45,,32,,,,,,,23
54<45d32'23
54<<<<<45ddd32'''''23""""""""
54влалападпп45апавп32,уйцекгн23
54,45,32
54,45
54

Вызов: загрузи и введи в текстовом окне команду test
|;

;;; Преобразование строки в список
(defun input_string->list (inp_string / char_list islen)
  (setq islen (strlen inp_string))
  (setq char_list (list ""))
  (while (< 0 islen)
    (setq char_list (cons (substr inp_string islen 1) char_list))
    (setq islen (1- islen))
  )					; end of while
  char_list
)					; end of input_string->list

;;; Преобразует список в строку необходимого вида
(defun result_list (inp_string	 /	      element	   i
		    j		 symbol_list  char_list	   int_matrix
		    out_string
		   )
;;;  Инициализация
  (setq	symbol_list
	 (list "<" "d" "'" "\"")
	int_matrix
	 (list 0 1 2 3)
	i 0
	element	""
	out_string
	 ""
  )
;;;  Извлечение и группирование элементов списка char_list 
  (setq char_list (input_string->list inp_string))
  (while char_list
;;;    Если элемент цифра
    (if	(or (and (<= (ascii (car char_list)) 57)
		 (>= (ascii (car char_list)) 48)
	    )
	    (and (= (ascii (car char_list)) 46) (or (= i 0) (= i 3)))
	)
      (progn
	(setq element (strcat element (car char_list)))
	(setq j t)
      )
;;;      Если элемент не цифра
      (progn
	(if j
	  (if (/= (ascii (car char_list)) 46)
	    (progn
	      (setq int_matrix (subst element i int_matrix))
	      (setq element "")
	      (setq j nil)
	      (setq i (1+ i))
	    )
	  )
	)
      )
    )
;;;    Следующий элемент
    (setq char_list (cdr char_list))
  )					; end of while
;;;  Очищаю список на всякий случай
  (setq char_list nil)
;;;  Если введенных данных недостаточно
  (while (< i 4)
    (setq int_matrix (subst "0" i int_matrix))
    (setq i (1+ i))
  )					; end of while
;;;  Преобразую список int_matrix в строку и добавляю необходимые символы "<" "d" "'" "\""
  (while symbol_list
    (setq out_string
	   (strcat out_string (car int_matrix) (car symbol_list))
    )
;;;    Следующий элемент
    (setq int_matrix (cdr int_matrix))
    (setq symbol_list (cdr symbol_list))
  )					; end of while
  out_string
)					; end of result_list

;;; Функция тестирования
(defun C:test (/ inp_string)
  (setvar "cmdecho" 0)
  (setq inp_string (getstring "Строка: "))
  (princ (result_list inp_string))
  t
)					; end of test
ganjour вне форума  
 
Непрочитано 19.11.2008, 14:09
#172
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,692


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
AlexV, нет. Я имел в виду:
Код:
[Выделить все]
Option Explicit

Sub test()
Dim sVar As String
Dim iVar As Integer
Dim bVar As Boolean
Dim sVar2 As String
Dim iRes As Integer
  sVar = "a": sVar2 = "b": iVar = 100: bVar = True
  Select Case ' Вот что здесь надо поставить / сделать?
    Case UCase(sVar) = "C"
      iRes = iRes + 1
    Case UCase(sVar) = "A" And sVar2 <> ""
      iRes = iRes + 2
    Case UCase(sVar2) = "B"
      iRes = iRes + 4
    Case bVar
      iRes = iRes + 8
    Case iVar > 10 And iVar < 1000
      iRes = iRes + 16
    Case iVar <= 10 Or iVar >= 1000
      iRes = iRes + 32
  End Select
  MsgBox "Сумма битов выполнения условий : " & CStr(iRes), _
    vbOKOnly + vbInformation + vbApplicationModal, _
    "iRes"
End Sub
---
Добавлено: iRes при правильном выполнении будет равен 2 на момент окончания процедуры
Select Case True? Но в этом случае тоже выполнится код только после 1-го Case с верным значением выражения, остальные проигнорируются

Последний раз редактировалось AlexV, 19.11.2008 в 14:21.
AlexV вне форума  
 
Непрочитано 19.11.2008, 14:19
#173
ganjour


 
Регистрация: 16.10.2008
Сообщений: 45


Цитата:
Сообщение от AlexV Посмотреть сообщение
.
Код:
[Выделить все]
 Select Case ' Вот что здесь надо поставить / сделать?
    Case UCase(sVar) = "C"
      iRes = iRes + 1
    Case UCase(sVar) = "A" And sVar2 <> ""
      iRes = iRes + 2
    Case UCase(sVar2) = "B"
      iRes = iRes + 4
    Case bVar
      iRes = iRes + 8
    Case iVar > 10 And iVar < 1000
      iRes = iRes + 16
    Case iVar <= 10 Or iVar >= 1000
      iRes = iRes + 32
  End Select
тот же if - elseif
ganjour вне форума  
 
Непрочитано 19.11.2008, 14:29
#174
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


AlexV, это ты влет определил, а я в свое время мучался
ganjour, в VB есть ограничение на количество вложенных If-Else(ElseIf)-EndIf, насколько мне помнится. И, кстати, распиши тогда и свой вариант этого Select Case.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 19.11.2008, 14:55
#175
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,692


Повторюсь, применение "Select Case True" имело бы смысл, если бы исполнялись все "Case" с верным значением выражения. А здесь игнорируются все, кроме первого (хотя, в специфических случаях, этого возможно достаточно.). А что мешает сделать последовательно нужное кол-во Select Case? Ну код удлинится несколько, может выполнение его будет немного дольше (при нынешних "Corel Duo" надо сильно постараться, что бы это замедление было заметно)
AlexV вне форума  
 
Непрочитано 19.11.2008, 14:59
#176
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Лично мне, например, понадобилось именно Select Case True. Выполнялась операция над несколькими переменными.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 19.11.2008, 15:19
#177
Елпанов Евгений

программист
 
Регистрация: 20.12.2005
Москва
Сообщений: 1,439
Отправить сообщение для Елпанов Евгений с помощью Skype™


Цитата:
Сообщение от ganjour Посмотреть сообщение
Не знаю что такое "уроки Евгения Елпанова по рекурсиям" и вообще признаюсь - я не понимаю рекурсии и понимать не желаю ,
Можно и без рекурсии, сохранив твой функционал и добавив своего..
Сравнивай!

Код:
[Выделить все]
(defun test1 (s / trim)
 (defun trim (s)
  (while (and (not (= s "")) (or (< 47 (ascii s) 58) (= (ascii s) 46))) (setq s (substr s 2)))
  (while (and (not (= s "")) (not (or (< 47 (ascii s) 58) (= (ascii s) 46)))) (setq s (substr s 2)))
  (if s s "")
 ) ;_  defun
 (strcat (rtos (atof s) 2)
         "<"
         (angtos (angtof (strcat (rtos (atoi (setq s (trim s))) 2)
                                 "d"
                                 (rtos (atoi (setq s (trim s))) 2)
                                 "'"
                                 (rtos (atof (setq s (trim s))) 2)
                                 "\""
                         ) ;_  strcat
                         4
                 ) ;_  angtof
                 1
                 4
         ) ;_  angtos
 ) ;_  strcat
)
Для проверки:
Код:
[Выделить все]
(test1 "4,5000,6000,7000")		;; => "4<61d56'40\""
(test1 "4,5,6,7")			           ;; => "4<5d6'7\""
(test1 "4.5,5,6,7")			;; => "4.5<5d6'7\""
(test1 "54,45")				;; => "54<45d0'-0\""
(test1 "54")				;; => "54<0d0'0\""
(test1 "54,45,32,23")			;; => "54<45d32'23\""
(test1 "54влалападпп45апавп32,уйцекгн23");; => "54<45d32'23\""

Последний раз редактировалось Елпанов Евгений, 19.11.2008 в 15:28.
Елпанов Евгений вне форума  
 
Непрочитано 19.11.2008, 15:27
#178
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,692


Цитата:
...факториал и я писал - все работало нормально. Но как только начинается более сложное что-то, все, я пас...
Интересно, а в чем причина? В принципе, если я правильно понимаю, в любой среде программирования рекурсия - это обращение функции\процедуры к самой себе. Каких инструментов\логических конструкций в VBA не хватает по сравнению с тем же Lisp или C++?(по созданию рекурсий)
AlexV вне форума  
 
Непрочитано 19.11.2008, 15:38
#179
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Я сейчас уже не хочу (да и времени мало) восстанавливать свой код. Помню, что не получилось. Я на этом и успокоился
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 19.11.2008, 22:52
#180
ganjour


 
Регистрация: 16.10.2008
Сообщений: 45


Цитата:
Сообщение от Елпанов Евгений Посмотреть сообщение
Можно и без рекурсии, сохранив твой функционал и добавив своего..
да это пожалуй лучший вариант, разве что часть работы возложена на встроенные функции аутолисп atof и atoi ну зато получилось кратко и вполне читаемо, не понял только конструкцию (if s s "")
ganjour вне форума  
 
Непрочитано 20.11.2008, 08:15
#181
Елпанов Евгений

программист
 
Регистрация: 20.12.2005
Москва
Сообщений: 1,439
Отправить сообщение для Елпанов Евгений с помощью Skype™


Цитата:
Сообщение от ganjour Посмотреть сообщение
...
не понял только конструкцию (if s s "")
чтоб, если s = nil возвращалась пустая строка...
сравни:
(atoi nil)
(atoi "")

удачи.
Елпанов Евгений вне форума  
 
Непрочитано 20.11.2008, 22:14
#182
ganjour


 
Регистрация: 16.10.2008
Сообщений: 45


это ясно, а angtos и angtof зачем нужны? я их удалил и функция возвращает все тоже
ganjour вне форума  
 
Непрочитано 20.11.2008, 22:15
#183
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


ganjour, в справку хотя бы залез, что ли...
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 20.11.2008, 22:24
#184
ganjour


 
Регистрация: 16.10.2008
Сообщений: 45


kpblc код хотя бы посмотрел что ли, он на стр 9
ganjour вне форума  
 
Непрочитано 20.11.2008, 22:24
#185
Елпанов Евгений

программист
 
Регистрация: 20.12.2005
Москва
Сообщений: 1,439
Отправить сообщение для Елпанов Евгений с помощью Skype™


Цитата:
Сообщение от ganjour Посмотреть сообщение
это ясно, а angtos и angtof зачем нужны? я их удалил и функция возвращает все тоже
Код:
[Выделить все]
(test1 "4,5000,6000,7000") ;; => "4<61d56'40\""
Обрати внимание, 5000 градусов, 6000 минут и 7000 секунд...
Твоя программа, так и напишет 5000 градусов!
Елпанов Евгений вне форума  
 
Непрочитано 20.11.2008, 22:29
#186
ganjour


 
Регистрация: 16.10.2008
Сообщений: 45


а, вот это и есть добавленный функционал
ganjour вне форума  
 
Непрочитано 20.11.2008, 22:30
#187
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Цитата:
Сообщение от ganjour Посмотреть сообщение
kpblc код хотя бы посмотрел что ли, он на стр 9
А что я там должен увидеть такого "этакого"?
Цитата:
Сообщение от Елпанов Евгений Посмотреть сообщение
Обрати внимание, 5000 градусов, 6000 минут и 7000 секунд...
Твоя программа, так и напишет 5000 градусов!
Мой вариант, кстати, тоже
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 21.11.2008, 15:00
#188
Baldares


 
Регистрация: 17.10.2008
Саратов
Сообщений: 426


А как же быть с формами на лиспе!?
На VBA программа обычно с формы начинаеться)
В 2009 ничего не изменилось в этом направлении?
На DCL видать архисложно.
Если делать в VS или Делфи, то может лучше уж все там и делать.
Черт побери!

Почитал пару тем, на предмет целесообразности инженеру изучения ObjectARXa. Чуток в осадок выпал (..
Стоит ли изучать ObjectARX
С чего начать?
Сделал вывод что инженеру не след быть программистом и наоборот. Это не эфективно.
Как жить дальше?
Baldares вне форума  
 
Непрочитано 21.11.2008, 15:31
#189
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,692


Цитата:
Сообщение от Baldares Посмотреть сообщение
А как же быть с формами на лиспе!?
На VBA программа обычно с формы начинаеться)
В 2009 ничего не изменилось в этом направлении?
На DCL видать архисложно.
Если делать в VS или Делфи, то может лучше уж все там и делать.
Черт побери!Почитал пару тем, на предмет целесообразности инженеру изучения ObjectARXa. Чуток в осадок выпал. Сделал вывод что инженеру не след быть программистом и наоборот. Это не эфективно.
Как жить дальше?
Ну, на эту тему все лисперы ругаются. Типа, вместо встраивания VBA разработали бы для лисп визуальную часть. Хотя мне кажется, при знании обоих сред можно совмещать...В конце концов, главное преимущество лиспа - работа с примитивами автокада, а она в конечном счете сводится к созданию/редактированию конкретного объекта (вставить блок, создать отрезок/полилинию/текст/солид... и т.д.). запустить лисп из VBA можно, обратный процесс - тоже возможен. Передать параметры (типа имя блока/точка вставки/угол/масштабный коэффициент/еще чего-нибудь)- может, сложно, но реально (переменные User...или как там они точно обзываются, не помню; запись-чтение текстового файла, какие-то еще способы обсуждались). Ну а насчет эффективности... Лучше быть хорошим инженером, и никаким программером...Либо хорошим программером и никаким инженером, чем хреновым инженером и хреновым программером одновременно А еще мне кажется, путем самообразования можно изучить неплохо программирование - при наличии желания, способностей и времени (тот же Кулик Алексей- пример), а вот стать серьезным инженером - тем же конструктором - вряд ли.
AlexV вне форума  
 
Непрочитано 21.11.2008, 16:07
#190
Baldares


 
Регистрация: 17.10.2008
Саратов
Сообщений: 426


Объективно о себе, так и получается что "одновременно"...
Для сельской местности пойдет.
Baldares вне форума  
 
Непрочитано 01.12.2008, 11:24
#191
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,692


Цитата:
Сообщение от Baldares Посмотреть сообщение
...Да, курсы, сертифисировные микрософтом, пригодились бы...
Закончились пресловутые курсы VBA (под офис), теперь есть у меня появилась красивая бумажка под названием "MS Certificate..." с моим ID и факсимильной подписью БГ. Не того, что "под небом голубым...", а того, что с детства полюбил basic и вставлял его в разных видах везде и всюду (и даже в Autocad умудрился впихнуть - к неудовольствию старых лисперов и "мозгокалечению" неопытных новичков ). Честно говоря, кроме бумажки ничего нового не приобрел. Хотя заявлялось, что курс рассчитан на "опытных юзеров и программистов любой квалификации" и программа вроде включала в себя немало интересного мне, по факту - для начинающих (или "продвинутых блондинок"). Цельный день потратился на изучение типов данных и основных операторов, еще один - на игры с расстановкой контролов по форме... Оцените выражения препода: "Массивы довольно часто применяются в VBA. Но мы с вами их рассматривать не будем. Лучше рассмотрим коллекции..." (после этого конечно кое-что о массивах было, куда ж без них в VBA, но мало и бессистемно), или "...программисты даже могут создавать собственные классы...." (это все, что было сказано о создании классов). Кое-что новое - нужное - полезное я, конечно, узнал, но это около 10% от общего объема. В общем, я конечно ожидал немного от 2-х недельных курсов, но получил еще меньше. Хотя, повторюсь, для начинающих с полного и круглого нуля - в самый раз.
AlexV вне форума  
 
Непрочитано 01.12.2008, 11:41
#192
Baldares


 
Регистрация: 17.10.2008
Саратов
Сообщений: 426


AlexV, оцени курсы. Если контора согласиться оплачивать, я б с удовольствием пошел. Но 3года
А вот ссылка http://www.aptechsar.com/education.php?id=15
А можно и рескнуть здоровьем самому оплачивать. Зато ни от кого не зависеть.
Baldares вне форума  
 
Непрочитано 01.12.2008, 12:06
#193
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,692


Цитата:
Сообщение от Baldares Посмотреть сообщение
AlexV, оцени курсы. Если контора согласиться оплачивать, я б с удовольствием пошел. Но 3года.
А вот ссылка http://www.aptechsar.com/education.php?id=15
А можно и рескнуть здоровьем самому оплачивать. Зато ни от кого не зависеть.
При возможности лучше платить самому (если конечно не собираешься проработать на одном месте много лет). А когда контора оплачивает учебу, ты к ней получаешься привязан.
Ну а программа обучения - вполне впечатляет, 3 года - ну так за меньший срок проблематично такой объем освоить. Кстати, аналогичная программа в том заведении, где меня учили VBA, рассчитана на год (правда, без Linux), но что-то у меня таки сомнения появились по поводу качества их обучения... Ну и еще момент: "...стоимость одного семестра составляет 16000 рублей. ", а я за неполные 2 недели заплатил 10000...
AlexV вне форума  
 
Непрочитано 01.12.2008, 12:30
#194
Baldares


 
Регистрация: 17.10.2008
Саратов
Сообщений: 426


У них 40 часовые курсы = 6600 р.
Ну а 16000 за семестр это нормально. Это же заочка. Месяц лекций (в лучшем случае) + экзамены.
А еще + провинция. Лафа
+общагу могут дать, все равно в коммуналке живу. Еще б кормили
Baldares вне форума  
 
Непрочитано 05.12.2008, 21:58
#195
sbi


 
Регистрация: 27.04.2008
SPB
Сообщений: 3,285
Отправить сообщение для sbi с помощью Skype™


Ой! Ребята, вылезаю из окопа, боксеру некогда - везде его суют, а для меня лично программирование - хобби - когда стройки встали, ну чем больше заниматься, чем облегчать себе душу! Чем могу , тем и балуюсь, а я знаю что VB, простейший язык и пусть это зло, но чем богаты, тем и рады.
sbi вне форума  
 
Непрочитано 12.03.2009, 13:19
#196
KNA


 
Регистрация: 07.02.2009
Сообщений: 17


Дабы не умножать количество схожих по содержанью тем, отпишусь здесь.
Мой случай таков:
На данный момент передо мной стоит производственная задача по автоматизации чертежей пешеходных мостов (КМ, КЖ пролетных строений и опор). Автоматизация визуализированного расчета мной ранее хорошо была освоена в среде Delphi. Теперь стоит проблема в создании программы, удобной для рядового проектировщика, и сопряженной с Автокадом. На выходе предполагаются быть как плоские чертежи различных узлов, так и пространственные. Хотелось бы и далее продолжать работу в уютненьком Delphi, но в создании чертежей пользоваться непосредственно командами Автокада, как это делается в Автолиспе, допустим. Так вот, испрошаю совета, как лучше организовать решение обозначенной проблемы. Ежли более опытные мужи полагают целесообразным применять VBA, то и к нему можно будет прибегнуть, благо кризис и затишье в строительной среде дали время и простор для самообразования.
KNA вне форума  
 
Непрочитано 12.03.2009, 13:29
#197
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


ИМХО: продолжать работать в Delphi, обращаясь к AutoCAD'у через СОМ-модель. Достаточно быстро и просто.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 12.03.2009, 13:34
#198
KNA


 
Регистрация: 07.02.2009
Сообщений: 17


Хм, для меня все же несколько не очевидно, как сделать такое "обращение через COM-модель"....
KNA вне форума  
 
Непрочитано 12.03.2009, 13:39
#199
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Я не владею Delphi вообще, но не думаю, что "перевод" будет сильно сложен. Имеется в виду нечто типа:
Код:
[Выделить все]
Dim oAcad As Object ' требуется для универсальности работы
Dim oDoc As Object
Dim oModel As Object
oAcad = GetObject(,"AutoCAD.Application")
oDoc = oAcad.ActiveDocument
oModel  oDoc.ModelSpace
Dim oLine As Object, ptStart As Variant, ptEnd As Variant
ptStart(0)=100.1
ptStart(1)=10.23
ptStart(2)=0.
ptEnd(0)=321.12
ptEnd(1)=-65.12
ptEnd(2)=0.
oLine = oModel.AddLine (ptStart, ptEnd)
Пишу без запущенного VB(A), поэтому код для запуска не готов.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 12.03.2009, 13:54
#200
KNA


 
Регистрация: 07.02.2009
Сообщений: 17


Приблизительно вроде бы "перевести" мне удалось, но теперь кажется, что более простым (по крайней мере, для моего понимания) решением была бы запись через внешнюю программу в текстовый файл макроса на автолиспе, благо некоторый небольшой институтский опыт в оном имеется.
KNA вне форума  
 
Непрочитано 16.03.2009, 13:09
#201
Сергей Богатов


 
Регистрация: 21.02.2009
Сообщений: 825


Давно хотел спросить... А может LISP с подшивкам автокада работать?

З.Ы.
Я в LISPе ноль (хочется, но некогда) . В VBA кое-какие макросы делал, делаю и делать буду (в том числе по подшивкам) (ну по крайней мере пока не понадобится что то глобальное сделать, но тут лучше подключать профессионольных программистов).
Сергей Богатов вне форума  
 
Непрочитано 16.03.2009, 13:19
#202
Sleekka

-
 
Регистрация: 24.07.2005
Москва
Сообщений: 1,335


Если ты через COM работаешь, то лисп это тоже может соответственно.
Sleekka вне форума  
 
Непрочитано 16.03.2009, 13:26
#203
Makswell

Инженер-строитель
 
Регистрация: 15.08.2007
Киров
Сообщений: 2,204


А я думаю не может. Совсем. Хотя может я и не прав, но пока не встречалось ни одной реализации этого дела на лиспе.
Makswell вне форума  
 
Непрочитано 16.03.2009, 13:29
#204
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
А может LISP с подшивкам автокада работать?
Конечно. Всё, что описано в объектной модели, доступно и в LISP и в VBA.
Для подшивок отдельный файл справки acad_sso.chm.
ShaggyDoc вне форума  
 
Непрочитано 16.03.2009, 13:36
#205
Makswell

Инженер-строитель
 
Регистрация: 15.08.2007
Киров
Сообщений: 2,204


Цитата:
Сообщение от ShaggyDoc Посмотреть сообщение
Конечно. Всё, что описано в объектной модели, доступно и в LISP и в VBA.
Для подшивок отдельный файл справки acad_sso.chm.
В таком случае не могли бы Вы прояснить, как хотя бы установить связь с подшивкой? Что писать после (vlax-get-or-create-object... ?
Makswell вне форума  
 
Непрочитано 16.03.2009, 13:51
#206
Сергей Богатов


 
Регистрация: 21.02.2009
Сообщений: 825


Цитата:
В таком случае не могли бы Вы прояснить, как хотя бы установить связь с подшивкой? Что писать после (vlax-get-or-create-object... ?
Я бы тоже посмотрел

Уважаемые, может быть вы и про datalinkmanager чего либо знаете?
Я тут начал тему http://forum.dwg.ru/showthread.php?t=31805 дайте хоть какой-нибудь ответ(лучше положительный)
Сергей Богатов вне форума  
 
Непрочитано 16.03.2009, 13:52
#207
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Сергей Богатов, не надо свою тему проталкивать на каждом углу. Кто сможет - ответит. Имей терпение.
---
Добавлено: может, вопросы про подшивку и программную работу с ней вынести в отдельную тему все же? Или искать аналогичную и задавать вопросы там.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 16.03.2009, 14:14
#208
Makswell

Инженер-строитель
 
Регистрация: 15.08.2007
Киров
Сообщений: 2,204


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Добавлено: может, вопросы про подшивку и программную работу с ней вынести в отдельную тему все же? Или искать аналогичную и задавать вопросы там.
Алексей, в том то и дело что VBA прекрасно справляется с подшивками в отличие от лиспа. Я думаю этот факт соответствует названию темы "В чем зло VBA?" и говорит о безусловном преимуществе VBA перед лиспом в данном вопросе.
Makswell вне форума  
 
Непрочитано 16.03.2009, 14:21
#209
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Makswell, а как тебе постановка ответа типа "И VisualLISP, и VBA, и .NET-сборки, и arx-приложения могут работать с подшивками. Но некоторые вещи приходится буквально нащупывать"
P.S. Я с подшивками программно не работал - не было необходимости.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 16.03.2009, 14:35
#210
Makswell

Инженер-строитель
 
Регистрация: 15.08.2007
Киров
Сообщений: 2,204


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Makswell, а как тебе постановка ответа типа "И VisualLISP, и VBA, и .NET-сборки, и arx-приложения могут работать с подшивками. Но некоторые вещи приходится буквально нащупывать"
P.S. Я с подшивками программно не работал - не было необходимости.
Алексей, постановка ответа замечательна, но бездоказательна. Замечательна в том смысле, что такой ответ держится только на одном твоём авторитете как опытного программиста. А тебе я привык верить наслово, впрочем также, как и ShaggyDoc'у. Но хотелось бы доказательств. Вот на VBA всё просто:
Код:
[Выделить все]
Dim oSheetSetMgr As AcSmSheetSetMgr
Set oSheetSetMgr = New AcSmSheetSetMgr
... и поехали дальше работать с подшивкой

Так в чем же зло VBA? Он же может работать с подшивками в отличие от лиспа. (Это я написал типа чтобы от темы не отступать )
Makswell вне форума  
 
Непрочитано 16.03.2009, 14:37
#211
Сергей Богатов


 
Регистрация: 21.02.2009
Сообщений: 825


Цитата:
Сообщение от Makswell Посмотреть сообщение
Алексей, постановка ответа замечательна, но бездоказательна. Замечательна в том смысле, что такой ответ держится только на одном твоём авторитете как опытного программиста. А тебе я привык верить наслово, впрочем также, как и ShaggyDoc'у. Но хотелось бы доказательств. Вот на VBA всё просто:
Код:
[Выделить все]
Dim oSheetSetMgr As AcSmSheetSetMgr
Set oSheetSetMgr = New AcSmSheetSetMgr
... и поехали дальше работать с подшивкой

Так в чем же зло VBA? Он же может работать с подшивками в отличие от лиспа. (Это я написал типа чтобы от темы не отступать )
Присоединяюсь
Сергей Богатов вне форума  
 
Непрочитано 16.03.2009, 14:39
#212
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,611


Прошу прощения что влезаю, прочитал весь топик и как-то задело что никто не дал ответ на #161 и #163.

Действительно reDim скушаем много ресурсов, но в таком случае его применение не оправдано. Для данной цели проще использовать Коллекции объектов, в которых добавление, удаление и поиск данных в заданных условиях выполнить не сложно.
Boxa вне форума  
 
Непрочитано 16.03.2009, 14:59
#213
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Makswell, да бога ради! С тебя готовая подшивка и задача, которую решать "руками" по каким-либо причинам нерентабельно. Скажу честно - самостоятельно ковыряться просто некогда.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 16.03.2009, 15:23
#214
Makswell

Инженер-строитель
 
Регистрация: 15.08.2007
Киров
Сообщений: 2,204


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Makswell, да бога ради! С тебя готовая подшивка и задача, которую решать "руками" по каким-либо причинам нерентабельно. Скажу честно - самостоятельно ковыряться просто некогда.
Алексей, я же говорю, что верю наслово. Да и никаких задач по подшивкам у меня пока нет. Хотя вот, например, была такая тема: http://forum.dwg.ru/showthread.php?t=5111 Но там я никакой проблемы в том, чтобы перенумеровать листы вручную я не вижу.

Я же говорю просто про то, как установить связь с подшивкой. И всё, больше никаких задач. Только получение в лиспе vla-объекта подшивки, с которым можно было бы работать далее.

Хотя ещё раз повторю, что никаких конкретных задач по программной работе с подшивкой на данный момент у меня нет. Так что если не хочешь, то не буду настаивать и отнимать тем самым твоё время.

Но если возьмёшься за это, то вот тебе ещё одно авторитетное мнение: http://forum.dwg.ru/showpost.php?p=161313&postcount=2 Так сказать, для стимула.
Makswell вне форума  
 
Непрочитано 16.03.2009, 15:26
#215
Сергей Богатов


 
Регистрация: 21.02.2009
Сообщений: 825


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Makswell, да бога ради! С тебя готовая подшивка и задача, которую решать "руками" по каким-либо причинам нерентабельно. Скажу честно - самостоятельно ковыряться просто некогда.
Это подшивка http://dwg.ru/dnl/5319
Задача 1 - перенумеровывать свойство "Sheet Number" (по возрастанию)
Задача 2 - подсчитать общее количество листов и занести в пользовательское свойство "Листов"
Задача 3 - значению "Title" присвоить значение "Description"
Задача 4 - заменить значение "Разработал" на произвольное - к примеру NEMO

Эта подшивка включает в себя малое кол-во листов - можно и руками всё сделать - а вот к примеру если здесь хотябы 50 листов, то уже проблема... в VBA - не проблема

Последний раз редактировалось Сергей Богатов, 16.03.2009 в 15:32.
Сергей Богатов вне форума  
 
Непрочитано 16.03.2009, 22:14
#216
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
Так в чем же зло VBA? Он же может работать с подшивками в отличие от лиспа
VBA может работать с подшивками (в отличие от LISP) только потому, что какие-то уроды в Аутодеск при написании COM-объектов подшивок не сделали интерфейс IDispatch. Соответственно не будут иметь доступ к подшивкам и приложения, написанные на других языках.

Обнаружилось это после анализа ACSMCOMPONENTS17Lib_TLB. Ну и не надо - подшивки инструмент для интерактивной работы.

Почему так сделали - не знаю. Никаких объективных причин нет. То ли индус какой обкурился, то ли специально сделали, чтоб кто-нибудь мог написать - "В VBA всё просто".

По этому поводу и на Аутодеск наезжали, но ответ 5-летней давности "Adding LISP access to SSM COM API's is on the wishlist"

Вот и пример, как мозги калечат.
ShaggyDoc вне форума  
 
Непрочитано 17.03.2009, 08:19
#217
Сергей Богатов


 
Регистрация: 21.02.2009
Сообщений: 825


Итог - для каждой задачи свой инструмент. И если мне хватит велосипеда чтобы доехать до магазина и купить батон(при этом мне надо будет ехать по узким улочкам), то я не пойду за бульдозером в гараж И наоборот - если будет задача выкапать длинную и глубокую траншею - я постараюсь найти большой и мощный экскаватор(и напрягу кого-либо кто знает как им управлять) Я надеюсь, что аналогия понятна
З.Ы.
Цитата:
потому, что какие-то уроды в Аутодеск при написании
А почему же сразу уроды?
З.З.Ы.
Цитата:
Вот и пример, как мозги калечат.
Знание или не знание чего-либо не говорит о том покалечены ли у кого-либо мозги или он гений. Будем терпимей, хоть это и очень сложно

З.З.З.Ы.
Да и ещё самое главное Очень хорошо если у вас есть полный доступ к компу, а если вы User и бесправны на вашей рабочей машине? Всякий внешний софт не дают поставить. Таким образом у вас выбор - или LISP или VBA. LISP что то не может - остаётся VBA
Вот так

Последний раз редактировалось Сергей Богатов, 17.03.2009 в 08:34.
Сергей Богатов вне форума  
 
Непрочитано 17.03.2009, 23:05
#218
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426


Нда, я погорячился, заявив, что в VisualLISP возможна работа с подшивками. Не, наверное, можно нарисовать dll и работать с подшивкой как с СОМ-сервером. Но это по меньшей мере странно получится
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 18.03.2009, 06:42
#219
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
А почему же сразу уроды?
Может не сразу. Может это "мягко говоря", а надо было "грубо выражаясь".

А "потому", что COM-технология изначально предназначена для доступа к объектам приложения из любых других приложений. И весь AutoCAD сделан так, и сделан правильно. И только SheetSet вдруг сделали "закрытой". Причем, судя по тексту объявлений в TLB, даже не специально из каких-то стратегических соображений, а просто из-за низкой квалификации.

"Да и ещё самое главное". Что, это "самое главное":

Цитата:
...если вы User и бесправны на вашей рабочей машине? Всякий внешний софт не дают поставить. Таким образом у вас выбор - или LISP или VBA. LISP что то не может - остаётся VBA
Причем здесь права юзеров? И LISP и VBA работают только внутри AutoCAD, а он уже стоит. Пользователь может не иметь привилегий на какие-то конкретные действия, но это не зависит от среды программирования - только от программиста.

Цитата:
LISP что то не может - остаётся VBA
Остаётся VBA для тех, кто только VBA и знает. Если мне, например, зачем-то понадобится работать с SheetSet - напишу свое приложение, которое умеет работать и с IUnknown. Но вряд ли понадобится.

Вот "Мерседес" нельзя завести "кривым стартером", а "газон" - можно. Так что, из этого делать вывод "остается только "газон"?
ShaggyDoc вне форума  
 
Непрочитано 18.03.2009, 08:52
#220
Сергей Богатов


 
Регистрация: 21.02.2009
Сообщений: 825


Цитата:
Сообщение от ShaggyDoc Посмотреть сообщение
Причем здесь права юзеров? И LISP и VBA работают только внутри AutoCAD, а он уже стоит. Пользователь может не иметь привилегий на какие-то конкретные действия, но это не зависит от среды программирования - только от программиста.
Тут подразумевается что никакую внешнюю систему программирования на рабочей машине проектировщика ставить не будут

Цитата:
Остаётся VBA для тех, кто только VBA и знает. Если мне, например, зачем-то понадобится работать с SheetSet - напишу свое приложение, которое умеет работать и с IUnknown.
То есть если я знаю VB и могу за 4-8 рабочих часов(не напрягаясь) сваять макросик, то вы мне предлагаете бросить всё, выучить лисп,
Цитата:
нарисовать dll и работать с подшивкой как с СОМ-сервером
пардон - мне так не хочется. Я проектировщик... Мне нужно чтобы РАБОТАЛО, а на чём это сделано мне без разницы. Я понимаю что в VBA много косяков, но самый большой косяк ЛИСПа что я его не знаю, а времени изучить не всегда найдешь.
ЗЫ
Надо посмотреть что такое VB.NET или вспомнить студенческое прошлое и упросить сисадминов поставить Delphi
__________________
Я-проектировщик бывший проектировщик!
Сергей Богатов вне форума  
 
Непрочитано 18.03.2009, 09:18
#221
Makswell

Инженер-строитель
 
Регистрация: 15.08.2007
Киров
Сообщений: 2,204


Offtop: Хочется вспомнить народную мудрость: "Если все говорят, что что-либо нельзя сделать на лиспе, значит это обязательно сделает Supermax"
Makswell вне форума  
 
Непрочитано 18.03.2009, 09:18
#222
Pastor

это только кличка
 
Регистрация: 22.10.2006
Москва
Сообщений: 252


Предположим, вы упросили сиадминов поставить вам Delphi. Дальше что?
__________________
...в шее моей жилы железные, и лоб мой - медный...
Pastor вне форума  
 
Непрочитано 18.03.2009, 10:01
#223
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
Тут подразумевается что никакую внешнюю систему программирования на рабочей машине проектировщика ставить не будут
Никаких внешних систем программирования на машинах проектровщиков не нужно.

Цитата:
То есть если я знаю VB и могу за 4-8 рабочих часов(не напрягаясь) сваять макросик, то вы мне предлагаете бросить всё, выучить лисп
Если я написал:
Цитата:
Если мне, например, зачем-то понадобится работать с SheetSet - напишу свое приложение, которое умеет работать и с IUnknown.
то каким образом отсюда делается вывод "вы мне предлагаете бросить всё, выучить лисп"?

Я никому ничего не предлагаю, кроме как соображать. VB - это не VBA, а как раз "внешняя система".

Цитата:
самый большой косяк ЛИСПа что я его не знаю
И кто в этом виноват? ЛИСП или я? Так вы и VBA явно верхушечно знаете.

Цитата:
Надо посмотреть что такое VB.NET
А вот это уже совершенно иное. Это не VBA, встроенный в виде "пятого колеса" в AutoCAD. Причем ключевая часть здесь не VB, а .NET. Освоив технологию .NET, сможете серьезно работать. А уж на каком языке реализовывать - значения не имеет.

Цитата:
Предположим, вы упросили сиадминов поставить вам Delphi. Дальше что?
А дальше - ничего. Дело не в "упросить", а в знать и уметь.
ShaggyDoc вне форума  
 
Непрочитано 18.03.2009, 13:49
#224
Сергей Богатов


 
Регистрация: 21.02.2009
Сообщений: 825


Цитата:
Сообщение от ShaggyDoc Посмотреть сообщение
Так вы и VBA явно верхушечно знаете.
Моих наискромнейших знаний в программировании вполне достаточно для тех задач которые стоят передо мной:
тусануть туда-сюда пачку данных, пройтись по каталогу и сделать что-либо в файлах, ковырнуться в подшивках. Я не отдаю эти макросы сотням(тысячам) пользователей, которые вслучае неправильной работы приложения будут тебя пинать ногами и руками. Только для себя и внутри отдела А вот когда начнут вводить стандарт предприятия, вот тогда и понадобится супер-пупер программист с супер-пупер знаниями в различных платформах и технологиях.

.NET -программистам,
VBA -проектировщикам
__________________
Я-проектировщик бывший проектировщик!
Сергей Богатов вне форума  
 
Непрочитано 18.03.2009, 21:26
#225
sbi


 
Регистрация: 27.04.2008
SPB
Сообщений: 3,285
Отправить сообщение для sbi с помощью Skype™


Цитата:
Сообщение от Сергей Богатов Посмотреть сообщение
Моих наискромнейших знаний в программировании вполне достаточно для тех задач которые стоят передо мной:
тусануть туда-сюда пачку данных, пройтись по каталогу и сделать что-либо в файлах, ковырнуться в подшивках. Я не отдаю эти макросы сотням(тысячам) пользователей, которые вслучае неправильной работы приложения будут тебя пинать ногами и руками. Только для себя и внутри отдела А вот когда начнут вводить стандарт предприятия, вот тогда и понадобится супер-пупер программист с супер-пупер знаниями в различных платформах и технологиях.

.NET -программистам,
VBA -проектировщикам
Спасибо
__________________
С уважением sbi
sbi вне форума  
Закрытая тема
Вернуться   Форум DWG.RU > Сообщество > Разное > В чем зло VBA?

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Пароль к VBA karp_b Программирование 24 29.08.2013 12:43
Юмор 2007 Огурец Разное 1172 29.12.2007 11:16
Чем можно удалить файл, занятый не понятно чем? G.A.W. Разное 4 08.10.2007 15:12
ActiveX Automation из VBA karp_b Программирование 5 14.09.2007 18:05
VBA vs LISP Kosenko Sasha LISP 23 06.03.2007 02:56