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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Почему так не любят Delphi? 
:(
    Опции темы
drkot
Дата 28.1.2013, 15:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ищущий
***


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

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



serger
k0rvin, отказ от участия считается техническим поражением.

Цитата(k0rvin @  28.1.2013,  13:09 Найти цитируемый пост)
Попробуйте лучше в Делфи повторить вот это:

реализовать то как раз не мудрено... вот только этот пример и иллюстрирует не рациональный кодинг. Так что вытирайте пену, господа.
Код

for c in SomeCollection do begin
  if c.SomeProperty < 10
   then WriteLn(c.SomeProperty, c.OtherProperty);
end;

Конечно понятно, что элитный "вебпрограммист" увидив знакомый "select" автоматически повысит лояльность к языку, вот только логика заложенная в SQL вряд ли поможет в задачах отличных от операций с БД.
Тот же светлый и великий ABAP4. Имеет встроенный синтаксис запросов, но при этом не имеет сложных типов данных кроме таблиц и записей, что делает многие простые задачи пост обработки ресурсоемкими как в написании так и в работе. Но народ привык и воспринимает это как должное. 

Цитата(serger @  28.1.2013,  12:19 Найти цитируемый пост)
Прошу прощения, не понял

на это и делалась ставка. Хуже было бы в противном случае.

Количество слов на типовую задачу, думаю, побороли!
Осталось выяснить "кто быстрее".

Предлагаю волновой поиск пути с применением строковых определителей проходимости. Согласны? 

Это сообщение отредактировал(а) drkot - 28.1.2013, 15:26


--------------------
Ошибка не становится истиной по причине широкого распространения,
как и Истина не становится Ошибкой из-за того, что никто её не видит.
PM   Вверх
Akella
  Дата 28.1.2013, 15:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

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



Цитата(drkot @  28.1.2013,  15:25 Найти цитируемый пост)
Предлагаю волновой поиск пути с применением строковых определителей проходимости. Согласны? 


я даже не понял, что это такое  smile

Добавлено через 3 минуты и 24 секунды
Лично для меня одно из важных - это отрисовка интерфейса, а особенно с сохранием/восстановлением неких параметров. И ещё, когда открывается окно, где 2-4 таблицы, отображающие 2-4 сотни записей из базы + куча других компонентов и это всё медленно "отрисовывается/перерисовывается/обновляется", то это напрягает пользователя.

Добавлено через 8 минут и 33 секунды
Мне пофиг, если в каком-то ЯП цикл на 100500 тысяч записей выполняется на 1 секунду быстрее.
PM MAIL   Вверх
serger
Дата 28.1.2013, 15:55 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата(drkot @  28.1.2013,  16:25 Найти цитируемый пост)
Конечно понятно, что элитный "вебпрограммист" увидив знакомый "select" 

Ну и "вебпрограммисты" про "Гуя" программистов тоже самое могут написать сказать.

Цитата(drkot @  28.1.2013,  16:25 Найти цитируемый пост)
Цитата(serger @  28.1.2013,  12:19 )
Прошу прощения, не понял

на это и делалась ставка. Хуже было бы в противном случае.


drkot, пардон совсем уже не понимаю о чём речь.  smile 
Такое чувство, что Вы в каком-то своем мире...




--------------------
упс!
PM MAIL WWW Skype GTalk Jabber   Вверх
drkot
Дата 28.1.2013, 15:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ищущий
***


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

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



Цитата(Akella @  28.1.2013,  15:33 Найти цитируемый пост)
я даже не понял, что это такое

типовая задача: "поиск пути". Распространенное применение игры.
Один из лучших алгоритмов для этой задачи "волновой".
Обычно для задания проходимости используется вещественные числа в диапазоне 0-1. Но так как нам быстрота не важна (а важен разносторонний тест), то предлагаю использовать в качестве определителей проходимости строковые константы типа "хорошо, средне, плохо, стена".
При желании можно и вывод карты по пиксельно сделать (что графику протестирует).

1) загрузка карты из файла, формирование структуры в пямяти
2) собственно поиск пути
3) вывод результата в графическом виде на экран

Для меня результат очевиден... Даже C++ отстает, а о таком супер ЯП как java даже говорить не хочется... примерно в 1000 раз медленнее, только никому не говорите
в игре (на java) из-за этого пришлось карту значительно уменьшить.


--------------------
Ошибка не становится истиной по причине широкого распространения,
как и Истина не становится Ошибкой из-за того, что никто её не видит.
PM   Вверх
drkot
Дата 28.1.2013, 17:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ищущий
***


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

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



Цитата(serger @  28.1.2013,  15:55 Найти цитируемый пост)
Такое чувство, что Вы в каком-то своем мире...

мир действительно у каждого свой.
Русским языком говорю - проехали. Ибо если я разъясню то, что подразумевал (и думаю что многие это поняли) Вы сочтете эту фразу за оскорбление. Неужели не понятно что не стоит настаивать на ответе, если оппонент намекает на то, что ответ Вам не понравится ;) (первый смаил)

Цитата(serger @  28.1.2013,  15:55 Найти цитируемый пост)
 про "Гуя" программистов

к страстью таких нет, так что и говорить не про кого.
В частности в php (возможно и в java) наблюдается две концепции написания кода "классическая" и "вебная" в качестве примера можно привести MODx с одной стороны и WordPress (Joomla) с другой (прошу только не начинать орать кто из них круче, это можно сделать в других ветках). Так вот практика показала, что "классический" подход к написанию кода дорабатывается и правится гораздо быстрее, содержит скрытых багов, в то время как "вебная" стилистика приводит к сложностям доработки не только чужого, но даже своего кода. Вызвано это на мой взгляд отсутствием понимания принципа работы программы, ее интерпретатора и компьютера в целом. Желание "упростить работу", "уменьшить количество операторов (строк)" (несет исключительно коммерческий смысл, так как еще 15-20 лет назад платили за количество строк кода, и введение конструкций позволяющих объединить несколько строк в одну удешевляло программу) привело к потере логики программистами, на фоне бурного желания создать "кульный" код (мода призванная реализовать коммерческую идею). Поэтому многие ЯП позволяют создавать конструкции с неявной логикой. В то время как Pascal будучи учебной разработкой не содержал (да и по сей день не содержит) конструкций призванных уменьшить число строк в коде. Что и делает его самым понятным ЯП.

Собственно за это Delphi и не любят. Так как признать, что простое и лаконичное решения на Delphi требует на таких ЯП как C, Java, Php и подобных, "достать до левого уха правой рукой из-за спины" (опять же согласно "кульных традиций" которыми так гордятся), не достойно "настоящего кульного кодера". Вот эти кульные кодеры и устраивают провокации, так сказать авось кого-то переманим и им тоже не сладко будет. Хотя ни одного конструктивного аргумента так никогда и не слышал. Причем предметом гордости сишников (примем не оголтелой школоты) есть именно конструкции призванные удешевить их труд.

Так, что господа признаете поражение?


--------------------
Ошибка не становится истиной по причине широкого распространения,
как и Истина не становится Ошибкой из-за того, что никто её не видит.
PM   Вверх
serger
Дата 28.1.2013, 17:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



drkot,  smile 

Цитата(drkot @  28.1.2013,  18:07 Найти цитируемый пост)
Так вот практика показала, что "классический" подход к написанию кода дорабатывается и правится гораздо быстрее, содержит скрытых багов, в то время как "вебная" стилистика приводит к сложностям доработки не только чужого, но даже своего кода. 

Что такое Классический подход, чем отличается от веб, почему сложности?!
Цитата(drkot @  28.1.2013,  18:07 Найти цитируемый пост)
Вызвано это на мой взгляд отсутствием понимания принципа работы программы, ее интерпретатора и компьютера в целом. 

Почему? Причём тут это?!
Цитата(drkot @  28.1.2013,  18:07 Найти цитируемый пост)
Желание "упростить работу", "уменьшить количество операторов (строк)" (несет исключительно коммерческий смысл, так как еще 15-20 лет назад платили за количество строк кода, и введение конструкций позволяющих объединить несколько строк в одну удешевляло программу) привело к потере логики программистами, на фоне бурного желания создать "кульный" код (мода призванная реализовать коммерческую идею). 

А-а-а-а!!! Нет ну конечно - бабки рулят!
Цитата(drkot @  28.1.2013,  18:07 Найти цитируемый пост)
Поэтому многие ЯП позволяют создавать конструкции с неявной логикой. В то время как Pascal будучи учебной разработкой не содержал (да и по сей день не содержит) конструкций призванных уменьшить число строк в коде. Что и делает его самым понятным ЯП.

При чём тут "Неявная логика"?! Да - паскаль для обучения алгоритмическим языкам! Что плохого в краткости?!


--------------------
упс!
PM MAIL WWW Skype GTalk Jabber   Вверх
drkot
Дата 28.1.2013, 17:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ищущий
***


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

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



serger,  ты по делу пиши, а не расплывайся по древу при отсутствии аргументов. А то если так об стену биться в голове совсем ничего не останется.
Даешь пост умнее этого или 
принимай вызов на тестирование производительности компилятора.
Прочий неконструктивный бред считается полной и безоговорочной капитуляцией со стороны 
sergerk0rvinLSD и прочих балаболов которые не в состоянии подкрепить примером, свои огульный заявления. 
Уверен в том что ни один из Вас не в состоянии принять такой вызов, так что читайте книжки, наберетесь силенок пишите, сравним быстродействие кода.

Главное пост со сравнением быстродействия был тихо проигнорирован, а значит возразить там нечего.


--------------------
Ошибка не становится истиной по причине широкого распространения,
как и Истина не становится Ошибкой из-за того, что никто её не видит.
PM   Вверх
serger
Дата 28.1.2013, 18:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



drkot, это вы с LSD меряйтесь... ;) Этих тестов в инете - море. Смысла не вижу, да и не могу - делфи нет не было, и, дай бог, не будет!

http://www.sql.ru/forum/actualthread.aspx?tid=412782
и вообще нет Delphi: http://benchmarksgame.alioth.debian.org/

