Модераторы: LSD

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Почему все любят С++? 
:(
    Опции темы
TP@MB@Y
Дата 13.7.2005, 22:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 370
Регистрация: 18.12.2004
Где: Москва

Репутация: 1
Всего: 4



Void

Ну я все понимаю, просто раздражает то, что некоторые работадатели ставят задачу + ставят жесткое условие касательно языка программирования smile
PM   Вверх
CosmoMan
Дата 13.7.2005, 22:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 110
Регистрация: 12.7.2005
Где: Харьков

Репутация: нет
Всего: 0



Насчет читабельности кода С. Можети сходу сказать, что делает эта программа? У меня она какимто загадочным образом выводила куплеты
с текстом.

#include <stdio.h>
main (int t, int _,char *a){return!0<t?t<3?main(-79,-13,a+main(-87,1-_,
main(-86,0,a+1)+a)): 1,t<_ ? main(t+1,_,a):3,main(-94,-27+t,a)&&t==2\
?_<13?main(2,_+1,"%s %d %d\n"):9:16:t<0?t<-72?
main(_,t,"@n'+,#'/*s{}w+/w#cdnr/+,{}r/*de}+,/*{*+,/w{%+,/w#q#n+,/#{l+,/n\
{n+,/+#n+,/# ;#q#n+,/+k#;*+,/'r :'d*'3,}{w+K w'K:'+}e#';dq#'l q#'+d'K#!\
/+k#;q#'r}eKK#}w'r}eKK{nl]'/#;#q#n'){)#}w'){){nl]'/+#n';d}rw' i;# ){nl]!\
/n{n#'; r{#w'r nc{nl]'/#{l,+'K {rw' iK{;[{nl]'/w#q#n'wk nw' iwk{KK{nl]!/\
w{%'l##w#' i; :{nl]'/*{q#'ld;r'}{nlwb!/*de}'c ;;{nl'-{}rw]'/+,}##'*}\
#nc,',#nw]'/+kd'+e}+;#'rdq#w! nr'/ ') }+}{rl#'{n' ')# }'+}##(!!/")
:t<-50?_==*a?putchar(31[a]):
main(-65,_,a+1):
main((*a=='/')+t,_,a+1):
0<t?main(2,2,"%s")
:*a=='/'||main(0,main(-61,*a,
"!ek;dc i@bK'(q)-[w]*%n+r3#l,{}:\nuwloca-0;m .vpbks,fxntdCeghiry"
),a+1);
}
smile
PM MAIL   Вверх
batigoal
Дата 13.7.2005, 22:41 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Нелетучий Мыш
****


Профиль
Группа: Участник Клуба
Сообщений: 6423
Регистрация: 28.12.2004
Где: Санктъ-Петербургъ

Репутация: 4
Всего: 151



Вообще-то нечто подобное можно на любом языке написать smile


--------------------
"Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли)
ЖоржЖЖ
PM WWW   Вверх
Петрович
Дата 13.7.2005, 23:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1000
Регистрация: 2.12.2003
Где: Москва

Репутация: 2
Всего: 55



Мне ближе мнение CosmoMan.
Кроме того, хочу добавить от себя.
Сам достаточно давно программировал и на pascal'е и на C.
Но, всегда в C были проблемы с читабельностью. Например. мне подслеповатому всегда было легко перепутать { и [ на некоторых мониторах (давно это было). Семантическая нагрузка на отдельные символы в C СУЩЕСТВЕННО выше, и в случае элементарных описок, легко получить синтаксически правильную, но неправильную семантически конструкцию. И вылавливать такие ошибкипотом не так легко. Более того, если на C не программировал месяца два, три, то потом, неделю как минимум глаза и мозги настраиваешь.
А уж то что на C можно так код написать, что даже твой напарник без поллитра не разберется!
Так, постепенно, мои интересы перемещались в область Pascal.
С тех пор много воды утекло. Теперь я пишу практически только на Delphi. Хотя, как мне кажется, у меня не вызывает трудностей чтение не слишком замороченных кодов даже на C++. Холтя конечно напрягает smile.
В принципе, все что я сказал о C, еще в большей степени относится и к C++.

Что же касается возможностей этих языков, то тут я даже спорить не хочу. Скажу лишь что Windows рождалась на Pascal'е.
А из своего опыта, могу сказать, что еще в бытность ПЯ, лично принимал непосредственное участие в разработке сетевой операционной системы для встроенных систем, управляющих целым комплексом боевого оборудования. Так вот в этом комплексе, только BIOS компов был написан на ассемблере. Остальное, начиная от ядра ОС и до прикладнгого ПО писалось на pascal'e, правда несколько расширенном (OMSI Pascal).



Добавлено @ 23:29
Впротчем, я бы не отказался кое что позаимствовать из C++ в Delphi smile


--------------------
Все знать невозможно, но хочется
PM ICQ   Вверх
CosmoMan
Дата 14.7.2005, 10:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 110
Регистрация: 12.7.2005
Где: Харьков

Репутация: нет
Всего: 0



Цитата
Впротчем, я бы не отказался кое что позаимствовать из C++ в Delphi

Полностью согласен, множественное наследлвание например.

По моему С++ надо много взять из Делфи, чтобы стать более удобным.
PM MAIL   Вверх
Петрович
Дата 14.7.2005, 11:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1000
Регистрация: 2.12.2003
Где: Москва

Репутация: 2
Всего: 55



Цитата(CosmoMan @ 14.7.2005, 11:55)
множественное наследлвание например.

А мне кажется что использование интерфейсов даже удобнее. smile
Мне лично прежде всего не хватает того, что бы выражение присваивания имело значение. Просто надоело писать подобное:
Код

  a := x*4-y;
  b := a;
  c := a;
Причем, если a,b, и c свойства объекта, то порой еще и доп.переменную приходится объявлять (дабы избежать побочных эффектов).
Ну еще хотелось-бы что бы в блоке begin end можно было бы объявлять локальные переменные.

Это в основном...


--------------------
Все знать невозможно, но хочется
PM ICQ   Вверх
chaos
Дата 14.7.2005, 12:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Серийный программист
****


Профиль
Группа: Завсегдатай
Сообщений: 2979
Регистрация: 7.7.2004
Где: Екатеринбург

Репутация: нет
Всего: 44



не много не в тему)) ну все же
меня допустим воротит от редактора текстов от Borland(Delphi, CBuilder v5,6) по сравнению VC++6.0
может быть я не умею ими пользоваться, не нашел табулирования выделенного блока текста, перевод из верхнего регистра и обратно все с тем же выделенным блоком текста, различные переходы к бегинам ендам, закладки не по русски как-то ставятся(через контектное меню)

PM WWW   Вверх
Alex
Дата 14.7.2005, 12:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4147
Регистрация: 25.3.2002
Где: Москва

Репутация: нет
Всего: 162





--------------------
Написать можно все - главное четко представлять, что ты хочешь получить в конце. 
PM Skype   Вверх
CosmoMan
Дата 14.7.2005, 14:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 110
Регистрация: 12.7.2005
Где: Харьков

Репутация: нет
Всего: 0



Вы не знаете, чем друг от друга отличаются компиляторы в
Borland C++ Builder 6, Microsoft Visual C++ и GCC.

Там библиотеки чемто оличаются?
PM MAIL   Вверх
Void
Дата 15.7.2005, 21:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


λcat.lolcat
****


Профиль
Группа: Участник Клуба
Сообщений: 2206
Регистрация: 16.11.2004
Где: Zürich

Репутация: 11
Всего: 173



Цитата(Lamer @ 13.7.2005, 19:02)
Цитата (CosmoMan @ 13.7.2005, 17:15)
Самый логичный язык - это С++. С точки зрения логики алгоритма это самый лутший язык в своем роде.

А вот с этим я не согласен (в пользу Java).

Что-то я совсем рассеянный стал - второй пост уже в этой теме мимо глаз пропустил... smile

А конкретные причины можно? Я вот кроме наличия GC, избавляющего от написания деструкторов, delete, etc ничего не вижу.
Мне кажется, что функциональный язык вроде OCaml или Haskell по краткости и логике записи алгоритмов порвет на тряпки и плюсы и яву. А OCaml скорее всего еще попутно порвет Java по скорости.


--------------------
“Coming back to where you started is not the same as never leaving.” — Terry Pratchett
PM MAIL WWW GTalk   Вверх
Domestic Cat
Дата 15.7.2005, 21:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5452
Регистрация: 3.5.2004
Где: Dallas, US

Репутация: 4
Всего: 172



Цитата(Void @ 15.7.2005, 12:11)
OCaml или Haskell


А по скорости разработки ПО, поддержке и читаемости кода?


--------------------

PM   Вверх
Void
Дата 16.7.2005, 09:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


λcat.lolcat
****


Профиль
Группа: Участник Клуба
Сообщений: 2206
Регистрация: 16.11.2004
Где: Zürich

Репутация: 11
Всего: 173



Цитата(Domestic @ 15.7.2005, 23:24)
А по скорости разработки ПО, поддержке и читаемости кода?

Напомню, речь шла исключительно об алгоритмике. Конечно, писать на них бизнес-приложения было бы довольно странно, но, думаю, в определенных областях они могут конкурировать с Java по всем трем параметрам (научное, математическое ПО, например).

На Винграде нужен апологет функциональных языков smile У C++ такие есть, у Java есть, с .NET как-то не очень... А вот у всего остального - нет! (Или они просто помалкивают? smile ) От человека, активно пропагандирующего какую-то концепцию, язык, технологию, есть реальная польза в расширении кругозора, при условии что он не просто фанатствует, а приводит реальные доводы, ссылки, статьи - даже если в целом его выводы по поводу XXX не совсем адекватны.


--------------------
“Coming back to where you started is not the same as never leaving.” — Terry Pratchett
PM MAIL WWW GTalk   Вверх
batigoal
Дата 16.7.2005, 09:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Нелетучий Мыш
****


Профиль
Группа: Участник Клуба
Сообщений: 6423
Регистрация: 28.12.2004
Где: Санктъ-Петербургъ

Репутация: 4
Всего: 151



Цитата(Void @ 16.7.2005, 10:33)
На Винграде нужен апологет функциональных языков

Возьмешься? smile


--------------------
"Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли)
ЖоржЖЖ
PM WWW   Вверх
Void
Дата 16.7.2005, 10:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


λcat.lolcat
****


Профиль
Группа: Участник Клуба
Сообщений: 2206
Регистрация: 16.11.2004
Где: Zürich

Репутация: 11
Всего: 173



Lamer George
Не знаю smile Вот сейчас с OCaml потихоньку разбираюсь. Пока нравится. Что из этого выйдет - посмотрим.


--------------------
“Coming back to where you started is not the same as never leaving.” — Terry Pratchett
PM MAIL WWW GTalk   Вверх
Се ля ви
Дата 16.7.2005, 14:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Java/SOAрхитектор
****


Профиль
Группа: Модератор
Сообщений: 2016
Регистрация: 5.6.2004
Где: place without tim e and space

Репутация: 8
Всего: 127



Цитата(Void @ 15.7.2005, 21:11)
функциональный язык вроде OCaml или Haskell по краткости и логике записи алгоритмов порвет на тряпки и плюсы и яву. А OCaml скорее всего еще попутно порвет Java по скорости.

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

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

Просто посчитай стоимость компьютерного железа и почасовую оплату опытного программиста - и поймёшь, что гораздо выгоднее купить больше памяти и лучше процессор, чем мучиться с самостоятельным написанием кучи библиотек, необходимых для написания Информационных Систем. Именно по-этому рулят платформы, а не языки. И именно по-этому существуют только 2 настоящих конкурента на корпоративном рынке - .NET, в библиотеки которой вливает тонны денег Microsoft, и J2EE, поддерживаемая не только SUN, но и созданным ей большим сообществом из сотен других крупных компаний, а сейчас ещё и OpenSource`никами.

Это тяжёлая ломка, когда понимаешь, что на самом деле оптимальный, вылизанный код нужен только тебе одному и больше никому, но через это рано или поздно пройти придётся.

Дело, канешь, твоё - можешь тратить время в пустую, но подумай вот о чём - человек, с точки зрения животных - слаб, медлителен и неэффективен - а между тем доминирует на Земле, да как доминирует! Иные гораздо более эффективные, чем он, по животным меркам, - в красной книге или уже вообще истреблены только потому, что многим его представителям нравится шкура с их трупов.
Так же и с языками - эпоха языков прошла, теперь время платформ. Уже не важно, какой ты хороший язык - важно, что бы он позволял использовать всю мощь платформы, был массовым и простым. Дольше, независимее свех держался Delphi, но, как платформа, не выстоял и он - прибился к .NET`у. Python поступил хитрее, его разработчики написали компиляторы для обеих популярных платформ.
Сейчас ситуация напоминает холодную войну, гонку вооружений (библиотек) и прочее между двумя самыми популярными платформами - J2EE и .NET, всё остальное - практически не востребовано, приложения на других языках напоминают экзотических зверушек в зоопарке, заповеднике или на воле, куда ещё не добрался человек и они доживают свой век на всё время немилосердно сокращающейся территории...

Особнячком стоит гигант С++, бывший некогда практически безраздельный правитель, последний оплот оптимального кода без GC, прочно занимая нишу приложений, где высокая производительность и надёжность критична. Последний, совершеннейший в своём роде динозавр... Да, он был крут, силён и могуч, и он уходит вместе со своей эпохой. Да, он рулил безраздельно на корпоративной арене, но время неминуемо утекает - на нём уже пишутся фундаментальные, универсальные вещи, которые так и норовят закрыться, ошетиневшись внешними интерфейсами, что бы лечь в основу платформ-гигантов, превращая своих программистов в подобие сантехников, приходящих только если поломалось что-то из того, что они написали...

Постепенно, хотя и очень медленно, он выдавится и из этих областей платформами-гигантами. Пока виртуальные машины представляют собой нашлёпки над операционными системами - он ещё может давать какой-то выигрыш производительности и надёжности за счёт отсутствия GC, но когда они устоятся, станут по-надёжнее и их реализуют на уровне операционных систем - его позиции сильно пошатнутся даже там, где он царствовал безраздельно с незапамятных времён, в самом сердце крушащейся империи... Когда же виртуальные машины будут частично или полностью реализованы аппаратно, С++ сдаст последние оплоты и окончательно уйдёт в историю, останется лишь партизанить там, где нет больших денег и гиганты просто побрезгуют туда из-за этого лезть с ним биться - в болотах программирования...

.NET уже взяла курс на перетягивание бывших С++`ников к себе и, похоже, немного обгоняет в этом Java - именно по-этому в C# хуже чем в Java реализован механизм отлова исключений - лозунг здесь "можем немного пожертвовать удобством языка, только бы по-больше разработчиков переманить" - опять же, заметь, они жертвуют языком, а вместе с тем и платформой, т.е. где-то и возможностями исключительно ради переманивания разработчиков - т.е. вопрос стоит прямо противоположно тому, как его ставишь ты - теперь не язык должен быть хорошим, а языком можно пожертвовать где-то, что бы людям было удобнее переходить, меньше приходилось переучиваться - вот она, другая эпоха! Маркетинг наступает и бъёт чистую алгоритмию. Именно этим я объясняю, помимо обширной рекламной компании, немного большее количество .NET`чиков по сравнению с Java`истами.

Вобщем, любить можно какие угодно языки, но давайте думать реалистичнее - что нужно рынку, а что нет. Какие специалисты понадобятся в перспективе, а какие - со времянем не будут нужны никому?... Я вот, лично, хотел бы быть среди первых smile

Это сообщение отредактировал(а) Се ля ви - 20.7.2005, 16:37


--------------------
  )
 (
[_])
проф. блог

Кролики думали, что занимаются любовью, а на самом деле их просто разводили...
PM MAIL WWW Skype GTalk   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила ведения Религиозных войн
Smartov
1. Уважайте собеседника
2. Собеседник != враг
3. Старайтесь воздерживаться от тем вида "Windows Rulez" или "Linux Rulez"

С уважением, Smartov.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Религиозные войны | Следующая тема »


 




[ Время генерации скрипта: 0.0951 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.