![]() |
Модераторы: LSD Страницы: (12) Все « Первая ... 6 7 [8] 9 10 ... Последняя »
( Перейти к первому непрочитанному сообщению ) |
![]() ![]() ![]() |
|
kemiisto |
|
|||
![]() Дикий Кот. =^.^= ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Участник Клуба Сообщений: 3292 Регистрация: 29.7.2007 Репутация: 3 Всего: 160 |
Это пять! ![]() В танке только ты. ![]() Тебе и не снилось. Например, одноимённую ОС. Это сообщение отредактировал(а) kemiisto - 19.10.2009, 22:11 -------------------- |
|||
|
||||
LamerTM |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 97 Регистрация: 11.3.2006 Репутация: нет Всего: 0 |
||||
|
||||
kemiisto |
|
|||
![]() Дикий Кот. =^.^= ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Участник Клуба Сообщений: 3292 Регистрация: 29.7.2007 Репутация: 3 Всего: 160 |
-------------------- |
|||
|
||||
LamerTM |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 97 Регистрация: 11.3.2006 Репутация: нет Всего: 0 |
Ну например, в википедии описание этой системы всего на 3х языках. В гугле чаще встречается аппарат от всех болезней под названием "оберон", а также фирма (похоже мошенническая) с названием "оберон". Ну и тому подобное. Это касается и языка и системы. Никому они не нужны, кроме самого Вирта и кучки сектантов. Судя по описанию языка и ОС, сдается мне, что примитивщина. Минимализм это жесть. |
|||
|
||||
kemiisto |
|
|||
![]() Дикий Кот. =^.^= ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Участник Клуба Сообщений: 3292 Регистрация: 29.7.2007 Репутация: 3 Всего: 160 |
Вы больны. И притом неизлечимо. ![]() Тема себя исчерпала... Всем чмоки в этом чате! ![]() Это сообщение отредактировал(а) kemiisto - 19.10.2009, 22:42 -------------------- |
|||
|
||||
Beltar |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 627 Регистрация: 11.1.2006 Репутация: 2 Всего: 7 |
Все без него обходятся, а тебе неудобно? А про такие классные вещи, как Break, Continue, Exit ты не слышал?? Есть только один случай оправданного goto. Выход сразу из всех вложенных циклов.
Перекрестные ссылки прекрасно делаются размещением имени модуля в uses секции implamentation. Учи матчасть. ![]() Каждый класс сам по себе является целостной и готовой к употреблению программной единицей, если делается либа из многих классов, то общий код выделяется еще на этапе проектирования, например, типичная структура моей программы: Common.pas со всякими нужными каждой программе мелочами, DataModule.pas для невидимых визуальных компонентов, прочие юниты, эти юниты видны всем формам, которые этого хотят, главная форма fmMain. fmMain видит всех, а ее почти никто. Циклических связей почти нет. Недавно текущий проект в порядок приводил, так не поленился весь код, касающийся оборудования и технологического процесса перетащить в отдельный юнит, хотя для этого, например, пришлось оформлять процедурки-функции с дополнительными параметрами, но зато этот код получился отдельно от UI и не путается под ногами в fmMain. Букофф-то так больше получается, но зато все ясно-понятно и, например, перестройка таблицы оборудования не смешивается с обновлением контролов для ее отображения. -------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. ![]() Пищущий на C++ мужик. Даже если это мужик сидит в написанном на Delphi и жрущем паскалевскую библиотеку билдере. |
||||
|
|||||
LamerTM |
|
||||||
Шустрый ![]() Профиль Группа: Участник Сообщений: 97 Регистрация: 11.3.2006 Репутация: нет Всего: 0 |
Ну включите мозг хоть на минутку. Если все без него обходятся, то зачем он есть в паскале, C++, C#? При том что шарп это новый язык, где много всего накопленного за прошлые годы выкинуто за ненужностью.
Я не использую goto вместо этих операторов.
Это не единственный случай когда goto удобнее. Можно сделать общий выход из процедуры, чтобы там происходили какие-то общие для всех случаев операции (освобождения ресурсов, к примеру. Хотя не обязательно именно это). Да и какая разница для чего он может понадобится. Не нравится - не пользуй.
Спасибо, но матчасть в этом отношении я хорошо выучил. Перекресные ссылки в интерфейсной части делать нельзя. Теперь уже ты учи матчасть. Может когда есть проектирование программы это нормально. Но у меня идеального проектирования нет. Я сам не знаю что еще мне захочется добавить в программу, какие фичи, и как её перестроить. Она как "живая", всё время меняется. Я же не могу знать что мне понадобится в будущем. Вот мне понадобилось вставить одну ссылку. Просто захотелось, потому что это удобно. И тут бац - ошибка компилятора. А чтобы ее исправить, надо огромную кучу кода перелопатить. И только чтобы вставить одну ссылку. Ну не знал я 5 лет назад, когда начинал писать эту программу, что через 5 лет у меня будет куча дополнительных модулей, и мне понадобится сделать ссылку на один из этих модулей в неудобном для компилера месте. Я же не нострадамус, не могу всё знать наперед. Наверное делфи это для гипергениев, умеющих видеть будущее. Я из простых землян, и такие вещи мне недоступны. |
||||||
|
|||||||
Lazin |
|
||||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 4 Всего: 154 |
поскольку твое ИМХО голословное, то можно его просто проигнорировать
![]()
Вот пример, как этот идиоматичный C# код будет выглядеть на дельфи?
![]() ИМХО, с паскаля нельзя начинать обучение программированию, так как он создает в голове будущего программиста искусственные ограничения, например, нельзя вернуть из функции больше одного значения, нельзя прервать выполнения метода, а затем продолжить и тд. В паскале есть только самые простые средства управления control flow - циклы, процедуры и функции, но на этом мир клином не сошелся, и в новых языках программирования все чаще используются замыкания, карринг, сопрограммы и тд(и это не просто модный тренд, это вызвано ростом сложности программного обеспечения, а так-же ростом сложности применяемых технологий, тот-же LINQ является хорошей иллюстрацией к сказанному). Бывшему паскалисту это очень сложно использовать, так-как голова полна искусственных ограничений, наложенных первым языком программирования ![]() |
||||||
|
|||||||
Beltar |
|
||||||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 627 Регистрация: 11.1.2006 Репутация: 2 Всего: 7 |
Врешь натовская морда. Из текущего проекта
Это как? ![]()
Учи матчасть, всю эту хрень в Delphi активно добавляют, не в этой версии, так в текущей. Как с анонимными методами, никто не знает на кой хрен они в Delphi нужны, но "чтобы было". У меня вообще такое чувство, что идеология сишников основана не на том, чтобы получить рабочий инструмент, а чего-то там добавить в язык. Он и так уже под своей тяжестью валится, понимание крайне затруднено, но все равно добавляют. Я могу понять средства для организации многопоточности на уровне языка, или организовать подписку компонентов на события (это впрочем реализуется библиотекой и в VCL есть подобный механизм), можно даже цикл for each понять т. к. вечно забываешь единичку от Count отнять, но большинство новых фич ИМХО совершенно бесполезны. Фактически студент должен понимать основы языка за пару часов и после этого иметь возможность начинать что-то писать. Потому и живуч так проклятый Basic (я ненавижу этот язык за то, что он существует, т. к. в свое время обжегся на контекстном объявлении переменных в какой-то там досовкой версии), что батонов в нем всегда надо было меньше, чем в Паскале топтать и программку в 20 строк написать проще. Еще больше освоив язык и либы к нему человек начинает писать эффективно и наступает этот момент задолго до того, как ему потребуются эти "современные возможности". Касательно же замыканий, то мил человек, я придумать-то не могу ситуации, когда мне ЭТО (чтобы понять что это вообще такое приходится мозг сильно напрягать) понадобиться, зато обычные вложенные ф-ии, которые еще Вирт ввел, в вашем обшарпаном ЕМНИП так и не появились и столь удобных при парсинге строк множеств тоже нету. Есть одна трудная для понимания галиматья без какой-либо практической ценности. Где те же массивы произвольной размерности? Или весь шарп создан исключительно для перебирания элементов в коллекциях контролов? А вот так M:array['А'..'Д'] of Integer; слабо? А цикл For в Си когда появится? for(i=0;i<10;i++), это не for т. к. равно i=0; while i<10 { i++; } записанному одной строчкой, но с тем же бессмысленным i++;
Потому что найти Delphi-программиста легко и кодить на Паскале нельзя обучить разве что идиота, да обезьяну. Даже тупой студент сможет написать неглючно. Программиста на C# тоже найти уже сейчас д/б легко, так что это не тот язык, где надо искать зарплат измеряемых килобаксами в месяц только за то, что научились фигурную скобку ставить. Хочешь большой зарплаты - учи Ассемблер, или еще лучше Кобол. Это сообщение отредактировал(а) Beltar - 20.10.2009, 12:17 -------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. ![]() Пищущий на C++ мужик. Даже если это мужик сидит в написанном на Delphi и жрущем паскалевскую библиотеку билдере. |
||||||||||
|
|||||||||||
Beltar |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 627 Регистрация: 11.1.2006 Репутация: 2 Всего: 7 |
А вообще многие из тех, кто плюются сейчас на Паскаль без него, возможно, и не стали бы программистами т. к. просто ни фига бы не поняли.
-------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. ![]() Пищущий на C++ мужик. Даже если это мужик сидит в написанном на Delphi и жрущем паскалевскую библиотеку билдере. |
|||
|
||||
Keeper89 |
|
||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2580 Регистрация: 26.2.2009 Репутация: нет Всего: 58 |
Любой цико for можно так расписать, и в Паскале тоже.
Ну.. нет. Как-то у вас все просто. У C# есть свои преимущества, и если копнуть они очень даже неплохие, не в скобке дело. И вообще, хватит холиварить. ![]() |
||||
|
|||||
Lazin |
|
||||||||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 4 Всего: 154 |
ой, а если их много? а если мне нужна только часть возвращаемых значений?
![]()
пример в моем прошлом посте
в том-то и дело, что туда добавляют всякую хрень ![]()
![]()
может ты не знал, но замыкания в паскале и раньше были
и что тут такого? |
||||||||||
|
|||||||||||
Beltar |
|
||||||||||||||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 627 Регистрация: 11.1.2006 Репутация: 2 Всего: 7 |
Можно, но фишка цикла For в том, что он сам вычисляет значение переменной счетчика и ему не надо указывать всякие i++.
Так с Паскаля же тырили.
Когда хрень добавляют в шарпы, это рулез, когда в Delphi это хрень. Я правильно понял.
В коде что-ли? Я тебе один секрет открою, только ты никому не говори, но дело не в языке, а в .NET и такая же хрень мутится на любом языке для .NET.
Это плюсы скопытились, сейчас все новое в шарп идет. Что характерно Delphi до 2005-ой версии жила без стольких вполне полезных возможностей плюсов и почему-то не страдала от этого, просто фича фиче рознь и большинство фич плюсов, которых не было у Delphi просто редко нужны, даже вместо шаблона можно накодить наследника от TList, потратив 10 минут, в масштабах большого проекта это ничто.
В Паскале есть вложенные ф-ии. Сама его структура это предполагает. Или будем уточнять терминологию? http://ru.wikipedia.org/wiki/Сравнение_язы...рограммирования А если не знал, то получается, что это настолько бесполезная вещь, что про нее и знать не надо. ![]()
- А в Си++ есть множественное наследование! - И что тут такого? - Как что?? Удобно! Вот и мне удобно, действительно полезная фича просто.
Фтопку. Мне НИ РАЗУ не требовалось возвращать больше 2-х значений. -------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. ![]() Пищущий на C++ мужик. Даже если это мужик сидит в написанном на Delphi и жрущем паскалевскую библиотеку билдере. |
||||||||||||||||||
|
|||||||||||||||||||
Lazin |
|
||||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 4 Всего: 154 |
![]()
видимо ты не напрягал мозг достаточно, что-бы изучить те возможности языка, которые там были еще во времена Turob Pascal ![]() и от чего-же мне нужно отнаследоваться, что-бы получить ассоциативный контейнер, в BDS 2006? я уже молчу о том, что наследование - достаточно сильная зависимость и я предпочитаю пользоваться включением в таких случаях xD
отличный аргмуент ![]() З.Ы. На посты тов. Beltar больше отвечать не буду ![]() Это сообщение отредактировал(а) Lazin - 20.10.2009, 13:24 |
||||||
|
|||||||
Beltar |
|
||||||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 627 Регистрация: 11.1.2006 Репутация: 2 Всего: 7 |
Вот только код привести наш гений так и не смог.
А что ты вообще получить хочешь? Контейнерный класс, который избавит от ручного преобразования типов делается элементарно. Если "ассоциативный контейнер" контейнер узкосишный термин, и не означает того, что я описал выше, то будь другом описать что это такое, мне в моей работе плюсы знать достаточно на уровне чтения заголовков ф-ий из хелпа по API. А иначе возникает терминологическая путаница, как с замыканиями, под которыми ты скорее всего имеешь в виду именно вложенные ф-ии. Определение по ссылке в моем посте.
Возможность использования определяется с Delphi 2009. Неудивительно, что ни в одной книжке по более старым версиям даже слова-то такого нету. Так что учи русский язык.
Имею все основания предполагать, что уж такая-то фича всем программистам требуется примерно с одинаковой частотой, независимо от области дейятельности.
А ты не отвечай, ты вообще в раздел по Паскалю не пиши, я много вещей на дух не переношу, все языки с фигурными скобками, покемонов, теплое молоко, но я не иду на форум по плюсам доказывать, какой же это убогий язык, а теплое молоко просто гадость. -------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. ![]() Пищущий на C++ мужик. Даже если это мужик сидит в написанном на Delphi и жрущем паскалевскую библиотеку билдере. |
||||||||||
|
|||||||||||
![]() ![]() ![]() |
Правила ведения Религиозных войн | |
|
1. Уважайте собеседника 2. Собеседник != враг 3. Старайтесь воздерживаться от тем вида "Windows Rulez" или "Linux Rulez" С уважением, Smartov. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Религиозные войны | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |