LINUX.ORG.RU

Java вышла на первое место?


0

0

Согласно TIOBE Programming Community Index,в сентябре Java вышла на первое место по популярности среди всех языков программирования с рейтингом 22.442% , прибавив в рейтинге +6.55%. Для сравнения С = 19.160% (+2.04%)

>>> TIOBE Programming Community Index for September 2005



Проверено: Shaman007 ()

Ответ на: комментарий от anonymous

> Winamp например популярен до жути, если и есть плееры лучше, то никто про них не знает. А среди всех плееров он - лучший. The Bat! - лучший почтовик под Windows. Им и пользуются все, кто может Outlook от Internet Explorerа отличить.

Это что, типа, такой привет из 90-х? =)

int19h ★★★★
()
Ответ на: комментарий от anonymous

> > И Yahoo! Store они таки написали на лиспе...

> Ну и что? Могли написать и на Аде, и на Рапире. На жабе бы получилось лучше и быстрее.

Еще раз - почитай Грэхема. Он подробно объясняет, почему был выбран именно лисп, и какие преимущества это им дало.

В качестве примера, он приводит такую интересную цифру: 25% всего кода там - это defmacro. Аналогов которого в жабке нет и не предвидится. Теперь прикинь размер кода, если все эти макры ручками раскрыть там, где они используются...

int19h ★★★★
()
Ответ на: комментарий от anonymous

> Могли написать и на Аде, и на Рапире. На жабе бы получилось лучше и быстрее.

Я не знаю, были ли у них Жабские конкуренты, но конкуренты у них были и немало. Компания Грэхема задавила их скоростью разработки. По его словам, иногда бывало так, что конкуренты заявляют о какой-нибудь фиче, а через несколько часов она уже у них есть.

> Кстати, на чем сейчас переписали Yahoo!Store ?

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

watashiwa_daredeska ★★★★
()
Ответ на: комментарий от int19h

В смысле? Хочешь сказать, что сейчас все перешли на аутглюк?

anonymous
()
Ответ на: комментарий от Etch

>> А чем он лучше жабы?

>http://www.ferg.org/projects/python_java_side-by-side.html

Мда. Асилил. И теперь линуходы радуются, что у них есть свой Visual Basic for Applications? Стоило ли себя бить пяткой в грудь и кричать что на VBA прогают только обезьянки?

Особенно вот это http://mindview.net/FAQ/FAQ-012 радует, человек "ниасилил" жабу и теперь наконец-то нашел язык, каторый смог асилить. Лол. Тьфу.

anonymous
()
Ответ на: комментарий от anonymous

> The Bat! - лучший почтовик под Windows. Им и пользуются все, кто может Outlook от Internet Explorerа отличить

Вот не надо ля-ля и за всех писать !
The Bat! нифига не умеет работать с IMAP, поэтому идет далеко-далеко.
А вот ты судя по всему Outlook Express от Microsoft Outlook отличить не можешь :)
Да и почтовых программ кроме OE, Outlook и Bat! полно.

odip ★★
()
Ответ на: комментарий от Etch

Особенно радует, как Гвидо слизал с VBA вот это:

for i in range(1,10):
    print i

и вот это

# open an input file
myFile = open(argFilename, "r")

А вот на этом месте
Remove leading whitespace from string s	
(not available)
s.lstrip()	
Remove trailing whitespace from string s	
(not available)
s.rstrip()
я просто расплакался. Это как же много потеряли жаба программисты
по сравнению с питонобыдлокодерами, у них нет готового s.rstrip()

anonymous
()
Ответ на: комментарий от int19h

>Кстати, если в языке вообще заметно проявляются "паттерны" - это знак того, что язык плохо спроектирован (т.к. человек занимается тем, что должен делать комп - рисует через трафарет).

Поясни пожалуйста, что значит "в языке заметно проявляются паттерны"?

Yilativs ★★★★
()
Ответ на: комментарий от Yilativs

>Поясни пожалуйста, что значит "в языке заметно проявляются паттерны"?

Это значит что он читал Славу Пестова: "If concepts like "visitor", "factory" or "builder" require so much code in your language that they deserve a name, your language is broken." http://www.jroller.com/comments/slava/Weblog/most_useless_book_in_computer

anonymous
()
Ответ на: комментарий от Etch

Кстати, я почему-то всегда думал, что Python относительно новый язык, порождение XXI века. Оказывается он бородатее жабы, http://www.network-theory.co.uk/docs/pylang/ref_103.html жабу начали в 94-м, питон в 91-м. Если за столь длительный срок питон не стал мэйнстримом а остался нишевым языком для Linux-скриптов, то это как раз говорит о том, что ни для чего более сложного чем ваять скрипты на скорую руку, он не пригоден.

anonymous
()
Ответ на: комментарий от Yilativs

И это значит, что он согласен с мнением, что «объекты – провалились, т.к. требуют применения шаблонов программирования» и проектирования

http://www.google.com/search?q=Norvig+16+of+the+13+patterns+in+GoF+are+simple...

чего естественно не требуют более высокоуровневые языки aka Lisp, Schema, Python

anonymous
()
Ответ на: комментарий от anonymous

> И теперь линуходы радуются, что у них есть свой Visual Basic for Applications?

Ты хоть сам на этом убожестве (vba) писал? Видимо нет. VBA токлько кажется простым, а когда на работе приходится что-то в нем делать большую часть времени проводишь за мануалами и все равно получается криво. И где ты такое нашел в питоне?

P.S. Не нравятся простые языки - пиши на brainfuck.

AiLr ★★
()
Ответ на: комментарий от anonymous

> > Поясни пожалуйста, что значит "в языке заметно проявляются паттерны"?

> Это значит что он читал Славу Пестова: "If concepts like "visitor", "factory" or "builder" require so much code in your language that they deserve a name, your language is broken."

Читал я вообще-то Грэхема, но в целом смысл именно такой. Еще одна цитата:

"This practice is not only common, but institutionalized. For example, in the OO world you hear a good deal about "patterns." I wonder if these patterns are not sometimes evidence of case (c), the human compiler, at work. When I see patterns in my programs, I consider it a sign of trouble. The shape of a program should reflect only the problem it needs to solve. Any other regularity in the code is a sign, to me at least, that I'm using abstractions that aren't powerful enough—often that I'm generating by hand the expansions of some macro that I need to write."

Вообще же рекомендую почитать вот это: http://www.paulgraham.com/icad.html. Если лень читать все, проскролль до "Appendix: Power", и посмотри на весьма показательные примеры кода.

int19h ★★★★
()
Ответ на: комментарий от anonymous

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

Каким нах нишевым языком? А на чем пишут расширения для gimp, blender, ...? Или ты нашел способ заюзать там жабу? Куча гуёв (напр. foomatic-gui) написана целиком на питое. А на жабе я в своем дебиане только одну прогу встретил - argouml, которая только для своей жабы и предназначена.

AiLr ★★
()
Ответ на: комментарий от anonymous

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

Мне уже надоело тыкать пальцем в гугль, если честно. Пойди посмотри расширение скриптов на gmail.google.com, и удавись.

int19h ★★★★
()
Ответ на: комментарий от anonymous

> И это значит, что он согласен с мнением, что «объекты – провалились, т.к. требуют применения шаблонов программирования» и проектирования

Отнюдь. Провалился именно "жабский" подход к объектам, который, к сожалению, является мэйнстримным. Вот он как раз предполагает активное использование паттернов. На самом деле это действительно смешно смотрится со стороны - громоздить такие неудобные конструкции (и каждый раз - ручками от и до), когда в нормальных языках это является частью базовой функциональности.

Для примера, попробуйте на жабке сделать аналог мультиметодов. Мне как-то довелось писать это под C# (что, в сущности, то же самое) - ощущения незабываемые.

int19h ★★★★
()
Ответ на: комментарий от AiLr

Да и не более того. Почему Asureus написан не на питоне? Почему PHP-шники написали свою IDE Zend Studio на жабе а не на питоне? Почему жаба уже ДАЖЕ самолетом-шпионом управляет, а не C и не C++ и тем более не питон? Жаба – везде, питон - в узкой нише.

>А на чем пишут расширения для gimp, blender, ...?

Так и запишем: язык для написания расширений в программах на ц и ц+с+крестиками.

>Для примера, попробуйте на жабке сделать аналог мультиметодов.

Что это и для чего это?

anonymous
()
Ответ на: комментарий от anonymous

> Да и не более того. Почему Asureus написан не на питоне?

Потому что разработчики были лучше знакомы с жабкой, наверное. Почему Anaconda написана на питоне? Почему нет аналогов Quod Libet, написанных на жабе?

> Почему PHP-шники написали свою IDE Zend Studio на жабе а не на питоне?

Потому что на питоне до сих пор нет нормальной портабельной библиотеки для гуя, а им нужна была портабельность, вот они и повелись. Итог плачевный: кто видел эту самую Zend Studio, знает, что по тормознутости оно переплевывает Eclipse.

> Что это и для чего это?

И эти люди учат нас ковыряться в носу...

