LINUX.ORG.RU
ФорумTalks

[c] [c++] [c#] Тенденция, однако


0

1

Почему все сейчас отказались от чистого Си? Почему все ломанулись в это объектно-ориентированное программирование? Даже простейшие программы пишут с использованием ООП. Почему не существует IDE для Си уровня проприетарной Visual Studio? Получается замкнутый круг. С одной стороны, на Си не пишут, потому что для него нет крутых «интырпрайзных» IDE. С другой стороны, разработчики тех самых IDE не спешат поддерживать Си. Пустую форму с кнопкой, при нажатии на которую выскакивает «Hello, world!», быстрее наклепать на C++. Но это ведь преимущества IDE, а не языка, да?

Ассемблер неплох, но не переносим. Си уровнем чуть повыше, на этом уровне уже достигается переносимость. Зачем подниматься выше? Зачем тащить за собой ООП, как гроб? Я признаЮ, что есть вещи, где ООП позарез нужно, но ведь нужно оно не всегда.

Торвальдс в свое время хорошо послал одного полоумного русского фанатика, онанирующего на ООП. И мнению Торвальдса я доверяю больше, чем эффективным менеджерам и маркетологам, сующим всюду плюсы и шарпы.

В чем секрет популярности коммерческих продуктов? Когда продукт перестает быть конкурентноспособным, менеджеры придумывают фичу - как правило, очередной уровень абстракции, скрывающий реализацию чего-либо, или «прогрессивный» интерфейс типа M$ Ribbon - и агрессивно продвигают эту фичу как современный стандарт. Посмотрите на БД Oracle: объемные SQL-запросы, раздутые на два экрана. Сейчас интенсивное развитие многих продуктов завершилось. Тот же M$ Office 2003 по функциональности почти равен 2010-му. Если скаммерсанты не будут придумывать очередные риббоны, дотнеты и прочее, то люди перестанут покупать новые версии. Главный недостаток такого подхода - раздувание программного обеспечения.

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

linux написан на Си, что тебе ещё надо?

luke ★★★★ ()

Вероятно не все достигают оргазма от char* и прочих замечательных вещей языка C :}

Deleted ()
Ответ на: комментарий от Deleted

А Линус устарел и не нужен. Так то.

Deleted ()
Ответ на: комментарий от Deleted

> Вероятно не все достигают оргазма от char* и прочих замечательных вещей языка C :}

С другой стороны, чем проще технология, тем быстрее ее можно освоить. C осваивается в разы быстрее, чем C++ с тоннами конструкций.

ns_ramesses ()
Ответ на: комментарий от ns_ramesses

Быстро освоить и потом лабать поделки? Это не нужно, не блох ловим.

Deleted ()
Ответ на: комментарий от Deleted

> Линус устарел

Линус не гонится за ИТ-модой, поскольку ИТ-мода создана для поддержания потреблядства. Перечитайте мой пост еще раз.

ns_ramesses ()
Ответ на: комментарий от ns_ramesses

Так на роль зла СПО во всех полях вроде как Python прочат

pylin ★★★★★ ()
Ответ на: комментарий от ns_ramesses

тебе от этого плохо? Если люди так делают, значит это удобно. Им удобно.

/*Сам не люблю Си++*/

luke ★★★★ ()
Ответ на: комментарий от Deleted

> Быстро освоить и потом лабать поделки?

Чем это лично вам грозит? Вас заставляют использовать эти поделки?

ns_ramesses ()
Ответ на: комментарий от ns_ramesses

>ИТ-мода

Она существует только в старых головах. И трава тогда была «зенелее», да.

Deleted ()
Ответ на: комментарий от ns_ramesses

А не заставляют? Вон тот же гстример в гнома сунутый, а навязывают его уже везде. Можно от всего отказаться и компьютер тоже выключить, ага.

Deleted ()
Ответ на: комментарий от ns_ramesses

Его суют сами разработчики, которые непосредственно создают СПО. Потому что СПО дает свободу разработчику, и он использует то, что хочет, потому что _он_ так решил. Потому что ему так _захотелось_.

У каждого есть выбор. Не нравятся продукты на C++ - не используй их. Ты ничего и никому запретить не сможешь.

Chaser_Andrey ★★★★★ ()
Ответ на: комментарий от luke

> Если люди так делают, значит это удобно. Им удобно.

Им удобно, потому что для Си нет нормальных IDE.

ns_ramesses ()

Хотя было бы неплохо выбросить из C++ все C костыли.

Deleted ()

А чем плох C++?

И только не надо говорить, что C++ непременно подразумевает ООП.

Chaser_Andrey ★★★★★ ()
Ответ на: комментарий от Deleted

> Она существует только в старых головах. И трава тогда была «зенелее», да.

Жить в мире, где программа, складывающая два числа, пишется на C++, а программы посерьезнее пишутся под .NET/mono, я не хочу. И не надо говорить «вдоль».

ns_ramesses ()
Ответ на: комментарий от ns_ramesses

И конечно же будут пруфы?) Линус не катит, он и сам его использует ) А так да значит разрабам удобен С++ потому его активно и используют

pylin ★★★★★ ()
Ответ на: комментарий от ns_ramesses

> Мне интересно, почему C++ суют везде в мире СПО, например.

потому-что С++ «больше» С, просто не надо слушать «экспертов», которые начитались книжек, и на любой «KISS» код на С++ начинают плеваться, что мол это не С++, что тут без буста и сотни классов не обойтись

aho ()
Ответ на: комментарий от ns_ramesses

Пока он не будет полностью свободен от DE-зависимого кода он будет поделкой.

Deleted ()

И вдогонку...

Почему объектно-ориентированное программирование вызывает у тебя такой butthurt?

Chaser_Andrey ★★★★★ ()
Ответ на: комментарий от ns_ramesses

Проблема не в самом ООП, проблема в том, что сейчас надо менять внутреннею реализацию некоторых механизмов ООП

pylin ★★★★★ ()
Ответ на: комментарий от ns_ramesses

Два числа уже давно складывают на скриптовых языках, кстати.

Deleted ()
Ответ на: комментарий от Chaser_Andrey

> Потому что СПО дает свободу разработчику, и он использует то, что хочет, потому что _он_ так решил. Потому что ему так _захотелось_.

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

ns_ramesses ()
Ответ на: комментарий от ns_ramesses

O'RLY?

Мне интересно, почему C++ суют везде в мире СПО, например.

Количество проектов на Jav'е на Freshmeat'е больше чем на C++.

Camel ★★★★★ ()
Ответ на: комментарий от ns_ramesses

Им удобно, потому что для Си нет нормальных IDE.

Я не использую С хотя бы потому что мне о-о-чень неудобно объявлять все переменные в начале тела .. даже из-за такой казалось бы мелочи я выберу плюсы

Loki13 ★★★★★ ()
Ответ на: комментарий от ns_ramesses

4.2

Под Python IDE нормальных то же нет и все же его популярность растет

pylin ★★★★★ ()
Ответ на: комментарий от Loki13

> Я не использую С хотя бы потому что мне о-о-чень неудобно объявлять все переменные в начале тела

это уже давно не так

aho ()
Ответ на: комментарий от ns_ramesses

>Вот я и пытаюсь выяснить, почему сейчас модно писать с использованием абстракций

Можно выстраивать более логичную иерархию программы, полиморфизм дает возможность использовать объекты сразу ко многим типам данных с минимальными изменениями, очевидно же )

pylin ★★★★★ ()

>Зачем подниматься выше? Зачем тащить за собой ООП?

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

Программировать на С++ легче, чем на чистом Си, при этом, чем больше проект, тем большие преимущества в его поддержке дает ООП(man инкапсуляция). Опять же при этом скорость работы программы практически та же, некоторые места/модули можно писать хоть на Си, хоть на асме.

Пустую форму с кнопкой, при нажатии на которую выскакивает «Hello, world!», быстрее наклепать на C++.


man Gtk

CrossFire ★★★★★ ()
Ответ на: комментарий от aho

потому-что С++ «больше» С

Я так и думал :-)

тут без буста и сотни классов не обойтись

Напомнило вот что.

ns_ramesses ()
Ответ на: комментарий от Deleted

> Пока он не будет полностью свободен от DE-зависимого кода он будет поделкой.

Но это же не подтверждает ваш тезис о том, что язык программирования не должен быть простым и понятным. Так?

ns_ramesses ()

Понаизучат тут всякие плюсы, а потом пихают их, не думая, куда попало. Хотя 99% софта можно написать на чистом С, безо всякого геморроя.

Eddy_Em ☆☆☆☆☆ ()
Ответ на: И вдогонку... от Chaser_Andrey

Re: И вдогонку...

> Почему объектно-ориентированное программирование вызывает у тебя такой butthurt?

Потому что бритву Оккама применяю. Объекты, классы - лишние сущности.

ns_ramesses ()
Ответ на: комментарий от pylin

> проблема в том, что сейчас надо менять внутреннею реализацию некоторых механизмов ООП

Можно подробнее?

ns_ramesses ()
Ответ на: комментарий от ns_ramesses

> Объектной ориентированностью.

которой в С нет, и которую в С «эмулируют» вложенными структурами и всякими glib, на которую сейчас завязано до%%%я и больше софта в СПО

Сложностью, перегруженностью конструкциями, структурами данных.


никто не заставляет их использовать, как и тот же glib - который еще более монструозен и таки не страдает скоростью работы

3. [url=http://shootout.alioth.debian.org/u32q/benchmark.php?test=all&lang=all]Ск... работы[/url].


http://shootout.alioth.debian.org/u32/which-programming-languages-are-fastest...

aho ()
Ответ на: комментарий от ns_ramesses

>ваш тезис о том, что язык программирования не должен быть простым и понятным

А давайте не будем перевирать. Я говорю о том, что простоты языка недостаточно, что б им пользоваться. Вот char*. Указатели, всё же просто. А такая, простите, задница. Мазохизм это всё, писать на таких языках, когда есть более другие™.

Deleted ()
Ответ на: комментарий от Loki13

>Я не использую С хотя бы потому что мне о-о-чень неудобно объявлять все переменные в начале тела .. даже из-за такой казалось бы мелочи я выберу плюсы

C99

AptGet ★★★ ()
Ответ на: комментарий от Deleted

В «ыштырпрайзе» скриптовые языки не в моде, так как скрипты открыты, код не спрячешь. Есть обфускаторы, но и они не спасают.

ns_ramesses ()
Ответ на: O'RLY? от Camel

Re: O'RLY?

На Java программируют совсем оторванные от жизни и от железа люди, я Яву даже не рассматриваю. Вопрос был именно про C++ и ООП.

ns_ramesses ()
Ответ на: комментарий от ns_ramesses

Да ладно. Они просто код никому не показывают.

Да и что это за вообще такой xxxпрайз, что 2 числа складывает? Там наверняка будет такой индусокод, что даже видя его не захочется пользоваться.

Deleted ()
Ответ на: комментарий от ns_ramesses

> Я так и думал :-)

если бы на С( точнее даже на его убогой системе макросов ) не городили костыли для создания подобия функциональности С++ - то да, это был бы не аргумент

aho ()

Если не заметили, это во всем сейчас так. В телефонах - в дизайре уже проц 1 ГГц - ё-мае! да у меня в ноуте меньше! И вот увидите, выйдет ведроид 3.0 и 1 ГГц ему будет мало!

В автомобилях то же самое. Нас заставляют покупать новые, вместо починки старых. Все идет к тому, чтобы чинить было невыгодно.

hibou ★★★★★ ()

Почему все сейчас отказались от чистого Си?

4.2

Почему все ломанулись в это объектно-ориентированное программирование? Даже простейшие программы пишут с использованием ООП.

потому что удобно

Почему не существует IDE для Си уровня проприетарной Visual Studio?

1) 4.2 Vim rules :)
2) VS только в последних версиях стал немного вменяемый, да и то не до конца

С одной стороны, на Си не пишут, потому что для него нет крутых «интырпрайзных» IDE.

4.2 не пишут проекты целиком потому что приходится на каждый чих писать велосипед

Полоумный Линус Торвальдс, онанирующий на чистый Си, в свое время послал одного полоумного русского фанатика, онанирующего на ООП.

//xifed

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

слышь, «Михалыч», ты б лучше умного чего написал, а то таких бздунов (не путать с BSD) полный лес, и все онанируют, но лучше бы делом занялись

shty ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.