![]() |
Модераторы: LSD Страницы: (144) « Первая ... 113 114 [115] 116 117 ... Последняя »
( Перейти к первому непрочитанному сообщению ) |
![]() ![]() ![]() |
|
Beltar |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 627 Регистрация: 11.1.2006 Репутация: 2 Всего: 7 |
Если вас старательно допрашивает дяденька в очках, то дяденьке на любом языке нужны некислые скиллы, возможно, еще и по узкому профилю. Хотявсегда были есть и будут 100500 мест, где программирование лишь вспомогательный инструмент и там так пытать не будут, как раз в таких местах от Ruby с PHP толку ноль. А вообще мы лурку тоже почитываем. И как я уже говорил, низкий спрос, часто означает просто обилие предложений, что для Delphi и сейчас не проблема. Кстати, не преподавали бы Delphi массово, она бы может сегда считалась не хуже плюсов или новомодной хрени по престижу. Это сообщение отредактировал(а) Beltar - 19.5.2013, 21:26 -------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. ![]() Пищущий на C++ мужик. Даже если это мужик сидит в написанном на Delphi и жрущем паскалевскую библиотеку билдере. |
|||
|
||||
Akella |
|
||||||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 1 Всего: 329 |
Много всего есть "искаропки", как говорится. Грамотно сделано. Удобно, красиво. Неплохая документация + поддержка как со стороны авторов, так и со стороны сообщества разработчиков. Считаются одни из лучших библиотек. Добавлено через 2 минуты и 4 секунды
меня интересует не просто под дотнет, а именно для веб-приложения, чтобы работало в браузерах |
||||||
|
|||||||
Athari |
|
||||||||||||||||||||||||
![]() Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 27.6.2007 Где: Казань, Россия Репутация: 1 Всего: 1 |
@diadiavova
Ты потерял тип результата. Твой способ не работает с объектами, которые не поддерживают отражения. Твой способ накроется медным тазом в случае нетривиальных перегрузок метода или опциональных аргументов (отражения не реализуют "сишарповую" логику выбора наиболее подходящей перегрузки). Твой способ не поддерживает out/ref аргументов, именованных аргументов, params и ещё 100500 фич языка. Твой способ не работает с дженериковыми методами. Твой способ работает только в самых тривиальных случаях. Бесполезен чуть менее, чем полностью.
Генераторы нужны для создания итераторов. Итераторы нужны для LINQ. Полезность LINQ объяснять не буду.
Потому что студия -- это оболочка для запуска решарпера? ![]() Этот инструмент настолько повышает эффективность разработки на шарпе, что не рассматриваю всерьёз разработку без него. Да и цена у него смешная по сравнению со студией. Мы же говорим про серьёзную разработку, а не забавы студентов? (Впрочем, для учащихся отдельные скидки.) И вообще, в этом топике много купивших дельфи? ![]()
CodeRush для дельфи больше не существует. DevExpress положил на него большой и волосатый. Давно. http://www.devexpress.com/Support/Center/Q.../Details/S91563
Ладно, запустить скрипт можно. Как передать в скрипт объект дельфового класса? Как обработать полученный из скрипта объект? Не надо ли случаем реализовывать целую кучу интерфейсов и прочего хлама?
То есть я сам должен придумать сложный пример, а потом переписать его на фшарп, при этом не зная его? ![]()
Твой пример настолько же нагляден, насколько наглядна демонстрация рекурсии на факториале. @Beltar
Посчитай количество пунктов в меню рефакторинга.
Не все языки умеют. Я бы даже сказал, что меньшинство умеет. А если умеют, то взаимодействие с дельфи очень ограничено. Например, попробуй экспортировать функции C++, чтобы они были доступны дельфи. Без 'extern "C" __declspec(dllexport) __sdtcall' -- не обойдёшься. Классы -- не экспортируешь, не импортируешь. С Java или C# ты через DLL не соединишься вообще никак, они не умеют писать в таблицу экспорта EXE.
Ну, для пользователей скриптование. Или вон в игрушках всяких разных встроено очень часто. Всякий раз, когда какой-то кусок часто очень меняется, и пересобирать ради него весь проект в течение часа -- непозволительно долго.
LINQ работает не только с БД, но и с любыми коллекциями. Кроме того, есть байндиги к XML (XDocument), событиям (Rx) и ещё целой куче вещей.
А ты попробуй. Гарантирую сюрпризы. ![]() Ну то есть выполнить пример "калькулятор" -- да, сможешь (убив день). Как только понадобится передавать дельфовые объекты скрипту и получать объекты обратно -- начнётся веселье. API там такой, что удавиться можно. |
||||||||||||||||||||||||
|
|||||||||||||||||||||||||
Athari |
|
||||||||||||||
![]() Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 27.6.2007 Где: Казань, Россия Репутация: 1 Всего: 1 |
@Akella
Аж ОДИН случай -- это такая представительная выборка, что офигеть. ![]()
Выровнялись же более-менее? В смысле, разница теперь не в 10 раз. ![]()
Скриптовые сайты тоже временами переводят в "оффлайновое" состояние, чтобы не выполнилась полузалитая папка со скриптами.
Приложение может запускаться с ограниченными правами и иметь доступ только туда, куда дозволено.
Нужно только для г#вноынтырпрайза. Кроме того, есть крутые JS-либы, которые нет никаких проблем использовать в любой среде. На самом деле: 1. Без дефрагментации памяти в вебе делать нечего. Программа не сможет работать месяцами, выдерживая нагрузку в миллионы запросов. Свалится, не сумев выделить память. 2. Без жёсткого контроля за утечками памяти и ошибками доступа к памяти в вебе делать нечего. Падение программы недопустимо. Скажем, при всей популярности плюсов веб-сайты на них тоже никто не пишет (не считая серверов, которые в конечном счёте всё равно запускают скрипты и JVM/.NET). @Beltar
Не все писают от радости при перспективе быть "вспомогательным инструментом". Самоуважение, всё такое. Я считаю, что или работать в компании, в которой софт -- основной продукт, или работать на себя, а всё остальное -- для тех, кто себя не уважает. (Даже несмотря на то, что в тех же банках платят весьма некисло, вроде.)
Ты в универах много видел молодых преподов? Обитающие там как в молодости паскаль преподавали, так и продолжают. Но вымрут рано или поздно, как динозавры. |
||||||||||||||
|
|||||||||||||||
diadiavova |
|
||||||||||||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 4 Всего: 142 |
А какой тип возвратит динамический объект? ![]()
Это какие? А ты не заметил, что "мой способ" - это одна строчка кода примера? Можно все предусмотреть и сделать это придется только один раз. Кроме того, напоминаю, что в бейсике позднее связывание существовало задолго до динамических типов и все там работало, в том числе с ком-типами. Если надо эту же логику в шарп перенести, просто сделай это на бейсике, скомпили, декомпильни и посмотри что получится. В шарпе можно сделать так же.
Что из перечисленного невозможно реализовать, несколько усложнив пример, в том числе используя VisualBasic.CompilerServices?
Если это нужно только для линка, то его можно реализовать и без введения генераторов в язык. Если что-то вводится в язык, то речь должна идти о возможностях, используемых в повседневной практике, а если это не так, то и упоминать это как преимущество нет смысла. Линк - отдельная фича языка, а итараторы - отдельная, поэтому говорить, что итераторы нужны для линка - бред. А, ну если так, то конечно. Я-то как-то оболочкой обхожусь вообще-то ![]()
Судя по всему и для студии тоже, по крайней мере бесплатную версию для последней студии делать не будут, а жаль. Ну Акелла же там какие-то инструменты приводил. Я этого не знаю.
Я пример привел как линк выглядел бы, если бы методы класса энумерэйбл вызывались напрямую. Ну представь, что это методы какого-то другого класса, для которого в шарпе нет такого костыля как линк. Хотя я зря тебе это объясняю, потому, что ты и так уже все понял.
А чем она плоха? Многие приходят к пониманию рекурсии именно с этого примера. А ты как объяснил бы? -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит ![]() |
||||||||||||
|
|||||||||||||
Beltar |
|
||||||||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 627 Регистрация: 11.1.2006 Репутация: 2 Всего: 7 |
Кстати, кто юзал такую вот несуществующую либу http://otl.17slon.com/ ? Опен-сорса же на Delphi не существует, как нам известно от Атари.
А оно мне надо? Из существующих-то не все юзаются. А чего нету можно GEExperts поставить.
На тех, которые не умеют даже этого мне положить, как и 99% пользователей.
Это их проблемы, что они не умеют, и к ним коннект через задницу.
Логично блин. Только нафига среда разработки движка должна вообще что-то знать об этих языках??
80% Кодеров мира дают Атари по морде... Впрочем зачастую выбора особого нет, да и ваша айка для меня настолько же убога, как и наш завод, от того. что она больше в N раз, она ничуть не меньше, чем тупой клиент к БД. Кстати, по этой же причине я ни за что не пойду заниматься веб-дизайном, т. к. те же базы, только гимора больше. Добавлено через 1 минуту и 56 секунд
Элементарностью реализации без рекурсии. Намного нагляднее перебор файлов, или иной древовидной структуры. -------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. ![]() Пищущий на C++ мужик. Даже если это мужик сидит в написанном на Delphi и жрущем паскалевскую библиотеку билдере. |
||||||||||||
|
|||||||||||||
diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 4 Всего: 142 |
Если надо продемонстрировать преимущества рекурсии, то конечно, желательно выбрать пример, в котором рекурсивный код будет проще императивного, но вот для объяснения того, что такое рекурсия вообще, наиболее простой пример будет более наглядным. Кстати, человеку, никогда не видевшему рекурсию, даже этот пример придется еще обмозговать, прежде чем что-то дойдет. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит ![]() |
|||
|
||||
Athari |
|
||||||||||||||||||||||||||
![]() Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 27.6.2007 Где: Казань, Россия Репутация: 1 Всего: 1 |
@diadiavova
Именно. Нужно или передавать как аргумент, или кастовать после вызова. В случае с dynamic это делать ненужно.
А ты попробуй. Гарантирую, будет не хуже "менеджера памяти" от Белтара. ![]()
Если в шарпе декомпилировать "в .NET 2.0" динамический вызов, то там возникнут совершенно невменяемые портянки кода с использованием всяких CallSite<> -- на отражениях в разы более читаемо (правда CallSite быстрее, потому что кэширует). Документация по этому классу фактически отсутствует. Есть только краткие описания методов. Никаких примеров кода и how-to. Можешь кинуть примитивный код на VB.NET с утиной типизацией, компилирующийся в .NET ранее 4-й версии? А то я язык не знаю.
Как будешь реализовывать выбор лучшей перегрузки метода? И вопрос на засыпку: ты сможешь добиться быстродействия, сопоставимого с динамическими вызовами? А то Reflection на несколько порядков (!) медленнее, чем CallSite.
Попробуй написать Enumerable.Join без использования генераторов. (Я писал. На PHP. Вспоминать страшно.)
Я уже гуглил. Эти инструменты -- детские поделки по сравнению с решарпером.
Ну я и сообщаю: будет печально. Нужны портянки обёрток. Теоретически могут сущестовать какие-то инструменты для дельфи, упрощающие задачу, но практически я в этом сомневаюсь. Для COM не знаю, а для Lua генератор обёрток нашёлся, 2005-го года что ли (искал не очень основательно, просто поверхностно прошёлся по советам в обсуждениях на SO и топу гугла).
Рекурсию желательно объяснять на том, где она нужна. То есть не сворачивается в цикл хвостовой рекурсией. (Понятно, что любую рекурсию можно в цикл переписать.) Можно начать с дерева как с рекурсивной структуры, потом перейти к алгоритмам на ней. Можно пройтись по дереву директорий. Можно быстрый поиск реализовать. (Для последних очень критична выразительность языка. Дельфи не подойдёт. Питон подойдёт.) Да числа Фибоначчи в конце концов (и хрен с ней с производительностью). @Beltar
"Не существует" -- это гипербола, описывающая ситуацию, когда объём открытого кода на дельфи составляет менее 0.0001% от общего кода в популярных репозиториях, и этот код не покрывает базовые задачи. Ваш К.О.
Тебе -- нет. Ты мне уже продемонстрировал, как ты используешь константы вместо перечислений и пишешь методы по 100 строк. Тут медицина бессильна, что называется. ![]()
Как грустно. Тебе не положить только на C и C++. ![]() Ты меня заинтриговал. Я на SO запостил вопрос: http://stackoverflow.com/questions/1664047...-link-libraries Интересно, будут ли вонять, что вопрос слишком общий...
Как ты будешь вызывать скрипты из кода? Силой мысли? ![]()
Веб-дев -- это вообще вещь страшная, если заниматься всем от нутрей до морды... |
||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||
Athari |
|
||||||
![]() Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 27.6.2007 Где: Казань, Россия Репутация: 1 Всего: 1 |
@Beltar
Лол:
Дважды лол:
Белтар, ты уверен, что эта библиотека что-то упрощает? ![]() |
||||||
|
|||||||
Akella |
|
||||||||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 1 Всего: 329 |
да, я такое уже где-то слфшал не раз Добавлено через 1 минуту и 23 секунды
Ага, так всё-таки было что-то такое? Наверное потом вышли в свет cnPack и gExperts и CodeRush перестали покупать. Добавлено через 3 минуты и 32 секунды Я думаю, что как-то можно. Ведь с объектами MS Office работают ведь из Delphi. Только свой объект зачем передавать в скрипт? Что скрипт будет делать с моим самопальным классом? Или что имеется ввиду? Добавлено через 5 минут и 14 секунд
http://www.remobjects.com/hydra/
|
||||||||
|
|||||||||
serger |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 518 Регистрация: 19.6.2007 Где: Ижевск Репутация: 0 Всего: 5 |
... Я вот одно не понимаю, зачем в таблицу вытаскивать миллион строк?!
![]() И ещё гордиться этим! -------------------- упс! |
|||
|
||||
Akella |
|
||||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 1 Всего: 329 |
http://www.gamedev.ru/projects/forum/?id=140784 http://www.sql.ru/forum/970671/esli-tebe-i...en-lua-v-delphi Добавлено через 3 минуты и 44 секунды я вроде писал, что заказчик на своём опыте сделал вывод, т.е. это не первый раз уже а я просто подтвердил ещё один раз на свём опыте ![]() Добавлено через 6 минут и 3 секунды этот энертпрайз, который ты называешь "г#вно", прекрасный и прибыльный сектор ![]() Тут вопрос состояит в том, что не изучать глубоко ничего лишнего кроме Delphi. Добавлено через 7 минут и 21 секунду Это не овноклассники, в организации поменьше народу, однозначно, и запрос тоже поменьше, значительно. Добавлено через 8 минут и 17 секунд
###... при чем здесь популярность я так понял, что ты меня не понял ну да ладно, проехали ![]() Добавлено через 10 минут и 11 секунд я такое не слашал от него но с веренностью могу сказать, что на дульфи опенсорса тоже хватает Добавлено через 13 минут и 15 секунд
гуглил и использовал - разные веСЧи |
||||
|
|||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 1 Всего: 329 |
У сетки весьма продвинутые инструменты для поиска, фильтрации, группировки, сортировки и т.д., которые работают "искаропки". Иной раз и SQL можно не использовать. |
|||
|
||||
Zloxa |
|
|||
![]() Чо? ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3473 Регистрация: 12.9.2008 Репутация: 4 Всего: 161 |
Я тоже майкрософту говорил, гооврил, мол 65536 строк в экселе - за глаза достаточно. ![]() -------------------- Достоверно известно, что 89% людей доверяют статистике взятой с потолка ![]() |
|||
|
||||
serger |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 518 Регистрация: 19.6.2007 Где: Ижевск Репутация: 0 Всего: 5 |
Akella, зачем они во view? на экран сколько строк влазит? Чел сколько строк может просмотреть за час?
Хранить или выводить? -------------------- упс! |
|||
|
||||
![]() ![]() ![]() |
Правила ведения Религиозных войн | |
|
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. |