http://en.wikipedia.org/wiki/Multimethods

int19h ★★★★
()
Ответ на: комментарий от anonymous

> Это вообще спорно. Попмузыка разная бывает. Очень разная

Я имел ввиду то, что называется "попсой" и крутится по "Русскому радио".

Etch
()
Ответ на: комментарий от anonymous

Нет, дружок, я предпочитаю классическую музыку: Бетховена, Штрауса, Вагнера, Прокофьева. :)

Катю Лель, "Блестящих", Киркорова за музыку не считаю.

Etch
()
Ответ на: комментарий от int19h

Ты мне сначала скажи зачем тебе понадобились "мультиметоды" на C#?

KISS на самом деле очень хорошая штука ;). И если ей следовать (именно следовать а не "просто почитать") то получается довольно неплохо (иногда даже очень хорошо).

// boshik

anonymous
()
Ответ на: комментарий от int19h

>Итог плачевный: кто видел эту самую Zend Studio, знает, что по тормознутости оно переплевывает Eclipse.

Я видел. Что Zend, что Eclipse у меня летают. Может тебе пора продать Целерон и взять нормальный проц? Или за хаканье C# уже денег не плотют?

anonymous
()
Ответ на: комментарий от anonymous

> Почему жаба уже ДАЖЕ самолетом-шпионом управляет, а не C и не C++ и тем более не питон?

Да, был на http://groups.yahoo.com/group/ada_ru/ как-то разговор поводу юзанья жабы в задачах реального времени, где ее опустили ниже плинтуса, потому что она просто напросто не для этого. А бортовой софт нормальных самолетов (не радио-управляемых моделей) всю жизнь писали на Си (ясен пень без ++) или Аде (хотя помню для одной машины юзали и ocaml).

P.S. Еще спроси почему на перле не писали и потом доказывай что он маст дай =)

AiLr ★★
()
Ответ на: комментарий от anonymous

Ну, допустим, я не осилил убожище под названием C++, не смотря на то, что брался за него целых три раза в разные моменты своей жизни, но изучить его до конца, и тем более программировать на нём так и не удалось. Да, и вобщем-то не жалею. Не знаю C++ с жабой, но зато знаю и умею python, tcl, lisp и haskell. :)

Etch
()
Ответ на: комментарий от anonymous

>>Поясни пожалуйста, что значит "в языке заметно проявляются паттерны"?

>Это значит что он читал Славу Пестова: "If concepts like "visitor", "factory" or "builder" require so much code in your language that they deserve a name, your language is broken." http://www.jroller.com/comments/slava/Weblog/most_useless_book_in_computer

5 балов! ;-)

PS А кроме шуток?

Yilativs ★★★★
()
Ответ на: комментарий от anonymous

>http://www.sacredchao.net/quodlibet/wiki/Download

>Хоспидя! И эта *** даже не портабельная, i.e. не идет под виндой? И эти люди говорят что-то о питоне?

Думаешь если заюзать гномовские библиотеки в жабе, то прога будет работать под виндой? Смешно.

AiLr ★★
()
Ответ на: комментарий от Etch

> Ну, допустим, я не осилил убожище под названием C++, не смотря на то, что брался за него целых три раза в разные моменты своей жизни, но изучить его до конца, и тем более программировать на нём так и не удалось. Да, и вобщем-то не жалею. Не знаю C++ с жабой, но зато знаю и умею python, tcl, lisp и haskell. :)

Вот и правильно - видимо народ просто не читал http://cs.mipt.ru/docs/comp/rus/develop/other/stroustrup_interview/

AiLr ★★
()
Ответ на: комментарий от AiLr

> потому что она просто напросто не для этого

Java SE не для этого, но есть JSR-1 - Real-Time Java и вот это уже можно применять, если с умом делать. В том, что real-time до сих пор пишут, в основном, на C, значительная доля legacy. Столько уже понаписано, что просто так перейти на что-нибудь другое очень дорого и нетехнологично.

darth
()
Ответ на: комментарий от Yilativs

>5 балов! ;-)

>PS А кроме шуток?

Что “кроме шуток”? Они так думают на полном серьезе, что существуют где-то языки, в которых паттерны жабы "visitor", "factory", "builder" можно записать одной строчкой, а не городить для их имплементации кучу классов

>Думаешь если заюзать гномовские библиотеки в жабе, то прога будет работать под виндой? Смешно.

Что значит “заюзать гномовские библиотеки в жабе”? Жабские проги и так работают под виндой, без всяких гномовских библиотек

>Да, был на http://groups.yahoo.com/group/ada_ru/ как-то разговор поводу юзанья жабы в задачах реального времени, где ее опустили ниже плинтуса, потому что она просто напросто не для этого.

Это господа с http://groups.yahoo.com/group/ada_ru/ не для этого, им бы в дворники податься, там от них больше толку будет. А жаба как раз для этого, только руки нужны не из Zopы. Ссылку дать на boing.com, где рассказывается об этом военном самолете или ты уже читал? Или по-английски ниасилишь и дать ссылку на compulenta.ru? или сам найдешь?

anonymous
()
Ответ на: комментарий от Yilativs

>5 балов! ;-)

>PS А кроме шуток?

Что "кроме шуток"? Они так думают на полном серьезе, что существуют где-то языки, в которых паттерны жабы "visitor", "factory", "builder" можно записать одной строчкой, а не городить для их имплементации кучу классов

>Думаешь если заюзать гномовские библиотеки в жабе, то прога будет работать под виндой? Смешно.

Что значит "заюзать гномовские библиотеки в жабе"? Жабские проги и так работают под виндой, без всяких гномовских библиотек

>Да, был на http://groups.yahoo.com/group/ada_ru/ как-то разговор поводу юзанья жабы в задачах реального времени, где ее опустили ниже плинтуса, потому что она просто напросто не для этого.

Это господа с http://groups.yahoo.com/group/ada_ru/ не для этого, им бы в дворники податься, там от них больше толку будет. А жаба как раз для этого, только руки нужны не из Zopы. Ссылку дать на boing.com, где рассказывается об этом военном самолете или ты уже читал? Или по-английски ниасилишь и дать ссылку на compulenta.ru? или сам найдешь?

anonymous
()
Ответ на: комментарий от anonymous

>Azureus что-нибудь говорит твоему уху?

Ой-Ой! Ну прямо центр мироздания. Можно подумать других торент-клиентов мало, для которых, к тому-же не нужно это джава-монстра ставить. Поставил на днях Nokia Theme Studio под оффтопик (на этом чудовище написано). Ужас! На А64 3800 с 2Гб памяти, грузится несколько минут! При открытии файла в 100Кб, памяти жрет в 400-500Мб!!! Временами мышь еле ползает, переключение диалоговых и окон просмотра по 1-2 минуты! Если открыть еще две-три программы - вешается. А от ублюдочного интерфейса можно часами плеваться. В 1600х1200 шрифты под микроскопом нужно смотреть, изменить нельзя, разрешение только понизить. При запущенной программе во всей системе шрифты становятся жирными! Сэйв то работает, то не работает. И кому нужен этот идиотский выпендрёж? Нельзя было на С++ написать? Не знаю, чем ява популярна, в своей (достаточно долгой) практике в ИТ, еще ни разу не видел нормальных, человеческих НАСТОЛЬНЫХ приложений написанных на этом чуде-юде.

anonymous
()
Ответ на: комментарий от int19h

>Провалился именно "жабский" подход к объектам, который, к сожалению, является мэйнстримным. Вот он как раз предполагает активное использование паттернов.

Любой подход предполагает использования design patterns. Паттерны вовсе не ограничиваются GOF,GRASP,J2EE и т.д. Паттерн - это решение типичной проблемы. Паттерны применяются не только в программировании, например в workflow процессах, в боксе, в шахматах.

> На самом деле это действительно смешно смотрится со стороны - громоздить такие неудобные конструкции (и каждый раз - ручками от и до)

Можно пример?

> когда в нормальных языках это является частью базовой функциональности.

Какие языки являются нормальными? Для меня Assembler,C,C++,perl, JAVA - нормальные языки.

>Для примера, попробуйте на жабке сделать аналог мультиметодов. Мне как-то довелось писать это под C# (что, в сущности, то же самое) - ощущения незабываемые.

Зачем это было делать на С#? Можешь привести пример когда ты считаешь выгодно использовать мультиметоды?

Yilativs ★★★★
()

Кстати, откройте для себя Баунти... тьфу, в смысле http://www.linux.org.ru/ group.jsp?group=26&offset=30 Очень пользительное чтиво на страницах 1, 2, 3, 4, 5.Особенно третья тема с начала форума. :-) Или вот ищо http://www.linux.org.ru/jump-message.jsp?msgid=229509

"1 и 2 работают под всё что шевелиться (win, linux, solaris и т.д. где есть jre), а код-то один ... Компрене ву ? Нет ? Объясняю СТОИМОСТЬ РАЗРАБОТКИ И СОПРОВОЖДЕНИЯ СИЛЬНО СНИЖАЕТСЯ ПРИ ЭТОМ. А это хорошо.

