На чем разработка быстрее.NET или Java?

Здравствуйте!

Хочу узнать мнение сообщества, на какой из этих технологий более высокая скорость разработки веб приложений и БД при прочих равных?

Лицензии, мобильные устройства в расчет не берем.Скорость разработки малых и средних проектов.

C# + SL или Java + hibernate + Flex или ваш вариант.

Так же есть мысли о python.

👍НравитсяПонравилось0
В избранноеВ избранном0
LinkedIn
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

А почему недалекого? Поясни.

2 DmitriyK

Сразу видно недалекого фанатика.

@Жека

классный способ — вышибаем клин клином: P

2 Антон Мартыненко:

о наболевшем... в текущем проекте есть вот такой код:


          try {
                Monitor.Enter( MyWorkersThreadControl );
                try {
                            ...
                            GC.Collect();
                        }
                    }
                } finally {
                    Monitor.Exit( MyWorkersThreadControl );
                }
            } catch( Exception e ) {
                ProcessError( cErrorProcessingWorkerData, e );
            }

SVN=> Blame говорит, что фиксилась бага с тайтлом «CPU usage is about 100% when %name% works»

@Антон Мартыненко

да люди 99% успеха проекта. технологии и сменить можно — twitter тому пример (RoR -> JVM/Scala)

2DmitriyK

ага по бырику написать на дот нете уродца и потом просрать проект когда это все не взлетит в продакшене (в случае хайлоад проекта за свои, а не при спонсорстве MS — вас повесят за яйца только за одно предложение дотнет использовать)

ЛЮДИ решают намного больше в общем случае

А вы книжки читайте, тогда взлетит.
Если главный девелопер (или архитектор) в коде вызывает GC.Collect [реальная история в одном из моих проектов] для того чтобы пофиксить постоянно вылетающие OutOfMemoryException — то кто же ему доктор и при чем тут платформа?

По поводу людей согласен 100%. Гавно можно на любом языке написать.

@Павел Васильченко в таком разрезе да, вполне могу согласиться- как то я излишне обобщил
Правда у Java всегда в рукаве есть всякие штуки типа apfuse -но оные далеки от универсальности: (

@Сергей Волошин повторюсь- люди все же важнее:) квалификация разработчиков решает больше чем технология (ну кроме совсем пиковых случаев типа CGI на с++ вместо.net или java)

@DmitriyK

Скорость разработки малых и средних проектов.

Тут как я понимаю о небольших проектах.
В том же ASP.NET MVC с JQuery можно сделать что то симпатичное, ну и WebForms тоже относительно неплохой для более простого дизайна, особенно если без аякса.
С небольшой базой удобно работать с помощью LinqToSql, хотя мне и сам SQL нравится.

За хайлоад проекты я не говорил, и автор емы вроде бы тоже

Вот тут такое написали

Digg: 200MM page views, 500 servers. Stack Overflow: 60MM page views, 5 servers. What am I missing?
(nb Stack Overflow is ASP.NET MVC + SQL Server, Digg was LAMP)
@Павел Васильченко
ага по бырику написать на дот нете уродца и потом просрать проект когда это все не взлетит в продакшене (в случае хайлоад проекта за свои, а не при спонсорстве MS — вас повесят за яйца только за одно предложение дотнет использовать)

ЛЮДИ решают намного больше в общем случае

Думаю для веб проектов быстрей будет на.NET

> порог вхождения очень не слабый все же по моему
это почему же? не каждый ПТУшник может запомнить несколько переходов, которые за тебя как правило генерирует ИДЕ?
вы чуть не понимаете, что такое порог вхождения.

фронтенды на джаве — это ужасно и очень рапид

на сайте Grails все сказано: «The search is over». Полностью согласен.

@silverwolf да я больше в сторону RoR\Grails буду смотреть и подобного если для себя), а не для себя у нас уже давно сплошной JSF (ну любят это говно в финансовом секторе, любят:)

А откуда такая инфа?...

К сожалению подтверждений привести не могу, где-то читал, может плохо читал:)

веб девелопмент на жаве у меня язык не повернеться назвать быстрым — порог вхождения очень не слабый все же по моему.

Посмотрите на stripes — очень простой и функционала для веб-дев достаточно. Spring MVC тоже не сложный.

@svini
ну JSF это отдельная тема и у меня есть один хороший совет — не нужно его использовать если это не мандаторное требование заказчика. Благо шишек на нем набито не мало

веб девелопмент на жаве у меня язык не повернеться назвать быстрым — порог вхождения очень не слабый все же по моему. Далеко не всякий проект я начал бы делать на ней (хотя для меня это основная технология)

Я вчера чуть не упал когда увидел ЭТО img-fotki.yandex.ru/...f_937d8dde_orig

Бъю пятаком полбу всех, кто все еще полагает какая жаба вся такая простая и для rapid development’а прямо создана

silverwolf не стал бы так утверждать
огромный парк WS с IBM JVM на AIX отлично работает в продакшене

и ни кто их менять не будет ближайшие годы

IBM JVM — давно умерла, сейчас они используют покупную Sun JVM, если я все правильно помню.

А откуда такая инфа?...

Согласен немного импульсивное замечание. Уточняю:
Одна которая нормально поддерживает актуальный стандарт и при этом ее можно использовать в продакшн окружении (не тормозит как OpenJDK)
JRockit’у осталось недолго, по понятным причинам.

Всякие ембедlедо-реалтаймы опускаем по причине их специализации.

В контексте разных бенчмарков интересно посмотреть на работу товарищей из Azul Systems, Excelsior JET к примеру.

видимо IBM JVM на котором у нас бегает огромное количество продакшен серверов — массовая галюцинация.

IBM JVM — давно умерла, сейчас они используют покупную Sun JVM, если я все правильно помню.

Есть только 1 — JVM от Sun (Oracle).

А остальные что? Откуда такая категоричность?

Согласен немного импульсивное замечание. Уточняю:
Одна которая нормально поддерживает актуальный стандарт и при этом ее можно использовать в продакшн окружении (не тормозит как OpenJDK)
JRockit’у осталось недолго, по понятным причинам.

Всякие ембедlедо-реалтаймы опускаем по причине их специализации.

silverwolf вы явили нам откровение

видимо IBM JVM на котором у нас бегает огромное количество продакшен серверов — массовая галюцинация.

А остальные что? Откуда такая категоричность?

И не стоит забывать что реализаций джава не так уж и мало: Sun JRE, IBM, BEA JRockit,

Еретик Есть только 1 — JVM от Sun (Oracle).

Почему нет очень дешевых Java хостингов?

Google App Engine — можно сказать бесплатный для вполне средних сайтов.

Можно и это посмотреть

Это же бенчмарк только старта виртуальной машины?...

И не стоит забывать что реализаций джава не так уж и мало: Sun JRE, IBM, BEA JRockit, и много других en.wikipedia.org/...rtual_machines

Java тоже будет обрастать нативностью.

Удивитесь, но в сановской джаве очень много функционала реализовано на С.

но когда мое Java IDE отжирает 1Г памяти

В эклипс например многое зависит от количества установленных плагинов, ну и размера кода конечно.

об Oracle уже и речи нет

Ну на 1 гб памяти с ораклом и без джава будут проблемы.

Кстати, с математическими задачами JVM справляется очень хорошо, особенно, если ее запустили с параметром -server.

Это если у вас основная нагрузка идет на память (например ГА), если же алгоритм оптимизирован под работу с процом (всякие умножения-сложения), то по моему опыту.Net веселее (под виндою), приблуда Mono (значительно слабее в обоих случаях) — вся инфа чисто из личного опыта и может не совпадать с реальностью.

Понятие производительности очень относительное.
Одно дело вычислять числа Фибоначи, другое — выдерживать тысячи хостов в секунду.
Кстати, с математическими задачами JVM справляется очень хорошо, особенно, если ее запустили с параметром -server.
Java считается тормознутой из-за тормознутости Swing. Но в Web приложениях он не используется, да и в десктоп приложениях можно использовать упомянутый выше SWT.
В случае с web:
Почему нет очень дешевых Java хостингов? Потому что Java web приложение один раз запускается и ждет запросов (т.е. ест память всегда), в то время как php приложение или cgi скрипт работаю только в момент запроса. Следовательно хостер может позволить себе больше клиентов с 50 посетителями в сутки в расчете на один сервер. Но в тоже самое время, с ростом посещаемости потребность в ресурсах у Java приложения растет гораздо меньше.
Если сравнивать с ASP.NET, то тут нужно сравнивать конкретные решения, так как производительность будет гораздо больше зависеть от кривизны рук программистов, чем от выбранной платформу.

Хотя было бы интересно сравнить перфоманс, скажем, Hibernate и Entity framework на одинаковых задачах с одинаковыми БД.

Можно и это посмотреть. Хотя на мой взгляд тут и без тестов все было ясно. Я вообще-то не сторонник дотнта, но когда мое Java IDE отжирает 1Г памяти, так что после него уже нечего запускать, об Oracle уже и речи нет, то performance -, а это впрочем новомодная тема играет роль. Вспомнят и про С с плюсами и Delphi все что быстрее работает, Java тоже будет обрастать нативностью. Можно взять пример с SWT.

2anonymous

Пруфлинк офигенен! Постыдились бы, тест на разных ОС и на разных СУБД и за 2004 год.

