Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Самый перспективный язык программирования

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35

Открыть новую тему     Написать ответ в эту тему

Самый перспективный язык программирования
 ОтветГолосаПроценты
Java60
10.56%
C#108
19.01%
Asp.net2
0.35%
C++212
37.32%
Visual Basic.net19
3.35%
Delphi96
16.90%
что то другое71
12.50%
Гости не могут голосовать, зарегистрируйтесть!Всего Голосов: 568
Qraizer



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
имеется, могу только заметить, что они лишь сокращают написание требуемого количества кода, а не выполняют оптимизацию — запись требуемого конечного алгоритма в ручную может дать больший эффект, к тому же наличие «лишних» операций шаблоны убрать никак не способны. Поэтому я говорю, что в узких местах не надо надеятся на то, что ваши шаблоны с компилятором создатут вам идеальный код, а попробовать улучшить алгоритм.  
«"строить" наиболее эффективный цикл независимо от сложности выражения» — сейчас это невозможно для произвольного выражения, тут требуется сложный анализатор кода, способный «понять», разобрать на части и оптимизировать выражение.
Вот как раз это я и имею в виду. И с самого начала утверждаю, что всё это возможно. Выполняют оптимизацию до уровня написанного вручную цикла; исключают "лишние" операции полностью; не требуют специального сложного анализатора кода, т.к. такой уже встроен в компилятор, и нужно только грамотно им воспользоваться.
Цитата:
«шаблоны выражений» могут решить это задачу лишь для некоторого набора выражений, для которого они были созданы.
Вот только это, пожалуй, имеет некоторое отношение к их ограничениям. Однако ровно столько же, сколько вообще имеет отношение перегрузка операторов к пользовательским типам. Если потребуется новый перегруженный оператор, то придётся и дополнить шаблон выражений новым классом. Однако по трудоёмкости этот новый класс создаётся куда как легче, чем новый перегруженный оператор. Я сюда включаю также и потенциальную вероятность ошибиться при кодинге с дальнейшей отладкой.
Цитата:

Цитата:
А назначение классов тогда в реализации принципов ООП?
Класс скрывает разделяемый код, а шаблон — копируемый. Или я не прав?
М-м-м... крайне сжато выразился, поясню, что я имел в виду. Обе фразы - моя вот эта и твоя "...вот только назначение их (шаблонов [Q]) не в рассчёте чего-либо при компиляции, а в автоматической генерации кода" - в общем не неверны. Они "всего лишь" неполны. И то (шаблоны), и другое (классы) - это не технологии программирования, а инструменты, которыми пользоваться можно для достижения очень разных целей. То же метапрограммирование стало сюрпризом для самого комитета стандартизации, когда в 1994 году Эрвин Анрух продемонстривал свою метапрограмму поиск простых чисел.

Всего записей: 613 | Зарегистр. 08-08-2006 | Отправлено: 14:31 15-01-2007 | Исправлено: Qraizer, 14:34 15-01-2007
Quark Fusion



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Вот как раз это я и имею в виду. И с самого начала утверждаю, что всё это возможно. Выполняют оптимизацию до уровня написанного вручную цикла; исключают "лишние" операции полностью; не требуют специального сложного анализатора кода, т.к. такой уже встроен в компилятор, и нужно только грамотно им воспользоваться.
Возможно, но на практике это не всегда приводит к наилучшему результату. Очень важно понимать и правильно использовать эти методы, и всё-таки не стоит забывать о проверки своего алгоритма на излишние операции.
 
Шаблоны несомненно очень важны и полезны в языке, но в С++ они не самые лучшие, очень много идей по их использованию появилось после стандартизации и некоторых вещей в них не хватает.
 
Классы и ООП — это технологии программирования, точно так же, как и внешние библиотеки — без всего этого нам бы приходилось тащить за своей программой еще тонны кода, вместо подключаемых модулей, какими классы и являются. Более того, классы являются типом данных, который может сам себя обрабатывать (проверять, вычислять и т.п.). Вобщем я не спец по теории, рекомендую интересующимся почитать книжку
 
Добавлено:
Кстати по поводу оптимизации: в каких языках есть возможность определить функцию как не имеющую внешних последствий? Это нужно например для выноса её из цикла:
Код:
for i from a to b do:
    с = dosomething()
    d = sum(a, b)
next
если sum(a, b) просто складывает числа, то её можно вынести из цикла и ускорить программу, dosomething() же выносить нельзя, если она оказывает какое-либо внешнее действие, например мигает лампочкой