3 вроде даже на Маки портировали (без меня уже) переделки минимальны (с кодировками великого и могучего возиться нужно, а точнее с их количеством :) ). Писал я, а народ один раз звякнул, спросил про кодировки и переделал. Люблю я Java это ПРАВИЛЬНАЯ технология."

Даже уже тогда это некоторые понимали. :-)

anonymous
()
Ответ на: комментарий от int19h

> Провалился именно "жабский" подход к объектам

Куда он провалился? В сознании философов от программирования? :-)

anonymous
()
Ответ на: комментарий от Yilativs

>Зачем это было делать на С#? Можешь привести пример когда ты считаешь выгодно использовать мультиметоды?

Потому что по-другому он не умеет, и ему кажется, что если на C# перетащат весь цешный синтаксис, указатели, макросы, то будет клёво, cewl и вообще рулез. Как было с C++. Половина старалась писать ОО-проги, но у нее это плохо получалось, а остальные просто писали по-старому как на C с классами.

anonymous
()

Возвращаясь к "популярности"

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

Об качественном и правильно применяемом инструменте должно быть 2 книги (tutorial и справочное руководство) и 2 сообщения - вопрос "где взять доку?" и ответ на него:-)

DonkeyHot ★★★★★
()
Ответ на: комментарий от Yilativs

> Любой подход предполагает использования design patterns. Паттерны вовсе не ограничиваются GOF,GRASP,J2EE и т.д. Паттерн - это решение типичной проблемы.

Совершенно верно. Так вот если это _типичное_ решение _типичной_ проблемы, почему его каждый раз приходится делать руками? Те же factory и visitor, например. Если инфраструктура языка поддерживает - эти паттерны действительно сводятся к паре строчек кода, в результате чего программист, собственно, может и не догадываться о том, что вот эта строчка - это на самом деле использование некоего паттерна =)

> Можно пример?

Любой factory-класс в жабке. Куча лишнего кода (собственно, сама необходимость задавать такой класс в явном виде - уже бяка).

> Какие языки являются нормальными? Для меня Assembler,C,C++,perl, JAVA - нормальные языки.

Обеспечивающие минимальный необходимый функционал. Как минимум - functions as first-class objects, closures. Далее в порядке убывания: возможность программно править AST во время компиляции (aka макры), multiple dispatch, pattern matching.

> Зачем это было делать на С#? Можешь привести пример когда ты считаешь выгодно использовать мультиметоды?

Это было реально нужно. В подробности вдаваться не буду, но именно нужно было описать некую операцию над двумя объектами, которая зависит от run-time типа обоих. Пришлось городить зоопарк интерфейсов и фреймворк, позволяющий - по сути - "регистрировать" мультиметоды для разных типов, и делать multiple dispatch.

Классический пример (который, кстати, приведен в Википедии по той ссылке, которую я дал выше) - это функция, обрабатывающая столкновение двух объектов разных типов. Код приводить не буду, см. по ссылке.

int19h ★★★★
()
Ответ на: Возвращаясь к "популярности" от DonkeyHot

> Об качественном и правильно применяемом инструменте должно быть 2 книги (tutorial и справочное руководство) и 2 сообщения - вопрос "где взять доку?" и ответ на него:-)

Так-так, а сколько книг уже выпущено и выпускается про Linux? ;)

Количество книг об инструменте определяется количеством покупателей этих книг и ничем другим.

darth
()
Ответ на: комментарий от anonymous

> Потому что по-другому он не умеет, и ему кажется, что если на C# перетащат весь цешный синтаксис, указатели, макросы, то будет клёво, cewl и вообще рулез

Как мультиметоды связаны с C? При чем тут указатели и "макры" (которые в C ни разу таковыми не являются).

int19h ★★★★
()
Ответ на: комментарий от int19h

> В подробности вдаваться не буду, но именно нужно было описать некую операцию над двумя объектами, которая зависит от run-time типа обоих.

Уточню: это была именно _бизнес-логика_.

int19h ★★★★
()
Ответ на: комментарий от anonymous

> Я видел. Что Zend, что Eclipse у меня летают. Может тебе пора продать Целерон и взять нормальный проц? Или за хаканье C# уже денег не плотют?

На хелловорлдах действительно летают. Попробуй писать серьёзные проекты, хотя бы в несколько файлов для начала =)))

anonymous
()
Ответ на: комментарий от anonymous

> А на пляжУ ты музыку не слушаешь? Или как nerd, загораешь под фанфары Вагнера?

Я не знаю как он, но я лично на пляжу загораю под Ajattara =)

int19h ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.