Можно хотя бы это, но как мне кажется.NET уже наполовину native, не считая GAC. (и зачем вообще он был нужен)

Статья 2004-го года, а бенчмарк на который она ссылается вообще кажется 2002, и вызвал кучу споров в инете по поводу обьективности


Пруфлинк?

Можно хотя бы это, но как мне кажется.NET уже наполовину native, не считая GAC. (и зачем вообще он был нужен)

Soft

Для большинства приложений вполне достаточно системы без состояния

Увы, проблемы с производительностью PHP уже здесь и сейчас. Возьмите тот же WP. Дальше будет только хуже.

Ведь состояния нужны не только для пользовательских объектов, но и для конфигурации приложения (ORM, Security, DI...)

Основное ограничение — это скриптовая сущность php. Время жизни приложения (скрипта) — один http запрос

Для большинства приложений вполне достаточно системы без состояния, а крупные данные сессии хранить в базе. Для тех 5% где требуется система с состоянием можно или взять ту же Java или же подключить библиотеку на С++ к парсеру php

И также следует иметь ввду преимущество.NET в производительности.

Пруфлинк?

2 Андрей

Приведите пример множества неприкладных программистов

Я сказал не «прикладные программисты», а «прикладные программисты в конкретной предметной области». Вам не кажется, что разница существенная и Вы скорее всего не поняли суть сказанного?
Вот смотрите: — Программист 1С — прикладной программист для бухгалтерии и смежных с ней областей; — Программист Delphi — прикладной программист (в какой предметной области?); — Программист С++ — системный и/или прикладной программист (в какой предметной области?); — Программист PHP — прикладной программист для web (в какой предметной области? web — не предметная область); — и т.д.
За исключением программистов 1С и подобных ему специализированных решений (например, Lotus Notes, направленный на документооборот), остальные программисты по определению без знаний предметной области, потому что заранее неизвестно какая предметная область будет в следующем проекте. Эти знания они получают (если способны и хотят их получить) уже работая над стартовавшим проектом. А у 1С-ника что ни новый проект, всё те же проводки, отчеты и дебет с кредитом:)

Смысл этой фразы:

Председателю суда необязательно знать программирование 1С

в контексте имевшей место беседы я не понял. 1С не имеет отношения к его предметной области. В юриспруденции председатель суда разбираться должен?

Хотя и.NET появился позднее чем Java, похоже что к настоящему моменту есть достаточно средств для создания массштабных решений на одной-двух платформах. И также следует иметь ввду преимущество.NET в производительности. Но это не относится никаким образом к скорости разработки. Если вы хотите быстренько создать хорошую программу, то вы, скорее всего потерпите фиаско, нежели то чего вы хотите. Но, это дело времени, может быть потом вам станет это доступно. А в настоящий момент, вы можете действительно получить то, чего вам надо, пока вы не передумали, но это увы как я говорил это дело времени. Хотя. NET может быть и быстрее, я бы отдал предпочтение Java. Java не намного уступает в производительности, зато многократно превышает в возможностях.

Soft

Это последствия минимальной сложности входа. Тот же менеджер по продажам после месячных курсов пишет в резюме «разработчик PHP».

Согласен. Еще одна причина — то что многие проекты стартовали тогда, когда php был совсем уж примитивен, и до сих пор содержат много кода с тех времен. И поддержка этого кода весьма сложна. Вот и получается, что лучше отказаться от старого и начать все с нуля, что например уже решили сделать, например, разработчики phpBB (правда, в рамках PHP).

Каких например? Особых ограничений найти не смог.

Основное ограничение — это скриптовая сущность php. Время жизни приложения (скрипта) — один http запрос. Соответственно, в случае сложного приложения, при каждом запросе будет происходить огромное количество инициализирующих приложение действий, нельзя хранить объекты в памяти между запросами.
Следствием этого является весьма серьезный рост потребления ресурсов как в случае увеличения кода в приложении так и в случае роста посещаемости.

Другим следствием является то что средствами PHP не создашь нормальный ORM. То что есть — честно сказать, пародия на то что есть в Java или.NET. Однако ORM может быть создан на уровне движка PHP, что было бы неплохо. Заодно и нормальный connection pool бы создали.

жуткого говнокода и

Это последствия минимальной сложности входа. Тот же менеджер по продажам после месячных курсов пишет в резюме «разработчик PHP».

технических ограничений PHP

Каких например? Особых ограничений найти не смог.

Смотря чего. Если Desktop, то C#/Delphi без вариантов. Если веб разработка, то php. Это если рассматривать только скорость разработки без всех сопутствующих параметров.


Soft

