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-му. Если скаммерсанты не будут придумывать очередные риббоны, дотнеты и прочее, то люди перестанут покупать новые версии. Главный недостаток такого подхода - раздувание программного обеспечения.

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

Ответ на: комментарий от zfsed

а лиспотроллей все еще нет

Во многих реализациях lisp нет статических типов, и как следствие нет JIT/static компиляции. Поэтому они ничем не могут удивить на фоне испехов Java/C#.

Хотя вроде бы какая-то JIT компиляция есть у Racket lisp, но судя по тестам он не особо быстрый.

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

тьюринг-полный

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

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

>зачем писать нативный код, если он всё равно исполняется в VM? профита никакого (скорость та же), только что синтаксис знакомый...

Нативный код исполняется нативно. Просто вызывается из жабы.

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

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

>Во многих реализациях lisp нет статических типов, и как следствие нет JIT/static компиляции.

А SBCL же вроде компилируемый?

Yareg ★★★
()

Писать используя ООП Значительно удобнее, нежели на голой процедурщине.

Если мне не жалко памяти под небольшую софтину, я её накатаю на python/C#/etc но быстро, а если нужна компилируемость, малый размер и вообще работа на урезанном железе - то тут С или С++, в зависимости от задачи.

Вот и всё. /thread

Dark_SavanT ★★★★★
()

ТС: а ты возьми хоть сколь-нибудь полезную программу на C++ и перепиши её на C. и покажи, что из этого выйдет.

jeuta ★★★★
()

> Тот же M$ Office 2003 по функциональности почти равен 2010-му.

Он его превосходит, вообще-то.

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

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

«Actually I made up the term „object-oriented“, and I can tell you I did not have C++ in mind.»

Alan Kay

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

>love5an - судя по всему повзрослел и перестал писать чушь

ОЛОЛО, это его просто на ЛОРе забанили. Можешь почитать перлы в уютненьком.

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

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

O_o А кто мешает объявлять где угодно?

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

Лично K&R из воздуха возникают и наказывают превращением в плохой указатель грешника, объявившего не там переменную:)

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

>Это не андроид уже и без рута работать даже не должно.

Это вопрос терминологии :)

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

>вообще работа на урезанном железе - то тут С или С++

У меня тут 3-и сутки примерно на террафлопе (148 потоков) крутится задачка одна :)

Угадай на чём исходник ? :)

Это «урезанное железо» ??? :))


PS: Чувствую мне никогда не понять аффтаров хелоуворлдов :))


PPS: часть обвязки там к слову сказать на пайтоне :) используется как пускалка счётного ядра

sS ★★★★★
()

Кстати, раз уж мы тут, задам немножко толстый вопрос.
Если линукс издавна считался системой для программистов, почему до сих пор под ним нет IDE, по возможностям сравнимых с каким-нибудь Visual Studio? Неужели всем программистам поголовно всегда хватало фич текстовых редакторов вроде vim или emacs и нравилось возиться с их настройкой вместо того, чтобы написать полнофункциональную из коробки среду?

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

>это урезанная задача

Это вопрос терминологии :)

Всегда приходится чем то жертвовать :)

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

У меня тут 3-и сутки примерно на террафлопе (148 потоков) крутится задачка одна :)

Угадай на чём исходник ? :)

фортран? :)

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

Если линукс издавна считался системой для программистов, почему до сих пор под ним нет IDE, по возможностям сравнимых с каким-нибудь Visual Studio? Неужели всем программистам поголовно всегда хватало фич текстовых редакторов вроде vim или emacs и нравилось возиться с их настройкой вместо того, чтобы написать полнофункциональную из коробки среду?

не лопнешь? emacs у него менее функционален чем MSVS, lol ;)

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

Как редактор понятное дело он гораздо интереснее. Но все же он может предоставить далеко не все IDE-специфичные возможности, не?

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

Писать на C из-под среды, написанной на Java, несколько странно по-моему.

А вообще, троллить в мыслях не было, мне действительно непонятна сложившаяся ситуация.

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

> Писать на C из-под среды, написанной на Java, несколько странно по-моему.

А по-моему, ты сам несколько странный.

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

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

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

Как редактор понятное дело он гораздо интереснее. Но все же он может предоставить далеко не все IDE-специфичные возможности, не?

что Вы имеете в виду - связывание с источниками данных и прочее, или формоклепание на коленке?

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

>фортран? :)

не. фортран слишком плохо управляет памятью для такого рода задач.

snobol/icon? :) (у него с памятью получше)

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

> по возможностям сравнимых с каким-нибудь Visual Studio?

Сколько ты написал именно на С и именно в Visual Studio?

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

>snobol/icon?

К чему эта некрофилия ? :)

В настоящий момент хватает Ц/Ц++ для того чтобы использовать возможности современного железа (от видеокарт до быстрых сред передачи). Например http://www.openfoam.com/features/
Хотя на мой взгляд некоторые вещи там реализованы недостаточно гибко

Ц++ ведь хорош именно своей мультипарадигменностью

К слову сказать поддержка кода с более чем одним языком - занятие весьма хлопотное. Даже если это Ц и Ц++

ЗЫ: Просто айтишнеги иногда странно смотрят на некоторые вещи и неплохо-бы приглашать к ним окулиста с плёткой и наручниками :)

Шоб пристегнуть наручником к батарее и заставить решить нормальную прикладную задачу в адекватный срок и качественно :)

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

Не ну самом деле я с вами согласен, что проблемы с IDE есть и это не в пользу Linux

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

> что Вы имеете в виду

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

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

Неужели всем программистам поголовно всегда хватало фич текстовых редакторов вроде vim или emacs

да. тем они, собственно, и отличаются от дилетантов

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

Ааа. Я Вас неправильно понял, я про IDLE подумал:) А NumPy это торт ну или близко к нему:)

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

Ну потому как считается, и вобщем с набором опыта это так, что модульность в вопросе своих инструментов, лучше монолитности, которая не дает возможности полной подстройки под себя

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

>дебаггер с граф.интерфейсом.

я конечно дилетант, но Ъ-пацаны говорят, что дебаггеры не нужны.

навигация по коду

cscope/etags недостаточно?

рефакторинг

может за тебя ещё и программу написать?

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