|
С/С++, Почему до сих пор все сидят на древних языках вроде С и С++ |
|
|
|
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. Но пока человечество не придумало лучше двигатель.
|
|
|
|
|
 |
Ответов
|
Sep 6 2014, 15:30
|
Знающий
   
Группа: Свой
Сообщений: 618
Регистрация: 7-12-04
Из: Новосибирск
Пользователь №: 1 375

|
Цитата Но и в тех же случаях, когда "повторяемость" имеет место, организовать универсальный класс бывает слишком сложно. Скажем у МК есть 6 штук UART'ов (на разных портах), обмен с которыми организован одинаково. Казалось бы, такой обмен можно описать в виде класса, а затем на его основе создать объекты для каждого порта. Но не тут-то было! sm.gif Процедуры прерывания у каждого порта свои, и далеко не очевидно, как сделать так, чтобы объект для данного порта вписался в нужные адреса. И это на фоне того, что начинающие вообще не могут организовать процедуру прерывания, как функцию члена класса. Именно так и сделано у меня. Через классы и объекты. Есть просто кольцевые буферы с использованием CLREX/STREXW (cortex-m3, STM32) для синхронизации. Получается семантика acqure/release. Есть конечные автоматы для протоколов. Все сделано на шаблонах. Авто генерация векторов прерываний через контеканацию строк (конфигурация в три строки). Уверяю, что все само, и не тормозит. Этот код выложить не могу. Надо с заказчиком согласовывать, или переписать так чтобы код был отчуждаем. А про "template<typename tobj_t> auto test_2(tobj_t& tobj, size_t tn) -> decltype(tobj(0))" Это вы зря. В этой функции все равно что подается на вход, лишь бы callable. И ей не важно что будет на выходе, тип выводится автоматом. Сначала написал код для C++11, где все само. Потом переделывал под C++98 для кейла. Надеюсь это поможет кому-то принять верное решение (к C или C++). По проектированию: Буч хорошо, но мало. Если дизайн, то Эванс (OOD). Но и этого мало. Только попо-часы и желательно в команде.
|
|
|
|
Сообщений в этой теме
juvf С/С++ Jul 17 2014, 20:48 A. Fig Lee juvf,
ППКС..
Много поточность и многоядерность ну... Jul 17 2014, 20:52 kolobok0 Цитата(juvf @ Jul 18 2014, 00:27) С++ (он... Jul 17 2014, 20:52 Rst7 А кто вообще сказал, что в Java многопоточность в ... Jul 17 2014, 21:52 _Pasha Не, я не промолчу.
В связи с ростом популярности F... Jul 17 2014, 21:59 Kopa Цитата(_Pasha @ Jul 18 2014, 01:59) И мои... Jul 18 2014, 00:24 juvf Я бы прoшел мимо темы, если бы бодались пингвины с... Jul 18 2014, 01:02 AlexandrY Цитата(juvf @ Jul 17 2014, 23:48) какая к... Jul 18 2014, 05:34 juvf Цитата(AlexandrY @ Jul 18 2014, 11:34) ка... Jul 18 2014, 06:15  Cosmojam Цитата(juvf @ Jul 18 2014, 09:15) а есть ... Jul 18 2014, 06:34 Cвинец Скорость C# вполне приличная, не надо с Perl и Пит... Jul 18 2014, 05:47 andrewlekar Языки высокого уровня на контроллерах - вполне аде... Jul 18 2014, 07:38 Abell Ваймэ! Что случилось в этом мире, разве ассемб... Jul 18 2014, 08:08 juvf однако http://www.rlocman.ru/news/new.html?di=1468... Jul 18 2014, 08:17 Abell Цитата(juvf @ Jul 18 2014, 12:17) однако ... Jul 18 2014, 08:48 A. Fig Lee Ява на МК - глупость и не более.
Идея Явы - абстра... Jul 18 2014, 11:03 Kopa Цитата(A. Fig Lee @ Jul 18 2014, 15:03) Я... Jul 18 2014, 12:33  A. Fig Lee Цитата(Kopa @ Jul 18 2014, 08:33) Ага ска... Jul 18 2014, 13:28   DASM Цитата(A. Fig Lee @ Jul 18 2014, 17:28) 1... Jul 18 2014, 14:08    A. Fig Lee Цитата(DASM @ Jul 18 2014, 10:08) Какие и... Jul 18 2014, 14:14    juvf Цитата(DASM @ Jul 18 2014, 01:26) Да хоть... Jul 21 2014, 03:11     _Pasha Цитата(juvf @ Jul 21 2014, 06:11) по опис... Jul 21 2014, 05:38     AlexandrY Цитата(juvf @ Jul 21 2014, 06:11) Жава и ... Jul 21 2014, 07:33      juvf Цитата(AlexandrY @ Jul 21 2014, 13:33) А ... Jul 21 2014, 08:46      svss Цитата(AlexandrY @ Jul 21 2014, 13:33) А ... Aug 18 2014, 14:32 DASM ага-ага http://artemonische.narod.ru/nesbyvshiyesy... Jul 18 2014, 11:34 virtual9900 Tessel is a microcontroller that runs JavaScript
E... Jul 18 2014, 11:39 Enthusiast На мой взгляд, языком следующего поколения встраив... Jul 18 2014, 13:42 andrewlekar Сборщик мусора и риалтайм - понятия не совместимые... Jul 21 2014, 05:17 adnega Видимо, подразумевалась работа с кучей при вызове ... Jul 21 2014, 09:27 andrewlekar sprintf вовсе не обязательно использует кучу. Jul 21 2014, 09:31 adnega Есть простейшие реализации без динамического выдел... Jul 21 2014, 09:35 DASM А мне все равно неясна желательность С++ в приложе... Aug 18 2014, 17:59 AlexandrY Цитата(DASM @ Aug 18 2014, 20:59) Что-то ... Aug 18 2014, 21:10 adnega Цитата(DASM @ Aug 18 2014, 21:59) А гда в... Aug 19 2014, 04:22  AlexandrY Цитата(adnega @ Aug 19 2014, 07:22) Но на... Aug 19 2014, 07:46 svss Цитата(DASM @ Aug 18 2014, 23:59) А мне в... Aug 19 2014, 07:32 dxp Давно уже не вступаю в дискуссии по поводу языков ... Aug 20 2014, 07:04 juvf Цитата(DASM @ Aug 18 2014, 23:59) А мне в... Aug 30 2014, 06:28  AlexandrY Цитата(juvf @ Aug 30 2014, 09:28) А мне н... Aug 30 2014, 08:26  Kopa Цитата(juvf @ Aug 30 2014, 09:28) А мне н... Sep 1 2014, 14:08   dxp QUOTE (Kopa @ Sep 1 2014, 21:08) Всё прог... Sep 2 2014, 04:42    kolobok0 Цитата(dxp @ Sep 2 2014, 08:42) "Цел... Sep 2 2014, 22:33 AlexMad ЦитатаС/С++, Почему до сих пор все сидят на древни... Aug 18 2014, 20:05 DASM О чем и речь. Aug 18 2014, 20:07 DASM Ну так это Вы, я про всех и не утверждал, скорее п... Aug 18 2014, 21:43 ASN juvf
IMHO, ответ на вопрос "Почему до сих пор... Aug 30 2014, 19:46 juvf Цитата(ASN @ Aug 31 2014, 01:46) juvf
IMH... Sep 1 2014, 04:04  ASN juvf
Дык, в моём сообщение и не было утверждения, ... Sep 1 2014, 08:02   AlexandrY Цитата(ASN @ Sep 1 2014, 11:02) juvf
Дык,... Sep 1 2014, 10:46 Xenia Среди программистов тоже есть свои созидатели и по... Aug 30 2014, 21:21 ViKo Цитатав с++ есть плюшка bool - чего она стоит?
в с... Sep 1 2014, 08:27 Major Если кейл сделает полноценную поддержку C++11/14 б... Sep 2 2014, 05:18 AlexandrY Цитата(Major @ Sep 2 2014, 08:18) Однозна... Sep 3 2014, 06:05 thermit RE: С/С++ Sep 2 2014, 05:39 Major А как связаны линукс и С++?
Про скуку просто смешн... Sep 3 2014, 08:07 AlexandrY Цитата(Major @ Sep 3 2014, 11:07) А как с... Sep 3 2014, 08:26  juvf Цитата(AlexandrY @ Sep 3 2014, 14:26) Я щ... Sep 4 2014, 01:22   AlexandrY Цитата(juvf @ Sep 4 2014, 04:22) какой ла... Sep 4 2014, 12:14    dxp QUOTE (AlexandrY @ Sep 4 2014, 19:14) Нек... Sep 4 2014, 13:32     Xenia Цитата(dxp @ Sep 4 2014, 17:32) Да, разду... Sep 4 2014, 17:08      dxp QUOTE (Xenia @ Sep 5 2014, 00:08) Интерес... Sep 5 2014, 04:56       AlexandrY Цитата(dxp @ Sep 5 2014, 07:56) У него св... Sep 5 2014, 06:23        dxp QUOTE (AlexandrY @ Sep 5 2014, 13:23) Но ... Sep 5 2014, 07:09    juvf Цитата(AlexandrY @ Sep 4 2014, 18:14) А С... Sep 5 2014, 10:48 -fender- может не по теме, но навеяно хабром
выстрелить се... Sep 3 2014, 09:27 Xenia Русский язык еще древнее, чем C/C++. Почему, тем н... Sep 3 2014, 09:42 Lagman Цитата(Xenia @ Sep 3 2014, 13:42) Русский... Sep 3 2014, 13:37 Major По медиане - написано просто страшно, так делать н... Sep 3 2014, 09:59 AlexandrY Цитата(Major @ Sep 3 2014, 12:59) ..Это г... Sep 3 2014, 11:10 A. Fig Lee Цитата(Major @ Sep 3 2014, 05:59) По меди... Sep 3 2014, 20:45 Major Написал набросок, без строгих требований к интерфе... Sep 3 2014, 18:12 adnega Мне кажется, что С++ тесно связан с такими понятия... Sep 4 2014, 04:58 Xenia Начинающие в программировании зачастую проявляют н... Sep 4 2014, 10:45 dxp QUOTE (Xenia @ Sep 4 2014, 17:45) Именно ... Sep 4 2014, 12:09 ViKo Вообще-то, в названии темы говорится не о том, поч... Sep 4 2014, 11:01 ViKo Проникся, вдохновлен и нацелен на использование C+... Sep 5 2014, 06:42 AlexandrY Цитата(ViKo @ Sep 5 2014, 09:42) Проникся... Sep 5 2014, 07:24 kolobok0 Цитата(ViKo @ Sep 5 2014, 10:42) ...как н... Sep 6 2014, 00:37 Valentine Loginov А ведь можно писать под МК на плюсах и в процедурн... Sep 5 2014, 07:29 Major Кому интересно (стр. 4).
ЦитатаА то с STL мы тут у... Sep 5 2014, 19:57 dxp QUOTE (Major @ Sep 6 2014, 02:57) Вот ссы... Sep 6 2014, 07:17  Xenia Цитата(dxp @ Sep 6 2014, 11:17) Очень кра... Sep 6 2014, 10:10   dxp QUOTE (Xenia @ Sep 6 2014, 17:10) Этот ко... Sep 6 2014, 12:12    Xenia Цитата(dxp @ Sep 6 2014, 16:12) Дык это ... Sep 6 2014, 14:19 AHTOXA Цитата(Major @ Sep 3 2014, 15:59) Могу пе... Sep 6 2014, 19:03 AlexandrY Цитата(Major @ Sep 5 2014, 22:57) Кому ин... Sep 7 2014, 11:49 halfdoom Сугубо практический взгляд со стороны. Этим летом ... Sep 6 2014, 10:12 Xenia Цитата(halfdoom @ Sep 6 2014, 14:12) Сугу... Sep 6 2014, 11:48  A. Fig Lee Цитата(Xenia @ Sep 6 2014, 07:48) Я же из... Sep 6 2014, 12:31  juvf Цитата(Xenia @ Sep 6 2014, 17:48) Скажем ... Sep 8 2014, 05:22 Kopa Цитата(Major @ Sep 6 2014, 18:30) Надеюсь... Sep 6 2014, 17:00  Xenia Цитата(Kopa @ Sep 6 2014, 21:00) а мне ли... Sep 6 2014, 17:35   Kopa Цитата(Xenia @ Sep 6 2014, 20:35) Форт ис... Sep 6 2014, 18:08 Major ЦитатаА выигрыш, думаю, от того, что klen производ... Sep 7 2014, 03:07 AHTOXA Цитата(Major @ Sep 7 2014, 09:07) Основна... Sep 7 2014, 06:01 Major Ради одного nth_element переходить на С++ даже вре... Sep 7 2014, 13:04 AlexandrY Цитата(Major @ Sep 7 2014, 16:04) По моти... Sep 8 2014, 06:15 ViKo Что-то я не понял последних сообщений в дискуссии.... Sep 8 2014, 05:45
2 страниц
1 2 >
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|