Вы отстали от реальности лет эдак на 6−8. Будущее Delphi весьма туманно. Они даже версию для x64 сделать не могут, что будет дальше?
php сейчас живет только из-за своей раскрученности и огромного количества существующих решений (поддержка которых постепенно теряет смысл ввиду жуткого говнокода и технических ограничений PHP).

anonymous

Дело в том, что тот кто заказывает разработку — ему побоку на чем будет это разрабатываться, главное, чтобы оно было сделано в установленный срок

Если заказчик лопух — то ему побоку, если нет — то хотя бы стоит задуматься о дальнейшем развитии и стоимости этого развития.

Простой пример: Производительность какого приложения будет дешевле расширять — того, в котором логика инкапсулирована на уровне апликейшен сервера, а работа с БД идет через уровень абстракции (В случае с Java — Jpa, Hibernate...), или того, где логика сосредоточена в хранимых процедурах коммерческой БД (например Oracle)?

Скорость разработки — это не программистский вопрос, скорее это более подходит к теме об организации и планировании и управлению проекта и ресурсов. Конечно забавно если начинающие программисты пытаются на него ответить. Дело в том, что тот кто заказывает разработку — ему побоку на чем будет это разрабатываться, главное, чтобы оно было сделано в установленный срок. С другой стороны, если есть команда разработчиков на.NET то они могут делать это только на.NET, то же самое про Java, если не учитывать гибридную разработку. Поэтому скорость разработки напрямую связана со сроками выполнения. Если она подходит под эти сроки, то ее можно назвать быстрой, если нет то долгой. И какую бы технологию вы не использовали.NET, или Java никакой разницы в скорости вы не заметите, разве что одни это делают быстрее, другие медленнее. И дело совсем не в том как быстро вы можете написать код, а как качественно.

2 Soft

знание особенностей вычислений на современных процессорах

Нефигасе не прикладные прогеры


Андрей 2 мин. назад

Приведите пример множества неприкладных программистов, а не исключений, типа Вашего юриста. Может это писатели драйверов или веб-сайтов?

Всякий специалист прикладной и любая программа по сути является СУБД (работает же с данными) если обобщать.

Но, но разработчиков матбиблиотек, как, например, эта www.fftw.org можно считать чистыми программистами, так как там только математика и знание особенностей вычислений на современных процессорах.

2 Василий Чобиток

Председателю суда необязательно знать программирование 1С

2 Василий Чобиток

1 C неудачный пример с Вашей стороны — это прикладные программисты

,
Приведите пример множества неприкладных программистов, а не исключений, типа Вашего юриста. Может это писатели драйверов или веб-сайтов?
Первые должны знать свою область — железо,
вторые — какой сайт-магазин обходится без маркетинга и бухгалтерии.

Ну приведите пример неуникальный. Нет таких и быть неможет

Смотря чего. Если Desktop, то C#/Delphi без вариантов. Если веб разработка, то php. Это если рассматривать только скорость разработки без всех сопутствующих параметров.

Андрей,

То есть Вы согласны со мной, что это большая редкость: программист не знающий предметной области.

Я утверждаю прямо обратное: программист, знающий предметную область, большая редкость. А программисты 1С — неудачный пример с Вашей стороны, т.к. это прикладные программисты в конкретной предметной области (бухгалтерии) и незнание ими бухгалтерии — признак профнепригодности.

Ваш председатель суда тому доказательство. Программисту обязательно надо знать предметную область, хоть на чём пиши. А вот председателю суда — вовсе необязательно.

Вы с дуба упали? Вы предметную область со средой разработки не путаете? Это каким-таким боком председателю суда (юристу, судье) необязательно знать предметную область??? Как бы Вы согласились попасть к судье, который не знает законов и не знаком с юриспруденцией???

Александр Маненко,
Логики в сообщении 0. Каждый человек высказывает только свое мнение, истина — относительна.

Вы обвинили одного в том, что он написал «имхо» не в начале сообщения, а в конце. Второго поддержали вообще по теме оффтопика (речь о технологиях, а не предметной области).

ПРИ ПРОЧИХ РАВНЫХ УСЛОВИЯХ,.Net — удобнее, интуитивнее, БЫСТРЕЕ. И, кстати, если ОДИНАКОВО мало знаком с обеими, то быстрее все равно получится на.Net. Подчеркиваю, это мое субъективное мнение.

Ваше личное мнение никого не интересует, пока это личное мнение не является истиной. То что Вы сказали можно перефразировать так:

По моему личному мнению, наше солнце чёрного цвета. Подчёркиваю это моё субъективное мнение.

Посему без аргументированных ответов подобные высказывания из обоих лагерей лишь слова и эмоции, коим грош цена. Более того, подобные выражения чаще присущи молодым людям без хорошего опыта, либо фанатикам, евангелистам и прочим неадекватным товарищам. Опять же, ценность заявлений подобных индивидов стремится к нулю.

Полностью поддерживаю слова Василия Чобитка:

Проверено многократно. Пофиг какая среда разработки. В скорости выигрывает тот, кто хорошо знает и понимает предметную область, даже если знания среды разработки (языка) посредственные.
Гуру программирования, не желающие вникать в предметную область, частенько увлекаются бессмысленным программированием (код ради кода), а программировать надо предметную область.

Поэтому даже на самом «лучшем» языке можно писать проект много дольше, чем на самом «худшем».

2 greench

2 Василий Чобиток

я видел такого бухгалтера.
Интересно, а Вы видели такого программиста 1С, который бы не знал предметную область?

То есть Вы согласны со мной, что это большая редкость: программист не знающий предметной области. Ваш председатель суда тому доказательство. Программисту обязательно надо знать предметную область, хоть на чём пиши. А вот председателю суда — вовсе необязательно. Кстати, реклама подобных 1С программ обычно начинается так: ПРОГРАММИРОВАНИЕ БЕЗ ПРОГРАММИСТОВ (самая большая ложь — не статистика, а маркетинг). И не надо говорить, что 1С исключение, фига себе исключение — пол рынка программирования по объёмам в СНГ, в мире тоже бухгалтерия занимает не меньше %50 рынка ПО, собственно распространение персональный компьютер получил как калькулятор для бухов (электронные таблицы).

ПРИ ПРОЧИХ РАВНЫХ УСЛОВИЯХ,.Net — удобнее, интуитивнее, БЫСТРЕЕ

Если Вы не заметили, эта тема про web программирование, а не про программирование под windows.
По удобству и скорости разработки -.NET-у в WEB-е до Java так же далеко, как Java до.NET-a в программировании под win.

Хотя, насчет интуитивности, я с Вами соглашусь, с.NET проще — особого выбора нет, а в Java от обилия технологий и спецификаций глаза разбегаются.

Если Вы.NET-чик, не обижайтесь. В сочетании с анонимным и тупым троллингом это неутешительный диагноз.

Зато упомянуть всю «команду высококлассных.NET-чиков» — это вполне корректно. В общем, все г**ны, один я — воздушный шарик.

а що значить «обздались»?

Это старорежимное. Уточнять кто и как именно обздались не будем, это было бы некорректно.

а що значить «обздались»?

Угу. Начальник склада с месячным знанием Делфи напишет программу лучше и быстрее чем программист без знания складского учета. Угу.

Да, угу. Конечно же шарообразную программу в вакууме программист напишет лучше и быстрее начальника склада. Но программу складского учёта без знаний в области логистики и учета программист не напишет в принципе.

И не доводите до абсурда. Дурак любую хорошую идею превратит в маразм и лоб расшибет. Все же я не утверждал, что НЕпрограммист напишет программу лучше программиста. Я говорил, что ее сможет написать программист (и не только, см. ниже), знающий предметную область, даже если он посредственно знает среду разработки.

Брехня!!!. На 1С всё СНГ программисты кормятся, не видел ни одного живого бухгалтера, что бы программировал на 1 С. А вот програмерам надо изучать предметную область, согласен.

Интересно, а Вы видели такого программиста , который бы не знал предметную область??? Это ужасно неудачный пример, т.к. 1С-ники — прикладные программисты, для которых отсутствие знаний в области бухгалтерии (т.е. предметной области) главный признак профнепригодности.
Нужны живые примеры? Знаю председателя одного из районных судов г. Донецка, который собственноручно на Access (параллельно его осваивая) за пару месяцев наваял программное обеспечение автоматизации документооборота своего суда и внедрил его в реальную работу. Это без отрыва от основной деятельности по рассмотрению судебных дел и управлению судом. А потом освоил тот же Делфи для разработки новой, более совершенной версии. Знаю председателя одного районного суда г. Днепропетровска, который непосредственно руководил разработчиками, они успешно автоматизировали его суд и несколько других, используя IBM Lotus.

А еще знаю команду высококлассных.NET-чиков, числом много более 10, которые без знаний этой предметной области и без особого желания в нее вникать два года ваяли примерно то же самое, наваяли монстра и... обздались.

точно
идите все учиться на.net

я вот одобряю, т.к. от этого моя зп только пожирнеет))

2 Андрей: я видел такого бухгалтера.

ПРИ ПРОЧИХ РАВНЫХ УСЛОВИЯХ,.Net — удобнее, интуитивнее, БЫСТРЕЕ. И, кстати, если ОДИНАКОВО мало знаком с обеими, то быстрее все равно получится на.Net. Подчеркиваю, это мое субъективное мнение. Кто не согласен — его дело. А от бессмысленных замечаний прошу воздержаться.

