Windows vs Linux - Как десктоп
, и игровая станция.
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
| ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
| [216.73.216.10] |
|
|
Правила раздела:
| Страницы: (1182) « Первая ... 1050 1051 [1052] 1053 1054 ... 1181 1182 ( Перейти к последнему сообщению ) |
Windows vs Linux - Как десктоп
, и игровая станция.
|
Сообщ.
#15766
,
|
|
|
|
Цитата linuxfan @ Я написал утилиту, которая берет с командной строки имя файла, а в ответ печатает на stdout ширину картинки в пикселах. Как мне это прикрутить в повершеллу? ![]() ![]() $wp = widthpix somefile.someext;#widthpix - утилита linuxfan'а if ($wp -le 70)# если ширина картинки меньше либо равна 70 { write-output "ok"; #всё хорошо } else #иначе { write-output "too big";#всё плохо } ужасно сложно Добавлено что с форумом? |
|
Сообщ.
#15767
,
|
|
|
|
Цитата Вот только состряпать приложение с COM интерфейсом весьма и весьма проблематично. Так писать то никто не заставляет, нужно только выбрать себе приемлемый COM сервер под нужды. А их немало уже в самом системе. |
|
Сообщ.
#15768
,
|
|
|
|
Цитата linuxfan @ Решаем задачу в линуксе: пишется утилита, которая делает то, что требуется и выводит результат. Лишних действий нет. Решаем задачу в винде: пишется утилита, удовлетворяющая определенным соглашениям и реализующая какие-то интерфейсы, в результате чего вместо написания простых вещей проще на них забить. Вот он, истинный unix-way Каждый пишет что-то своё, наплевав на существующие реализации, соглашения и интерфейсы. Потом это дерьмецо объединить в систему практически невозможно, поэтому получается та самая, разваливающаяся на ходу, раздутая сотнями идентичных велосипедов "система" - линух.Цитата linuxfan @ Я уже понял, что правило «думай, потом пиши» в цикле разработки windows-приложений не используется. Производительность, я так полагаю, измеряется в килобайтах кода на единицу времени? Отсюда выгодно давать переменным и функциям очень длинные понятные названия вроде «IncrementArgumentByOne», «AddOneNumberToAnother» и т.п. А вы используете в соответствующих случаях имена "i", "a" и т. п.? Само собой, при использования такого подхода нужно всякий раз соображать - чем отличается "aa" от "ab" и для чего оно надо Понятно, почему линуксовый софт так дико глючит |
|
Сообщ.
#15769
,
|
|
|
|
Цитата Devilguard @ Какие ты темы для ХР юзал ? Не стандартные ессно, а те которые в нете лежат, которые другие сделали. Стандартные темы всегда были *овном везде и всегда и такими и останутся. Как правило на дизайнерах экономят все. , то поклонники винды тулзу скачать простейшую не могут, то графические темы им из и-нета подавай.ЗЫ а кто мешает нестандартные темы для того же гнома накачать? |
|
Сообщ.
#15770
,
|
|
|
|
да, кстати, о преимуществах .wsf
![]() тут мне старожилы рассказали историю. раньше наши билды работали с помощью .cmd файлов (unix вей) потом отказались, переписали всё на .wsf + .js (получилось тоже странно, но ничего страшного) на дискуссию "cmd или wsf" можно было по словам очевидцев продавать билеты, такое шоу редко увидишь ![]() cmd-шники ушли в тень и больше не появляются. тут я посравнивал возможности этих 2-х штуковин, в общем, поскольку .wsf + .js умеет по человечески обрабатывать разные системные исключения, диагностика получается значительно понятнее и прозрачнее (не идеальная, но это уже издержки реализации не рассчитанной на экзотику, например, мне не приходили уведомления о fail при переполненном харддиске. |
|
Сообщ.
#15771
,
|
|
|
|
А! Кто там сказал что в Винде рай земной?
Новая винда на новом компе, винда лицензная (XP pro) поставил Office 2003, поставил ABBY FineReader Pro 8.0. Сканирую текст. Скан проходит нормально. Распознаем. Отлично, весь текст (русский) показывается как надо. Нажимаем "передать в Word" Результат - квадратики вместо текста Хорошо, просто тупо копирую текст в буфер. Вставляю. Результат тот же. И так не только с Вордом. Ну и кто мне тут после этого будет доказывать, что в Винде ПО платное, но зато мол никакого геммороя??? |
|
Сообщ.
#15772
,
|
|
|
|
![]() ![]() if [ $a -lt $b ]; then ... fi ЗЫ: «[» -- это исполняемый файл, так что для всех сравнений -- отдельная утилита, а if просто реагирует на код возврата. Цитата Guderian @ Вся остальная работа ведется с едиными интерфейсами IDbConnection, IDbCommand и т.п. И если у меня было $command = $connection.CreateCommand(), то оно так и осталось. Интересно, а почему бы уж сразу встроить C# всюду, где только можно и нельзя? Преимущество скриптовых языков в том, что они настолько просты и интуитивны, что пользоваться ими могут даже такие чуждые программированию люди как админы. Тут же нам нахерачивают объектов, интерфейсов и прочей дряни. Ха, да если во мне дух извращения проснется, то я уж тогда себе clisp поставлю дефолтовым шеллом и буду с помощью cl-sql строить маппинги объектных структур на таблицы БД. Преимущество скриптового языка в том, что он очень прост, универсален и гибок. Не знаю как там насчет гибкости, но в универсальности и простоте означенного выше ps я сильно сомневаюсь. Цитата MichSpar @ ужасно сложно Ну допустим, а как это красиво с dir'ом скрутить? Чтобы было как там: (dir) | ($_... какие-то width и прочая фигня)? То что ты привел выглядит как сторонний костыль: наш ps умеет читать вывод процессов в stdout. Цитата MichSpar @ что с форумом? ![]() Да линукс как всегда глючит ![]() Цитата Guderian @ Ты прикинь, а там все объекты возвращаются класса Bitmap и этому пайпу пофигу до формата, в котором он был, это заботы декодера. А декодер psd есть? Я ведь не слепой и заметил dir *.jpg. Эээ, а ну-ка, как этот новый декодер к изящным пайпам привернуть, нечего напару с MichSpar'ом мне лапшу на уши вешать. Цитата Guderian @ Как человек, который как мне казалось, знаком со стройными объектно-ориентированными системами, ты должен понять, что мы не оставили вам шансов С некоторых пор я изрядно охладел к «всеобъемлющей объектной ориентированности» и предпочитаю околоDSLные подходы. Они более нативные и понятные моему мозгу, причем DSL не исключает ООП, он позвоялет не тыкать его не к месту. Цитата wind @ А вы используете в соответствующих случаях имена "i", "a" и т. п.? Ну т. к. у меня нет IDE, которые бы писали код вместо меня, то я предпочитаю разумный компромисс между длиной имени и отражаемой сущностью. И да, счетчики в циклах я, не стесняясь, именую i, j, k вместо levelOneCounter, levelTwoCounter, levelThreeCounter. |
|
Сообщ.
#15773
,
|
|
|
|
wind
Цитата Вот он, истинный unix-way Каждый пишет что-то своё, наплевав на существующие реализации, соглашения и интерфейсы. Потом это дерьмецо объединить в систему практически невозможно, поэтому получается та самая, разваливающаяся на ходу, раздутая сотнями идентичных велосипедов "система" - линух. Верно подмечено. У меня вот сейчас глюк один был. Пишу прогу, библиотека у нас обновилась, мне нужно переписать свои функции декодирования, там АПИ поменялась. Пишу запускую - глючет. Ладно думаю, пишу трап-трейсы - компилю .... нету ... код отрабатывает, в функции всего одна ветвь с true, но трейс трапов в логах я не вижу ... иду дальше - вообще убираю декодирование ... запускаю - все на то же месте глючит, что глючить не может, поскольку код отсуствует. Ладно хрен с ним бывают глюки билда. Удаляю все Obj. Пересобираю - то же самое. Процедура повторяется раз 10 - я на нервах, фигачу по поверу. После перезагруза системы - все восстанавливается. Исполняемый код соотвествует компилируемому. Вы встречали подобные глюки в винде ? |
|
Сообщ.
#15774
,
|
|
|
|
Цитата Devilguard Вы встречали подобные глюки в винде ? В винде не встречал, а в линуксе -- миллиард раз. Описываю пути решения: 1. Убедитесь, что вы запускаете именно тот бинарник, которые пересобираете 2. Убедитесь, что вы собираете и запускаете бинарник на одной и той же машине, а не на разных. К несчастью, современные ПК -- это на редкость детерминированные машины и если вы пишете printf("Hello"), а оно Вам выдает "F*ck", то стоит объективно поискать причину проблемы где-то между клавиатурой и стулом. |
|
Сообщ.
#15775
,
|
|
|
|
Цитата FullArcticFox @ Это вроде защиту ABBYY такую сделали от пиратов Хорошо, просто тупо копирую текст в буфер. Вставляю. Результат тот же. И так не только с Вордом. |
|
Сообщ.
#15776
,
|
|
|
|
Цитата поставил ABBY FineReader Pro 8.0. Сканирую текст. Скан проходит нормально. Распознаем. Отлично, весь текст (русский) показывается как надо. Нажимаем "передать в Word" Результат - квадратики вместо текста Хорошо, просто тупо копирую текст в буфер. Вставляю. Результат тот же. И так не только с Вордом. Ну и кто мне тут после этого будет доказывать, что в Винде ПО платное, но зато мол никакого геммороя???воровать нужно меньше |
|
Сообщ.
#15777
,
|
|
|
|
Цитата Бобёр @ воровать нужно меньше За ПО плочены бабки, ибо контора. И за офис и за Ридер. Ладно, задом чую что легче перезачать |
|
Сообщ.
#15778
,
|
|
|
|
FullArcticFox, так в поддержку обратитесь, раз контора..
|
|
Сообщ.
#15779
,
|
|
|
|
Цитата Debug @ FullArcticFox, так в поддержку обратитесь, раз контора.. Если не поможет, тогда и обращусь. |
|
Сообщ.
#15780
,
|
|
|
|
Цитата DUKe @ , то поклонники винды тулзу скачать простейшую не могут, то графические темы им из и-нета подавай. Раньше нас убеждали, что "поклонники винды" только и делают что разную херню качают. Но свидетели потерпевших путаются в показаниях, мы теперь скачать не можем ![]() Цитата linuxfan @ ЗЫ: «[» -- это исполняемый файл, так что для всех сравнений -- отдельная утилита, а if просто реагирует на код возврата. Круто. А на типы, как я понимаю, мы кладем? Даты, он сравнивать умеет? Про возможность задавать свои механизмы сравнения для определенных типов я уж промолчу. Может все-таки доделаешь задачку со своей стороны, коль у тебя далее вопросы вокруг нее так активно крутятся ![]() Цитата linuxfan @ Интересно, а почему бы уж сразу встроить C# всюду, где только можно и нельзя? Кто тебе сказал, что это шарп, это IronPython. Хотя нет, это VB.NET. Черт никак по этому скриптовому языку не могу понять, кто это. Может PS? ![]() Цитата linuxfan @ Преимущество скриптового языка в том, что он очень прост, универсален и гибок. Не знаю как там насчет гибкости, но в универсальности и простоте означенного выше ps я сильно сомневаюсь. Слишком много слов, ты нам эту простоту покажи на примере. Пока мы имеем: ![]() ![]() PS> dir ... | where { (Import-Bitmap $_).Width -ge 100 } bash: find ... | xargs identify "%w %i\n" | awk ... Добей свой пример и посмотрим. Насчет универсальности, так из приведенных мной задач ты так толком ни одной и не обрисовал. Так что это я должен универсальность линуксовыхрешений ставить под сомнение ![]() Цитата linuxfan @ Ну допустим, а как это красиво с dir'ом скрутить? Чтобы было как там: (dir) | ($_... какие-то width и прочая фигня)? То что ты привел выглядит как сторонний костыль: наш ps умеет читать вывод процессов в stdout. ![]() ![]() dir | твоя функция | where {условие} Цитата linuxfan @ А декодер psd есть? Я ведь не слепой и заметил dir *.jpg. Да поставь dir *.png или dir -include <что надо>, сути или скрипта это никак не изменит. В штатной поставке декодера psd нет. Поставил библиотеку декодеров вроде ImageGear - есть. В том числе и поддержку десятков RAW форматов для различных камер. Съест imagemagik, скажем, nef от моего nikon d80? Плюс у меня всегда есть возможность заюзать тот же PhotoShop через COM. Цитата linuxfan @ Эээ, а ну-ка, как этот новый декодер к изящным пайпам привернуть, нечего напару с MichSpar'ом мне лапшу на уши вешать. Это только вы можете пайпы менять при появлении нового декодера. У нас это для пайпов происходит прозрачно. Внутри FCL за всю эту кухню отвечает пространство имен System.Drawing.Imaging. Конкретно - ImageCodecInfo. Достали либу с поддержкой формата X или сделали свою реализацию, зарегистрировали в реестре, проверили в списке зарегистрированных, например ![]() ![]() PS> [ImageCodecInfo]::GetImageDecoders | select CodecName, MimeType и все... Цитата linuxfan @ С некоторых пор я изрядно охладел к «всеобъемлющей объектной ориентированности» и предпочитаю околоDSLные подходы. Они более нативные и понятные моему мозгу, причем DSL не исключает ООП, он позвоялет не тыкать его не к месту. Для DSL тебе нужно Visual Studio SDK, там все это есть и в весьма недурственном виде, включая описание предметной области и конкретных реализация в виде красивых диаграмм, мощными генеративными механизмами и т.п. |