blog.inf.by > inf.by/linux > Методики программирования и ...
Методики программирования и производительность
С развитием программирования и потребностей в программах многие программисты стали использовать разнообразные фреймворки и библиотеки для быстрой реализации простых вещей.
Скачав простую программу для ведения, например, каталога заметок вы можете столкнуться с тем, что для ее использования вам нужно установить .Net Framework самой свежей версии, а интерфейс написан в стиле Ribbon (MS Office 2007).
Грешат этим и программисты для Linux, которые хотят сэкономить время на кроссплатформенности и не брезгуют использовать Java, Python, Mono и др.
В итоге мы можем получать интересные, многофункциональные приложения, которые делают то, что нам нужно и даже сверх того. За счет экономии времени при разработке интерфейса мы получаем эти приложения быстрее и с более-менее достойным интерфейсом.
Но что они делают с нашими компьютерами!? Представим ситуацию одновременного использования:
- офисный пакет OpenOffice (Java)
- айтюнсоподобный плеер Songbird (XUL)
- браузер Firefox (XUL) + штук 10 закладок
- торрент-клиент Vuze (Java)
- редактор Aptana Studio (Java) или Komodo Edit (XUL)
Уже только этот набор превратит вашу вроде мощную железяку в хромающего старика. Все программы приятные, функциональные. Использовать каждую из них в отдельности замечательно, но как только вы из них строите рабочее место, то хоть на луну вой.
А ведь кроме них захочется запустить еще и IM-клиент, файловый менеджер, да и еще пару мелких полезных программ. А тут еще приходит клиент и просит открыть PSD на пару десятков мегабайт.
В итоге приходится выкручиваться. Офисный пакет запускать не всегда, в качестве плеера использовать mpd или audacious, firefox иногда вытеснять более шустрой оперой, торрент-клиентом сделать transmission, редактор в ущерб функциональности на Geany.
В общем эта тема для холивара. Имеют ли право программисты, экономя собственное время и компенсируя недостаток знаний, заставлять весь мир гнаться за более мощным железом, емкими батареями ноутбуков, большими мониторами?
openoffice(java)
А когда OpenOffice c плюсов на джавe переписали ?
Отвечу на ваш вопрос. Программисты имеют право делать что угодно, когда угоно и сколько угодно, особенно если им за это не платят. А вы имеете право выбрать. Такой вот он, мир СПО
Хорошая тема. И мне, как программисту, тема нравится и близка.
Отвечу просто.
>>Имеют ли право программисты, экономя собственное время
За деньги для работодателя, которому всегда неймется и сроки которого всегда вчера - да.
>>и компенсируя недостаток знаний
нет, конечно. Но тут правильно выступил Артем Жирков. Не нравится - не кушай.
Хочу еще пояснить свой интерес. За последний месяц много писал на java + spring используя eclipse + tomcat. Все это на мощном 4-ядерном компе с 4 гб памяти. Хватает на все, хоть завались, вместе с опенофисами, фф, ритмбоксами и прочей тяжелой лабудой по мелочам.
Тоже самое на работе - вынужденно на своем ноуте. Средние 2 ядра + гб памяти. Если сказать просто - задница. Офис нафиг, фф нафиг, музыку нафиг, по возможности даже томкат не запускать и каждые полчаса - все закрыть, выгрузить своп, подгрузить своп, све открыть. Кошмар.
Ну так вернемся к баранам. На самом деле я не знаю, имеет ли кто право или нет, ведь фреймворки превращаются в отдельные платформы со своим в каком-то смысле внутренним языком, и на сколько это (разработка на фреймоврках) быстрее и проще - тоже очень и очень спорный вопрос. Так что - времена такие. Времена тяжелых фреймворков и "платформозависимых кроссплатформенных" языков. Тут все очень тяжело: мода, требования времени, требования заказчика, требования пользователей... всего не перечислить.
Ну, есть ещё Vala как вариант.
В том, что происходит, не столько вина или воля программистов, сколько, грубо говоря, проявление такой вещи как "IT-рынок". Участники рынка - коммерсанты, то есть те, кто пытается получить прибыль. И под это они "клепают" технологии, которые способствуют получению прибыли. И рекламируют, и продвигают эти технологии, стремясь "не мытьём, так катаньем" "оттяпать" часть рынка побольше. Поэтому неудивительно, что программисты находятся "в плену" этих технологий, независимо от отношения к ним. А пользователям приходится либо иметь дело с "дурным наследием" прошлого, либо обеспечивать прибыль производителям "новых технологий".
Проблема эта не нова и достаточно давно обсуждается, но в узких кругах. Тех, для которых видна разница между "американской" и "европейской" школами программирования, если можно так сказать.
Но и сама проблема является следствием процессов, протекающих в современной культуре и воздействующих на все отрасли жизнедеятельности человека. Кризис развития и порождаемые им проблемы наблюдаются всюду. И решить их с наскока в отдельно взятой "IT-отрасли" не получится.
"Оттянуть конец" рано или поздно, конечно, придётся. Поэтому интерес к подобным проблемам появляется всё у большего числа IT-шников. Главное, не останавливаться на рассмотрении частных случаев. Языки и фремйворки - всего лишь средство решения задач. Надо бы и сами задачи не забыть рассмотреть, и порождающие эти задачи и средства их решения процессы. Пока же всё происходящее неизбежно, к сожалению.
Согласен с мнением Артёма Жиркова. Всего каких-то несколько десятков лет назад ОС на высокоуровневом языке C тоже выглядела баловством и нерациональным использованием ресурсов, да что там.. даже разбиение программы на многочисленные функции вмето хитрой вермишели из goto казалась странной затеей. Интересно, на сколько наивными для нас покажутся проблемы тяжеловесных фреймворков лет через 10.
2 kitov: я тоже удивлен. но кажется некоторые компоненты его требуют.
А в остальном - все конечно замечательно, но как можно обеспечить комфортную работу с использованием таких приложений?
Мысль только одна - все программисты и программы будут работать на одном фреймворке и его поддержка будет обеспечиваться на аппаратном уровне. Но это почти фантастика и потенциально чья-то монополия.
Радуют, конечно, смелые заявление команд-разработчиков Java и Python что они мол ускорили производительность во столько-то раз, но пока тем, у кого 2Гб и менее на борту и процессор только с двумя ядрами, скучновато грузить все эти чудеса.
Использовать фреймворки в серверных технологиях - понимаю, заказчику проще оплатить еще один процессор или планку, зато быстрее окупить разработку и легче поддерживать комплекс. Но в компьютеры всем пользователям еще одну планку не купишь.
| Ю.Т. |
|
 |
8 |
 |
|
|
02.09.09, 13:38
|
|
Опера *была* когда-то легче, чем ФФ, сейчас наравне. Вот и у меня теперь ФФ вместо Оперы. Всё меньше проблем совместимости на сайтах.
Что до вопроса: брать фреймворки или не брать? Ответ, похоже, не тут, а в том, что фреймворки должны были бы быть лучше интегрированы с платформой. Разве можно сравнить старт того же ООО на окошках и на линуксе, равной аппаратной мощности?
решат этим и программисты для Linux, которые хотят сэкономить время на кроссплатформенности и не брезгуют использовать Java, Python
Что значит "не брезгуют"? Сейчас так много дистрибутивов linux без питона из коробки? Предлагаете отказать от питона и явы? писать только на С и С++? Ну ну...
Я не говорю, что от фреймворков и высокого уровня абстракции нужно отказаться. Более того, я даже не предложил варианта решения, потому что у меня его нет.
Почти все мои знакомые работали на KDE (до версии 4). Большинство из них работают на не самых слабых ноутбуках в 4Гб памяти и от 2Ггц процессоры. Почти все вынуждены были перейти на Gnome, который просто летает, по сравнению с KDE. Причина таких тормозов как раз в высоком уровне абстракции и целой куче прослоек. Да, это позволило выпустить красивый продукт, который легко дополнять, интегрировать и развивать. Но вот многих своих поклонников эта новинка оттолкнула. И меня в том числе, хотя я честно пытался привыкнуть. Может после проведения некоторых оптимизаций я попробую снова.
Когда я запускаю OpenOffice многие клиенты удивленно спрашивают почему у меня так медленно работает компьютер. Я ссылаюсь на загруженность программами. Весело было, когда Aptana печатала текст на экране медленнее, чем я его набирал.
Все это не может приносить удовольствия в работе. Так что от таких супермудрозапрограммленных монстров типа плеера Songbird точно приходится отказываться, если есть желание делать что-то еще на этом железе.
Гномовский Rhythmbox нормально, никому не мешая, переваривает медиатеку на 200Гб и более 20 000 композиций, при этом он не только ее играет, но и быстро фильтрует по параметрам, удаляет в корзину.
обращение к здравому смыслу
недостаток профессиональных знаний компенсируется чем угодно-хамством. Я-инженер-электрик, но инженер, а что говорить о простых пользователях? Впечатление такое,будто линукс написали между делом,попивая пиво, или собрали в кучу,буквально за несколько дней разные модули, но если на эту работу было потрачено много рабочих часов и много времени, то я хочу посоветовать программистам от линукс-смените профессию-вы занимаетесь не своим делом, может вы будете сис-админами или еще кем угодно, но операционную систему вам не создать никогда. А почему,нет координации, нет концепции. Есть желание сидеть за компьютером и что-то там "творить". Или время такое-каждое дело начинается с шумихи неразберихи-вот видимо такое состояние в разработке систем линукс
Настроение: время профессионалов не пришло-жаль
Сейчас играет: софия ротару-люблю эти песни уже 40 лет
2 шиманский владимир витальевич: негатива у вас выше крыши. не знаю что за линукс вы видели, но я специально использую не самые простые (Gentoo, Arch) и они не создают у меня такого как у вас впечатления. Что уж говорить про монолитные Mandriva, Suse, RHEL.
И уж программисты, которые занимаются линукс явно достойны всяческого уважения, ибо именно на нем обкатаны и внедрены самые интересные достижения в области сетевых протоколов, файловых систем и логики работы драйверов.
Не отрицаю - из-за большого количества людей создается некоторое впечатление разношерстности, но мэйнтейнеры дистрибутивов сглаживают эти ощущения грамотной подборкой программ по умолчанию.
Да и вообще вас никто собственно не заставляет использовать линукс. Купите за 300-400 у.е. известную ОСь, заодно пакетик софта к ней и используйте на здоровье. Или покупайте продукцию Apple.
Ваш комментарий