Я обращался ко всем спорящим. Пройдет время, устареет и этот язык.
- Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
- Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
- Не писать свой вопрос в первую попавшуюся тему - вместо этого создать новую тему.
- За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения.
- Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
- Перед тем как что-то написать - читать здесь и здесь, а студентам - обязательно здесь.
- Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.
Delphi и для чего он нужен.
-
- администратор
- Сообщения: 17576
- Зарегистрирован: 17 июн 2008, 16:01
- Имя: Евгений свет Брониславович
- Страна: Россия
- город/регион: Санкт-Петербург
- Благодарил (а): 824 раза
- Поблагодарили: 1652 раза
Delphi и для чего он нужен.
По крайней мере на С++ я писал и отлаживал когда-то программы, и встречал их, но не видел ни разу в жизни чтобы где-то что-то писалось на паскале.
По вопросам работы Форума можно обратиться по этим контактам.
-
- осмотрелся
- Сообщения: 158
- Зарегистрирован: 25 окт 2010, 10:30
- Имя: Капуста Степан Степанович
- Поблагодарили: 7 раз
Delphi и для чего он нужен.
Оппонент привел в качестве аргумента близость к машинным инструкциям - ответил.
А вот зачем это надо - не знаю.
Ни разу не требовалось... Точнее, один раз хотели заставить делать на Си для PIC - в те далекие годы для этого микроконтроллера был только Си-препроцессор: пишешь прогу на Си, он ее переводит в ассемблерные мнемоники, ассемблерный текст компилируется в машкоды, которые потом заливаются в микроконтроллер. Так я тогда сразу обозначил - или я делаю сразу на асме или пусть ищут другого мазохиста.
Си-подобный - в SIEMENS WinCC. Паскаль-подобный - SCL на ПЛК того же SIEMENS, программы для ЧПУ той же фирмы. В промышленности еще пока немало изделий SIEMENS... Это что я самолично видел.
Это, извините, дурак, а не понимающий.
Понимающий просто поставит себе галочку - сегодня нафиг не надо, но кто знает, что там, за поворотом... Понятно, что в среднем знание паскаля не будет определяющим.
Это во-первых. Во-вторых, если соискатель действительно способен работать на двух-трех языках /любых: машинных или человечьих/, он при нужде достаточно быстро освоит и еще: многие языки имеют очень много похожего /как, например, обсуждаемые Си и Паскаль/ - про "за поворотом" не стоит забывать. Этот момент я по себе знаю: первый ассемблер /Z-80/ осваивал долго и трудно, второй /8086/ - пошел проще... А сейчас изучение очередного асма занимает едва ли не пару часов - уточнить детали и модель процессора: буквально месяц назад делал маленькую встроенную системку на микроконтроллере - утром впервые про него услышал, вечером уже имел криво-косо работающий вариант. Были там какие-то извращенческие требования, что нельзя было применить нормальный ПЛК...
Если вопрос ставить так, то совершенно аналогично, только наоборот.
Всякие учебные программки или программки на Си-подобном языке, наверное, не стоит рассматривать как "писалось на Си"...
-
- почётный участник форума
- Сообщения: 1041
- Зарегистрирован: 29 апр 2014, 09:57
- Имя: Рыбкин Владимир Геннадьевич
- Страна: Россия
- город/регион: Тверь
- Благодарил (а): 55 раз
- Поблагодарили: 134 раза
Delphi и для чего он нужен.
http://geosensor.ru/program/geoscape Написано на Delpi.
http://geosensor.ru/products/info Написано на Си теми же людьми. Им так было удобнее.
-
- почётный участник форума
- Сообщения: 3927
- Зарегистрирован: 20 янв 2010, 22:23
- Имя: Никита
- Страна: РФ
- город/регион: Мурманск
- Благодарил (а): 20 раз
- Поблагодарили: 220 раз
Delphi и для чего он нужен.
Многое изменилось в жизни. Сам по себе термин "указатель на функцию" потерял смысл с появлением ООП... Как и 20-разрядная адресация сегмент-смещение.. Хотя, при решении задач прикладного программирования с графами и динамическими цепочками типа стека и очереди - без указателей даже пока не представляю как...Михайло писал(а): Лично мне понравилась замутка с указателями в C#, их там просто нет!
Остались хендлеры.. Остались вызовы API с родными для API типами.. Мож еще чего, но увы, для защищенного режима 286 и выше уже не довелось писать, увлекся другим...
Ну во первых, проще i++ или ++i (это кстати, еще одна фишка С, коей в паскале в явном виде нет). А во-вторых, упоминание об inc(i) есть в учебниках по паскалю в подавляющем большинстве только в справочных разделах, в примерах - очень редко. Даже цикл while или repeat везде описан именно через i:=i+1. Ну а в третьих, если к inc() вопросов нет (только к компилятору), то i:=i+1 -это пересылки и сложение, что уже усложняет понимание работы... Про то, что не все процессоры (в АСУ ТП еще встречаются динозавры) умеют выполнять inc применительно к памяти а не регистрам- ну да фиг с ним, история уже...Эти всякие ^, += и т.п. - сокращают размер набираемого текста. Попутно усложняют читабельность: i := i + 1 прочитает почти любой, inc(i) - знакомый с ассемблером, i += 1 - исключительно только знающий Си.
Очень много работы, если прога достаточно сложная. Бывает,что и в Delphi проще вставить "asm" и дописать нужный кусок руками.сразу на асме
Ну а вообще - я тоже с Паскаля начинал. Пока (года через два-три) не понял, что лично мне С удобнее.
И, возвращаясь к динозаврам - контроллеры типа i7188 от ICP или аналоги от моксы до сих пор на рынке и все примеры - на С. Да, переделать под паскаль можно, но когда пример начинается с директив типа #include modbus.h и все остальное в комментах этого заголовка - зачем извращаться с другим языком, если с этим все равно разбираться...
Ну а вообще - первое требование к программе - "она должна работать". Остальное - дело вкуса.
Опыт - это когда на смену вопросам: "Что? Где? Когда? Как? Почему?" приходит единственный вопрос: "Нахрена? "
-
- осмотрелся
- Сообщения: 158
- Зарегистрирован: 25 окт 2010, 10:30
- Имя: Капуста Степан Степанович
- Поблагодарили: 7 раз
Delphi и для чего он нужен.
i++ - это сишнику очевидно. И тому, кто в курсе - хотя бы книжечку по основам помнит. То же касается и inc() - для понимания нужен некий набор достаточно специфических знаний. Остальным же... А вот i := i + 1 прочитает любой, кто хоть что-то из школьного курса информатики помнит.Никита писал(а): Ну во первых, проще i++ или ++i (это кстати, еще одна фишка С, коей в паскале в явном виде нет). А во-вторых, упоминание об inc(i) есть в учебниках по паскалю в подавляющем большинстве только в справочных разделах, в примерах - очень редко. Даже цикл while или repeat везде описан именно через i:=i+1. Ну а в третьих, если к inc() вопросов нет (только к компилятору), то i:=i+1 -это пересылки и сложение, что уже усложняет понимание работы... Про то, что не все процессоры (в АСУ ТП еще встречаются динозавры) умеют выполнять inc применительно к памяти а не регистрам- ну да фиг с ним, история уже...
И это... Я вот вообще понять не могу, за каким в уме переводить команды высокоуровневого языка в машкоды. Нужны машкоды - пишем в машкодах или на асме /команды асма переводятся однозначно в машкоды и, часто, наоборот - машкоды в команды асма/. Нет нужды в машкодах - пишем на языке высокого уровня и не делаем голову беременной.
Именно динозавры именно у меня заработали на Паскале: привезли тогда не весь комплект, с инетом была напряженка - он, если вы помните, не всегда существовал. Быстро ответить на поставленный вопрос - это загнал какой-то файлик из полученных с ПЛК огрызков в декомпилятор и... А все, что понял - набрал на Паскале. Потом, когда привезли все, что должно было быть - это уже было как бы и не так нужно: в процессе ответа на вопрос задача была решена. А больше мы тех динозавров /у нас, правда, не i7000, а i8000 были/ не пользовали, потому как-то делать нормально, на Си, потребности не возникло.Никита писал(а): И, возвращаясь к динозаврам - контроллеры типа i7188 от ICP или аналоги от моксы до сих пор на рынке и все примеры - на С. Да, переделать под паскаль можно, но когда пример начинается с директив типа #include modbus.h и все остальное в комментах этого заголовка - зачем извращаться с другим языком, если с этим все равно разбираться...
Вот это - и есть то главное требование к языку программирования.
И второе - сопровождаемость. Сложно же быстро внести незначительные изменения в программу, языка которой не знаешь /среду программирования освоить все-таки проще/.
Может еще преемственность - если коллектив работает на Си, то пасквилянт в этой компании будет мягко говоря не к месту. А если в коллективе наработки на таком количестве языков, что не то что пальцев, волос не хватит пересчитать, то плюс-минус язык роли уже не играет. А в промышленности это именно так: функция на стандартном МЭКовском языке для SIEMENS S7-200 не подойдет для SIEMENS S7-300 без танцев с бубном /в самом простом случае надо заново набрать текст по исходнику/. Контроллеров же много больше, чем два... Тех же Сименсов: S3, S5, в серии S7 четыре разных типа /условно, конечно: S7-1200 разных версий тоже различия имеют/, Logo... И это только Сименсы...
-
- почётный участник форума
- Сообщения: 3927
- Зарегистрирован: 20 янв 2010, 22:23
- Имя: Никита
- Страна: РФ
- город/регион: Мурманск
- Благодарил (а): 20 раз
- Поблагодарили: 220 раз
Delphi и для чего он нужен.
Во! И у меня исторически так сложилось, что сначала изучил паскаль на школьном уровне. А потом, когда разобрался с процессорами 8086 и ассемблером, попутно освоив кучу примеров на С - понял, что для работы с железом С удобнее... Ну а уже на 3-м курсе, после "чемоданов" с 580 процессором, программируеммых в машкодах (реально, 4х4 клавиатура и 4-значный семисегментник+функциональные кнопки+таблица "Команды<->коды" на стенке в лаборатории, начал на автомате прикидывать что же моя программа делает с точки зрения железа... И это уже не в уме, это вдолбили почти на уровень подсознания... Хорошо или плохо - совсем другой вопрос.i++ - это сишнику очевидно. И тому, кто в курсе - хотя бы книжечку по основам помнит. То же касается и inc() - для понимания нужен некий набор достаточно специфических знаний. Остальным же... А вот i := i + 1 прочитает любой, кто хоть что-то из школьного курса информатики помнит.
И это... Я вот вообще понять не могу, за каким в уме переводить команды высокоуровневого языка в машкоды. Нужны машкоды - пишем в машкодах или на асме /команды асма переводятся однозначно в машкоды и, часто, наоборот - машкоды в команды асма/. Нет нужды в машкодах - пишем на языке высокого уровня и не делаем голову беременной.
Хотя до этого, да, в курсе информатики (тогдашней) и решение систем методом Гаусса, и диффуры Рунге-Куттой и Эйлером лепил на турбо-паскале и неудобств не испытывал... Delphi еще только-только появилось, первая версия под Win3.1. Но вот параллельно в учебном процессе появилась дискретная математика и прочие вещи, и оказалось (возможно уже с опытом) что слепить обход графа, в виде массива указателей, на С быстрее и короче. Кстати, "короче" в условиях полуторачасовой лабы тоже имело значение. Особливо на учебных машинах, где нельзя среду под себя настроить.
Ну а еще до этого, изучал бейсик в школе на машинах на базе Z80, но там кроме того, что компьютер состоит из "вычислительного блока и периферийных устройств" по железу вообще был полный ноль. Может поэтому, бейсик, в т.ч. и современнный VB до сих пор не люблю.
Ну а к паскалю и С отношусь как к водке и коньяку, соответственно. Первое - просто и для всех, второе - для тех кто понимает и может ощутить разницу и готов за нее заплатить:) На халяву - предпочитаю коньяк:)
Сопровождаемость и преемственность - согласен, но до определенного предела. Если есть рабочая библиотека, то вряд-ли кто будет с ней разбираться, проще переписать по новой. Или вообще не трогать. Кстати, сегодняшнее с anekdot.ru - коммент в тексте Канадской программы - "dont' forget to remove it nahren!!!".. \
Это не требования к языку, это требования к результату. Хоть на перфокартах колите. Если функции, предусмотренные заданием, программа выполняет, то язык вообще по барабану. Процессор, напомню, языков программирования не знает.Вот это - и есть то главное требование к языку программирования.
До тех пор, пока не понадобится обновить/изменить, но тут я с Вами согласен - все зависит от того, где и с кем работать.
Последний раз редактировалось Никита 19 фев 2016, 22:03, всего редактировалось 3 раза.
Опыт - это когда на смену вопросам: "Что? Где? Когда? Как? Почему?" приходит единственный вопрос: "Нахрена? "
-
- осмотрелся
- Сообщения: 149
- Зарегистрирован: 12 фев 2016, 10:53
- Имя: Иван Иванович Чернов
- Страна: Россия
- город/регион: Томск
- Благодарил (а): 54 раза
- Поблагодарили: 1 раз
Delphi и для чего он нужен.
В комментариях очень часто мелькает язык СИ следовательно он самый самый в общем для изучения АСУШНИКА в университете подошёл бы.Я так думаю.
-
- почётный участник форума
- Сообщения: 3927
- Зарегистрирован: 20 янв 2010, 22:23
- Имя: Никита
- Страна: РФ
- город/регион: Мурманск
- Благодарил (а): 20 раз
- Поблагодарили: 220 раз
Delphi и для чего он нужен.
Не факт. Давайте сначала определяться с классом решаемых задач. Мы с коллегами пока говорим о старом курсе информатики. Сейчас, по слухам, из информатики программирование исключили вообще.
Изначально, еще со времен ЕС (более ранние я не застал), для каждого класса задач и придумывался язык. Просто Паскаль и С оказались наиболее универсальными. Но, к примеру, тот же известный AutoCAD, допускает скрипты как на общепринятом сейчас VisualBasic, так и на доставшемся в наследство VisualLISP. Причем (тут я не специалист), вполне допускаю, что для обработки векторной графики, по сути - массива точек и связей, LISP (ListProcessor) в умелых руках может быть и удобнее...
Последний раз редактировалось Никита 19 фев 2016, 22:18, всего редактировалось 1 раз.
Опыт - это когда на смену вопросам: "Что? Где? Когда? Как? Почему?" приходит единственный вопрос: "Нахрена? "
-
- осмотрелся
- Сообщения: 149
- Зарегистрирован: 12 фев 2016, 10:53
- Имя: Иван Иванович Чернов
- Страна: Россия
- город/регион: Томск
- Благодарил (а): 54 раза
- Поблагодарили: 1 раз
Delphi и для чего он нужен.
Задача не учить бесполезное а учить полезное...так сказать отделить зёрна от плевен.
-
- почётный участник форума
- Сообщения: 3927
- Зарегистрирован: 20 янв 2010, 22:23
- Имя: Никита
- Страна: РФ
- город/регион: Мурманск
- Благодарил (а): 20 раз
- Поблагодарили: 220 раз
Delphi и для чего он нужен.
Я про это и говорю. Если планируете заниматься ПЛК - МЭК Вам в руки. Если SCADA и скриптами - VisualBasic или (а лучше "и") С#. Если Web-дизайном - Java с питоном. Ну и т.д. Лев и воробей совсем по разному смотрят на свежую кучу говна:)учить полезное.
Опыт - это когда на смену вопросам: "Что? Где? Когда? Как? Почему?" приходит единственный вопрос: "Нахрена? "
-
- администратор
- Сообщения: 17576
- Зарегистрирован: 17 июн 2008, 16:01
- Имя: Евгений свет Брониславович
- Страна: Россия
- город/регион: Санкт-Петербург
- Благодарил (а): 824 раза
- Поблагодарили: 1652 раза
Delphi и для чего он нужен.
Осталась самая малость: уточнить - что именно. :)
По вопросам работы Форума можно обратиться по этим контактам.
-
- осмотрелся
- Сообщения: 149
- Зарегистрирован: 12 фев 2016, 10:53
- Имя: Иван Иванович Чернов
- Страна: Россия
- город/регион: Томск
- Благодарил (а): 54 раза
- Поблагодарили: 1 раз
Delphi и для чего он нужен.
Поговорил со старшекурсниками программа обучения очень сильно общая.Я даже не знаю какие знания я смогу получить в университете кроме самых общих представлений.chegevara писал(а): Осталась самая малость: уточнить - что именно. :)
-
- почётный участник форума
- Сообщения: 1041
- Зарегистрирован: 29 апр 2014, 09:57
- Имя: Рыбкин Владимир Геннадьевич
- Страна: Россия
- город/регион: Тверь
- Благодарил (а): 55 раз
- Поблагодарили: 134 раза
Delphi и для чего он нужен.
В качестве рекламы. Для чего полезен Дельфи. Наверное аналогичная программа есть у всех есть, но может кому пригодиться. Использую для определения номиналов резисторов. Написана на Дельфи хорошим знакомым 15 лет назад за обеденный перерыв.
https://yadi.sk/d/C3Jb-Rm0pAezH
-
- администратор
- Сообщения: 17576
- Зарегистрирован: 17 июн 2008, 16:01
- Имя: Евгений свет Брониславович
- Страна: Россия
- город/регион: Санкт-Петербург
- Благодарил (а): 824 раза
- Поблагодарили: 1652 раза
-
- почётный участник форума
- Сообщения: 3927
- Зарегистрирован: 20 янв 2010, 22:23
- Имя: Никита
- Страна: РФ
- город/регион: Мурманск
- Благодарил (а): 20 раз
- Поблагодарили: 220 раз
Delphi и для чего он нужен.
Тогда Вам повезло. В высшей школе не учат профессии, там дают образование.chegevara писал(а):Поговорил со старшекурсниками программа обучения очень сильно общая.Я даже не знаю какие знания я смогу получить в университете кроме самых общих представлений.
Для примера:
Опыт - это когда на смену вопросам: "Что? Где? Когда? Как? Почему?" приходит единственный вопрос: "Нахрена? "
-
- осмотрелся
- Сообщения: 158
- Зарегистрирован: 25 окт 2010, 10:30
- Имя: Капуста Степан Степанович
- Поблагодарили: 7 раз
Delphi и для чего он нужен.
Повезло... На Делфи я "полез" именно из-за того, что на Турбо-Паскале без особых проблем трудновато было решать большие системы методом Гаусса с максимальной точностью /был у меня небольшой период, когда математики было больше, чем всего остального/. А Дельфи /и виртуальная память Windows/ позволила работать с большими системами не делая голову беременной.
А вот когда надыбал метод прямого доступа до оборудования в Windows - вот тогда Турбо-Паскаль "ушел" на второе место.
Больше символов или меньше, ближе к оборудованию или нет - это все от лукавого. В цикле "разработка программы" набор текста программы - не самое емкое по времени /и самый действенный путь его сократить - клавиатурой пользоваться научиться/. Как команду будет исполнять процессор - тоже не суть важно, главное - правильное и предсказуемое поведение программы.
Всё. Бесполезных знаний не бывает.
Как не бывает самого нужного языка /хоть человечьего, хоть программирования/.