Добавлено через 4 минуты и 13 секунд
http://forum.sources.ru/index.php?showtopic=184077&st=0


--------------------
упс!
PM MAIL WWW Skype GTalk Jabber   Вверх
drkot
Дата 28.1.2013, 19:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ищущий
***


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

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



serger, собственно в
Цитата(serger @  28.1.2013,  18:23 Найти цитируемый пост)
http://www.sql.ru/forum/actualthread.aspx?tid=412782

в итоге пришли как минимум к паритету
(проверить что там и как к сожалению не представляется возможным из-за отсутствия исходников)
а в 
Цитата(serger @  28.1.2013,  18:23 Найти цитируемый пост)
http://forum.sources.ru/index.php?showtopic=184077&st=0

java отправили в накаут

а Вы сударь просто балабол, так как код привести не в состоянии.

ну и легендарная статья от Петровича, для тех кто не видел это своими глазами.

Цитата(LSD @  13.10.2006,  22:49 Найти цитируемый пост)
Вообще язык программирования это инструмент, и как любой инструмент он должен иметь защиту от неправильных действий пользователя. Никто же не требует снять защитный кожух, только на том основании что это дескать снижает производительность труда, т.к. приходится делать два дополнительных движения рукой. Убирать защиту нужно только в том случае если она не дает выполнять работу. А аргументы типа "слесарь первого разряда никогда не сунет руку в работающий станок" - это не серьезно. Или дело в том, что в случае со станком человек рискует своим здоровьем, а в случае с программой небольшим нагоняем от клиента?

LSD, признан комрадом и защитником Delphi.

Это сообщение отредактировал(а) drkot - 28.1.2013, 22:12


--------------------
Ошибка не становится истиной по причине широкого распространения,
как и Истина не становится Ошибкой из-за того, что никто её не видит.
PM   Вверх
Akella
Дата 28.1.2013, 20:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

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



Цитата(drkot @  28.1.2013,  17:07 Найти цитируемый пост)
"достать до левого уха правой рукой из-за спины"


Зато сколько уважения к такому человеку сразу  smile 
PM MAIL   Вверх
k0rvin
Дата 29.1.2013, 06:57 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 442
Регистрация: 24.1.2010

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



Цитата(drkot @ 28.1.2013,  15:25)
k0rvin, отказ от участия считается техническим поражением.

В специальной олимпиаде? Ничего, переживу.

Цитата(drkot @ 28.1.2013,  15:25)
реализовать то как раз не мудрено... вот только этот пример и иллюстрирует не рациональный кодинг. Так что вытирайте пену, господа.
Код

for c in SomeCollection do begin
  if c.SomeProperty < 10
   then WriteLn(c.SomeProperty, c.OtherProperty);
end;

Это не то же самое. Иными словами: мне нужна выбока из произвольной коллекции элементов (список/массив/хештаблица и т.п.). Нужно не напечатать их свойства, а создать новую коллекцию на основе старой.

Цитата(drkot @ 28.1.2013,  15:25)
Для меня результат очевиден... Даже C++ отстает

Какие ваши доказательства?

Цитата(drkot @ 28.1.2013,  15:25)
Предлагаю волновой поиск пути с применением строковых определителей проходимости. Согласны?

Предлагаю реализовать унификацию на уровне языка. Согласен?


--------------------
“Object-oriented design is the roman numerals of computing.” — Rob Pike
All software sucks
PM MAIL   Вверх
serger
Дата 29.1.2013, 07:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



drkot, такое чувство, что мы на разных планетах. Смысл Ваших фраз до меня доходит смутно и не с 1 раза...

Вот обратный вариант - люди пытались подогнать скорость делфи: http://delphimaster.net/view/14-1088491127
правда - 10 лет назад. И что?

Вот, например:

http://jug.ru/archive/-/blogs/12357
http://habrahabr.ru/post/130113/

Мне это интересно чисто для общего развития.


--------------------
упс!
PM MAIL WWW Skype GTalk Jabber   Вверх
k0rvin
Дата 29.1.2013, 07:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 442
Регистрация: 24.1.2010

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



drkot, да, а хочешь серьезно померяться, реализуй на делфи вот это.


--------------------
“Object-oriented design is the roman numerals of computing.” — Rob Pike
All software sucks
PM MAIL   Вверх
Alexeis
Дата 29.1.2013, 10:28 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 14
Всего: 459



  Для тестов масштабные задачи не годятся. Слишком много факторов. Хочешь тестить, возьми алгоритм в 200-300 строк кода. На самом деле все уже проверенно до нас. По факту, делфи не делает код, который увеличивает сложность алгоритмов. Но по возможностям оптимизации компилятор не блещет. оптимизированный код встроенных библиотек написан на асме. Делфи не делает оптимизацию процессоров pentium по параллельному вычислению нескольких регистров, не разворачивает циклы и рекурсии. Не делает оптимизацию SSE. Но умеет оптимизировать локальные переменные в регистрах и делает оптимизацию RVO. 


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Akella
Дата 29.1.2013, 14:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

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



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

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

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


 




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


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

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