Дмитрий Радищев (dibr) wrote,
Дмитрий Радищев
dibr

Всякая фигня

    У нас опять начались дежурства вокруг алмазодобывающей системы - а значит, раз в несколько дней я буду проводить ночь на работе, а день - делать вид что отсыпаться. А ещё - у меня кончились темы. Поэтому сейчас - немного "лытдыбра" :-)

    Программистов - давить!
    Я не программист - в том смысле, что не занимаюсь программированием профессионально (и потому имею право не знать C++ и обходиться классическим, необъектным Си, а также активно использовать подход "а вот тут выделим памяти побольше, и нам хватит навечно"). Поэтому когда написанная мной (на Borland C++ Builder) программа для снятия спектров начала что-то уж слишком часто падать (с чем-то типа "invalid pointer use") - полез, естественно, искать ошибки у себя. Ну, или в крайнем случае - в той dll-ке, что шла с монохроматром и через которую я осуществляю с ним взаимодействие.
    Исследование показало, что программа падает не потому что что-то не так у меня, и не потому что разработчики монохроматора что-то напутали в dll-ке. Исследование показало, что программа падает при попытке нарисовать при помощи борландючего Chart Control график, содержащий точки, имеющие численное значение более нескольких тысяч. Подчеркиваю: не "более нескольких тысяч точек", а "точки, численное значение абсциссы которых больше нескольких тысяч". То есть, при отрисовке графика, состоящего из константы 1111 - всё нормально, а из константы 11111 - программа падает (проверялось именно что заменой переменных на константы в том месте где отрисовывался график, содержимое графика нигде в программе, разумеется, не используется). Причем "чистый" проект, созданный в целях отладки и содержащий такой же chart - падать даже и не думал.
    Я - не программист, и мне надо чтобы работало, пофиг как - кроме меня эту конкретную программу никто (активно) использовать не будет. Поэтому проблема была "решена" нормировкой абсциссы на максимальное значение - теперь я вывожу в график нечто от 0.0 до 1.0, и ничего не падает - но загадка тем не менее осталась. Как можно написать графикопостроительный контрол так, чтобы он устойчиво падал на больших числах (с плавающей точкой, с вашего позволения)?

    Впрочем, с программистами Jobin Yvon (это производители другого монохроматора) - тяжело тягаться даже мне. Они смогли написать программу, которой в принципе даже удобно пользоваться (за исключением некоторых интуитивно-понятных моментов, типа сохранения результатов через правый клик по белому прямоугольнику в углу таблицы с данными, и отказ сохряняться через "file / save as"), и которая даже умеет запоминать несколько "конфигураций эксперимента" в виде xml-файлов (реально умеет, я сам внутрь смотрел). Вот только при попытке загрузки сохраненной конфигурации - с высокой вероятностью падает, если не падает - считывает корректно не все параметры, а при удачном стечении обостоятельств ("неудачная" конфигурация, сохраненная по умолчанию) - устойчиво падает сразу после запуска.
    Впрочем, их я как раз понять могу - судя по всему в качестве "платформы для разработки" у них использовался встроенный язык Microcal Origin (если не путаю название), а если даже у борланда бывают столь интересные глюки, то уж у математического пакета, который зачем-то припахали для задач управления... в-общем, Женька - не ходи в программисты, их все ругают, в том числе тестеры :-)))


    ...А с микрософта, оказывается, можно скачать халявные версии вижуалбэсика, вижуалсипипи, вижуалдодиеза (С#) и вижуалжэпипи (J++, что бы это не означало). На до-диез мне переучиваться, пожалуй, поздновато (хотя - может быть я зря так считаю?), а вот сипипи я сейчас качаю, и на пробу попробую попробовать. Вдруг оно есть хорошо и удобно - для всяких мелких GUIёвых программмок, крупных мне не надо?...

    А ещё - купил себе полуботинки китайского брэнда HEROTANK. Я, наверное, извращенец - но даже увидевши на коробке явно героического вида танк, я сильно не сразу вспомнил о существовании английского слова Hero, и навязчиво думал о какой-то, извините, херотени в плане этого херотанка.
    Обувка, впрочем, оказалась совсем не "херо-", а вполне удобной и прочной. Не знаю насчет танковости, но нитками прошито именно то что должно быть прошито нитками, а подошва состоит из подошвенного материала, а не из кубиков воздуха, скрепленных слоем пластика - что не может не радовать :-)

    А на сегодня всё, и всем кто ложится спать - спокойного сна :-)
Subscribe
  • Post a new comment

    Error

    default userpic

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 19 comments