Блин, человек задал конкретный простой вопрос. Нахера ото разводить весь этот трэш... «Менеджмент», «команда», «что лучше знаешь» и тд — при чем здесь это?!

2 Василий Чобиток

Проверено многократно. Пофиг какая среда разработки. В скорости выигрывает тот, кто хорошо знает и понимает предметную область, даже если знания среды разработки (языка) посредственные.
Брехня!!!. На 1С всё СНГ программисты кормятся, не видел ни одного живого бухгалтера, что бы программировал на 1 С. А вот програмерам надо изучать предметную область, согласен.

ТОчно так же как и SCADы, не видел ни одного технолога, что бы на SCADа писал хоть что-нибудь

Угу. Начальник склада с месячным знанием Делфи напишет программу лучше и быстрее чем программист без знания складского учета. Угу.


CRUD + справочники/детальные формы + фильтры в справочниках + вызов связанных форм/выпадающих списков

В общем ровно столько, сколько можно извлечь из правильно построенной схемы БД. Вся бизнес логика естественно потом дописывается ручками.

Автоматизация это хорошо — респект!

Проверено многократно. Пофиг какая среда разработки. В скорости выигрывает тот, кто хорошо знает и понимает предметную область, даже если знания среды разработки (языка) посредственные.
Гуру программирования, не желающие вникать в предметную область, частенько увлекаются бессмысленным программированием (код ради кода), а программировать надо предметную область.

Поэтому даже на самом «лучшем» языке можно писать проект много дольше, чем на самом «худшем».


Мы вообще как-то под ряд проектов написали свое ядро, которое генерит стандартные классы для всех уровней по схеме БД (Entity + Data Layer/Stored Procedures + Business Layer + User Interface), так что приложение создается одним кликом мышки, потом 5 минут на настройку меню и можно пользоваться.
И что такое предложение созданное одним кликом мышки делает?; -)
CRUD + справочники/детальные формы + фильтры в справочниках + вызов связанных форм/выпадающих списков

В общем ровно столько, сколько можно извлечь из правильно построенной схемы БД. Вся бизнес логика естественно потом дописывается ручками.

почему никто не говорит про приблуду, которую на гугл ИО показывали? спринг ру + гвт?

кроме того в 21 веке крады — это проблема наверно только для пхпшников.

Мы вообще как-то под ряд проектов написали свое ядро, которое генерит стандартные классы для всех уровней по схеме БД (Entity + Data Layer/Stored Procedures + Business Layer + User Interface), так что приложение создается одним кликом мышки, потом 5 минут на настройку меню и можно пользоваться.

И что такое предложение созданное одним кликом мышки делает?; -)

Entity Framework 4 + MVC

Уeбищнaя связка

На обоих платформах можно быстро сделать. Если сходу:
.NET:
Entity Framework 4 + MVC
J2EE:
Hibernate + GWT

Мы вообще как-то под ряд проектов написали свое ядро, которое генерит стандартные классы для всех уровней по схеме БД (Entity + Data Layer/Stored Procedures + Business Layer + User Interface), так что приложение создается одним кликом мышки, потом 5 минут на настройку меню и можно пользоваться.

видел не однократные примеры когда быстро сделанные на.net вещи оказывались СОВЕРШЕННО не применимы в продакшене по причине тотального отсутсвия понимания того как и что будет происходить когда посетителей будет несколько больше чем разработчик Вася и его друг.
В сферически-коневом случае все будет зависить только от квалификации разработчиков наверно-, но есть такие соображения: ,
но мне кажеться что выбор.net для нагруженного проекта будет оправдан только если вам MS приплачивает — иначе стоимость ифраструктуры вас не порадует
простой пример- нужно купить еще 20 веб серверов. посчитайте во что вам обойдеться любовь к MS

по этой причине почти вся крупная инфраструктура далеко не на.net работает- обратные примеры редки и лишь это подтверждают

Ext.

ExtJS не привязан к серверной части — вы можете использовать тот или иной компонент там где считаете нужным. При вдумчивом подходе, результат может быть вполне красивым, но если сделать все на ExtJS — то вряд ли этим можно будет пользоваться.
Например, таблицы с пагинацией не особо удобны, ввиду невозможности открыть новую страницу в новом окне, или вернуться назад кнопкой «назад».

Да, я согласен, что в обычном приложении так же нет таких возможностей, но человек, работающий с браузером привык к определенному поведению веб контента, и его будет очень раздражать, скажем, «непривычное» поведение кнопки «назад».

Вообще не видел ни одного вменяемого фреймворка для построения RIА основанного на JS.

Ext.

