Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.146.37.35] |
|
Страницы: (6) 1 [2] 3 4 ... Последняя » все ( Перейти к последнему сообщению ) |
Сообщ.
#16
,
|
|
|
Цитата mo3r, 28.02.2006, 07:51:11, 1028872 Элементы массивов в языке Си нумеруются, начиная с 0. Это - мелочь, но удобным это назвать никак нельзя. Каждый программист сталкивался с ошибками, возникающими из-за нумерации с нуля имхо, достаточно просто один раз запомнить, как в _определённом_ языке задаются массивы... а мне вообще нравится VB, там массив можно задать так: Dim arrData(5 To 9) Скрытый текст зы. паскаль - не язык, а средство насилия над мозгом программера. |
Сообщ.
#17
,
|
|
|
Цитата BlackSnake @ имхо, достаточно просто один раз запомнить, как в _определённом_ языке задаются массивы... а мне вообще нравится VB, там массив можно задать так: Dim arrData(5 To 9) Цитата BlackSnake @ кой-кому надо устроить терапию алгоритмами с fixed-point Скрытый текст: |
Сообщ.
#18
,
|
|
|
Цитата BlackSnake @ зы. паскаль - не язык, а средство насилия над мозгом программера. |
Сообщ.
#19
,
|
|
|
Цитата BlackSnake @ зы. паскаль - не язык, а средство насилия над мозгом программера. Зря. Достаточно красивый, понятный и мощный язык (не в пример тому же VB (VBA), например). |
Сообщ.
#20
,
|
|
|
Судя по всему автор не различает C и C++, т. к. в C < C99 нельзя объявлять переменные в произвольном месте -- только в начале блока (или как там называется конструкция внутри {}).
Цитата Flex Ferrum @ Иногда (не всегда, но бывает) действительно необходим тип данных типа множества из паскаля. Т. е. множество, существующее еще на этапе компиляции. Тогда давайте сразу вспомним, что это множество не может состоять более чем из 256 элементов, что сильно сказвается на его полезности отнють не в лучшую сторону. |
Сообщ.
#21
,
|
|
|
Цитата linuxfan @ Тогда давайте сразу вспомним, что это множество не может состоять более чем из 256 элементов, что сильно сказвается на его полезности отнють не в лучшую сторону. Ты видимо не понимаешь, в чем полезность множеств. |
Сообщ.
#22
,
|
|
|
Цитата Ты видимо не понимаешь, в чем полезность множеств. Но не до 256 элементов. Посмотрели бы вы на питонячую реализацию... :) |
Сообщ.
#23
,
|
|
|
Ни в коем разе не желаю никого обидеть, но повторю то, что говорил уже не один раз. Если кому влом читать - переходите сразу к последней строчке.
даже Бейсик - язык... и Форт - язык... и пхп с перлом - языки... (несмотря на то, что субъективно мне перл не нравится) да блин, даже Ява-скрипт - язык программирования! (кого не назвал, не обижайтесь) а Си - мега-язык хотя Асм ещё более мега-язык а вот Паскаль - это не язык программирования, а франкенштейновское чудовище, созданное с единственной целью - зас*рать студентам мозги принципами структурирования (кто не верит - почитайте что-нить о истории языков)... Изначально в паскале только и были, что структурные элементы (типа циклов и условных и безусловных переходов. case не было.), оператор ввода с клавы и оператор вывода, да несколько мат. операций. (а, ещё было обязательное объявление всего, даже и так понятного) Только намного позже, когда подросло первое поколение затр@х@нных Паскалем студентов, они (бывшие студенты) начали наворовывать в паскаль прочие полезняки из других языков, но поскольку они были жестоко замучены Паскалем, выбросить его геморройные и излишние элементы у них не хватило духу... вообще же - паскаль это ни то, ни сё... слишком сложен для простых задач и слишком слаб для сложных. если мне понадобится например, хитрый калькулятор, я его буду писАть на VB, ибо так проще. Если мне понадобится драйвер - буду материться над каждой строкой (ибо если честно - в Си я не особенно силён), но драйвер я буду писАть на Си. Если мне понадобится серверное приложение - буду писать на ПХП. А у паскальщиков один ответ на всё: "Делфя рулит, ибо она универсальна, а я других языков фсё равно не знаю, ибо паскаль крут". Соответственно, паскальщик напишет простой калькулятор за то время, за которое я напишу такой же на VB дважы, а драйвер напишет чуть быстрее, чем хороший программер на Си, зато его паскальный драйвер будет втрое больше весить и вдвое медленнее работать. (а уж про делфийские CGI-приложения мне и говорить-то противно...) Вывод. Паскаль не умер, ибо не рождался, но паскаль мёртв от рождения. А теперь ответть не вопрос: как называют человека, имеющего сношение с покойником? [блин, почему в стандартных смайлах нет смайла "меня тошнит"?] |
Сообщ.
#24
,
|
|
|
Цитата BlackSnake @ к твоему сведению, далеко не все здесь любители авангарда.франкенштейновское чудовище, созданное с единственной целью - зас*рать студентам мозги принципами структурирования Цитата BlackSnake @ была одна веселая статейка, типа интервью с Керниганом (или Ричи), где говорилось, что С придумали ради стеба... кто не верит - почитайте что-нить о истории языков Цитата BlackSnake @ На Паскале пишут, и довольно успешно. А ты говоришь про трупы. Вывод. Паскаль не умер, ибо не рождался, но паскаль мёртв от рождения. |
Сообщ.
#25
,
|
|
|
Цитата Rikkie @ На дату статьи ты внимания не обратил? была одна веселая статейка, типа интервью с Керниганом (или Ричи), где говорилось, что С придумали ради стеба... |
Сообщ.
#26
,
|
|
|
Цитата Rikkie @ была одна веселая статейка, типа интервью с Керниганом (или Ричи), где говорилось, что С придумали ради стеба... Статейка эта была сама по себе стебная. |
Сообщ.
#27
,
|
|
|
Цитата Relan @ обратил, обратил На дату статьи ты внимания не обратил? Цитата Flex Ferrum @ на то и намекалось Статейка эта была сама по себе стебная. Добавлено Это к слову о Цитата BlackSnake @ зас*рать студентам |
Сообщ.
#28
,
|
|
|
Наш ответ Чемберлену:
Цитата От: AlexEagle http://vm.yess.ru/ Дата: 18.02.05 00:56 Оценка: 5 (3) +4 ) Здравствуйте, d Bratik, Вы писали: DB>...настоящие программисты избегают C++ И предпочитают делфи где-то по следующим причинам: 1. За то что наследование используемых модулей не поддерживается. Т.е. Если модуль А использует Модуль Б, и оба они используют модуль С, то недостаточно прописать использование модуля с в Б, нужно это использование обязательно и в А прописать. 2. За отсутствие шаблонов. 3. За отсутствие возможности создания автоматических объектов (все объекты изначально является указателем). Соответственно приходистя вручную вызывать конструктор/деструктор (для чего и TRY..Finnaly) 4. За отсутствие множественного наследования 5. За отсутствие возможности перегрузки операций 6. За WITH благодаря которому код становится не читабельным до ужаса... 7. За дикую абстрактность от GUI модели, благодаря чему некоторые события не доступны, некоторые не работают, а про главное окно приложения которое делит функционал с окном Application я просто молчу. Хорошим примером поведения этой абстракности является функция MsgBox. Можно ради интереса проследить что она делает (сколько вложенных вызовов). А еще класно реализован Handle у компонентов — просто бестселлер, понял когда случайно вызвал в деструкторе. 8. За жесткие ограничения на место описания переменных функции — между названием функции и началом блока 9. За невозможность смешивания переменных и функций класса при описании (вначале переменные а затем функции и не иначе) 10. За отсутвие удобных операторов типа +=, *=, -= и т.д. Про ++i и i++ я просто молчу. 11. За явное приведение типов. Особенно сильно "ЛЮБЯТ" за вызов функции Trunc для приведения вещественного в целому. 12. За отсутствие менеджера конфигураций. Так чтобы сделать Debug и Release хотябы, и пользоваться просто переключая их. 13. За дикий размер EXE, если конечно же не юзать пакаджи. 14. За то что ошибочная работа встроенных функций ведет к генерированию исключения, а не возврату кода ошибки. При этом во многих случаях приходится писать просто try ... except end; чтобы пропустить эту фичу. 15. За то что она не MDI. Это ужасно "УДОБНО". Приходится очищать рабочий стол перед открытием делфи, да и две запущенные — это головняк ("КРУТО"), поскольку никогда не знаешь в редакторе какой находишся. Иногда по ALT-TAB переключается только редактор, а главное окно нет. 16. За WITH благодаря которому дебаггер не показывае значение переменных типа with TComeCObject.Create(...) do Visible := TRUE; Значение Visible — не увидишь никогда. Только если with SomeObject do SomeProperty := SomeValue; то в ТОЛЬКО окне свойств надо подставить SomeObject.SomeProperty и только тогда будет значение 17. За дебаггер который видит стек вызовов исключительно ограниченный модулями, пути которых включены в проект. Так если в проект не подключить путь для просмотра (Project\Options\Search Path) C:\Program Files\Borland\Delphi6\Source\Vcl;C:\Program Files\Borland\Delphi6\Source\Rtl;C:\Program Files\Borland\Delphi6\Source\Rtl\Common;C:\Program Files\Borland\Delphi6\Source\Rtl\Sys;C:\Program Files\Borland\Delphi6\Source\Rtl\Win то при возникновении события OnEnter у компонента на форме можно увидеть стек вызовов только с этой функцией. НО!!!!!!!!!!!!! Если подключить пути то будет КУЧА!!!!!!! варнингов для делфевых модулей при компиляции, за которыми и "своих" не видно. 18. За отсутствие оператора "?". Есть только два псевдоаналога — варианты функции ifthen. При этом нормально работать можно со строкой и Integer-подобными значениями. Когда речь идет об объекта то тогда запись выростает до TType(ifthen(...,Integer(Object1),(object2)) — грустно... 19. За компилятор, который хавает на ура запятую без указания последнего необязательного параметра функции. Т.е. если function f(p1: Integer; b1: Boolean=false; B2: Boolean = false), то такое прокатит на ура — f(1,false,); 20. За директивы компилятора сделанные в стиле коментариев и мещающие коментированию текста их содержащего 21. За отсутствие нормального хелпа к системным функциям. Для того чтобы определить где находится описание сетевой функции нужно выполнять поиск по каталогу сырцов. К примеру NetWkstaGetInfo которая вообще отсутствиет в стандартных сырцах Ламерская система.... 22. За то что значения дефолтовых параметров надо описывать и в описании функции/метода и в их реализации 23. За то что нельзя создать два пакета содержащие модули с одинаковыми названиями — среда не позволит, будет каждый раз ругаться что Пакет ХХХ использует модуль УУУ, который уже содержится в ХХ1 — это очень удобно, в с++ такого не добиться 24. За то что иногда невозможно открыть справку по F1, если модуль содержит ошибки. Ну и как бы P.S.: Все эти любимости собраны в 6-й версии делфи, поэтому если у кого одна из этих ужасно любимых фич не пойдет на другой версии — не расстраивайтей, всегдя найдется что полюбить в замен, на то это и делфи! |
Сообщ.
#29
,
|
|
|
Цитата BlackSnake @ вообще же - паскаль это ни то, ни сё... слишком сложен для простых задач и слишком слаб для сложных. Давай аргументированнно, а? Цитата BlackSnake @ если мне понадобится например, хитрый калькулятор, я его буду писАть на VB, ибо так проще. А как калькулятор с парсером выражений, осилишь, даже если на VB? И насколько быстрее чем я на Дельфи? |
Сообщ.
#30
,
|
|
|
Цитата Smike @ Калькулятор с парсером выражений (типа bc) на Перле: А как калькулятор с парсером выражений, осилишь, даже если на VB? И насколько быстрее чем я на Дельфи? while ($_ = <>) { chomp; print eval($_), "\n"; } |