Всего записей: 146 | Зарегистр. 21-12-2006 | Отправлено: 21:26 15-01-2007
Qraizer



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
Возможно, но на практике это не всегда приводит к наилучшему результату. Очень важно понимать и правильно использовать эти методы, и всё-таки не стоит забывать о проверки своего алгоритма на излишние операции.
То, в чём я не уверен, я никогда не утверждаю абсолютно. В том, что я сказал о том, как смогу реализовать шаблоны выражений, я уверен абсолютно. С точностью до гарантий стандарта C++ и соответствий компиляторов этому стандарту.
Цитата:
Шаблоны несомненно очень важны и полезны в языке, но в С++ они не самые лучшие, очень много идей по их использованию появилось после стандартизации и некоторых вещей в них не хватает.
Ну, чего-то всегда не хватает. Мне, например, в С++ не хватает рефакторинга. И информации о типах времени компиляции, особенно если учесть, что компилятор этой информацией обладает в полной мере.
 
P.S. Шаблоны, кстати, своим теперяшним видом обязаны не только грамотной политике авторов стандарта. Некоторые нюансы были введены специально для возможности реализовать стандартную библиотеку в её теперяшнем виде.  Кое-что потом не понадобилось, но убрано не было. Например, шаблонные параметры шаблонов были добавлены в язык для поддержки аллокаторов, по потом оказалось, что аллокаторы могут быть реализованы и без них, но убирать шаблонные параметры шаблонов уже было поздно, они проникли в драфты и успели оказать влияние на общественность.  Были также и банальные технические опечатки, как случилось, например, с "шаблонными методами классов", если не ошибаюсь, в оригинале имелись в виду "шаблонные методы шаблонных классов".
 
Добавлено:

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

Всего записей: 613 | Зарегистр. 08-08-2006 | Отправлено: 13:53 16-01-2007 | Исправлено: Qraizer, 13:53 16-01-2007
kvadrator

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
надо в первую очередь язык изучать, а потом уже IDE, набор библиотек и WinAPI  

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

Всего записей: 1 | Зарегистр. 19-12-2007 | Отправлено: 19:49 21-12-2007 | Исправлено: kvadrator, 20:21 21-12-2007
XDiaBLo



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
2kvadrator  
 
Ага, типа "изучайте азбуку, если понять буквы, можно прочесть любую книгу".

Всего записей: 244 | Зарегистр. 13-05-2004 | Отправлено: 12:35 24-01-2008
delover

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Qraizer

Цитата:
Мне, например, в С++ не хватает рефакторинга.

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

Всего записей: 1395 | Зарегистр. 25-06-2007 | Отправлено: 15:27 25-01-2008
terminat0r



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Можно вопрос? Перспективный в какую сторону?
С точки зрения долгожительности, популярности, удобств использования или уровня зарплат?
По каждому с этих пунктов вообщем то разные языки будут.
По всем вместе- нет такого, как мне кажется.
 

Всего записей: 2084 | Зарегистр. 31-03-2002 | Отправлено: 15:57 25-01-2008
BackstreetCat



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А мне кажется что есть. Вернее их 2.

Всего записей: 74 | Зарегистр. 04-09-2004 | Отправлено: 09:10 26-01-2008
Jokerjar79



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Имхо C++, так-как подавляюшее большинство SDK, документации (тот же MSDN) описан на нем

Всего записей: 710 | Зарегистр. 08-09-2007 | Отправлено: 09:39 26-01-2008
eLLoco



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
всю ветку читать лень, так что если повторюсь, ногами не бить
 
terminat0r
 

Цитата:
Можно вопрос? Перспективный в какую сторону?

думаю под словом перспективный имеется ввиду язык, программистов на котором не забудут в ближайшие несколько лет и зарплатой не обидят  
 
из этого получается, что С++ *1 в лидерах, хотя я больше C# *2 для приложений и Web / Perl *3 для повседневных задач использую.
 
*1 пока что .
*2 с этим не все однозначно (и остальными CLS).
*3 как только количество библиотек для python вырастет до объемов CPAN, имеет риск не выжить (перестанет использоваться в новых проектах).
 
кстати, довольно сложно выделить технологию и язык программирования. тот же C# в данном случае следовало обозвать C#/VB.NET/J#/Остальные_CLS_языки, ибо используя .NET любым из них разницу ощутить сложно (кроме разве что IronPython/IronRuby, но их выделение тоже довольно условно), поскольку скомпиленные программы будет не отличить, да и стиль программирования очень похож.
 
еще готов подписаться под вот этим:

Цитата:
В общем, основной мой тезис - каждой работе свой инструмент

