[holywar] Linux vs. Windows development
но вот администрировать (в широком смысле этого слова, т.е. устанавливать программы и настраивать) может к сожалению не каждыйимхо, устанавливать программы в той же убунте намного проще чем в венде. в инете видел не один восторженный отзыв про систему репозиториев от неопытных людей
для разработки nix никаких особых преимуществ не дает, скорее наоборот?
как это понимать? он мешает штоле?
для разработкиЭто для девелопмента что ли? Ну, тогда к счастью
имхо, устанавливать программы в той же убунте намного проще чем в венде. в инете видел не один восторженный отзыв про систему репозиториев от неопытных людейсовершенно с этим согласен. Но если проги нет в репе?... иногда даже приходится в таком случае доставать бубен, к сожалению
иногда даже приходится в таком случае доставать бубен, к сожалениюЭтот бубен в большинстве случаев
./configure ****
make
make install
Иногда возникают проблемы, но они быстро решаются (особенно если не поленится и почитать рекомендации к установке)
под nix-ами скорее сидят админы, чем разработчики.В данном случае сидеть обычные школьники, которые с детства будут знакомы именно с Linux, а не виндой.
Почти уверен, что большинство из них будут считать винду неудобной.
Но если проги нет в репе?... иногда даже приходится в таком случае доставать бубен, к сожалениюА в винде не бубен? Либо плати деньги (огромный гемор либо ищи кряки/кейгены и пробуй их по очереди (гемор, к тому же spyware наверняка посадишь). Потому что всякие мелкие утилиты платные. Даже ё*аные архиваторы!
Короче, компы - отстой. И не только. См. http://en.wikipedia.org/wiki/Asymmetrical_information
Челу нобелевку дали за объяснение природы отстоя.
для разработки nix никаких особых преимуществ не дает, скорее наоборот.Не томи уже, поясни свою мысль!
также до сих пор остается серьезной проблемой, что под *nix очень дорого разрабатывать юзерские проги.Java?
Правительство Вьетнама приступило к реализации государственной программы по развитию IT-отрасли страны, согласно которой к 2010 году данная держава должна войти в список 15 лучших по объёмам услуг аутсорсинга. При этом основной упор сделан на свободное ПО: компании и проекты, занимающиеся разработкой программного обеспечения по принципам FOSS будут получать всестороннюю государственную поддержку и финансирование. Специалисты отмечают, что к 2010 году темпы развития софтверной отрасли Вьетнама могут достичь 35-40% в год, а число специалистов в данной области составит 55-60 тыс. человек.
http://www.linuxcenter.ru/news/2007/04/24/6874/
http://english.vietnamnet.vn/tech/2007/04/686282/
См. подпись у Shurik
В пизду.
По словам главы проекта Persian Linux Operating System Мохаммада Хансари [Mohammad Khansari], на сегодняшний день данная операционная система, разрабатываемая для повсеместного использования в различных организациях и компаниях Ирана, готова на 90% и уже пригодна для широкого применения. Единственный фактор, который мешает началу процесса внедрения государственной Linux-системы в национальных масштабах - нехватка законов о правах на интеллектуальную собственность, регулирующих свободное ПО.
http://www.linuxcenter.ru/news/2007/04/24/6875/
http://www.taliyanews.com/en/archive/2007/04/physical_progre...
нет единого api для большей части стандартных вещей: окошки, remote call, документов и т.д.
Соответственно это мешает разработке программ, т.е. необходимо разрабатывать сразу несколько вариантов приложений.
> Java?
у Java-и другие применения: серверные приложения + мобильники. на юзерских приложениях ее не видно.
От клипа рыдал, хотя наверное боян
а я его и не смотрел, наугад сказал
нет единого api для большей части стандартных вещей: окошки, remote call, документов и т.д.Не вижу как из первого предложения проистекает второе. По-твоему, я обязан писать приложения на чистом xlib, gtk+, qt, wxWindows и Motif (это оконные библиотеки) одновременно? Зачем? Или ты думаешь, твою кдешную программу не запустят гномеры, даже если она им будет позарез нужна?
Соответственно это мешает разработке программ, т.е. необходимо разрабатывать сразу несколько вариантов приложений.
> скорее наоборот.
Да-да, "семь раз подумай --- один раз напиши" только из-за того,
что нет никакой культуры работы с VCS. Видел я это.
В отличие от некоторых "разработчиков", не умеющих даже скрипты писать.
---
"Люди недалёкие обычно осуждают всё, что выходит за пределы их понимания."
кроссплатформенные либы редко хорошими бывают, т.к. приходится идти на кучу компромиссов.
у Java-и другие применения: серверные приложения + мобильники. на юзерских приложениях ее не видно.Насколько я знаю, в джаве существует одна из самых удобных (для разраба) оконных библиотек. Интересно зачем? В общем, порывшись в инете, ты обнаружишь n-ное количество пользовательских приложений на джаве. Достаточное для того, чтобы показать, что нет никакой проблемы писать на джаве пользовательские приложения.
Расскажи уже что-нибудь из реальной разработки. Что-где-когда. Не с потолка же ты заявил что никсы портят жизнь разработчикам. Мне вот, к примеру, вспомнилось, что в винде приходилось помечать функции на экспорт для длл-ек непосредственно в сырцах.
нет единого api для большей части стандартных вещей: окошки, remote call, документов и т.д.Факт:
Соответственно это мешает разработке программ, т.е. необходимо разрабатывать сразу несколько вариантов приложений.
Если в дистрибутиве вообще есть графический интерфейс, то в 99% случаев в них есть(и по умолчанию ставятся) как минимум две графические библиотеки Qt и Gtk2
Чуть меньше наверно wxWindows, но именно ее чаще используют коммерческие разработчики.
Абсолютное большинство делает выбор между этими библиотеками. И нет необходимости делать под каждый интерфейс. Особенно это будет верно, когда в полную силу начнет работать проект portland, который призван обеспечит равную интеграцию приложений в рабочее окружение стола независимо от используемой библиотеки (основных).
> нет единого api для большей части стандартных вещей:
> окошки, remote call, документов и т.д.
Ты ври-ври, да не завирайся.
В винду RPC пришёл из уникса, так же как и вся сеть.
> т.е. необходимо разрабатывать сразу несколько
> вариантов приложений.
Странно, у меня какие-то приложения работаю с X toolkit,
какие-то GTK, какие-то вообще --- с Qt, и всё в порядке.
Никаких заморочек для этого не требовалось.
---
"А откуда у тебя, Петюня, такой распрекрасный сахар?
Нам такой на карточки не отоваривали!"
кроссплатформенные либы редко хорошими бывают, т.к. приходится идти на кучу компромиссов.Ну во-первых, слишком серьезное утверждение для столь общей фразы.
А во-вторых, причем тут кроссплатформенность? Я тебя уже не понимаю.
Насколько я знаю, в джаве существует одна из самых удобных (для разраба) оконных библиотек.какие широкораспространенные юзерские или корпоративные приложения ты можешь назвать?
Мне вот, к примеру, вспомнилось, что в винде приходилось помечать функции на экспорт для длл-ек непосредственно в сырцахностальгия? вспоминаешь как это делалось в каком-нибудь 2000 году?
какие широкораспространенные юзерские или корпоративные приложения ты можешь назвать?Azureus (жжет, лучший торрент клиент, из всех что я видел, есть еше клевый мюторрент, но у него функциональность поменьше)
Eclipse, IBM Rational Software Architect. Все, кстати, кроссплатформенное Еще видел много чего, когда дерево портежей изучал, но не запомнил.
какие широкораспространенные юзерские или корпоративные приложения ты можешь назвать?Конкретно я? Ну, cталкивался с Azureus и Eclipse. Только что с того? Лично я тебе не могу назвать ни одного дотнет приложения, кроме VS - это же не значит что их больше нет? И уж тем более это не показывает, что на дотнете тебе что-то мешает писать юзерские приложения. Равно как и на джаве.
ностальгия? вспоминаешь как это делалось в каком-нибудь 2000 году?
Могу врать, но по-моему, это приходилось делать даже на c++ компиляторе из VS 2003. Хотя с другой стороны, до этой версии студийный цэпэпэ компилятор вообще был ужасен.
Лично я тебе не могу назвать ни одного дотнет приложения, кроме VSРазве VS на .NET?
Тогда у .NET большие проблемы! Наверное, разработка на нём действительно очень дешёвая, только и результат отвратительный.
Могу врать, но по-моему, это приходилось делать даже на c++ компиляторе из VS 2003. Хотя с другой стороны, до этой версии студийный цэпэпэ компилятор вообще был ужасен.Кажется, намекает на то, что не надо писать на C++.
какие широкораспространенные юзерские или корпоративные приложения ты можешь назвать?IntelliJ IDEA.
Ещё интерфейс Maple, кажется, на Java.
Oracle Calendar, Financials, Collaboration Suite, *.
Лично я тебе не могу назвать ни одного дотнет приложения, кроме VSя могу: сервак для Ultima Online. Только вот оно в отличие от джавовых, которые я знаю, не кроссплатформенное.
какие широкораспространенные юзерские или корпоративные приложения ты можешь назвать?
Azureus - юзерское, SourceSafe Anywhere - корпоративное.
Должен сказать, что оба вполне себе глючно-тормозная дрянь по сравнению с аналогами без Явы, но в силу кроссплатформенности с этим многим приходится мириться.
Этот бубен в большинстве случаев
./configure ****
make
make install
Иногда возникают проблемы, но они быстро решаются (особенно если не поленится и почитать рекомендации к установке)
Не встречал ещё ни одного приложения, для которого бы не было репозитория, и которое мне бы удалось собрать с первой попытки. Иногда, конечно, это просто из-за маразма наподобие того, что я забыл установить хоть какой-нибудь компилятор в систему, но факта это не отменяет =)
как это понимать? он мешает штоле?Представь себе, мешает.
Потому что вместо разработки ты занимаешься еблёй с ОС.
общем, порывшись в инете, ты обнаружишь n-ное количество пользовательских приложений на джаве. Достаточное для того, чтобы показать, что нет никакой проблемы писать на джаве пользовательские приложения.Ага, там проблема уже возникает не для разработчиков, а для пользователей.
Для комфортной работы с двумя-тремя джавовскими приложениями памяти нужно больше, чем для висты+2007 офиса вместе взятых (а вспомните, как их сейчас обсирают за требовательность к ресурсам!)
Представь себе, мешает.Линух настраивается один раз. После этого проходит столько времени что я, например, начисто забываю как сделать элементарные настройки в сиcтеме типа сетевых. Поэтому раз в год-два приходится лезть в маны.
Потому что вместо разработки ты занимаешься еблёй с ОС.
P.s. Сколько можно нести бред о предмете в котором ты полный нуль?
Ага, там проблема уже возникает не для разработчиков, а для пользователей.Да-да! И то же самое говорится про дотнет (C# питон и еще ряд высоуровневых языков. Давайте все дружно писать только на плюсах!
Для комфортной работы с двумя-тремя джавовскими приложениями памяти нужно больше, чем для висты+2007 офиса вместе взятых (а вспомните, как их сейчас обсирают за требовательность к ресурсам!)
Да-да! И то же самое говорится про дотнет (C#Да ну?
У меня вот paint.net (приложение уж явно посложнее того же азуреуса) памяти ест раз в пять-десять меньше этого азуреуса, если совсем уж сложными эффектами на больших изображениях не пользоваться.
Ты меня действительно пытаешься переубедить в том, что мне рассказывали самые что ни на есть программисты на дотнет? Тогда, честно тебе говорю, у тебя ничего не выйдет.
P.s. Сколько можно нести бред о предмете в котором ты полный нуль?А потом все удивляются, что же линуксом пользуется так мало народу. Ведь это - как раз потому что человеку, который в линуксе "полный нуль" (как я, например) как-то начать пользоваться линуксом просто невозможно.
Странно, но не встречал ещё ничего на дотнете ничего столь же тормозного, как азуреус
Разве VS на .NET?Хыхы. Ну если нет - тогда я не видел ни одного приложения на дотнет
Кажется, намекает на то, что не надо писать на C++.
А! Беспроигрышная позиция! Типа нет ничего кроме C#.NET. Тогда действительно - линух ставит палки в колеса разрабам на дотнете
Ещё интерфейс Maple, кажется, на Java.
Кстати говоря, к матлабу это тоже относится!
Странно, но не встречал ещё ничего на дотнете ничего столь же тормозного, как азуреусНапиши клон азуреуса на дотнете - проведем сравнение.
А потом все удивляются, что же линуксом пользуется так мало народу. Ведь это - как раз потому что человеку, который в линуксе "полный нуль" (как я, например) как-то начать пользоваться линуксом просто невозможно.Опять тебя занесло? Не пей по утрам! Напоминаю, тема беседы: "подлые и коварные никсы постоянно мешают разрабатывать программы честным и самоотверженным программистам". Твои личные переживания и горький опыт установки линуксов к данной теме не относится, неправда ли?
> В винду RPC пришёл из уникса, так же как и вся сеть.
в винде основной rpc - это COM. в nix-ах такого нет.
Я не программист. Да и зачем, когда есть совершенно идеальный utorrent?
мюторрент зе бест!
utorrentНа дотнете?
разработка юзерских приложений на C++/Java такой не является, у того и у другого есть другие плюсы, но не скорость разработки.
Быстрая разработка юзерских приложений - это C#, VB.Net, Delphi.Net, из устаревших VB, Delphi
Нет, но точно так же работает только под виндой, и плодить сущности нет никакого смысла, лучше не сделаешь.
Да и зачем, когда есть совершенно идеальный utorrent?он поддерживает децентрализованный режим работы без трекера?
вообще-то речь шла про быструю разработку.Плюсы - это да. А вот про джаву с чего ты это решил? Ты профессиональный разраб на джаве?
разработка юзерских приложений на C++/Java такой не является, у того и у другого есть другие плюсы, но не скорость разработки.
Быстрая разработка юзерских приложений - это C#, VB.Net, Delphi.Net, из устаревших VB, Delphi
ЗЫ В порядке флуда, быстрая разработка - это языки уровня питона. Из устаревших - шарпы, вэбэ и джава
Нет, но точно так же работает только под виндой, и плодить сущности нет никакого смысла, лучше не сделаешь.Ну, как бы, мы не о преимуществах торрент-клиентов спорим, а о сравнении "тормознутости" дотнета и джавы
что питон быстрый при разработке - как язык - могу поверить.
но что он быстрый при разработке - в целом - нет.
Освой у нее параметры -Xms -Xmx, и будет тебе немножко лучше =)
Да, конечно. Приходится его в настройках отключать
Напоминаю, тема беседы: "подлые и коварные никсы постоянно мешают разрабатывать программы честным и самоотверженным программистам".Ага.
Вот только честный и самоотверженный программист не обязательно хочет быть гуру линукса. У него просто может не быть на это времени. Ему, как-никак, программировать надо, а не в оси разбираться.
Освой у нее параметры -Xms -Xmx, и будет тебе немножко лучшеТо есть, каждый пользователь джава-софта должен это руками где-то выставлять?
ЗЫ: А что эти параметры означают? "Сожрать памяти вдвое больше, чем есть в этом компе/не жрать"?
ЗЫ Выражайся уже яснее А то меня уже в аське спрашивают: "ты понял, что он сказал вообще"
Ага.Пенартур, мне иногда кажется, ты специально косишь под дурачка. Десятый раз повторяю: линух настраивается 1 (один) раз. Все, оверхеда на настройку ОС больше нет. Хоть запрограммируйся.
Вот только честный и самоотверженный программист не обязательно хочет быть гуру линукса. У него просто может не быть на это времени. Ему, как-никак, программировать надо, а не в оси разбираться.
линух настраивается 1 (один) разДля того, кто пять лет работает под линуксом - да.
Для того, кто поставил его первый раз... будет несколько месяцев ебли и твоя любимая "Настройка Один Раз", еслои повезёт. Вот только где эти несоклько месяцев взять?
Даже самую крутую домашнюю винду можно купить за 200уе (vista ultimate такие деньги средний разработчик получит за 5-6 дней.
Ебаться же с линуксом ему придётся гораздо дольше этих 5-6 дней. И, в итоге, бесплатный линукс выйдет гораздо дороже такой "безумно дорогой", как тут любят говорить, винды.
Я вот восемь лет с линуксом работаю, а как настроить NTP, так и не понял
Да, я готов поверить, что ты настолько технически некомпетентен, что настраивать современный линукс под себя будешь несколько месяцев. Если все так плохо, какого хрена ты не пригласишь спеца, который настроит тебе все, что тебе нужно за n-ную сумму? Ты мазохист?
Чем для разработки не подходит установленный из коробки какой нить дистр Linux ? Вот если только прогать и нужно. Чё там такого нада настраивать, что сам процесс мог бы растянутся на месяцы ?
Как тут проапдейтиться?
Я выбрал частоту побольше, нажал "Test" - и сижу вот неделю без иксов. В принципе, они мне и не очень-то нужны, но сам факт дебильности установки системы, которой уже 30 с гаком лет, весьма расстраивает
в винде основной rpc - это COM. в nix-ах такого нет.Есть, и не один*, но основным конечно не является.
* Знаю как минимум один вариант COM под никсы, совместимый с микрософтовским - Software AG DCOM (денег правда стоит и поддержку вроде сворачивают потихоньку).
Есть ещё мозилловский XPCOM - тот же COM, только лучше, т.к. вычищен и кросплатформенный.
Ещё прикол - в конце установки я увидел, что частота монитора выставлена в 60 герц. Естественно, мне захотелось ее сменить.монитор лучше смени на LCD
слабые либы
слабая среда разработки
слабая поддержка командной работы
слабый оптимизирующий компилятор
слабое коммьюнити
Быстрая разработка юзерских приложений - это C#, VB.Net, Delphi.Net, из устаревших VB, DelphiБерешь Питон и быстро разрабатываешь. Только не надо говорить, что Питон хуже VB или Delphi.
Да и вообще, когда надо было, я быстро разработал GUI прогу даже на Haskell c использованием wxWindows. Под Виндами без Студии можно только известный предмет сосать.
Виндоуз пользователи не могут понять одну простую вещь - под Unix никто не заставляет писать все на одном языке, берешь нужные и делаешь, что надо.
отлично. первая задача - надыбать в команду в Москве для разработки на Питоне парочку квалифицированных программистов + пучок среднеквалифицированных программистов.
сколько времени и денег займет эта задача?
А переход с трудностей разработчика на трудности менеджера - это уже называется подмена понятий.
никаких подмен, я разработчик, я хочу разработать более-менее крупную программу, в одиночке мне не справиться, что делать дальше?
слабые либы1) нет
слабая среда разработки
слабая поддержка командной работы
слабый оптимизирующий компилятор
слабое коммьюнити
2) да с точки зрения автокомплитов и рефакторинга
3) нет до объяснения чего не хватает
4) да но мы и не высокопроизводительные приложения пишем, не забыл?
5) категоричное нет
грамотный программист хочет денег сразу и больше, чем есть у индивидуального разработчика, который что-то такое задумал, поэтому единственный вариант - найти идейного, а такой поиск происходит независимо от платформы
отлично. первая задача - надыбать в команду в Москве для разработки на Питоне парочку квалифицированных программистов + пучок среднеквалифицированных программистов.Программист на питоне n-ного уровня получается из просто программиста n-ного уровня за неделю. При этом через первые пару дней он уже пишет код по проекту. Питон без "power features" - это очень простой в освоении язык.
сколько времени и денег займет эта задача?
например, это есть?
работа с документами
отчеты
графики
какой-нибудь докающийся gui
rpc
> 4) да но мы и не высокопроизводительные приложения пишем, не забыл?
проблема в том, что почти во всех приложения есть "бутылочные горлышки", которые необходимо чтобы работали максимально быстро.
python плохо предоставляет механизмы для расшивания таких горлышек
кстати, что подразумевается под АОП в питоне?
python плохо предоставляет механизмы для расшивания таких горлышекНа каких фактах основан твой ответ?
"плохо предоставляет" означает, что предоставляет механизмы, но они тебя чем-то не устраивают. Чем?
скоростью работы.
стандартные механизмы ускорения "бутылочных горлышек":
1. подключение сборки на более низкоуровневом языке. это есть, но оверхед wrapper-а съедает смысл такого подключения
2. статическая типизация, final/sealed классы/inlining - для улучшения работы оптимизирующего компилятора. этого нет.
1. подключение сборки на более низкоуровневом языке. это есть, но оверхед wrapper-а съедает смысл такого подключенияБезосновательное утверждение. Лично применял этот способ на практике (в Python). Более чем успешно.
кстати, что подразумевается под АОП в питоне?Не совсем понял вопрос. AOP, вроде как, довольно независимая от языка концепция. Должно быть, в Python под ней понимаются те же самые идеи, что и в C#.
rpcКонечно, в Python есть все виды RPC!
те же формы/отчеты клепать можно взять и студента, но для этого нужны нормальная прога-дизайнер и статическая типизация.
в C# нет АОП, вот мне и интересно, как это выглядит в питоне...
1. подключение сборки на более низкоуровневом языке. это есть, но оверхед wrapper-а съедает смысл такого подключенияВот прям всегда-всегда?
в C# нет АОП, вот мне и интересно, как это выглядит в питоне...Разве AspectJ не сделали для C#? Хотя, наверное, я что-то путаю.
А в чем проблема сделать AOP на Python? Я, к сожалению, слабо представляю, что в мире называют словом AOP, поэтому могу писать откровенный бред. Но язык ведь динамический, классы и методы можно изменять в любое время. Или я совсем не то понимаю под AOP или не вижу каких-то очевидных сложностей?
http://keithdevens.com/weblog/archive/2005/Aug/04/AOP.Python
http://en.wikipedia.org/wiki/Aspect-oriented_programming
For Python:
* Lightweight Python AOP
* Logilab's aspect module
* Python/Transwarp AOP Tutorial (Replaced by PEAK)
* PEAK
* Pythius
* Spring Python's AOP module
http://en.wikipedia.org/wiki/Aspect-oriented_programming
For Python:
* Lightweight Python AOP
* Logilab's aspect module
* Python/Transwarp AOP Tutorial (Replaced by PEAK)
* PEAK
* Pythius
* Spring Python's AOP module
работа с документамиКак минимум, есть IronPython, а кроме него есть другие средства для использования .NET из Python.
отчеты
графики
какой-нибудь докающийся gui
Но думаю, что всё это есть и совершенно отдельно.
какой-нибудь докающийся guihttp://www.wxpython.org/ ?
Я вообще в GUI ничего не понимаю!
В wxPython XRCed надо смотреть: генерируются формочки, сохраняются в XML, питонская прога его парсит и рисует UI и биндит кнопки/поведение.
В wxPython XRCed надо смотреть: генерируются формочки, сохраняются в XML, питонская прога его парсит и рисует UI и биндит кнопки/поведение.То есть даже студент справится?
То есть даже студент справится?а я знаю студентов, которые писали гуи на яве без всяких там IDE, используя просто vim и хорошее представление о том, что нужно получить =)
Студентов учат постепенно, в СПБГУ, МГИУ, ТГУ.
> 1) нетЕсть.
например, это есть?
работа с документами
отчеты
графики
какой-нибудь докающийся gui
rpc
Для вин32 платформы поддерживается даже com/dcom.
+ Существует IronPython -> все что есть для дотнета
+ Существует Jython -> все что есть для джавы
> 4) да но мы и не высокопроизводительные приложения пишем, не забыл?Python предоставляет великолепные возможности интеграции с С/C++ модулями как через FFI, так и через создание полноценных python-обвязок. Собственно половина модулей стандартной библиотеки сделана именно так. При этом совершенно необязательно переписывать все руками - существует много автоматических генераторов питона в си.
проблема в том, что почти во всех приложения есть "бутылочные горлышки", которые необходимо чтобы работали максимально быстро.
python плохо предоставляет механизмы для расшивания таких горлышек
ЗЫ , скажи честно, ты питон в глаза не видел, да?
ЗЫ DarkGrey, скажи честно, ты питон в глаза не видел, да?слишком узкий вопрос =)
вместо слова python, можно подставить ещё ряд языков: haskell, ocaml, ruby, lisp =)
Я тоже вызывал из Python функции, написанные на C. Все прекрасно работало.
есть только один Бог - .Net и пророк его =)
Я знал! Я знал!
Python + expat например медленнее Java с saxon
Для больших файлов
> Лично применял этот способ на практике (в Python). Более чем успешно.а я из python вызываю функции, написанные на o'caml =)
Я тоже вызывал из Python функции, написанные на C. Все прекрасно работало.
изврат, конечно, но прекрасно работает
даже довольно быстро
слабые либы
слабая среда разработки
слабая поддержка командной работы
слабый оптимизирующий компилятор
слабое коммьюнити
1) нет
2) да с точки зрения автокомплитов и рефакторинга
3) нет до объяснения чего не хватает
4) да но мы и не высокопроизводительные приложения пишем, не забыл?
5) категоричное нет
1) согласен, "нет"
2) не согласен, автокомплиты есть (в vim точно — <Ctrl+P>, <Ctrl+N> в режиме вставки; в emacs, на сколько я знаю, тоже есть); рефакторинг — покажите мне хорошую тулзу для рефакторинга под любую ОС;
3) согласен, "нет"
4) не согласен, icc очень даже хороший компилятор, уж получше MS-ного оптимизирует;
5) согласен, "нет"
Вообще позиция 'я, такая: я ничего нужного мне под unix не знаю, значит этого и нет.
Вот ладно, скажите мне, аццы Python'а, есть сейчас более-менее современная версия Python Warts (списка недостатков Python'а)?
Эгегей! Причем тут интеловский компилятор? Мы вообще-то про python а не про C/C++
Для вин32 платформы поддерживается даже com/dcom.такие либы не интересны, т.к. идеологии языка и либы не совпадают.
+ Существует IronPython -> все что есть для дотнета
+ Существует Jython -> все что есть для джавы
например, если вызывать тот же самый COM через такие wrapper-ы из под garbage collector-языков, то идут утечки com-объектов, если вызовы делать в стиле garbage collector-а языка.
) не согласен, icc очень даже хороший компилятор, уж получше MS-ного оптимизирует;читать посты на которые отвечаешь пробовал?
Вообще позиция 'я, такая: я ничего нужного мне под unix не знаю, значит этого и нет.
речь шла про python, а не про c++
те же формы/отчеты клепать можно взять и студента, но для этого нужны нормальная прога-дизайнер и статическая типизациятакой продвинутый студент, который отличит статическую типизацию от какой-то ещё, научится за неделю писать на чём угодно
а тупой студент и формы удобные не сделает из-за неспособности понять задачу, и за ним всё равно придётся переделывать, если интересует качественный результат
кстати, снова подмена темы
если с работой справишься ты со студентом, то справишься и один ты (точнее, один грамотный программист, не привязанный к мелкому и мягкому) при наличии грамотных инструментов
>http://www.wxpython.org/ ?
и где там докинг?
судя по скриншотам - это что-то типа 3-ей дельфи
такие либы не интересны, т.к. идеологии языка и либы не совпадают.Если такие немаленькие вещи кто-то делает, значит это кем-то востребовано. Мое же дело показать, что питон помимо родных библиотек имеет возможность интеграции c другими фреймворками других языков. И старается поддерживать специфичные фичи платформ.
например, если вызывать тот же самый COM через такие wrapper-ы из под garbage collector-языков, то идут утечки com-объектов, если вызовы делать в стиле garbage collector-а языка.
Если такие немаленькие вещи кто-то делает, значит это кем-то востребовано.понятно, что востребовано, т.к. своих либ нету, то вообще без этого никуда не уедешь....
Во-первых, это и есть Python Warts, добрая половина которых исправлена в свежих версиях Python. Во-вторых, я там не нашел даже такой ужасающей недоработки, как существование типа str (точнее, возможности его смешения с unicode).
лень все читать... кто хоть побеждает? какой счет?
Челси у Ливерпуля 1-0
>> какой-нибудь докающийся guihttp://www.wxwindows.org/wiki/index.php/WxAUI
>http://www.wxpython.org/ ?
и где там докинг?
судя по скриншотам - это что-то типа 3-ей дельфи
понятно, что востребовано, т.к. своих либ нету, то вообще без этого никуда не уедешь....Честно говоря, начинает уже доставать твоя привычка что-то утверждать, при этом не соизволив ознакомиться с предметной областью.
на текущий момент, больше интересует докинг, который может быть настроен и пользователем.
пример, http://www.dotnetmagic.com/
Во-первых, это и есть Python Warts, добрая половина которых исправлена в свежих версиях Python. Во-вторых, я там не нашел даже такой ужасающей недоработки, как существование типа str (точнее, возможности его смешения с unicode).1) Там отмечено, что уже исправлено. В том числе в комментариях после перевода. В том же блоге есть еще ссылка на "Десять ловушек в питоне" или что-то вроде.
2) Не понял о каком "смешении" идет речь. А по поводу юникода, переход на юникод не совершили сейчас разве только самые старые либы. Поэтому кто тебе мешает забыть о существовании однобайтовых строк и работать только с юникодом? Официальный полный переход на юникод будет только в py3k, насколько я помню.
Честно говоря, начинает уже доставать твоя привычка что-то утверждать, при этом не соизволив ознакомиться с предметной областьюни в данном треде, ни google так и не смогли подсказать нативные python-библиотеки для тех областей, которые я озвучивал:
следующие запросы ничего хорошего не выдали
google: python library report generator
google: python library chart
и т.д.
почти всегда это либа написанная на другом языке, но с wrapper-ом на питоне.
поэтому я и говорю, что своих либ - нет.
я и говорю, что 3-я дельфя, т.к. именно в 3-ей дельфи был такой докинг настраиваемый только программистом.Совершенно лень разбираться.
на текущий момент, больше интересует докинг, который может быть настроен и пользователем.
Вот тебе ссылка http://www.wxwindows.org/wiki/index.php/WxIFM. Утверждается что там можно сохранять/загружать лейауты -> возможно это оно.
и там же внизу есть еще пара ссылок на докинг либы для wxWindows
Помимо wxWindows, есть QT и GTK 2 (все имеют python bindings). Ботать их доки мне тем более влом. Так что уж сам дальше ищи, то или не то.
почти всегда это либа написанная на другом языке, но с wrapper-ом на питоне.В питоне это общепринятая практика. Многие используют питон как язык-склейку модулей на низкоуровневых языках. Я в этом проблемы не вижу. Коммьюнити в этом проблемы не видит. Ты в этом видишь проблему. О чем еще говорить? Если для тебя "native python библиотека" означает библиотеку строго на python, то это твое личное горе.
это распространенная практика при автоматизации, когда есть задача "сделать чтоб работало здесь и сейчас".
при разработке ПО интересует другой принцип "написано однажды - работает везде и всегда".
как только берется не нативная либа, так сразу возникают проблемы с портируемостью,т.к. кроме портирования python-а необходимо портировать еще и эту либу.
например, есть серьезный геморр с ненативными либами при переходе с 32-х бит на 64, и т.д.
ps
так ты кстати уверен, что питон используют именно для разработки ПО, а не для задач автоматизации?
pps
основное отличие автоматизации от разработки
автоматизация - разработчик и пользователь одно и тоже лицо.
разработка - разработчик и пользователь - разные люди, причем между ними в том числе может и не быть прямой связи.
автоматизация - разработчик и пользователь одно и тоже лицо.не совсем. Скорей просто квалификация разработчиков ниже. Пример - 1С. Еще имхо нет ни одной системы, где пользователь почти без подготовки мог бы что-то нормально автоматизировать.
так ты кстати уверен, что питон используют именно для разработки ПО, а не для задач автоматизации?emerge в gentoo написаны на питоне, в исходном коде игры Blade Of Darkness довольно много частей на питоне (ИИ и много других проектов. Судя по твоим вопросам ты его вообще не видел
при разработке ПО интересует другой принцип "написано однажды - работает везде и всегда".
У нас программа на Питоне и Лиспе, использующая Сишные библиотеки (Freeimage, libxslt, expat)
Написана однажды, командочкой make собирается в дистрибутивы для Windows, Linux, FreeBSD и MacOSX,
так что проблема наверно не в питоне, а в руках?
рассуждаешь коряво
И дело совсем не в "некомпилирующихся библиотеках", а в кривой и неудобной среде разработки.
а в кривой и неудобной среде разработки.может дело в руках?
не совсем. Скорей просто квалификация разработчиков ниже. Пример - 1С. Еще имхо нет ни одной системы, где пользователь почти без подготовки мог бы что-то нормально автоматизироватьв этом случае тоже разработчик и пользователь - "одно" лицо, от того, что это два человека смысл не меняется.
т.е. все равно в данном случае, разработчика интересуют задачи, окружение, ошибки только у этого одного пользователя, т.е. совсем не ставится задача - "работать везде и всегда".
А у нас все в итоге работает.
Руки кривые у разработчиков глюкавого Installshield, глюкавой MSVS, полного багов make и проч. Это баги наподобие "программа не понимает своих аргументов командной строки, которые она выдает по --help".
Такое впечатление что в местах где в юниксе достаточно написать автоматизирующий скрипт и больше к этому не возвращаться, в виндусе принято нанимать обезьян с мышками.
> Написана однажды, командочкой make собирается в дистрибутивы для Windows, Linux, FreeBSD и MacOSX,
сборку делает пользователь?
А были сомнения?
Кстати, интересно, умеют ли крутые виндузятники делать тиражируемые [кроссплатформенные] приложения.
тогда это не "сделано однажды - работает везде".
потому что пользователю при переходе от системы к системе требуется прямой доступ к разработчику.
MSVS тоже так устроена?
msvs - это идеал приложения?
Боюсь, главный файл такой программы будет иметь расширение pdf или doc. =)
почти идеальный пример - html
у Java-ы хорошие позиции
.net, но меньше, т.к. под везде понимается "везде, где стоит windows".
flash сейчас хорошо раскрутился.
html вроде не язык программирования?
java — язык, но дистрибутивы для разных систем разные, не вижу разницы с моим примером.
.net "везде где есть виндовс" совсем не "везде", у тебя правила игры меняются в ее процессе
что ты понимаешь под flash вообще не в курсе, у меня браузер по дефолту не смотрит такое, когда оно на страничке.
Ты вспомни что речь о ПО идет.
"везде где есть виндовс" совсем не "везде"видишь ли, не надо слово "везде" понимать абсолютно. В мире ничего абсолютного не бывает. Иначе можно дойти до абсурда, и требовать работы программы в пещере без компьютера вообще.
"Везде" определяется рамками задачи. Т.к. венда достаточно распространена, то для определенных групп пользователей это будет "везде"
Ты вспомни что речь о ПО идет.Что ты понимаешь под ПО?
ты хочешь придраться к словам? или высказать какую-то точку зрения?
html+javascript - вполне язык программирования.
> java — язык, но дистрибутивы для разных систем разные, не вижу разницы с моим примером
т.е. получается, что работает "везде, где развернута java".
разница существенна, т.к. пользователь один раз развертывает окружение ОС+еще что-то, а проги уже запускает не думая об этом.
> .net "везде где есть виндовс" совсем не "везде", у тебя правила игры меняются в ее процессе
если я бы сказал, что везде - это "везде где есть компьютер", это тоже было бы изменением правил?
это вроде реальный мир, а не математика - в реальном мире не бывает четких формальных определений.
> что ты понимаешь под flash вообще не в курсе, у меня браузер по дефолту не смотрит такое, когда оно на страничке
см. комментарий к java-е.
Adobe утверждает, что flash развернут на ~80% компьютеров подключенных к инету.
Adobe утверждает, что flash развернут на ~80% компьютеров подключенных к инету.можно так же добавить, что флеш устанавливается вполне легко для пользователя, сайт сам ему подскажет, а рантаймов флеша, слава богу, не хуева туча. Т.е. юзер делает один-два клика фактически.
html+javascript - вполне язык программирования.И оно "сделано однажды работает везде"?
Не учитываем что "работать" оно в принципе умеет только само с собой, но:
тебе надо рассказывать о различиях жабаскрипта в разных браузерах?
т.е. получается, что работает "везде, где развернута java".
разница существенна, т.к. пользователь один раз развертывает окружение ОС+еще что-то, а проги уже запускает не думая об этом.
Везде, где развернута наша программа, она работает.
если я бы сказал, что везде - это "везде где есть компьютер", это тоже было бы изменением правил?
это вроде реальный мир, а не математика - в реальном мире не бывает четких формальных определений.
Я-то вообще не понимаю о чем ты рассказываешь. Повтори для меня тупого?
Что такое "сделано однажды работает везде"?
Adobe утверждает, что flash развернут на ~80% компьютеров подключенных к инету.Что из этого следует? О чем это говорит? Расскажи что доказываешь сначала?
Я-то вообще не понимаю о чем ты рассказываешь. Повтори для меня тупого?это означает, что пользователю при изменении своего окружения (смены настроек окружения, компьютера, ОС, сторонних программ и т.д.) для запуска какой-то конкретной проги не требуется помощь/прямая связь с разработчиком этой конкретной проги, а достаточно лишь копии программы взятой когда-то и где-то.
Что такое "сделано однажды работает везде"?
это означает, что пользователю при изменении своего окружения (смены настроек окружения, компьютера, ОС, сторонних программ и т.д.) для запуска какой-то конкретной проги не требуется помощь/прямая связь с разработчиком этой конкретной проги, а достаточно лишь копии программы взятой когда-то и где-то.
Ок. Так работают большинство программ. Приведенная мной в пример тоже.
Т.е. с "непереносимостью" и неудобством питонских библиотек разобрались?
т.е. она работает везде где есть питон? или что?
Она работает везде. На голой ОС.
>> В винду RPC пришёл из уникса, так же как и вся сеть.
> в винде основной rpc - это COM.
Правда?
С каких пор?
> в nix-ах такого нет.
Да, потому что RPC в униксах появился значительно раньше,
чем винда вообще узнала про возможность удалённых машин.
Мало того, винда, как выясняется, использует подхаченую
(как всегда, ибо NIH) версию от OSF/1.
Чудо, RFC 1057.
---
"Narrowness of experience leads to narrowness of imagination."
например, есть серьезный геморр с ненативными либами при переходе с 32-х бит на 64, и т.д.Интересно стало, а что за геморр с 64 битами мог встретить человек, никогда не девелопивший под линукс или юниксы?
В том что тут есть кто-нибудь всерьёз работавший с Windows под Итаниум2 я почему-то сомневаюсь. Остаётся x86_64, на который вроде все ставят 32-битную винду и не парятся.
Поправьте меня - где я не прав?
Интересно стало, а что за геморр с 64 битами мог встретить человек, никогда не девелопивший под линукс или юниксы?У них же только на днях геморр с 32 битами приутих. Видимо, экстраполирует.
и смысл такого? весь смысл 64-бит, что одно приложение может нормально управлять памятью больше чем 2-4 гига. для серверных приложений это очень надо.
и смысл такого? весь смысл 64-бит, что одно приложение может нормально управлять памятью больше чем 2-4 гига. для серверных приложений это очень надо.бесспорно так всё-таки, что за геморрой?
p.s. Развейте кто-нибудь наконец моё скептическое отношение к Windows на x86_64? А то я x86_64 кроме как под линуксом или солярисом себе не представляю.
Пока что, когда планируются такая нагрузка на систему, что реально может потребоваться управление несколькими гигабайтами памяти, мы предлагаем заказчику или Windows на Итаниум2, или юниксы.
Развейте кто-нибудь наконец моё скептическое отношение к Windows на x86_64?Поставь и посмотри. Винда как винда.
У меня стоит прекрасно работающая Longhorn Beta 2 x64. Недостатка в дровах нет. Все нужные программы работают. Аптайм сейчас почти 5 дней. Стоит на ноуте Acer Aspire 5112WLMi.
За две недели ни одного бсода. Единократное падение драйвера вёбкамеры не вывело из строя систему.
это распространенная практика при автоматизации, когда есть задача "сделать чтоб работало здесь и сейчас".Ну вот, поперла казуистика.
при разработке ПО интересует другой принцип "написано однажды - работает везде и всегда".
как только берется не нативная либа, так сразу возникают проблемы с портируемостью,т.к. кроме портирования python-а необходимо портировать еще и эту либу.
например, есть серьезный геморр с ненативными либами при переходе с 32-х бит на 64, и т.д.
Найденные тобой wrapper'ы либо уже находятся в стандартной библиотеке (как, например, xml-rpc или Tk либо устанавливаются в site-packages в установочной директории питона. И я все вместе назову "дистрибутив питона". И соответственно все вместе я буду переустанавливать точно так же, как я буду менять версию дотнета или джава рантайм. Я понимаю, тебе хочется провести черту между "окружением" и "библиотеками программы". Так вот это весьма сомнительная херня. Потому что эту черту можно провести где угодно. Если тебе не нравится вариант, что программа требует переустановки при смене платформы - да пожалуйста, мой питоновский скрипт при запуске будет проверять наличие нужных сишных модулей и автоматически их устанавливать из инета, с сидирома или другого установочного носителя.
ЗЫ Питоновская библиотека в варианте только байт-кода занимает вместе с интерпретатором метров восемь в разархивированном состоянии. И уже давно идут споры, что это и так много. Принцип по которому все работает: "Мы не будем изобретать велосипед, который все равно не устроит всех. Отличных альтернатив УЖЕ существует много - выбери лучшую для себя и работай с ней". В том числе благодаря этому принципу питон по портируемости обошел джаву, в то время как дотнет не работает нигде кроме windows-окружения.
читать посты на которые отвечаешь пробовал?
речь шла про python, а не про c++
Посты, на которые я отвечал, читал. А речь про питон была выше на два уровня (в дереве постов).
Ну ладно, icc отпадает, но остальные замечания остаются в силе.
в винде основной rpc - это COM. в nix-ах такого нет.пропустил в первом прочтении это наглое враньё
1. COM - это не RPC. RPC - это DCOM.
2. DCOM был придуман как ответ на CORBA, дабы не использовать стандартное API, а изобрести своё.
3. Это не единственное RPC в виндах, так что про "единое API", как обычно, виндузятники лукавят.
Remote procedure call (RPC) is a technology that allows a computer program to cause a subroutine or procedure to execute in another address space (commonly on another computer on a shared network) without the programmer explicitly coding the details for this remote interaction.> 1. COM - это не RPC. RPC - это DCOM.
Com - это rpc внутри одного компьютера.
Dcom - это rpc между компьютерами.
> 2. DCOM был придуман как ответ на CORBA, дабы не использовать стандартное API, а изобрести своё.
аналог Corba-ы - это скорее COM+
> 3. Это не единственное RPC в виндах, так что про "единое API", как обычно, виндузятники лукавят.
в винде 3 rpc (но это последовательная смена одного стандарта другим):
dde - начало 90-х
com/dcom - середина 90-х
web services/remoting - середина 00-х
соответственно предыдущие api поддерживаются ради совместимости.
в винде 3 rpc (но это последовательная смена одного стандарта другим):а что делать с программами, которые ни одного из них не поддерживают? получается ровно как в *nix, ну просто никакой разницы
dde - начало 90-х
com/dcom - середина 90-х
web services/remoting - середина 00-х
типичная решается средствами, пришедшими из тех же юниксов
и какая ещё последовательная смена? что, новых COM-объектов уже никто не пишет?
и какая ещё последовательная смена? что, новых COM-объектов уже никто не пишет?мб кто-то и пишет и сегодня, но это их проблемы
СОМ принято использовать для оформления АПИ библиотеки, к которой будет доступ из множества языков, а не как средство RPC
почти нет.
если смотреть на производителей библиотек + разработчиков стандартов, то очень хорошо видно, что идет массовый переход на .net и web service-ы.
ну вон же задачка; кто уже написал средства на .net, а кто ещё нет?
типичная задачка решается средствами, пришедшими из тех же юниксовмы сейчас говорим про автоматизацию или про разработку?
если надо действительно разработать решение, то берешь .net и вперед. .net-ных либ визуализаторов, как грязи - даже и бесплатных.
> Dcom - это rpc между компьютерами.
В свою очередь, Microsoft RPC концептуально не отличается от Sun RPC. И вот это древнее говно до сих поддерживается и используется в приложениях (особенно эксплойтами и червями в то время как на фрюниксах кроме как в NFS нынче и не встретишь такое.
Processes communicate with one another through messages, using Microsoft's Remote Procedure Call (RPC) technology to pass information to one another. There is no difference to the caller between a call coming from a process on a remote machine and a call coming from another process on the same machine.
ps
ты еще tcp-стек назови rpc-ей.
СОМ принято использовать для оформления АПИ библиотеки, к которой будет доступ из множества языков, а не как средство RPCActive Directory, MMC уже отменены?
ты перескакиваешь. речь шла про единый api, а не про то, что есть устаревший api - который по меркам сегодняшнего дня - плохо реализован
вроде в этот треде буквально утверждалось следующее:
1. Windows имеет единое api, т.е. четко понятно какое api необходимо использовать.
2. да, с течением времени - это api меняется
3. да, есть переходные периоды - когда одновременно активно используется и новое, и устаревшее api
4. да, COM - устаревшее api, на данный момент есть серьезные неудобства при его использовании.
5. да, сейчас идет такой переходный процесс, когдая большая часть старого кода использует com/dcom.
и с чем ты несогласен?
я имел в виду тот софт, который сейчас пишут или начинают писать, когда развиты альтернативные технологии
новому софту не нужно работать в домене?
Никакого не надо. Например, Adobe срёт на "единое API для видео", которое расхваливал Leo, и их продукт популярен, да ещё и на макинтошах работает. Ещё популярен (для других задач) VirtualDub, который так же срёт на него.
Те, кто завязывается на единое API, получают большие проблемы в следующем релизе виндов, вплоть до вытеснения своего продукта.
Для сохранения интероперабельности - надо поддерживать всё сразу: и устаревшее, и текущее, и других платформ. Тогда в следующий релиз виндов включат аналог твоего продукта, который к тому же поддерживает ещё и новое API, а у тебя такого не будет. У MS купят говно, которое работает только на последней версии виндов, а у тебя нет.
Если интероперабельность с MS не волнует - нужно изобретать своё API (или использовать кроссплатформенное иначе будет как в предыдущем варианте.
ну так апи AD организована как COM, а остальное детали реализации AD, т.е. прога использует AD, а не напрямую DCOM — а речь шла об прямом использовании DCOM
Те, кто завязывается на единое API, получают большие проблемы в следующем релизе виндов, вплоть до вытеснения своего продукта.пример можно, а то не понятно о чем речь
Никакого не надо.ты еще скажи, что приведенные тобой примеры не используют:
1. единое api для доступа к clipboard-у
2. единое api для вывода видео и звука - DirectX
3. единое api для встраивания приложений в друг/друга - ActiveX/Ole
Есть такой момент. В случае, когда ты не используешь имеющуюся и доступную с виндовс функциональность, а используешь что-то другое, получается, что ты не пользуешься тем, за что при покупке винды уже заплатили пользователи твоей проги, и ты заставляешь их платить за что-то еще (а издержки от использования сторонней библиотеке очевидно будут). Имхо, если можно, то лучше этого избегать.
получается, что ты не пользуешься тем, за что при покупке винды уже заплатили пользователи твоей проги, и ты заставляешь их платить за что-то еще (а издержки от использования сторонней библиотеке очевидно будут). Имхо, если можно, то лучше этого избегать.Не избегать, а наоборот, заставлять платить тебе, а не MS. Успешные компании поступают так. Это и для экономики полезно: денег больше крутится.
> 1. единое api для доступа к clipboard-у
конечно
видео в виндовый clipboard не помещается
а текст и в *nix можно передавать
> единое api для вывода видео и звука - DirectX
вывести видео и звук - низкоуровневые задачи, отлично решаются в любой современной системе
> единое api для встраивания приложений в друг/друга - ActiveX/Ole
И куда у нас встраивается Adobe Premier?
Никакого не надо.
Те, кто завязывается на единое API, получают большие проблемы в следующем релизе виндов, вплоть до вытеснения своего продукта.как пример, Adobe Reader прекрасно вставляется в Firefox, используя как раз виндовое единое api для этого.
хз, не работал с ним, я говорил вообще про продукты Adobe, например, Reader.
Не избегать, а наоборот, заставлять платить тебе, а не MS. Успешные компании поступают так. Это и для экономики полезно: денег больше крутится.интересено, сколько в России таких контор
думаю, для разработчика прикладного софта, который помогает решать проблемы пользователя, готового за это платить, не целесообразно разрабатывать еще что-то не в своем поле — скорее всего у него это плохо получиться, либо будет дорого стоить, и тогда пользователи предпочтут более "правильные" варианты от конкурентов
как пример, Adobe Reader прекрасно вставляется в Firefox, используя как раз виндовое единое api для этогоВ *nix для этого вообще не нужно специального API - это стандартная возможность X11.
Гугл говорит, что Firefox по умолчанию показывает acroread в своём окне, я не проверял, за неимением acroread.
Тут следует добавить, что Adobe Reader существует как раз в качестве альтернативы стандартным виндовым форматам для документов, нарушая единообразие. То есть даже для самой распространённой корпоративной задачи - обмен электронными бумажками - нет единого формата (по веской причине).
который помогает решать проблемы пользователя, готового за это платить, не целесообразно разрабатывать еще что-то не в своем полесмотри в соседнем треде пример про oracle
они со своего поля перешли на соседние - и пользователи платят за это по полной
интересено, сколько в России таких конторзаграничные конторы отлично берут российских девелоперов
То есть даже для самой распространённой корпоративной задачи - обмен электронными бумажками - нет единого формата (по веской причине).так вроде сейчас все более менее устаканилось..
если документ публикуется (т.е. дальнейшее редактирование не подразумевается то используется pdf,
если документ редактируется, то используется doc.
если надо действительно разработать решение, то берешь .net и вперед. .net-ных либ визуализаторов, как грязи - даже и бесплатныха ещё больше не .net-ных
вот и выбирай api
как раз наоборот
сейчас разрабатываются и стандартизуются открытые форматы - и опять не один, так как ODF не устроил MS
> вот и выбирай api
не .net-ных может больше, вообще, но намного меньше при решении конкретной задачи, т.к. сразу все упирается в язык и взаимодействие между либами.
я про де факто.
вот будешь разрабатывать приложение - вот и думай, использовать сегодняшний стандарт де-факто, или завтрашний ISO
но намного меньше при решении конкретной задачиконкретная задача у нас связана с HPC, следовательно, язык - C/C++
мало библиотек?
или, в формулировке автора, вообще через текстовый файл взаимодействие - язык можно выбирать любой, библиотек ещё больше
У них был офисный пакет, и сетевой софт. Они использовали все API, которые были для этих задач.
AD вошёл в поставку виндов, и Novell пошёл на йух, хотя их решение было технически совершеннее.
MS Office развивался параллельно с API ActiveX, и Perfect Office пошёл на йух, несмотря на наличие лояльной базы пользователей (да и контекстное меню по правой кнопке они первые сделали кажись).
Теперь Novell что-то мутит с линуксом, а на винде их продукты никому не нужны.
если брать тот же Netscape, то он почему-то и на *nix-е не долго котировался.
да, и воспоминация из дества тоже не в пользу Novell-а, что браузер постоянно падал, что novell-овская сетка.
Power Office - не видел, но мне тоже кажется, что дело не в поддержке единого api.
Да ты походу с детства подсел на эту траву. Какой у Novell браузер?
согласен, лажанул. я почему-то netscape считал novell-овским продуктом...
какие широкораспространенные юзерские или корпоративные приложения ты можешь назвать?Aquafold Aqua Data Studio
была бесплатной, стала популярной и стала платной, гадина
еше есть Tora, но она опенсурс и послабее
Тут следует добавить, что Adobe Reader существует как раз в качестве альтернативы стандартным виндовым форматам для документов, нарушая единообразие.Что-то я не понял.
Ну то есть, то, что опенофисовский формат - конкурент виндовым .doc/.docx - это ясно.
А вот чему там конкурент .pdf?
ЗЫ: Ещё, говорят, недавно какой-то модный .xps появился, вроде рулит.
а ещё больше не .net-ныхНу вот на примере графических редакторов.
вот и выбирай api
Adobe Photoshop - тяжеленая неповоротливая программа, написана руками с нуля на низкоуровневых языках.
Paint .net - лёгкая (сто-с-чем-то тысяч строк кода быстрая, написанная на .net-е - и, вроде как, обладающая большей части функциональности photoshop-а (если не всей).
На paint .net потрачены единицы человеко-лет, на photoshop - тысячи/десятки тысяч.
Разве тут есть какой-то выбор?
ЗЫ: Хотя да, совсем забыл, ведь phosothop работает на маках, а gimp (не менее тяжёлый, да ещё и неудобный в придачу) - на никсах!
вот и думай, использовать сегодняшний стандарт де-факто, или завтрашний ISOА можно пример, когда в 2000 году оказалось выгоднее использовать какое-то неиспользуемое тогда нигде iso 2005 года, чем стандарт де-факто 2000 года?
А вот чему там конкурент .pdf?Поизучай форматы от MS, потом приходи.
Paint .net - лёгкая (сто-с-чем-то тысяч строк кода быстрая, написанная на .net-е - и, вроде как, обладающая большей части функциональности photoshop-а (если не всей).
На paint .net потрачены единицы человеко-лет, на photoshop - тысячи/десятки тысяч.
епта...
написать что-то, повторяющее чью-ту заранее известную функциональность всегда проще и быстрее, чем "придумывать" и писать + "передумывать" и переписывать
это тебе не веб-странички верстать
ЗЫ а на счет большей части функциональности - может кто-нить прокомментировать?
ЗЫ а на счет большей части функциональности - может кто-нить прокомментировать?Я, вообще-то, не фотожопер, но мне показалось, что всё, что есть в фотошопе, там тоже есть.
Надо поспрашивать пользователей фотошопа.
написать что-то, повторяющее чью-ту заранее известную функциональность всегда проще и быстрее, чем "придумывать" и писать + "передумывать" и переписыватьТо есть, ты хочешь сказать, что, если бы в Adobe весь исходный код проимелся, все программисты внезапно забыли всё, что знали раньше, и от фотошопа осталось только ТЗ (очень детальное ТЗ, с описанием интерфейса и всех фич, которые должны там быть (и где они должны быть фотошоп с нуля бы написали за единицы человеко-лет (с той архитектурой, с которой он сейчас)?
Поизучай форматы от MS, потом приходи.Поконкретнее, какой именно формат ты имеешь в виду?
Из того, что приходит мне в голову:
1) Различные форматы изображений, bmp/jpg/wmf/gif/png etc. Совсем из другой области.
2) Различные форматы документов, txt/rtf/doc/docx etc. Тоже никаким образом pdf-ам не конкуренты.
3) XPS. Появился совсем недавно, так что, про него говорить ещё рано.
Eдиное API (tm) его поддерживало уже в незапамятные времена, и принтеры некоторые его едят.
XPS - почему же рано говорить, если Единое API (tm) уже есть, а для PDF его нет?
Изящное сочетание простоты и функциональности позволяет пользователю без всякой подготовки создавать истинные шедевры. Практически безграничные просторы открывает для Вас возможность попиксильного редактирования изображений. Мощный инструмент «Лупа» позволяет увеличивать изображения до 8 (!) разPaintBrush образца 1990
Изящное сочетание простоты и функциональности позволяет пользователю без всякой подготовки создавать истинные шедевры. Практически безграничные просторы открывает для Вас возможность попиксильного редактирования изображений. Мощный инструмент «Лупа» позволяет увеличивать изображения до 8 (!) разЯ не про paint говорю, если что.
ЗЫ а на счет большей части функциональности - может кто-нить прокомментировать?а чё там комментировать?
баланс белого и то не выставить, не говоря уж про отсутствие поддержки различных форматов RAW
это я так - что требуется для простейшей коррекции фотографий
Я, вообще-то, не фотожопер, но мне показалось, что всё, что есть в фотошопе, там тоже есть.Бугага. Воображаю, что было бы, если Фотошоп написали на .NET
А тормозит он потому, что использует scratch space, сильно сомневаюсь, что paint такие возможности предоставляет.
А AJAX-версию воображаешь?
отсутствие поддержки различных форматов RAWПоддержка различных форматов - не такая уж и жизненно необходимая фича для _редактора_ изображений. В конце концов, любой такой формат можно перегнать в bmp без потерь (и обратно).
баланс белого и то не выставить,Я не очень хорошо в этих вещах разбираюсь, но разве баланс белого не выставляют на фотоаппарате _перед_ тем, как снимать, и разве его вообще в прнципе можно сделать в _уде_ готовой фотографии на компьютере (мне кажется, для этого будет крайне не хватать данных).
Воображаю, что было бы, если Фотошоп написали на .NETИ что было бы?
Я не очень хорошо в этих вещах разбираюсь, но разве баланс белого не выставляют на фотоаппарате _перед_ тем, как снимать, и разве его вообще в прнципе можно сделать в _уде_ готовой фотографии на компьютере (мне кажется, для этого будет крайне не хватать данных).RAW формат - данные, снятые напрямую с матрицы фотика, без какой бы то ни было цифровой обработки.
В том числе там нет и баланса белого.
На компьютере в принципе легко сделать, главное просто знать, где белый цвет на фотографии. Никакой крайней нехватки данных там нету, алгоритм там весьма простой.
Поддержка различных форматов - не такая уж и жизненно необходимая фича для _редактора_ изображений.Изображений - может быть, а для фотографий без него никуда, если не на мыльницу снимаешь.
В случае Nikon, насколько я представляю, половина народу использует Photoshop CS с специальным плагином для поддержки никоновского RAW-формата NEF (и видимо ещё для кучи вещей другая половина - специальные тулзы для коррекции фотографий типа Nikon Capture, я ко второй половине отношусь.
Я не очень хорошо в этих вещах разбираюсь, но разве баланс белого не выставляют на фотоаппарате _перед_ тем, как сниматьПеред - тоже выставляют.
Однако если б его нельзя было выставить после - жизнь была бы грустна, а фотографии математически точно отражали бы реальный спектр, а не тот каким его воспринимает человеческий глаз и уж точно не тот, каким его хочет показать фотограф.
Залез к примеру в горы в пасмурный день - все фотки синие.
и разве его вообще в прнципе можно сделать в _уде_ готовой фотографии на компьютереэто одна из базовых фич любого прибора для обработки цифровых фотографий
(мне кажется, для этого будет крайне не хватать данных).данных хватит.
На компьютере в принципе легко сделать, главное просто знать, где белый цвет на фотографииНу, если ты точно знаешь, где там настоящий белый цвет - то да.
ЗЫ: А плагинов для этого - неужели нет?
а для фотографий без него никуда, если не на мыльницу снимаешьВсё-таки, я не пойму, в чём проблема пакетно переконвертировать всё в .bmp, и потом уже иметь дело с .bmp, который поддерживают все?
Ну, если ты точно знаешь, где там настоящий белый цвет - то да.Нет такого абсолютного понятия, как настоящий белый цвет.
Камеры _на глаз_ определяют белый цвет. Единственное, на камерах можно сделать такую фичу "найдите большое белое полотно, наведите на нее камеру, нажмите эту кнопочку", не более. Остальное - от лукавого.
В случае редактирования фотки фотошопом, "настоящий белый цвет" человек выбирает руками, и у него это частенько выходит лучше, чем у камеры.
ЗЫ: А плагинов для этого - неужели нет?Для чего для этого? И подо что?
Для белого шума под фотошоп? Там это дефолтная фича.
Для белого шума под пеинт? Понятия не имею.
Всё-таки, я не пойму, в чём проблема пакетно переконвертировать всё в .bmp, и потом уже иметь дело с .bmp, который поддерживают все?А проблемы нет. Как и нет проблемы запускать досбокс из дебиана который в вмваре. Со звуком, правда, говорят, поначалу проблемы, но, уверен, это решаемо.
Просто это действительно, цитирую
правой ногой чесать левой ухо, и левой рукой по правой ногойпоэтому и мало кто так делает
Paint .net - лёгкая (сто-с-чем-то тысяч строк кода быстрая, написанная на .net-е - и, вроде как, обладающая большей части функциональности photoshop-а (если не всей).не позорился бы что ли
в гимпе и то нет всей функциональности фотошопа, а про ЛЮБОЙ другой редактор даже и говорить не стоит
про bmp тоже не позорься
это не универсальный формат
в нем много чего не хватает
тоесть если ты переведешь фотку из какогото формата в bmp то ты некоторые жизненно-необходимые вещи потеряешь
Единственное, на камерах можно сделать такую фичу "найдите большое белое полотно, наведите на нее камеру, нажмите эту кнопочку", не болееПро что я, собственно, и говорил.
В случае редактирования фотки фотошопом, "настоящий белый цвет" человек выбирает руками, и у него это частенько выходит лучше, чем у камеры.В случае подбора _после_ снятия - возможно, я же говорю, что я не специалист.
Я имел в виду, что всё равно получится хуже, чем перед съёмкой навести камеру на девственно белую бумагу и сказать ей "а вот это - белый цвет".
Для чего для этого? И подо что?Для выставления баланса белого в paint.net. Если это действительно такая нужная штука, как тут говорят - наверняка кто-то уже написал плагин (если этого действительно нет в самой программе).
А проблемы нет. Как и нет проблемы запускать досбокс из дебиана который в вмваре. Со звуком, правда, говорят, поначалу проблемы, но, уверен, это решаемо.Досбокс, который в дебиане под вмварью - смысла мало имеет.
Просто это действительно, цитирую
--------------------------------------------------------------------------------
правой ногой чесать левой ухо, и левой рукой по правой ногой
--------------------------------------------------------------------------------
поэтому и мало кто так делает
А вот в данном случае - бесплатный софт (а, если бы за него и брали деньги - то, думаю, гораздо меньше, чем за фотошоп, т.к. разработка стоила на три-четыре порядка меньше, чем разработка фотошопа - два студента за пару лет написали, а не огромная корпорация трудилась больше десяти лет малое потребление ресурсов; ну, и если говорить про разработку (а этот тред сейчас - как раз про лёгкость разработки) - как я уже сказал, она обошлась в тысячу, если не больше, раз дешевле разработки аналогичного продукта не в .net.
тоесть если ты переведешь фотку из какогото формата в bmp то ты некоторые жизненно-необходимые вещи потеряешьнапример?
Мне казалось, bmp хранит всё
Я некоторое время использовал Paint.NET, но потом забил, потому что для простого редактирования обычного Paint вполне достаточно, а для сложного лучше использовать тормозящий на том же уровне Photoshop.
потом забил, потому что для простого редактирования обычного Paint вполне достаточноНу хз, кому как - paint.net не сильно тяжелее обычного paint-а, а вот прозрачный цвет в гифках, например, поддерживается; можно немного поиграться со слоями, ещё чего-нибудь там лёгкого сделать... а судя по отзывам и туториалам - сложные штуки, которые сейчас все делают в фотошопе, там делать тоже никаких проблем нет.
Пиздец. БМП хранит слои, EXIF-данные, RAW-данные? БМП может хранить 16 бит на канал? БМП умеет хранить альфа-каналы? Блин, пенартур, ты бы не позорился, а? Пиздец, слов нет, не знаешь - не пиши!
не переживай.
Ну давай: быстрая маска есть? выделение с размытыми краями? работа с каналами? с альфа-каналом? батч-обработка изображений? Кастомные кисти? эффекты слоя? Или по-твоему фотошоп это кисточка-ресайз-яркость-контраст?
БМП может хранить 16 бит на канал? БМП умеет хранить альфа-каналы?Альфа-каналы, если верить википедии, хранить умеет.
Запихнуть туда можно, если верить той же википедии, сколько угодно бит (там в заголовке на глубину цвета выделено 2 байта, и, насколько я понял, больше ничем она не ограничена). Вот только действительно, хз, сможет ли pain.net такое открыть.
EXIF-данныеНу, это не совсем критично.
слоиРазве они используются при съёмках
RAW-данныеПохоже, мы друг друга не понимаем... что ещё хранит bmp, если не их?
с той архитектурой, с которой он сейч
почему с той же?
на то оно и окончательное ТЗ чтоб придумать окончательную архитектуру
бля, пенартур, ты реально домохозяйка
Насколько я помню (смотреть в инете лень raw вообще не хранит информацию о цвете конкретного пиксела. Он хранит сигнал, пришедший со светочувствительного элемента матрицы. Пиксел в твоём обычном понимании - это в терминах матрицы обычно 4 светоэлемента, например "синий", "зелёный", "красный", "синий", стоящие квадратиком. Ну или может быть шестиугольником, в разных матрицах по-своему, я уж не знаю, как точно. К какому цвету они наиболее чувствительны и в каком порядке расположены - зависит от конкретной матрицы, часто эта информация пишется в RAW-файл, так же как и параметры съёмки (вот тебе и "некритичный EXIF"). Факт тот, что матрица не выдаёт тебе сразу RGB. Если ты переведёшь в BMP RAW-данные, это означает, что ты уже привёл по каким-то законам сигнал с 4 фотоэлементов к 3 значениям RGB, и обратное преобрзование ты уже не произведёшь. Вот тебе и BMP "хранит всё".
Вся изложенная информация не претендует на абсолютную точность, но идея примерно такая. Ты сам мог бы посмотреть обо всём этом в инете, раз уж не разбираешься, и только потом спорить.
Довольно критично, между прочим.EXIF-данныеНу, это не совсем критично.
http://ru.wikipedia.org/wiki/%D4%E8%EB%FC%F2%F0_%C1%E0%E9%E5...
Вот для общего развития, не поленился и нашёл. Я почти прав оказался, действительно 4 пиксела, только там именно 2 зелёных.
Вот для общего развития, не поленился и нашёл. Я почти прав оказался, действительно 4 пиксела, только там именно 2 зелёных.
Похоже, меня обмануло название формата
Альфа-каналы, если верить википедии, хранить умеет.Запихнуть туда можно, если верить той же википедии, сколько угодно бит (там в заголовке на глубину цвета выделено 2 байта, и, насколько я понял, больше ничем она не ограничена). Вот только действительно, хз, сможет ли pain.net такое открыть.Отлично, программы, умеющие писать и читать альфа-канал в BMP, в студию Кроме фотошопа, естественно, он, может быть, и умеет, я не проверял
Ну, это не совсем критично.Как я уже написал, тебе, снимающему "Я на похоронах тёщи" на цифромыльницу ценой в 200 баксов, EXIF, ясен пень, не критичен. Ты небось и не в курсе, что там ещё что-то кроме даты снимка хранится. Людям, более знакомым с фотографией, он критичен.
Разве они используются при съёмкахПри съёмках не используются, конечно, но ты же предлагаешь BMP как формат для обмена графической информацией между приложениями, который "хранит всё"! Альфа-канал при съёмках тоже не используется, между прочим.
Отлично, программы, умеющие писать и читать альфа-канал в BMP, в студиюХм, похоже, как ни странно, таких действительно нет, хотя винда и работает с этим альфа-каналом
Ладно, bmp ты обосрал; а что скажешь насчёт tiff и hd photo (который обещают к четвёртой версии paint.net)?
насчёт hd photo ничего не знаю.
http://ru.wikipedia.org/wiki/%D4%E8%EB%FC%F2%F0_%C1%E0%E9%E5...фильтр Байера вроде токо в самых дешевых камерах
Вот для общего развития, не поленился и нашёл. Я почти прав оказался, действительно 4 пиксела, только там именно 2 зелёных.
там есть еще несколько различных расположений цветовых сенсоров
но зеленых там по-любому больше всего
Ну я ж не говорю, что тифф идеальный. Но в качестве формата для обмена между приложениями подойдёт явно лучше, чем bmp =)
Скажите, почему paint.net на Windows 2000 не ставится. Они совсем офигели? .NET 2.0 на компе стоит, так какой еще извращенной функциональности им надо?
Но в качестве формата для обмена между приложениями подойдёт явно лучше, чем bmpС виндой же не поставляется libtiff, поэтому у виндузятников другое мнение.
Оставить комментарий
Dasar
под nix-ами скорее сидят админы, чем разработчики.для разработки nix никаких особых преимуществ не дает, скорее наоборот.
также до сих пор остается серьезной проблемой, что под *nix очень дорого разрабатывать юзерские проги.