powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / XP-программирование
15 сообщений из 15, страница 1 из 1
XP-программирование
    #32452140
Louder
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скажите, кто-нить практиковал экстремальное программирование?
Тут Филипп говорил насчет pbunit. Кто-нибудь использовал?
Я помнится давненько качал эти библиотеки, но понять ничего не удалось.
Методика XP довольно интересная и многообещающая. Правда неизвестно насколько эффективно она будет работать на Российском рынке...
...
Рейтинг: 0 / 0
XP-программирование
    #32452148
Lepsik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
--Скажите, кто-нить практиковал экстремальное программирование?

оно было создано апологетами жабы, поэтому ряд концепций к C++ просто не применим
...
Рейтинг: 0 / 0
XP-программирование
    #32452181
Фотография ЗоринАндрей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Во-первых, оно было создано апологетами Smalltalk которых и в Jave многое раздражает, что однако не является поводом к категорическим высказываниям.
Во-вторых, его применяют даже в не-объектно ориентированных (читай - процедурных) языках - главное идея, а не реализация конкретного фреймворка для тестирования. Как насчет Perl, PHP, transact-sql, или упаси Господи shell-script?

Я готов признать что тот же Powerbuilder сопротивляется рефакторингу, но при желании его все таки можно выполнить. Но многие считают что скрипт на тысячу строк и принципиально нетестируемый код это нормально.
Разруха однако далеко не в средствах разработки, а в головах. :-)
Так что читайте умные книжки, тогда может быть будет меньше постов типа "я загрузил и нифига не понял".

2 Lepsik: подпишитесь на extremeprogramming на groups.yahoo.com и расскажите о неприменимости XP к C++ тем кто этим занимается несколько лет уже - то то они удивятся :-)

2 Louder: а чем это интересно российский рынок так специфичен для успеха/неуспеха XP? при чем тут вообще рынок?
...
Рейтинг: 0 / 0
XP-программирование
    #32452224
Ermak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для тех кто хочет ознакомиться с данной технологией:

http://www.xprogramming.ru/
http://www.maxkir.com/
...
Рейтинг: 0 / 0
XP-программирование
    #32452281
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Честно говоря не понимаю, чем XP может помочь проектированию обычных клиент-серверных систем, которые мы чаще всего в России и делаем. Вся эта методика четко ориентирована на ООП и там показывает себя с наиболее прекрасной стороны. Однако мне сложно представить себе команду, которая постоянно меняясь кодом то проектирует БД, то программирует клиентскую часть. Лично я предпочитаю писать проекты старым дедовским методом в условиях ограниченных кадровых ресурсов и их уровня знаний: есть архитектор проекта, он же проектировщик БД, он же идеолог решений клиентской части, есть программист клиентской части, разрабатывающий интерфейс на основе написанных и оттестированных решений архитектором, есть аналитик отчетных форм (частенько это в одном лице программист клиентской части) и есть постановщик/менеджер задачи (но обязательно отдельное лицо). Архитектор следит за ходом выполнения работ каждого члена команды и сам дает отчет о ходе выполненных работ членам команды. Каждый член команды более менее подробно, но без излишней детализации документирует свою работу. В любой момент времени он должен предоставить затребованный другим членом команды документ на запрошенную часть работы. Все члены команды одновременно являются бета-тестерами проекта, постановщик/менеджер имеет приоритет по заявлениям о недостающей функциональности или неудобства интерфейса клиентской части, однако он должен вполне внятно это документально обосновать. Из XP строго используется все, что касается планирования и дизайна, постановщик и архитектор контролируют ход и скорость выполнения работ, простота кода достигается засчет решений архитектора, где уже есть готовая и отработанная иерархия рабочего интерфейса, к которой подключается бизнес-логика и клиентская и отчетная части являются максимально тонкими (вся тяжесть работы бизнес-логики лежит в БД). Это позволяет снизить риск написания кривого кода членами команды и уменьшить затраты на рефакторинг кривого кода.

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

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