Разработка под web по принципу «накидал на форму компонентов» ЗЛО! В итоге получается тормознуто и неюзабельно. Пользовался подобными решениями на.net — разработчикам желал мучительной смерти.
На Java раньше был netbeans visual web. Недавно благополучно загнулся — и слава богу.
Остался еще коммерческий Oracle Application Development Framework (Oracle ADF) на демороликах красиво, но в жизни, боюсь, тоже неюзабельно.
Вообще не видел ни одного вменяемого фреймворка для построения RIА основанного на JS. Лицом к пользователям более-менее повернулся GWT, но и там косяки выползают.

Разве что, удивили разработчики из 1с — их web клиент для управляемого интерфейса платформы 8.2 ведет себя весьма адекватно.


А вы посмотрите
www.jroller.com/...esmax/entry/roo
Spring Roo
Что на это может ответить C#?
ASP.NET Dynamic Data (якщо назвою не помилився). Те що там десять хвилин робить той чувак для одної таблички, то Dynamic Data за 1 хвилину зробить для всієї бази.

P.S. Як я зкрозумів справа йде про аля менедження бази даних через формочки.:) Ато вдруг не про то ляпнув))

ADO.NET Еntity framework — crud делается в 5 кликов (если есть уже база данных)

Вот вопрос дотнетчикам — насколько можно юзать редактор форм для серьезных приложений? Как много граблей возникает?

юзать легко — можно самому делать контролы, и эти же контролы использовать в редакторе форм. ИМХО Есть только одни серьезные грабли — это грабли с абстрактными контролами\формами, т.к. редактор не может создать абстрактный класс, соответственно абстрактный контрол\форму нельзя редактировать в редакторе форм =) Да и то, есть костыль и для этой проблемы. Т.к. не имею опыта в джаве — сравнить не могу.

Но ответ, пожалуй, прост — в чем больше разбираешься — на том и быстрее сайты делать =:)

Но сугубо ИХМО если вам нужно склепать что то ну очень бысто и очень не сложное то НЭТ вам в помощь, ибо там изобилие всяких там визардов, UI компонентов которые вы таскаете по формам.

На джава тоже есть редакторы форм. Но мне показалось что у Visual Studio он качественней. С другой стороны это хорошо для прототипирования и наколенных приложений. Вот вопрос дотнетчикам — насколько можно юзать редактор форм для серьезных приложений? Как много граблей возникает?


Ну и эта... понимать что подключать неплохо бы:)

Мне все таки в качестве MVC фреймворка Struts2 больше нравится. Слишком тяжеловесный Spring как по мне.

Ну дык тяжеловесный — так не заморачивайся лишними для тебя возмошностями, и юзай кak MVC. А захочешь например юзать AOP, так вот оно, легко подключаемое и интегрируемое. А в Struts прийдеться библиотеку какую то юзать, разбираться с ней.

Посмотрел первых несколько минут... дальше надоело, так и не понял что тут такого революционного. Касательно Вашего вопроса, в студии это делается мышкой приблизительно за то же самое время, только перед этим необязательно тратить время на изучения команд этого эрзац-шела. Ну, а если хочется большего, то далее, в зависимости от вероисповедания, либо Nant, либо MSBuild.

Я так понимаю что суть Roo в том что ты можеш писать/генерить скрипты, выполняющие однотипные задачи (создать модуль, сгенерить UI/DB/BL юнит тесты), такой себе API по управлению проэктами. А команды учить не обязательно, если не хочется. Все действия доступны с помощью мышки в спринговой сборке эклипса.

Я бы вместо пары Java -.Net рассматривал пару Groovy/Grails/Roo -.Net
Groovy/Grails/Roo собственно и позиционируется как решение для быстрой разработки при сохранении интеграции с существующими java наработками. Минус — сомневаюсь, что можно найти достаточно квалифицированных разработчиков, готовых делать Production проект, а не просто энтузиастов.
.Net — не знаю как сейчас, а пару лет назад знакомые дотнетчики рассказывали, что crud проекты разрабатываются просто на ура, потому что очень много возможностей доступно прямо из коробки. Думаю, что сейчас ситуация как минимум не хуже. Минус — однозначная привязка к определенной ОС и стеку средств для разработки (вышеупомянутые VisualStudio, IIS, MSSQL, Silverlight). Но, во-первых, не думаю, что это настолько критично для небольших проектов, во-вторых, возможно, этот однозначный выбор средств как раз и является самым значительным плюсом, потому что все части стека хорошо интегрированы между собой.

Вывод: Если удастся набрать команду и заказчики не реагируют на open-source как бык на красную тряпку, то я бы выбрал Groovy/Grails. Здесь еще и экономия средств добавится. Иначе.Net