писать дрова - извольте, голый С. быстро сваять приложение по бухучету для пивного ларька - почему бы не Delphi или C#? поэтому перспективность языка следует оценивать по перспективности области в которой он применяется. на сегодня считаю двумя самыми-самыми областями Web (здесь, кстати, C# тоже засветился) и ERP (недоERP типа 1С тоже считается ). отсюда выводы...
 
хм, начали с великого С++ и закончили недополуязыком 1С . и отсюда тоже можно сделать выводы, что так просто выводы сделать, очевидно, не получится.
 
можно провести параллели перспективных языков для разных областей. ведь не всех заставишь заниматься системным программированием, кто-то не хочет иметь дело с Web. в общем, даешь свой самый перспективный язык каждому!
 
все пора заканчивать, осталось добавить, что конечно же, все это InMyHumbleOpinion

Всего записей: 217 | Зарегистр. 03-08-2007 | Отправлено: 22:20 26-01-2008
BackstreetCat



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Товарищи модераторы, добавьте пж-ста 1С в список для голосования.

Всего записей: 74 | Зарегистр. 04-09-2004 | Отправлено: 19:48 27-01-2008
Qraizer



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
delover, не брошу. Бэйсик знаю, на нём юнит-тесты пишу. Тоскую по плюсам. Согласен мириться с отсутствием в нём кой-чего, зато имею гораздо больше, чем может дать этот монстр Бэйсик. И уж точно не назвал бы Бэйсик самым перспективным.

----------
Одни с годами умнеют, другие становятся старше.

Всего записей: 613 | Зарегистр. 08-08-2006 | Отправлено: 20:31 27-01-2008 | Исправлено: Qraizer, 20:35 27-01-2008
AlexeiKozlov

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ага,толковать это голосование нельяз в рамках движка этого форума. только в разрере,по области применения и другим разрезам,имеет смысл обсуждать этот вопрос.  
 
а я так язык многие чешут о своем личном

Всего записей: 2188 | Зарегистр. 16-10-2004 | Отправлено: 00:00 28-01-2008
Rudia



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Мне, например, в С++ не хватает рефакторинга.

Это не проблема языка, а проблема конкретной IDE

Всего записей: 324 | Зарегистр. 13-09-2006 | Отправлено: 18:18 28-01-2008
eLLoco



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Rudia

Цитата:
Это не проблема языка, а проблема конкретной IDE

не скажи, рефакторинг к C++ прикрутить можно, но ввиду сложности синтаксиса, он будет выглядеть довольно усталым по сравнению, например, с C#, синтаксис которого чрезвычайно прост (и для компилятора/лексико-синтаксического_анализатора тоже), что позволяет осуществлять порядка 20 видов рефакторинга (ReSharper, в голой VS меньше).
если я ошибаюсь, приведи, пожалуйста, пример IDE с мощным рефакторингом С++ текстов.

Всего записей: 217 | Зарегистр. 03-08-2007 | Отправлено: 07:29 29-01-2008
Rudia



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
приведи, пожалуйста, пример IDE с мощным рефакторингом С++ текстов.

На vs ставишь visual assist x и для с++ появляется не меньше возможностей рефакторинга, чем в голой студии для c#

Всего записей: 324 | Зарегистр. 13-09-2006 | Отправлено: 11:14 29-01-2008
eLLoco



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Rudia

Цитата:
visual assist x

посмотрел, бедновато конечно, но хотя бы что-то.
 
кстати, никто не в курсе, а в Eclipse (CDT) есть рефакторинг для cpp? - посмотрел, только rename

Всего записей: 217 | Зарегистр. 03-08-2007 | Отправлено: 11:25 29-01-2008 | Исправлено: eLLoco, 20:01 29-01-2008
urmigar



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Самым перспективным будет новый язык программирования, разрабатываемый нашей фирмой.

Всего записей: 437 | Зарегистр. 18-01-2008 | Отправлено: 17:54 09-02-2008
yurinb



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
urmigar

Цитата:
Самым перспективным будет новый язык программирования, разрабатываемый нашей фирмой.  

 
Пока это голословное утверждение. Продолжение будет?

Всего записей: 341 | Зарегистр. 06-05-2002 | Отправлено: 18:24 09-02-2008
Qraizer



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Боюсь, нет. Иначе получится реклама. Впрочем, это зависит от контента продолжения.

----------
Одни с годами умнеют, другие становятся старше.

Всего записей: 613 | Зарегистр. 08-08-2006 | Отправлено: 18:33 09-02-2008 | Исправлено: Qraizer, 18:34 09-02-2008
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Самый перспективный язык программирования


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru