|
С/С++, Почему до сих пор все сидят на древних языках вроде С и С++ |
|
|
|
Jul 17 2014, 20:48
|
Профессионал
Группа: Свой
Сообщений: 1 261
Регистрация: 14-05-09
Из: Челябинск
Пользователь №: 49 045
|
Очередной хлоливар С/С++ vs Java/C# возник в месте обсуждения РТОС для мк. Я его переместил сюда. Вброс Цитата(DASM @ Jul 17 2014, 22:10) Читаю все это и волосы дыбом. Тем более что и работаю с этим. Почему программист должен думать об освобождении памяти? Почему многопоточность не поддерживается средствами языка? Почему до сих пор все сидят на древних языках вроде С и С++ (он недалеко ушел от С, пусть и поддерживает ООП, но все равно с ним обрушить любую систему на ура можно. Есть ли нормальные реализации Явы или С шарп для контроллеров? Иначе это хождение по граблям будет вечным. 15 лет в теме и все одно и тоже. И памяти то уже достаточно для Явы например, и все равно. От слов «указатель» и «приведение типов» тошнит уже в век, когда объемы флеш и озу - ничто, а время на выпуск - все, это анахронизм какой то Цитата Читаю все это и волосы дыбом. я когда вижу код на Perl - волосы дыбом, это не значит что Perl гавно. Цитата Почему многопоточность не поддерживается средствами языка? а почему в языке должна быть многопоточность? Язык - это всего лишь язык. А всё остальное - это библиотеки, фрэймворки. Нужна многопоточность - подключай boost, Qt, *RTOS.... или сам суперлупом обеспечивай. Такто можно заявит: Почему сигналы-слоты не обеспечивает язык? Почему extFat не обеспечивает язык? Почему KDE не обеспечивает язык? Цитата Есть ли нормальные реализации Явы или С шарп для контроллеров? нету. не нормальных, не ненормальных. какая к чёрту жава на мк? Даже эти ваши линуксы пишут на си по сей день. не на жаве, и тем более не на с#. и жава.... для неё нужна жавамашина. какую жава машину вы запехнёте в мк с 1кБ ОЗУ? Всё это удел высокоуровнего программирования, окошки, форточки... даже для ПК драйвера пишут на Си/С++. Не разу не слышал чтобы кто-то написал низкоуровневый драйвер для ПК на жаве. А по поводу с# на мк- вообще смешно.... ибо c# не не язык программирования, а "язык программирования виндоус". Вы бы ещё спросили "А есть нормальные реализации языка 1С для мк?". )) см вики Цитата C# — объектно-ориентированный язык программирования. Разработан в компании Microsoft как язык разработки приложений для платформы Microsoft .NET Framework.... Это нужно в мк с 256 байтами ОЗУ (да хоть и с 64 кБ ОЗУ) запихать .NET? А также для неё поставить Windows8.... c мэтро Цитата С++ (он недалеко ушел от С, пусть и поддерживает ООП, но все равно с ним обрушить любую систему на ура можно. Дак на ура и жавой рушатся приложения только так. Цитата(DASM @ Jul 18 2014, 01:26) Посмотрите примеры программ на Java - там нет этого дебилизма. С++ позволит даже такое *(int *)0x40001234 = 0; На Яве вам никто не позволит пользоваться указателями, оных и нету, и никто не позволит приводить типы с уменьшением точности. С++ - это очень старый язык, он неплох для своих лет, но уже 2014 на дворе. Тот же ассемблер завуалированный. А как в яве запись в регистр микросхемы? например в общем адресном пространстве 0x40001234 - адрес регситра RxDATA, а 0x40001236 - адрес регистра TxDATA. Как на Jave происходит обращение к этим регистрам? Цитата С++ - это очень старый язык, он неплох для своих лет, но уже 2014 на дворе. старый не знаяит плохой. Русский ещё старее, а на дворе 2014... ДВС - ему больше 100 лет. а на дворе 2014. Но пока человечество не придумало лучше двигатель.
|
|
|
|
|
Jul 17 2014, 20:52
|
практикующий тех. волшебник
Группа: Участник
Сообщений: 1 190
Регистрация: 9-09-05
Пользователь №: 8 417
|
Цитата(juvf @ Jul 18 2014, 00:27) С++ (он недалеко ушел от С, пусть и поддерживает ООП, После таких перлов, говорить о чём то - смысл теряется. Человек не в теме, тупой набор слов... А по теме могу сказать следующее. Тут сравнительно недавно был в гостях в одном ведущем банке. Ваяют торговую площадку для своих пользователей (перекладывают на си плас плас. Или даже си - не вспомню сейчас ужо). Ушли с си бимоля, он и ява какава не рассматривают в принципе. Наелись говорят. Медленно. Они даже объекты синхронизации убрали - тормоза... как говорится без коментариев... Всё от задачи треба...
|
|
|
|
|
Jul 18 2014, 00:24
|
Знающий
Группа: Участник
Сообщений: 598
Регистрация: 22-08-05
Пользователь №: 7 861
|
Цитата(_Pasha @ Jul 18 2014, 01:59) И мои впечатления можно в двух словах: "посидеть попрограммировать, отдохнуть от Си" Forth (Форт)? (есть для любого МК) и GA144 (асинхронный (вкл/выкл 700МГц), 144 мультиядерный MISC контроллер с возможностью решать DSP задачи) Вот где С,С++,Java,... (и.т.д. и.т.п.) отдыхают, как и всякие РТОС P.S. Языковый подход в программирование основанный на составлении смысловых фраз! (без дополнительных телодвижений по связыванию формальных и фактических параметров процедур/функций и локальным временем "хизни" "переменных", получил из "потока" данные -> обработал -> выдал обратно в поток на обработку следующей "процедуре" и даже можно локально перехватить управление процессом трансляции/интерпритации/компиляции исходных слов самой программы подстроив синтаксис и семантику языка под текущее понимание задачи). Вот где язык с "истинным" программерским адренолином Аспекты эргономики языка программирования ещё не обсуждали?
Сообщение отредактировал Kopa - Jul 18 2014, 01:15
|
|
|
|
|
Jul 18 2014, 05:34
|
Ally
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050
|
Цитата(juvf @ Jul 17 2014, 23:48) какая к чёрту жава на мк? Не разу не слышал чтобы кто-то написал низкоуровневый драйвер для ПК на жаве. Ух ты как идеологично. Еще лет 10 назад когда Nokia была на пике, у нас вырос стартап сделавший бизнес именно на Java под MK. Это были ARM7 в составе Nokia12. Приезжали ходоки из дальних деревень (нефтеперегонных терминалов, и наших и из Сургута ) и нахваливали как это мы здорово влепили Яву в свои контроллеры. Теперь уже не то, да и Nokia сдулась. Нынче яву для МК толкает сам Oracle. Правда выросло новое поколение которое думает, что кроме Arduino на свете ничего нет. А тот ардуиновский псевдо-си и есть самый настоящий C-и. Народ таки оторвали от железа. Редкие энтузиасты теперь докапываются до реальных аппаратных регистров. Даже производители МК стали меньше заморачиваться с описанием железа. Библиотеку в зубы и вперед без лишних вопросов. Да что там, сам грешу. Ставлю всякие LUA, .NET micro frаmework, портирую исполнительные среды для визуальных редакторов типа Simulink, LabView. Тоже хочется оторваться от железа.
|
|
|
|
|
Jul 18 2014, 05:47
|
Участник
Группа: Участник
Сообщений: 25
Регистрация: 31-05-14
Пользователь №: 81 830
|
Скорость C# вполне приличная, не надо с Perl и Питон всякими сравнивать. Например из задач: обработка журнала прокси-сервера (2ГБ текста, по несколько миллионов строчек). В памяти сохраняется каждая пара username + site. Т.е. на каждую считанную строчку (миллионы) идёт поиск в базе из ОЗУ (тысячи). Всё это отрабатывает за 2-5 минут и с потреблением около 20 мегабайт. Разве много? Лично я бы не отказался от возможности программить на STM32f20x и выше на c# или perl Я думаю, такое хорошо бы стрельнуло среди слоев населения, не имеющих программистской базы. А ля ардуинщики, Распберристы и т.д.
|
|
|
|
|
Jul 18 2014, 06:15
|
Профессионал
Группа: Свой
Сообщений: 1 261
Регистрация: 14-05-09
Из: Челябинск
Пользователь №: 49 045
|
Цитата(AlexandrY @ Jul 18 2014, 11:34) как это мы здорово влепили Яву в свои контроллеры. а есть компиляторы явы для мк? пруф? Цитата именно на Java под MK. Это были ARM7 в составе Nokia12. а вы не путаете? это была именно Java под МК, или это была Java под МК+ОС+JVM? Цитата Редкие энтузиасты теперь докапываются до реальных аппаратных регистров. наверно я с марса. всё моё окружение, и реальное, и инет, колеги, экс колеги, однокурсники, сколько я проходил всяких собеседований и делал работы на заказ.... всё что делается с мк - ВСЁ и ВСЕ делают через обращение к реальным регистрам. ан нет.... нашел один пруф Но скорее всего это энтузиазм, чем серьёзный компилятор. ps диме, автору, респект!
|
|
|
|
|
Jul 18 2014, 08:08
|
профессиональный дилетант
Группа: Участник
Сообщений: 866
Регистрация: 16-03-06
Из: Шебекино - Лысьва - Тюмень
Пользователь №: 15 292
|
Ваймэ! Что случилось в этом мире, разве ассемблер для микроконтроллеров запретили уже?? Нет, ну правда, по серъезному - глупо же микроконтроллер заставлять считать double float например? Его задача за датчиками следить (каламбур получился ) и команды на выход давать. Должность прапорщика, если не сержанта вообще. Мозгов много не надо, и язык соответствующий, зато однозначный и конкретный Или "высоких программеров" к железу потянуло, а язык трудноват оказался?
--------------------
Скоро дело сказывается, да не скоро сказка делается, или тише будешь - дальше уедешь...
|
|
|
|
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0
|
|
|