Здравствуйте, n0name2, Вы писали:
N>Здравствуйте, anton_t, Вы писали:
_>>Мда... Ты в курсе какова сложность вставки в середину списка, а какова в середину списка?
N>а часто в середину надо? раз в полгода? какова сложность итерации списка/массива?
А если всё-таки надо и часто?
_>>При чём тут веб? При чём тут прибавление к счётчику двойки?
А closures давно в Java есть?
N>при том, что для более простых случаев yield вообще не нужен, все гораздо проще и эффективнее делается. и вообще — когда в последний раз вам надо было свой итератор писать? closures на уровне анонимных классов обычно делают.
yield делает сложное более простым. С чего вы взяли, что ты сможешь сделать проще и эффективнее без yield, чем с yield? Последний раз на прошлой неделе писал, а что?
_>>Что конкретно имеется в виду под "Фундаментальными Приемуществами"? А "мелкие фенички языка" это наверное поддержка генериков на уровне рантайма, а не обёртка в них старого когда?
N>1. открытый код (соот-но можно делать свои реализации JVM с минимальными усилиями и их потом продавать). например, можно легко сделать версию JDK с поддержкой тогоже yield и распространять ее за 5 баксов.
Во-первых эта JDK не будет соответствовать стандарту, а во вторых продавать не сможешь — другие возьмут твою JVM и будут продавать за 3 бакса.
N>2. открытые стандарты. думаю пояснять ненадо.
И чем же они открытее стандартов на .NET и C#?
N>3. платформонезависимость (моно это совершенно несерьезно). рынок линуха, соляриса особенно серверный — весьма и весьма большой. да и парк железа не интеловского (sun fire, ibm power, cell вот скоро будет) огромен, особенно в больших западных конторах.
Ну рынок вообще-то существует МЕЖДУ конторами, а не В НИХ.
N>4. огромное кол-во разнообразного софта, библиотек, аппликэйшн серверов и т.д. скажем, есть несколько альтернативных JVM, компилятор в нативный код, десятки серверов приложений, расширения языка и т.д... майкрософт при всех его возможностях физически не может произвести на свет объем софта сравнимый с тем что порождает open source community (причем качество во втором случае часто выше).
А что, под .NET может писать только Microsoft? Что же тогда делаю я?
N>5. Java полностью бесплатна и работает на бесплатном софте. в некоторых случаях это очень существенно (сколько будут стоить лицензии на 1000 блейд серверов?), несмотря на то что майкрософт пытается доказать что стоимость владения линухом якобы выше (что полный бред).
Не знаю как соотносятся стоимости влядения винды и линуха, но утверждение Microsoft не более голословно, чем твоё.
_>>да и на уровне мелких фич полно гораздо более полезных вещей (по сравнению с итераторами и т.п.) которых нет в ДотНете.
_>>Каких?
N>ну, например (наиболее очевидное)
N>1. NIO (селекторы, буферы) — это совсем не асинхронные потоки. позволяет использовать хитрые фичи современных storage систем достаточно эффективно.
В .NET своих "хитрых фич" хватает.
N>2. java.util.concurrent — чрезвычайно полезная библиотека для создания многопоточных приложений
И что в ней семафоры-мьютексы разные? Так они и в .NET есть.
N>3. garbage collector — автоматическая настройка параметров под заданные цели (занимать 1/N времени процессора, пауза не более M миллисекунд), очень много разных ручных настроек позволяющих полностью контролировать процесс.
Подозреваю, что такими "улучшениями" можно такого наворотить...
N>4. независимость веб приложений от IIS, скажем, почти все жабные веб сервера живут в одном процессе с собственно HTTP сервером. в результате во многих случаях тотже Resin (продается за 500 баксов) делает IIS + .NET в разы.
А разве веб-сервер и http-сервер не синонимы?
N>5. IntelliJ IDEA (решэйпер это пока что жалкое подобие, как и студия 2005)
Ждём Resharper 2.0.
N>6. 64bit — я так понимаю что windows server 64bit до сих пор в глубокой бете, а большой хип а Жабе я использую уже больше года.
А какая разница под чем Java крутится. Она же платформенно-независимая?
N>можно пройтись еще по web app frameworks, middleware и т.д. и т.п.
Давай пройдёмся.