В общем, черт его знает, как правильно командно писать большие проекты. Особенно когда народу мало, ТЗ военная тайна заказчика, и в общей сложности члены команды зеленые и их постоянно нужно учить и контролировать. У XP много достоинств, многие из них я использую, однако в области кодирования его методология никак под наши бух учетные задачи не лезет, если бы я 3-звенные приложения строил, она может быть и была бы полезна. Я видел пример XP программирования моими двумя друзьями, которые пытались реализовать довольно сложный проект с использованием 3-звенки, следуя всем рекомендациям XP. Не скажу, что опыт у них был удачный или не удачный, однако проблем возникало не меньше, кое где я бы сказал больше -
тот же пункт XP о реализации наиболее простых решений и парном программировании у них привел к тому, что вроде и проект писался последовательно и ТЗ было более менее определено, однако на середине пути они столкнулись с изменениями требований ТЗ заказчиком и потратили довольно много времени на изменения модели системы, рефакторинг кода и отладку системы. В моем например случае изменение ТЗ обычно не грозит пишущемуся проекту большими неприятностями, так как при его проектировке я изначально изучаю историю динамики изменения его ТЗ и закладываюсь на наиболее критичные моменты сразу в серверной и клиентских частях.

P.S. Все описанное мной не претендует на оригинальность или правильность. Просто рассказал, как мы работаем из личного опыта, причем судя по всем умным книжкам работаем мы явно не правильно, однако раз проекты пишутся и получаются более менее качественными, значит не все так плохо. Хотя тут опять же все только от архитектора зависит.
...
Рейтинг: 0 / 0
XP-программирование
    #32452358
Dimon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Когда читаешь книгу про XP сначала захватывает, но когда немного начинаешь думать, то ... наверно я просто не готов к нему.
Полностью согласен с ASCRUS, без архитектора сложные системы лучше не строить, и проект лучше с начала хорошо продумать.
Понравилось про постоянное тестирование, сейчас бухгалтерию писать будем, обязательно этим воспользуюсь.
Карточки задач - когда новое приложение ваяешь, то спецификация и так есть, а вот когда готовое сопровождается, то все пожелания пользователей и не критичные ошибки записываются на небольшие бумажки и привешиваются на доску объявлений. Красные - выполнить в первую очередь, желтые - во вторую, белые - как закончатся красные и желтые. Удобно получилось.
Вдвоем скрипты писать - использовал, когда информацию нужно было срочно перетащить из одной базы в другую, причем по хитрому. Оправдало, справились быстро и перетащили то, что нужно. В повседневной жизни - когда человек рисует DW, особенно красивое, как печатная форма счет-фактуры, то второй ему совсем не нужен. Вот когда генератор проводок и оборотов, с заполнение партий и добавлением накладных на закупку писать буду, вот тогда попробую парное.
ИМХО - есть такая штука, целесообразность называется, считаю от нее нужно отталкиваться.
...
Рейтинг: 0 / 0
XP-программирование
    #32452430
Компостеров
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
to Dimon

Что же вы все велосипед изобретаете ? Все бухгалтерию пишете ? Вам что, 1С не хватает ? Вполне достаточная в фунциональном плане система, отличная поддержка. Ну требует правильно сконфигурированной сети.
...
Рейтинг: 0 / 0
XP-программирование
    #32452464
Ermak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Компостеров
И каким образом ваше сообщение соотносится с темой обсуждения?
...
Рейтинг: 0 / 0
XP-программирование
    #32452597
Louder
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
to All
Кстати, методика Rational противоречит XP?

to ASCRUS
Спасибо за подробное объяснение! Да, схема старая и добрая. Я побывал на каждой ступени такой цепочки.
Есть один большой минус, когда один человек всё проектирует: работать в таком проекте на месте рядового программиста очень нудно.
Мне, например, не нравится когда мою задачу полностью обдумали и мне остаётся только DW рисовать и функции в объекте нафигачить. Превращаешься в кодера-идиота, никакого стимула к работе. Я как-то раз нарвался на такое. Теперь, не смотря на большой опыт, всё же стараюсь соглашаться с "зелеными" программистами насколько это возможно. Всё-таки каждый должен чувствовать себя очень умным и нужным. Ну это уже психология.

to ЗоринАндрей
Как билдер сопротивляется рефакторингу? Выдаёт сообщение типа "слишком мало кода"?
Насчет книжек. Лежит у меня три стопки на столе. Читаю в свободное (от работы, семьи, университета, друзей) время. Положу ещё одну про pbunit и через годик успею прочесть и разобраться. Потом ни в коем случае не скажу вам свое мнение о этих библиотеках, особенно если они ужасно написаны и практически не работают. Скорее наоборот гордо скажу: "RTFM!"
...
Рейтинг: 0 / 0
XP-программирование
    #32453285
Фотография ЗоринАндрей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, методика Rational противоречит XP?
Нет. См. RUP vs XP Для того, чтобы сделать XP похожим на RUP надо хорошо представлять себе и то и другое.
Так что новичкам не рекомендую смешивать, иначе получится нечто неудобоваримое.
Можно найти массу примеров неправильного применения RUP и даже несколько примеров неправильного применения XP.

Как билдер сопротивляется рефакторингу? Выдаёт сообщение типа "слишком мало кода"?
Вы пробовали?
Элементарные перемещения кода делать труднее когда
- невозможно одновременно открыть предка и наследника
- невозможно сохранить (временно) некомпилирующийся код
- нельзя переместить в другой объект функцию целиком
(не только тело но вместе с сигнатурой)
и т.д. и т.п.
Слишком часто приходится обращаться к экспорту-импорту чтобы обойти эти ограничения.
Попробуйте сделать Push Down / Pull Up / Move Method сначала в Eclipse а потом в Powerbuilder - сразу почувствуете разницу ;-)

Потом ни в коем случае не скажу вам свое мнение о этих библиотеках, особенно если они ужасно написаны и практически не работают.
Ну извините. Сорвался из-за дурацкого поста Lepsik-a который вообще непонятно что тут делает со своим С++ ;-)
И фраза "загрузил и ничего не понял" как то подозрительно прозвучала. Либо человек знает чего он хочет и ищет целенаправленно, либо это ему (пока?) не надо. Юнит-тесты писать можно и без PBUnit но мягко говоря неудобно. И зачем изобретать велосипед? Другое дело что с нуля написанный он был бы наверное привлекательнее чем порт JUnit на PB.
Я готов отвечать на конкретные вопросы по мере возможности (на такие посты как у уважаемого ASCRUS все-таки наверное не способен).
ужасно написано, не работает, не эффективно на рынке - это не конкретика.
В чем проблема с pbUnit ? В чем проблема с XP?
...
Рейтинг: 0 / 0
XP-программирование
    #32453781
Louder
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
to ЗоринАндрей
Спасибо. Собственно мне интересно вот что:
Вы используете XP? PBUnit? RUP? Давно? Сколько человек принимает участие в проекте? Эти средства действительно помогают вам повысить скорость и качество разработки? Сколько времени ушло на изучение и внедрение этих технологий/продуктов?
...
Рейтинг: 0 / 0
XP-программирование
    #32453819
Фотография Филипп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Практически по всем пунктам (кроме тех в которых яблоки с апельсинами сравниваются) согласен с г-м Зориным.
1) Кажущееся/настоящее "сопротивление" РВ рефакторингу не имеет прямого отношения к XP-программированию. Рефакторингом можно (и нужно) заниматься безотносительно к ХР.
Сравнивать встроенные способности Eclipse (работающего с source файлами) к рефакторингу с полным отсутствием таковых в РВ IDE (работающего с PBLами) - не очень корректно :-)
Коэффициент "сопротивления" РВ рефакторингу обратно пропорционален способностям разработчика :-)
2) XP-программирование не является ни продуктом, ни религией, посему (как впрочем и сами его основатели говорят) нужно использовать те его идеи и принципы, которые вам подходят.
Например идея парного програмирования великолепна и может использоваться практически в любых условиях ...
...
Рейтинг: 0 / 0
XP-программирование
    #32454934
