Почему весь энтерпрайз на Java и будет ли тенденция в сторону таких языков как Python, Ruby?
Собственно сабж, ну и что мешает этим языкам занять нишу j2ee.
Собственно сабж, ну и что мешает этим языкам занять нишу j2ee.
4) Потому что поддерживается ораклом и более-менее сохраняется обратная совместимость.
5) Потому что реально кроссплатформенна.
6) Потому что много доки инфы и т.д.
1) Потому что Джава проста как язык.
3) Потому что много спецификаций, библиотек, средств разработки — все даром.
ПХП, Руби — все тоже самое. Почему вы это приводите в плюсы одного языка только.
У Питона с пунктом совместимости есть проблема. Но по сути ее решают на практике.
blog.newrelic.com/...-what-we-think
но, кстати, в статье доходчиво написано «почему» Пайтон можно смело втягивать в энтерпрайз среду, но не упоминается «зачем». Ответ на этот вопрос уже не раз упомянут ниже — поддержка гигантов индустрии (не МС и Гугл, а Оракл, САП, Айбием) и по-настоящему поддержка со стороны основного middleware. Опять же, вопрос «зачем» также подразумевает, что на Пайтоне не бросятся писать целые ERP. А в остальном — втащить Пайтон в энтерпрайз стек = писать некоторые средства на нем. Это всегда пожалуйста.
в статье доходчиво написано «почему» Пайтон можно смело втягивать в энтерпрайз среду
Спекуляции фанбоя.
А Java с .Net
Отсюда — разные языки существуют для разных целей, а не потому что кому то так сильно захотелось создать свой яп
.net не пишут простые сайты или маленькие/легкие веб-сервисы?
А вот тут мы вас и поправим. Хостинг 4$ в месяц www.m6.net , а разработка в разы проще чем на php. На php сейчас выгодно разве что сайты визитки клепать.
Потому что жаба это один язык, а питон и руби — два разных. :)
Энтерпрайз всегда стремится к одному языку/платформе (правда, это ни у кого еще не получилось). Софта, на самом деле, в любой крупной конторе очень и очень много. Тянуть весь этот зоопарк непросто, поэтому энтерпрайз всегда будет дрейфовать в сторону наиболее используемого (в данной конкретной компании) языка/платформы, а не в сторону современных и, возможно, лучших решений.
.Net смог потеснить Java только потому, что монстры вроде MSSQL, BizTalk или SharePoint используют .Net вовсю. Пока Ruby или Python не будут использовать подобные монстры, им ничего не светит. Ну а для создания монстров нужны крупные компании, которые особо продвигать питоны и руби не пытаются.
Где-то так. :)
Бабло и возможность спокойно выйти на пенсию, а не искать чудо стартап в 60 лет.
кстати, про стартапы в 60 лет — знакомый на работе, сказал что последний раз перед пенсией попробует стартап и свалил в Box.Net
не буду врать что ему ровно 60, но хорошо за 50 лет.
Но чем больше языков тем лучше я считаю. Тот же .net я так понимаю надёргал из всех за последнее время очень много.
Кстати, в плане встроенных патернов руби просто вне конкуренции. Там, по мойму, даже есть встроенный синглтон.
Насчет Python, Ruby не скажу, работал с Perl на большом проекте.
Субьективно, такая разработка легче, чем писать «тяжеловесные» конструкции на Java и приятнее. Java меня больше нагружает, или мне так кажется )
Но, если что-то менять в коде, рефакторить, а код не покрыт тестами(!!!),
то это просто неудобно да и может закончится багами после выдачи релиза.
Если команда из хорошо подкованных разработчиков, то, думаю, это не проблема,
только вот попробуй такую команду набери и удержи... это один из ключевых вопросов.
Еще очень важно как именно происходит разработка.
С другой стороны, например, один из очень нужных серьезных конечных потребителей почему-то не хотел внедрять наш продукт, именно из-за языка (кажись, из-за какой-то сертификации или внутренней политики их компании).
Я бы тоже выбирал Java, если речь идет о надежности + минимизации рисков + долгосрочной разработке.
А с какой целью Вы задаете этот вопрос, чтобы выбрать язык программирования ?
Думаю, что есть очень неплохие проекты на том же Python, Ruby, даже интереснее, по сравнению с нередким явлением у нас устарелых или запутанных/гиперсложных ) ентерпрайз проектов на Java.
Тут все правильно сказали про тормоза, стеки, среды, фреймворки. ИМХО все проще — никакой уважающий себя энтерпрайз не откроет свой тугой кошелек пока не увидят трех волшебных букв — SLA. А этих букв они не видят потому что никто из зарекомендовавших себя консалтеров типа IBM, Oracle и т.п. не видят как можно дать SLA на технологию без всего вышеперечисленного
Ау питонисты- как там 3.0 не кашляет? Уже все перешли?
ага еще пару таких апдейтов и будете как перловщики сидеть в своем гетто т.к. остальным такой геморой нафик не упал.
Ты наверное имел в виду не необходимости, а возможности.
Нет поддержки больших компаний в виде вливания бабла и популяризации продукта.
Нет поддержки больших компаний в виде вливания бабла и популяризации продукта.
а зачем? Если все уже есть.
5 нет поддержки монтстров типа Oracle и IBM
Вышеперечисленные строго говоря конренты PHP и Perl а не Java. У Java один конкурент в лице .net
1 тормозят. Сильно. Очень сильно.Наверное Java идеал скорости...
2 глючат. не менее отчаяно
shootout.alioth.debian.org/...yarv&lang2=java
ух ты лучший результат для руби — отстование всего в два раза. Типичный- в десятки раз, пиковый всего в 237 раз. Что вы там говорили про скорость? :)
Java конкурент скорее с++ а не питонам с пхп.
В разработке на Java есть проблемы но они точно не в скорости платформы. Скорее в переусложненности отдельных технологий\фреймвоков.
Согласен, долой все эти технологии, новые языки программирования, и кому вообще нужна эта скорость разработки — предлагаю все делать на Ассемблере, а что скорость ого какая, и не важно что долго зато скорость, особенно когда рядовой пользователь конечного продукта сидит и бенчмарки проводит тормозит ли его программа или нет...
Ясное дело что компилируемые языки будут быстрее, их никто и не сравнивает по скорости, другое дело зачем писать что все тормозит? Зато джава — ооо, все идеально все быстро, все качественно.
при почасовой оплате скорость разработки проблема заказчика. Не надо раскачивать лодку
вот и используют яву в больших проектах, для которых низкая скорость разработки на жабе компенсируется количеством людей в командах, а сам язык выкручивает этим людям руки, чтобы они не налажали сильно. И действительно, можно это сделать проблемой заказчика :) Стартапы переходят на яву только когда разрастаются до размеров, при которых для саппорта нужно много людей, а на яве их проще найти.
вот и используют яву в больших проектах, для которых низкая скорость разработки на жабе компенсируется количеством людей в командах
Можно обоснования, почему на джаве низкая скорость разработки? И сатистику насколько она ниже? Предполагается что качество выходного продукта одинаковое.
Стартапы переходят на яву только когда разрастаются до размеров, при которых для саппорта нужно много людей, а на яве их проще найти.
Стартапы переходят на Джава, когда оказываетсо что рупи/питон/ерланг/другой_тру_крутой_язык (точнее его инфраструктура) не способен держать нагрузку больше университетского кампуса.
наблюдал/участвовал в переносе нестартап проекта с perl на java. но не по причине нагрузок. просто со временем накопилась такое количество гуано кода, что поддерживать его оказалось дороже, чем написать новый проект с нуля.Стартапы переходят на Джава, когда оказываетсо что рупи/питон/ерланг/другой_тру_крутой_язык (точнее его инфраструктура) не способен держать нагрузку больше университетского кампуса.
таки отсутствие жесткой типизации дает себя прочуствовать. причем не сразу, а годиков через
Стартапы переходят на Джава, когда оказываетсо что рупи/питон/ерланг/другой_тру_крутой_язык (точнее его инфраструктура) не способен держать нагрузку больше университетского кампуса.
Какая нагрузка была у youtube когда его купил гугл? Эрланг, между прочим, как раз и расчитан на высокие нагрузки, только на нем специалистов днем с огнем не сыщешь :)
Можно обоснования, почему на джаве низкая скорость разработки? И сатистику насколько она ниже? Предполагается что качество выходного продукта одинаковое.
Статическая типизация и т.д., но прежде всего слабая выразительность языка (в плане доступных абстракций). Статистику — а вы посмотрите, сколько успешных стартапов начинало с джава (ведь не секрет, что в стартапе очень важна скорость разработки)
Статистику — а вы посмотрите, сколько успешных стартапов начинало с джава (ведь не секрет, что в стартапе очень важна скорость разработки)
вам не надоело писать о вещах о которых тут уже много раз говорилось? Всем известно что написать с нуля что-то простенькое — это явно на Джава, равно как и систему резолвинга трейдов никто не будет писать на питонах и ПХП. Каждому свое. Но говорить, что при любых раскладах питощик, перловщик и т.д. сделает в разы больше джава программиста — это чушь
И с какого перепугу стартап это энтерпрайз?
Стартапы — пример области, где важна скорость разработки, и где джава не получила широкого распространения (по крайней мере, среди успешных стартапов).
вам не надоело писать о вещах о которых тут уже много раз говорилось?
Человек спрашивает, я ему отвечаю. Вы, между прочим, снова повторили «то, о чем тут уже много раз говорилось» в своем посте :)
Собственно сабж, ну и что мешает этим языкам занять нишу j2ee.
Стартапы — пример области, где важна скорость разработки, и где джава не получила широкого распространения (по крайней мере, среди успешных стартапов).
еще раз вопрос каким макаром стартуп это ниша JEE ? :)
Я где-то писал, что «стартуп это ниша JEE»? Просто эта ветка немного в оффтопе.
еще раз вопрос каким макаром стартуп это ниша JEE ? :)
Тем не менее в силиконовке куча стартапов кодярят на спринге и хибернейте.
Какая нагрузка была у youtube когда его купил гугл?
И какая? Я не знаю.
Эрланг, между прочим, как раз и расчитан на высокие нагрузки, только на нем специалистов днем с огнем не сыщешь :)
Да, эрланг просто к слову пришелся. Про его производительность я ничего не знаю, по причинам которые вы указали :)
Статическая типизация
А динамическая — вызывает много ошибок :) ... Кстати, как это всязано со скоростью разработки я так и не понял.
но прежде всего слабая выразительность языка (в плане доступных абстракций).
Не совсем понимаю о чем вы. Расскажите подробнее, или пример какой-то. (это не троллинг)
А заканчивают? Или вы под скоростью разработки подразумеваете наговнять версию 1.0 и перейти работать в новый «успешный стартап»?а вы посмотрите, сколько успешных стартапов начинало с джава
Для меня скорость разработки, это как быстро можна посадить абсолютно левого человека добавлять фичи и как быстро он их добавит. Ибо через год вы сами скорее всего не узнаете ваш же код.
en.wikipedia.org/...Company_historyИ какая? Я не знаю.
Потом осенью их купили, с тех пор нагрузка только выросла, а в начинке вроде ничего не поменялось (Python + C)?
Замыкания, лямбда-выражения, метапрограммирование, lazy evaluation... Что из этого есть в джаве?Не совсем понимаю о чем вы. Расскажите подробнее, или пример какой-то.
Решение на питоне в одну строку:
sorted_words = sorted([part.strip(',;:\'"') for part in s.split()])
Сколько это займет на джаве и сколько ерунды надо будет написать? А тут «как говорим, так и пишем». Хотя я понимаю, конечно, что все субъективно, некоторым циклы подавай и все )
Ну мы немного о разном говорим. Я говорил о скорости разработки продукта и добавления новых фич. Абсолютно левого — это не знакомого с кодом проекта? Так в любом случае в codebase вникать надо.Для меня скорость разработки, это как быстро можна посадить абсолютно левого человека добавлять фичи и как быстро он их добавит. Ибо через год вы сами скорее всего не узнаете ваш же код.
ооо да выиграем 50% размера кода и потеряем в десятки раз в производительности в лучшем случае. Ага то что надо интерпрайзу. Все же будут рады купить пару сотен лишних серверов для кластера.
По-моему, там обсуждалась скорость разработки, о производительности речи не шло
При раширении и добавлении новых фич тоже
Более реальный пример: распарсить CSV-файл (тепрь фантастика: без сторонних либ :) ).Простой пример: разбить строку на слова и отсортировать список слов.
Фишка в том что когда приходит «заказчик» (человек который поставил задачу), он обычно может внести изменения. И тут правильно спроектированный код (с классами и 100500 паттернами) расширять куда проще, а код в одну строку прийдется выкинуть и написать заново. Отсюда кстати, накладные расходы на тестирование.
part.strip(’,;:\’«’) — это зачем?sorted_words = sorted([part.strip(’,;:\’"’) for part in s.split()])
Проблема в том что все эти примеры хороши когда быстро и прикольно говняеш код, а когда задача написать качественный код который удобно поддерживать и расширять варианты на питоне, джаве чем-то там еще очень мало отличаются.
Почитайте Paul Graham «Beating the averages», там про скорость разработки
Почитаю, спасибо.
part.strip(’,;:\’«’) — это зачем?Я вижу аргументы в пользу кастомной реализации split :) Ну если таковая и будет, то в коде ничего особо не изменится.
split — она по пробелам или по пробельным символам разбивает строка «aaaa[space][space]ss[space]ddd[space]» — Это сколько слов 4, 5, 3? А когда правила поменяются?Как мне узнать как работает split не залазя в доку?
strip — убирает указанные символы с начала и с конца строки (типа trim)
Проблема в том что все эти примеры хороши когда быстро и прикольно говняеш код, а когда задача написать качественный код который удобно поддерживать и расширять варианты на питоне, джаве чем-то там еще очень мало отличаются.
Просто некоторые люди мыслят исключительно категориями ООП и джавы (сишарпа, фортрана, паскаля), поэтому на любом языке пишут программы на джаве (сишарпе, фортране, паскале). Например, мне нужно отсортировать строки выше каким-то хитрым образом. В питоне я просто передам в метод сортировки comparison function, а джаве мне надо будет реализовать класс, который будет реализовывать какой-то Comparer интерфейс (поправьте, если что не так), потом передать экземпляр этого класса. Excessive verbosity, вот как это называется :)
Ладно, не вижу смысла продолжать спор, мы немного по-разному мыслим здесь. Тем более, слегка оффтоп.
Я вижу аргументы в пользу кастомной реализации split :) Ну если таковая и будет, то в коде ничего особо не изменится.посмотрите выше на мой пример. Где там ООП Фортран Паскаль и т.д. там четко написанно что вы погорячились.strip — убирает указанные символы с начала и с конца строки (типа trim). Просто некоторые люди мыслят исключительно категориями ООП и джавы (сишарпа, фортрана, паскаля), поэтому на любом языке пишут программы на джаве (сишарпе, фортране, паскале).
Может вам немного поостыть?
Сколько это займет на джаве и сколько ерунды надо будет написать? А тут «как говорим, так и пишем». Хотя я понимаю, конечно, что все субъективно, некоторым циклы подавай и все )
пустой понт?
В питоне я просто передам в метод сортировки comparison function, а джаве мне надо будет реализовать класс, который будет реализовывать какой-то Comparer интерфейс (поправьте, если что не так), потом передать экземпляр этого класса.
Вот только на этапе компиляции вы будете знать что ваша функция сравнения хоть возвращает корректные значения, а не экземпляры какого-то левого класса.
Одна строчка и вы в ауте? Да ну.Excessive verbosity, вот как это называется :)
И самое важное что эти задачи потом прийдется проверять и внедрять — эти этапы для энтерпрайза куда важнее «написания реализации задачи».
Это особенности динамической типизации, тут тестировать надо или еще как-то.Вот только на этапе компиляции вы будете знать что ваша функция сравнения хоть возвращает корректные значения, а не экземпляры какого-то левого класса.
Мне самому больше статическая нравится; например, в С# у меня будет comparison function со строго заданными типами и опять же никаких дополнительных классов и т.д. Я тут писал кусок кода, но ДОУ его изуродовал
и опять же никаких дополнительных классов и т.д.
А это что такое:
?(el1, el2) => el1.ToString()[0] > el2.ToString()[1]
Кстати, вы привили хороший пример. Разве IComparator (его метод) возвращает булиан, а не инт?
Да, да, поймали меня, нужно инт возвращать :)
Да, да, поймали меня, нужно инт возвращать :)
Я очень надеюсь что в дотНете булеан не кастуетсо автоматом к инту, а то можно попасть на веселый дебаг :)
Простой пример: разбить строку на слова и отсортировать список слов.Решение на питоне в одну строку:
sorted_words = sorted([part.strip(’,;:\’«’) for part in s.split()])
Сколько это займет на джаве и сколько ерунды надо будет написать? А тут «как говорим, так и пишем». Хотя я понимаю, конечно, что все субъективно, некоторым циклы подавай и все )
извините что в 2 строчки :-)
String[] sorted = s.split(" ");
Arrays.sort(sorted);
кстати в сплите может быть любое регулярное выражение
А теперь можно еще очистить каждое слово от знаков препинаний и кавычек по концам, как у меня в примере?
регулярное выражение не прокатит?
кстати а как ваша функция отреагирует на такой тест(просто интересно)?
'''" ""abc"" ';'b
Короче тезис в том, что декларативная запись легче и быстрее читается _и_ пишется чем месиво из циклов и вспомогательных переменных.
предлагаю все делать на Ассемблере
idiot, компилятор не просто транслирует в машинный код, он еще довольно нехило оптимизирует его.
-
Ну давай не сферические, где там суперраспределенные базы на питоне перелопачивающие петабайты данных?
PROFIT
ну и тут ещё сотня причин но одна самая холиварная, но на правах имхо: Ява местами уродская, но Python и Ruby уродистей в разы, просто более выразительные и модные.
1. Динамическая типизация не даёт вести разработку программ размером больше хелоу ворлда.2. Джава на рынке больше 20ти лет
Фига себе.
Полная обратная совместимость ещё с самых первых версий. Седьмая джава это всего лиш минорная версия, т.е. 1.7. У РубиПайтона с этим большие проблемы.
У джавы начиная с семерки уже тоже траблы, кое какой код отказывается работать на 1.7, но без проблем работает на 1.6
Замечание: эти ошибки также могут проявляться в Java 6, если включён один из флагов оптимизации: -XX:+OptimizeStringConcat или -XX:+AggressiveOpts у JVM.
Мега удар по стабильности: не работает с ключами оптимизаций.
из тех что паблик: playframework, prefuse активно падают с Error’ом под 1.7, под 1.6 никаких проблем
А подробнее можно.
Я понимаю что в любой программе есть баги, но насколько они критичны.
>Полная обратная совместимость ещё с самых первых версий. Седьмая джава это всего лиш минорная версия, т.е. 1.7. У РубиПайтона с этим большие проблемы.
это какие у пайтона проблемы с обратной совместимостью?
У Пайтона три майорнаые версии. У думаю лучшим местом почитать про подромности с обратной совместимостью лучше почитать changelog.
Но в целом у Пайтона хорошо с обратной совместимостью насколько я знаю, но я не эксперт в нём. Поэтому смогу ответить только нагугленым: blog-ru.python.org/...ython-27-3.html
>У Пайтона три майорнаые версии
у пайтона *две* мажорные версии, при этом я еще не видел живых людей, использующих 3.x.
2.x — 2.7 — 3 — 3.x (по слухам)
при этом я еще не видел живых людей, использующих 3.x.
А они есть. Самое прикольное, шо чувак говорил, что они как раз для энтерпайза и пишут.
После обновления с 2.6 на 2.7 у меня перестали работать пару плагинов к МВИМу.
4. Мощные IDE, в частности Idea вообще вершина эволюции средство разработки.
Ты не поверишь в JetBrains есть мощные IDE для руби (RubyMine) и питона (PyCharm)
я может не в тему, но наболело — как достал этот майнкрафт — на вин XP не работает сервер, под линуксом куча глюков с рендерингом.5. Кроссплатформеность
и это называется «кроссплатформенность» ?
как достал этот майнкрафтТо что он написан на джаве, не значит что он кросплатформенный.
ну а как мы хотели, если всё через прослоечку JVM? Это ж, наверное, как любовью заниматься в костюме химзащиты. Еще и в лыжи обутым. Безопасно, конечно...
Не утверждал, что Джава это язык для гомосеков. Я как бы за презумцию невиновности в отношении джавистов, хотя и не понимаю, почему если любовь организмами и вы голые, то сделать это нужно обязательно через ж0пу.
своим постом я вам пытался напомнить о полезности средст защиты не более
вообще говоря, если прижало и надо ехать, то нет и вопроса «вам шашечки или ехать».
У меня работало и там и там бес проблем. Кстати единственная гама на джаве что без дополнительных танцев с бубном сразу запустилась.
1) С версией джавы 7 — неработает.
2) В последней версии майнкрафта таки шото похерели с рендерингом ибо раньше работало.
Юзается LWJGL — это OpenGL биндинг для джавы со своими
Сразу видно что человек кроме Java ни с чем серьёзно не работал. :)
Думаю что могу сказать что вполне серьёзно (т.е. за деньги и на больших проектах) кроме Java работал с Delphi, PHP и JavaScript а сейчас на Groovy. Этого достаточно чтобы делать выводы?
Народ из Твиттера, Scribd.com и basecamp не в курсе видимо.
Конечно все можно, но то все что будет отловлено на этапе компиляции — вам ручками прийдется самим прибивать. Просто экономия времени, которая заметна для больших проектов, с кучей разработчиков.
Народ из Твиттера, Scribd.com и basecamp не в курсе видимо.Ну в твиттере уже год как в курсе :)
Ну, твиттер года три на руби был — все это время код там был сложности хэллоуворлда?
Плюс переписали только серверную часть. На Скала, а не на Джаве. Тестирование и фронт-энд там на руби.
Last week, we launched a replacement for our Ruby-on-Rails front-end: a Java server we call BlenderТестирование и фронт-энд там на руби.
engineering.twitter.com/...aster_1656.html
Кроме джавы и скалы они еще clojure юзают: github.com/...athanmarz/storm
Ну, твиттер года три на руби был — все это время код там был сложности хэллоуворлда?
Я его не видел. Но по фунционалу который видел, он даже год назад был не сильно сложнее хелловорлда.
Джава
class HelloWorld {
public static void main(String[] args)
{
System.out.println("Hello World!");
}
}
Руби
puts "Hello world"
Питон
print "Hello, World!"
>"Чтение контента файла, декодирование контента из UTF-8, и вывод в консоль?"
а может не надо? это же в коммент не влезет, или опять страница сломается или я вот прямо тут умру от передозировки стримридеров, файлхендлеров и прочих радостей дикого ооп.
FileUtils из apache commons-io читает из файла в любой кодироке в строчные коллекции однострочным оператором.
вы таки написали целые две строки русского языка, когда уже могли показать пример на жяве. или он сильно длиннее получался?
String s= FileUtils.readFileToString(new File("file.txt“) , “UTF-8”);
Подождите пока уточнят задание, я думаю Rostislav Dzinko имел ввиду шота более сложное.
2) кодом я привел пример товарищу который интересовался
Хотелось бы придумать хороший пример, который помог бы сравнить объективно 2 языка (не хелло ворлд или «сферический однострочник в вакууме»)
Спорить смысла нет просто. У каждого языка свои цели.
снизу — я не имел в виду ничего сложнее, чем поставленная задача.
То есть вариант с ФайлУтилами (или что-то подобное)? Если да, то там и без коммонсов получаетсо строк
Давайте все-таки придерживаться стандартной библиотеки языка, а не мерятся длиной гигабайтов библиотек
Понятие «стандартная библиотека языка» довольно расплывчато. То что камонсы постявляет другой вендор еще не значит что они не стандарт де-факто. Подобное было с бустом который был стандартом еще до того как его официально приняли (кстати не помню приняли ли).
опустили импорт
та не вопрос всеравно в одну строчку :) :)
String s = org.apache.commons.io.FileUtils.readFileToString(new File("file.txt“) , “UTF-8”);
«Чтение контента файла, декодирование контента из UTF-8, и вывод в консоль?»
Типичная энтерпрайз задача :)
С ИО давно не работал, но давайте попробуем. Что подразумевается под декодирование? Какие критерии оценки?
Более важный момент: Как это поможет оценить простоту языка?
Имелось ввиду не количество символов на программу, а количество символов в книжке, после которой можно легко и недвусмысленно «понимать» любые программы.
>количество символов в книжке, после которой можно легко и недвусмысленно «понимать» любые программы
да-да, покажите мне фотографию стопки этой книжки!
на той фотографии была стопка книг о жее, хибернейте и прочих фреймворках. А о самой джаве только одна книга.
из-за же точно print-ов, генерящих меседжи из глубоких недр всем, кто слышит stdout и накрылся один перловый прект. покрыть его юнит-тестами оказалось невозможным
Мне кажется, многие не так понимают «прост и минималистичен». Какой-нибудь Луговский или Пол Грэм сказал бы «невыразительный» или даже «скудный», «убогий». Но для больших проектов это очень даже плюс :)
2. Джава на рынке больше 20ти лет, обкатана и существуют сотни решений для энтерпрайзов
да-да вышла на рынок задолго до своего рождения ;)
Я вважаю, що тенденція розвитку ентрепрайзного python таки існує. Існує вже немало фреймворків з великим ком’юніті. Ще одним аргументом можна назвати те, що Python зараз активно розвивається і застосовується в Google.
Ще одним аргументом можна назвати те, що Python зараз активно розвивається і застосовується в Google.
аргументом к чему? То есть все что гугл то есть истина? И еще вопрос насколько гугл это близко к джава энтерприйз
Аргумент до того, що Python непогано застосовується для маштабних задач.
Глядя на гугло опенсорс складывается впечатление что джава там используется значительно шире, и гугл+ они почему то решили на джаве писать, а питон в гугле — это наверное легаси код в купленном ютубе, так что питон тут в пролете.
а питон в гугле — это наверное легаси код в купленном ютубе
И куча скриптов, которые запускают консольные утилиты, написанные на Джава :)
Ну питон как скриптинг язык хорош, и даже используется в разных вебсферах, тут я спорить не буду, но речь идет ведь о замещении jee а не скриптовании?
тенденція буде тоді, коли кити ентерпрайзу так захочуть. не просто кити софтваре індастрі, а саме КИТИ ЕНТЕРПРАЙЗУ, які цей ентерпрайз придумали, придумують далі, і заробляють на цьому бабло.
На вебсвере запускается? Официальные конекторы к Ораклу и ДБ2 есть?Я вважаю, що тенденція розвитку ентрепрайзного python таки існує.
Знаю тока одного человека который говорит что пишет на питоне для энтерпрайза — как я понял из его рассказов это в основном внутренние портальчики и веб-морды (весь бэк-энд джавы, дотНеты и тд)
Знаю пару людей которые пишут (мо писали, давно не общался) на Руби для энтерпрайза — сплошные “сайтики для маркетологов” ©
назовите хоть один публичный сервис гугла написаный на python для начала
2) А еще вспомним дикий пиар Twitter ом RoRа как куска говна...
3) динамические языки можно сравнить с семейными минивенами — не быстры, не мощны, но гораздо удобнее крутых тачил.
RoR был в спешке выпилен из твитера и заменен Scala т.к. был постоянным трабл мейкером. Погуглите что ли. JVM технологии теперь там сплошные.
Я в курсе что твиттер ушел с рельс, на тот момент руби не был таким качественным как сечас, но рельсы позволили быстро создать приложение и когда сервис получил популярность — перешли на производительную платформу. Поэтому лучше знать достоинства и недостатки технологий, понимать когда лучше применять её в зависимости от ситуации, а не обсырать все подряд.
Смысла сравнивать нет -мало пересекающиеся миры...
но не на питоне. Это притом что со специалистами по питону у них все ок :)
Опять про руби. www.acunote.com — на RoR, здесь на сайте было интервью с основателем, вполне ентерпрайз применение.
А основатель (поправка — читать «разработчик» вместо «основатель») недавно делал доклад по своему проекту в на сходке николаевских программистов. Очень много нелестного наслушались мы о Руби. Я задал вопрос — если он такой плохой почему на нем пишете? Ответ был в стиле — если бы сейчас начали разработку то точно не на Руби. Оттаке.
кому верить?
ДжВМ — это не серебряная пуля. Кстати, почитайте наезды на скалу и поймете в чем проблема.
не уверен что там есть видео с моим вопросом. Но свидетели имеются ))). Думаю и Александр не изменил своего мнения, можете у него поинтересоваться.
ну раз речь зашла о проектах, могу сразу назвать пару, но не гугловских это bitbucket.org и disqus.com
У меня валится с ошибкой в ФФ, хроме, сафари (иногда таки запускаетсо). Может у них и мега крутой бэк-энд (ведь все на тру питоне), но результат так же важен.
На работе ИЕ используетсо только для фикса багов «В ИЕх не работает ...»
тоже сначала думал так ответить, но Оракл не так давно стал помехой. Да и не Ораклом единым. SAP вон, например. Так вот взяли и переделали всю платформу Netweaver на Пайтон да Руби, lol. Так, быренько, чисто по-приколу. Ну а че, 176+ тыщ клиентов — плевать на них всех. А IBM? Сворачиваем нафик все проекты по Websphere, по JDK, всех клиентов нафик и тд — на Руби переходим...
Да и главный вопрос: а Руби с Пайтоном оно вообще надо?
>Да и главный вопрос: а Руби с Пайтоном оно вообще надо?
иметь с заказчика по 2 килобакса за каждое добавление колонки в отчетик? да не, шо вы — конечно не надо!
3. уже 5 лет как неверно писать/говорить «J2EE». но lurkmore.to/Всем_похуй
www.oracle.com/...view/index.html
Formerly, the platform was known as Java 2 Platform, Enterprise Edition (J2EE), and specific versions had “dot numbers” such as J2EE 1.4. To strengthen the association with the Java platform, the short name is now Java EE, and to simplify the version number, the leading “1.” is dropped. So the latest version of the Java platform for the enterprise is Java Platform, Enterprise Edition 6 (Java EE 6).
Коментар порушує правила спільноти і видалений модераторами.
183 коментарі
Додати коментар Підписатись на коментаріВідписатись від коментарів