to Максим
Хорошо выскажу свое субъективное мнение. На нете я ни чего не делал так работаю на джаве уже 9 лет. Но сугубо ИХМО если вам нужно склепать что то ну очень бысто и очень не сложное то НЭТ вам в помощь, ибо там изобилие всяких там визардов, UI компонентов которые вы таскаете по формам. Если вы упираетесь в реальную задачу то это уже дело вкуса на чем делать на первом или на втором

Ну, а в принципе то о каких интерфейсах вы говорите? О ВЕБ? Так ведь там все одно в конечном результате это (x) html+css+java script.

А вы посмотрите
www.jroller.com/...esmax/entry/roo
Spring Roo

Что на это может ответить C#?

dima1, вы правильно подметили. У меня складывается мнение что доля.NET растет.
Мне импонирует java, но вот как делать на ней быстро интерфейсы не совсем понимаю, GWT (красоты не увидел)? Flex (отдельная технология с своими приколами)?
В.NET есть SL + RIA Services из коробки.

mymuss, это не счетчик для хомяка, 20 таблиц и на них 50 форм.

Вопрос конечно интересный и можно сказать риторический:

Быстро разрабатывать эт значит успешнно и эффективно вести бизнес (по сравнению с конкурентами) что ведет к получению $ и £ и всякой другой валюты в большем количестве. При рыночном положении дел эт ведет к отмиранию нееффективного и процветанию эффективного из чего можно сделать вывод что ни у того (.net) ни у другого (java) нет такой разительной разницы что бы об этом можно было артикулировать так как обе технолигии бок о бок сосушествуют уже n-е количество лет.

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

Так спринг прост для быстрых проектов: mvn archetype: generate создаст костяк проекта, а дальше можно опционально подключать фичи какие хочешь.

Думаю что на этот вопрос ответа никто не даст, как уже кто то написал выше. Нужно шарить в обоих платформах, ну и много субьективизма в такой оценке. Руководствуйся другими критериями: что знает твой знакомый гуру, на что больше вакансий и выше зарплаты, и т.д.

crypto5, крад да, но не сайт.

Речь скорее о crud с сложными формами (условия, ajax, добавление из одной формы записи в несколько таблиц...)


Если говорить о веб-приложениях, то связка
asp.net dynamic data + ms sql 2005 / 2008 (linq to sql либо linq to entities) — базовая админка занимает от силы минут 10.

Веб-морда для средненького сайта asp.net + asp.net ajax + ajax control toolkit (jQuery и прочие вкусности по желанию) занимает максимум месяц.

Речь шла о генерации крада к БД. Простой сайт делается установкой и быстрой настройкой CMS на любимой платформе.

А вот дот нетчики пусть вначале расскажут, а потом посмотрим; -)

Если говорить о веб-приложениях, то связка
asp.net dynamic data + ms sql 2005 / 2008 (linq to sql либо linq to entities) — базовая админка занимает от силы минут 10.

Веб-морда для средненького сайта asp.net + asp.net ajax + ajax control toolkit (jQuery и прочие вкусности по желанию) занимает максимум месяц.

Щас дотнетчики расскажут что в студии задача решается грубо говоря в 5 кликов за 2 минуты, и будут правы

В эклипсе и каком нибудь RAD приблизительно такая фигня. А вот дот нетчики пусть вначале расскажут, а потом посмотрим; -)

Щас дотнетчики расскажут что в студии задача решается грубо говоря в 5 кликов за 2 минуты, и будут правы

Мейнстрим сейчас конечно Spring/Hibernate. К задачке про крад, там можно автоматически создать модель (набор классов сущностей) по схеме базы данных. Но думаю в МС мире такое тоже есть.

crypto5, ждут не этого:)

Напишите конкретнее, java это очень абстрактно, какая связка по вашему мнению?

Ладно, начну то, чего так долго ждут: конечно на джава; -)

тема может в холивар перейти

я бы даже сказал: обязательно перейдет,

а если по делу, то я не думаю, что на форуме так много людей, которые досконально знают обе платформы (С# и Java). Большинство специализируется на чем-то одном, а, а про второй вариант знает лишь поверхностно (чего только не учил в молодости?). Поэтому тема некорректна. Тем более лучшие ответы для корпоративного

все зависит от менеджмента

и индивидуального подхода

На том, что лучше знаешь.

уже даны.

Понимаю что тема может в холивар перейти.
Я не говорю какая из платформ лучше/мощнее/кошернее и тд.
Интересует скорость разработки малых и средних проектов.

На какой платформе разработчику на реализацию crud для 3 связанных табличек уйдет меньше времени...

> Ответ прост — все зависит от менеджмента и команды разработчиков.

+500

Я бы, по общеизвестным причинам, посоветовал сразу удалить эту тему.

Ответ прост — все зависит от менеджмента и команды разработчиков.

Подписаться на комментарии