Фотография ЗоринАндрей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Интересная у Вас манера соглашаться ;-)
Филиппкроме тех в которых яблоки с апельсинами сравниваются
Ok, Филипп, покажите мне яблоки с которыми я могу сравнить Powerbuilder и я займусь корректным сравнением. ;-)
с чем будем сравнивать? с Delphi? c Visual Studio.NET? c 1C?
ФилиппКоэффициент "сопротивления" РВ рефакторингу обратно пропорционален способностям разработчика :-)
Это вы меня пытаетесь insult... как это по-русски... задеть?
В чем пойнт этого высказывания?
В PB рефакторинг делать неудобно в отличие от некоторых других IDE!
Есть возражения по существу?
А насчет способностей - см. Top Scores на Brainbench по PB8 ;-)
...
Рейтинг: 0 / 0
XP-программирование
    #32455577
Фотография Филипп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
г-н Зорин , что то вы всё за наезд принимаете? :-)
РВ есть 4GL RAD Tool, поэтому по сути дела его рефакторные (да и любые другие) способности корректно сравнивать с Delphi да с Visual Basicом.

Возражения по существу есть - заявление типа авторВ PB рефакторинг делать неудобно в отличие от Eclipsа - некорректно.

Задеть я вас не пытался, просто написал как есть. Кому трудно спроектировать нормальный класс в РВ, тому и трудно произвести рефакторинг ненормального. И наоборот.
...
Рейтинг: 0 / 0
XP-программирование
    #32455965
Ermak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ASCRUSСамый страшный и главный недостаток такой модели - это сам архитектор. Потеря для проекта архитектора однозначно означает смерть проекта.
По моему мнению это не есть недостаток присущий исключительно XP. Это большая или основная проблема программной инженерии в целом. И по большому счету не зависит от методологии (или идеалогии) разработки ПО.
Мы имеем ситуацию когда ни заказчик, ни разработчик до конца не представляют сложности (или не имеют спосбов оценки сложности) задачи, которую берутся решать.

Для меня ХР привлекательна больше не технологическими приемами кодирования, а прежде всего тем что предполагает включение заказчика в процесс разработки. Заказчик максимально полно участвует в разработке, которую он заказал или инициализировал. Это он прежде всего определяет бизнес-функциональность и самое главное назначает приоритет своим пожеланиям. Разработчики же в свою очередь оценивают как стоимость (время, сложность) реализации пожеланий заказчика, так и риск собственной оценки.

Немножко коментируя опыт использования ХР вашими знакомыми могу сказать, что изменение модели системы которую они были вынуждены были сделать вследствии изменений ТЗ необходимо рассматривать с точки зрения ХР как совершенно штатную - обыденную ситуацию.
- Заказчик выразил пожелание
- Разработчики просчитали, во что это ему обойдется (время, деньги, возможные последствия, то есть риски).

Далее заказчик,должен либо согласился с оценками разработчиков, либо отказаться от своего пожелания.
Только после того как заказчик подтвердил своё пожелание, разработчики приступают к его реализации. Так что никаких отрицательных эмоций у разработчиков по поводу переработки системы ни у разработчиков, ни у заказчика быть не должно. Разработчики отвечают за технические решения, на основе бизнес-решений заказчика и не более того.

Вообще-то ХР предполагает постоянный процесс планирования проекта. Более того до начала основных работ, следует проводить:
- Initial Planing Game (предварительное планирование);
- Exploration Phase (фазу исследований)
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / XP-программирование
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]