![]() |
Модераторы: LSD Страницы: (144) « Первая ... 108 109 [110] 111 112 ... Последняя »
( Перейти к первому непрочитанному сообщению ) |
![]() ![]() ![]() |
|
Athari |
|
||||||
![]() Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 27.6.2007 Где: Казань, Россия Репутация: 1 Всего: 1 |
@diadiavova
Сложно сравнивать, потому что он в первую очередь функциональный. Впрочем... глянул на http://www.mindscapehq.com/blog/index.php/...uld-lust-after/ 1. "Nullable" reference -- у меня потребности не возникало; проверку на null-корректность можно повесить на решрапер или какой-нибудь другой статический анализатор. Ошибка компилятора -- это не всегда хорошо: иногда хочется просто забить на логически невозможную ошибку, а не убеждать инструмент в обратном. 2. Immutable classes -- это всё-таки философия функциональщины, в ООПе такое практикуется нечасто. Вот readonly на свойствах -- синтаксический сахар для read-only свойств с readonly backing field -- да, было бы полезно. 3. Inline classes -- в джаве я такое видел для замены делегатов разве что (в этом случае оверрайдился один метод). Чтобы класс использовался только в одном методе -- у меня практически не случается. Экономия двух строчек кода раз в год. 4. Partial application -- ну совсем функциональщина. Наверное, надо мозг как-то особенно настроить, чтобы понять, как применять в реальном коде. ![]() 5. Pattern matching -- выглядит как нечто мощное, но в примерах не нашёл ничего реально полезного (методов с out параметрами во фреймворке очень мало, несколько extension методов написать не проблема; зачем нужен кастомный variant -- неясно). Вот в Nemerle макросы есть охренительные -- это да, это я хочу.
Э... переполнение в for?
Видел, прикольно (в документации к LINQ to XML упоминается часто). Только я XML в код обычно не вставляю, есть же сериализация. |
||||||
|
|||||||
Zloxa |
|
|||
![]() Чо? ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3473 Регистрация: 12.9.2008 Репутация: 4 Всего: 161 |
У вас не остается ощущения, что вы говорите прям как делфист? -------------------- Достоверно известно, что 89% людей доверяют статистике взятой с потолка ![]() |
|||
|
||||
Beltar |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 627 Регистрация: 11.1.2006 Репутация: 2 Всего: 7 |
Например?
Делай. Это же в духе Ц эффективно решать не существующие в нормальных инструментах проблемы. Хотя в случае Акеллы там явно и есть инсталлятор. Но если в каждый инсталлятор .NET целиком совать... У меня вот Paint.NET стоит. Хорошая программа, 3.5 метра в инсталле. А с .Net было бы 300. И таких программок может быть десятки. -------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. ![]() Пищущий на C++ мужик. Даже если это мужик сидит в написанном на Delphi и жрущем паскалевскую библиотеку билдере. |
||||
|
|||||
Athari |
|
||||||||
![]() Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 27.6.2007 Где: Казань, Россия Репутация: 1 Всего: 1 |
@Zloxa
Отсутствие библиотеки и отсутствие инструмента -- это совсем не "час работы". ![]() (Если картинка не отобразилась)
Ага, я, как Моська, лаю на слона, а агрессивные дельфисты на авианосец лают. ![]() @Beltar
Инсталлятор -- это не только установка зависимостей, но и средство для нормальной установки в систему в нормальную директорию (чтобы залезть в Program Files, нужно вручную распаковывать и копировать с правами админа и прочей хренью заниматься), средство установки ярлыков в главное меню и на рабочий стол (мало кому нравится лазать по дебрям файловой системы для запуска), средство для удаления программы (с вынесением приложения, а также его настроек из реестра и пользовательских папок, причём не нужно вспоминать/выяснять, где что лежит), средство автоматической установки с помощью скриптов (сисадмины и внедренцы большое спасибо скажут) и так далее. Но если пишешь корпоративный софт, который запускается на двух компах -- да, всё это "решение несуществующих проблем". Выгляни уже за границы своего жалкого мирка.
Оставь свои эротические фантазии при себе. .NET 4.5 весит 50 метров. .NET 4.0 Client Profile -- 41 метр. Исполняемые файлы дельфи со всеми пакетами весом по 10 метров каждый ты уже кидал. ![]() |
||||||||
|
|||||||||
Athari |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 27.6.2007 Где: Казань, Россия Репутация: 1 Всего: 1 |
@Zloxa
Не остаётся. Ярый дельфист говорит: "Это никому не нужно" (в крайнем случае: "Без этого можно можно прожить"). При этом любому нормальному человеку ясно, что библиотека и инструмент решают вполне конкретные задачи и проблемы. Рассмотрим с другой стороны: дельфи в современном мире -- это написание обёрток для баз данных (исключения -- подтверждения правила). Шарп и джава имеют гораздо более широкий спектр применения: десктоп (от коробочного софта до энтерпрайза), веб (всех масштабов, для огромных проектов -- особенно), мобилки, игры -- они везде. Поэтому когда дельфист говорит "не нужно" -- он подразумевает свои обёртки над БД. Я, конечно, не могу сразу говорить за всех (не тот опыт), но вот от краткой записи immutable классов (синтаксического сахара!) не вижу очевидных решающих преимуществ ни в одной индустрии. При этом я не говорю, что immutable типы не нужны -- в сложных алгоритмах, в многопоточности они рулят. Да и формулировка "выглядит как нечто мощное, но в примерах не нашёл ничего реально полезного" означает именно отсутствие хороших конкретных примеров. Если я что-то привожу в пользу шарпа, то я сходу могу назвать десятки реальных применений, но ярый дельфист это слушать не будет -- ему аксиоматично "не нужно". Если есть желание доказать достоинства вышеупомянутого синтаксического сахара -- я весь внимание. |
|||
|
||||
Beltar |
|
||||||||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 627 Регистрация: 11.1.2006 Репутация: 2 Всего: 7 |
Исполняемый файл Delphi поздних версий весит метра 3. Отладочный около 10.
Ты, как LSD, который думает, что в Delphi чего-то нет, если он об этом не слышал.
Я ни разу не видел .NET приложение в виде единого файла, которое шло бы с самим .NET. Только распространяемые на дисках крупные пакеты.
Твой жалкий мирок и близко не соприкасался с крупными предприятими, однако у тебя хватает наглости делать резкие заявления. Добавлено через 3 минуты и 46 секунд
Придумываешь. Наверное, можно уже включить мозг и подумать, что если человек пишет на чем-то, значит его там в основном все устраивает.
Десктоп на жабе? Спасибо, даром не надо.
http://lurkmore.to/Тысячи_их -------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. ![]() Пищущий на C++ мужик. Даже если это мужик сидит в написанном на Delphi и жрущем паскалевскую библиотеку билдере. |
||||||||||||
|
|||||||||||||
diadiavova |
|
||||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 4 Всего: 142 |
Ну не знаю, я за дельфистами религиозность заметил, а вот остальные - не более чем этого можно было бы ожидать, исходя из того, что всяк кулик своё болото хвалит. Для меня мейнстрим - определённый показатель, в том смысле, что г-но мейнстримом не станет, а чувство причастности мне вообще пофиг. В этом смысле как раз круто - хорошо разбираться в чём-то, в чём другие не шарят. Так что тут мимо, по крайней мере в моём случае. Я сильно интересовался, что бы мне ещё такое освоить, но в результате пришёл к выводу, что ни одна технология не может мне предоставить той же степени комфорта при тех же возможностях, а стало быть и осваивать лень ![]() При инкременте счётчика в ил-коде формируется инструкция add.ovf, а не add. Так в том и соль. Оопешные штучки там в основном для взимодействия с другими языками, так вообще там прикольных штук много иесли использовать по назначению, то можно не пару строк сэкономить, а гораздо больше. Но писать только на нём - видимо неправильно, надо смешивать, тогда толк будет. Немерле как-то мимо меня прошёл, так что я не в курсе его фич. Сериализация из другой оперы, а тут как и со многими другими фичами, надо пощупать, чтобы понять где использовать можно. Так с ходу вспомнить трудно, оно вроде по мелочи всё, но просто сталкивался неоднократно с тем, что начинаешь на шарпе делать что-то знакомое по бейсику, а оно не работает, начинаешь разбираться, а оказывается там надо ручками делать что-то. Так навскидку помнится в винформах можно в дизайнере свойства контролов привязывать к параметрам приложения, при следующем запуске формы эти свойства восстанавливают значенич, которые они имели при закрытии. В шарпе этого не происходит, там надо сохранять параметры вручную. Это одна строчка кода, но написать её надо в обработчике события закрытия формы, что отстой. И куча подобных мелочей присутствует. К разым числовым типам можно применять арифмитические операторы, всё обрабатывается на ура, в шарпе будут проблемы, надо явно выполнять приведение типов. Есть оператор Like - пустячок, а приятно. ![]()
Добавлено через 5 минут и 16 секунд Дистрибутив - да, в развернутом виде не помню точно, но вроде что-то в районе 800 -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит ![]() |
||||
|
|||||
Athari |
|
||||||||
![]() Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 27.6.2007 Где: Казань, Россия Репутация: 1 Всего: 1 |
@Beltar
После бана память очистилась? Я перечислял фичи шарпа, которых нет в дельфи. Я перечислял фичи Visual Studio, которых нет в дельфи. Я перечислял возможности инструментов, аналогов для которых нет в дельфи. В ответ в лучшем случае слышал про что-то полузаброшенное и полуработающее, покрывающее половину фичи -- для 5-10% фич. Ответных ходов "в дельфи есть вот такое, а в шарпе нет" -- ноль без палочки. Дырка от бублика. Шиш с маслом.
Мой жалкий мирок соприкасался с Кофе Хаузом и Сбарро.
JetBrains производят одни из лучших средств разработки (жаба, пыха, питон и др.), почти все написаны на джаве. Я, конечно, тоже от этого не очень в восторге (интерфейс инопланетный), но джава на десктопе есть. И как обычно: ты придрался к одному пункту из десяти, и считаешь долг выполненным.
Тысячи игр на дельфи? Тысячи веб-сайтов на дельфи? Тысячи мобильных приложений на дельфи? Давай список, я жду. ![]() Я даже упрощу задачу: если продукт общеизвестный, то считается за 10; если огромный, популярный, про который каждая собака знает -- за 100. |
||||||||
|
|||||||||
Beltar |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 627 Регистрация: 11.1.2006 Репутация: 2 Всего: 7 |
Фортран, C++, PL/1,... Добавлено через 2 минуты и 28 секунд
А у меня завод на 10000 чел. Сколько компов не знаю. Возможно что больше, чем у всех ваших клиентов вместе взятых. Еще меряться будем? -------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. ![]() Пищущий на C++ мужик. Даже если это мужик сидит в написанном на Delphi и жрущем паскалевскую библиотеку билдере. |
||||
|
|||||
k0rvin |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 442 Регистрация: 24.1.2010 Репутация: 1 Всего: 5 |
Приводили ж пример уже
— частично примененная функция сложения. За тем же, за чем и указатели, только без указателей и NullPointerException. В Swing хотя бы JTable адекватный, в отличие от этого вашего TDBGrid. =) -------------------- “Object-oriented design is the roman numerals of computing.” — Rob Pike All software sucks |
||||
|
|||||
Athari |
|
||||
![]() Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 27.6.2007 Где: Казань, Россия Репутация: 1 Всего: 1 |
@diadiavova
Это, конечно, дофига, но при теребайтных винтах и игрушках на десятки гигов -- я бы не беспокоился. Да и сама винда с каждой версией всё толще и толще. На общем фоне незаметно. Хе. Упаковать 800 метров в 50 -- я МС ещё сильнее зауважал. ![]() @Beltar
Фортран -- как ИЕ6: в своё время очень прогрессивный, но со слишком догой жизнью. Первый оптимизирующий компилятор. Первый реально кросс-платформенный язык. Язык с официальным стандартом. В своё время он был реально крут. Плюсы в своей нише пока не побеждены. Пока это не произойдёт -- плюсы в своей нише в наше время круты. |
||||
|
|||||
LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 9 Всего: 538 |
Пруф? -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
Athari |
|
||||||
![]() Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 27.6.2007 Где: Казань, Россия Репутация: 1 Всего: 1 |
@Beltar
На скольких компьютерах стоит твой софт? На всех тысячах компов? Насколько критичные функции выполняет твоя программа? Если она не запустится, завод встанет? @k0rvin
Выглядит прикольно, но в чём принципиальное преимущество перед Enumerable.Range(1, 10).Select(v => v + 1) / from i in Enumerable.Range(1, 10) select i + 1 -- не вижу. Ну да, более выразительно. Но я LINQ не использую настолько часто, чтобы экономия была оправдана. Видимо, это может быть полезно в программах, ориентированных на вычисления (собственно, где функциональное программирование рулит). Я такие не пишу. ![]() И, в общем-то, это довольно узкий класс задач. Императивная реализация на плюсах обычно будет быстрее, подозреваю, поэтому в тех же игрушках и прочих программах, сильно нагружающих комп вычислениями, предназначенных для простых смертных потребителей, менее выразительный код будет более уместен. Вики подтверждает: http://en.wikipedia.org/wiki/Functional_pr...Use_in_industry -- популярность не очень большая.
Не понял. Это сообщение отредактировал(а) Athari - 17.5.2013, 19:15 |
||||||
|
|||||||
Beltar |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 627 Регистрация: 11.1.2006 Репутация: 2 Всего: 7 |
Пруфы во многочисленных высказываниях ранее.
Фортран появился всего на 2 года раньше Алгола, и при этом Алгол уже крыл Фортран, как бык овцу.
Ну никак не Фортран, который в те годы с магнитных лент читал на уровне операторов. Хотя отсутствие средств ввода-вывода в Алголе, так что каждый лепил, как бог на душу положит, его и сгубило. Что касается оптимизации, то 1964-ом в СССР был создан очень эффективный оптимизирующий компилятор с Алгола. ИМХО если бы не IBM, то подох бы Фортран в 70-ые и никакие библиотеки бы не помогли. Собственно их и сейчас явно можно пакетно перегнать в Си и такие услуги по автоматическому конвертированию древних исходников вполне доступны. Впрочем история IT полна лжи и бреда, например, кроссплатформенность Си, как языка сильно уступает таковой у более абстрактного Паскаля. Ах да, P-код ведь потому и называется так, что появился в Паскале за 30 лет до .NET. -------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. ![]() Пищущий на C++ мужик. Даже если это мужик сидит в написанном на Delphi и жрущем паскалевскую библиотеку билдере. |
|||
|
||||
k0rvin |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 442 Регистрация: 24.1.2010 Репутация: 1 Всего: 5 |
В том же, в чем преимущество этого твоего кода перед
Добавлено через 3 минуты и 26 секунд Так правильней. Это пока. Java и вообще использование байт-кода тоже не сразу стало популярным. Добавлено через 6 минут и 52 секунды А
всегда будет популярен язык с наименьшей стоимостью примитивов и средств абстрагирования. -------------------- “Object-oriented design is the roman numerals of computing.” — Rob Pike All software sucks |
||||
|
|||||
![]() ![]() ![]() |
Правила ведения Религиозных войн | |
|
1. Уважайте собеседника 2. Собеседник != враг 3. Старайтесь воздерживаться от тем вида "Windows Rulez" или "Linux Rulez" С уважением, Smartov. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Религиозные войны | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |