Date: Sun, 28 Apr 2002 15:05:23 +0000 (UTC)
From: 1.0| Maksym Shevchenko <[email protected]>
Subject: vim && C
Hello, Lev!
You wrote to Maksim Pozdeyev on Fri, 26 Apr 2002 20:23:22 +0000 (UTC):
LW> Ну может для чтения неподготовленным человеком или написания каким-то
LW> типом (по складу мышления) программистов она неплоха, но она явно
LW> начинает строить козни тем, кто пишет много и быстро.
LW> Не-у-до-бно.
Не совсем ты прав. Из своего опыта работы в программерской конторе (более
100 человек), покажу одну ситуацию:
а) Пришло задание - надо напиcать нечто по таким-то требованиям (пусть даже
взять данные пререгруппировать из одной SQL таблицы в другую - simply)
б) Сажусь я писать и пишу. Вариант 1 - с коментариями и красивыми отступами,
названиями переменных/функций, за два дня.
Вариант 2 - от фананаря, одним main'ом, экономля переменные названые
прикольными именами - T1, T2 (структуры таблицы), T1.e0 - первое поле
стороки типа short, T1.e1 второй элемент типа char[255] и т.д. , но пишу за
пол дня.
в) Отдаю все это дело в тестирование.
в.1) все работает
в.2) все работает
[ Я крутой - я написал за пол дня то что так бы написал за два !!! ] На этом
этапе вариант 2 - лучше. Но!
г) Приходит покупатель и говорит - Oh, Yes! I's realy cool! But...
д) Другой программер из нашей фирмы садится дописывать написаную мной
программу под пожелания заказчика, так как я уже занят и работаю на другом
проекте.
e.1) За пару часов добавляется одна новая функция выполняющая проверку
необходимую покупателю.
е.2) Программер пытается пол дня пытается понять почему на i которое вроде
бы индекс в масиве накладываются битовые маски. Пытается подобрать другую
битовую маску. Не получается. Оказыватся это у же давно не индекс а
упакованые опции. Пробует понять в чем скрытый смысл:
i=0; for ( biba=0; biba<(sizeof(T1)*nuna); ) {
if (T1[i].e3 & 0x88 || T1[i].e1 & 1 ) { /* Tut ya prerepisal v nachale
schitalos' srednee */
for ( T1[i].e0 = 0; T1[i].e0 < 255 ; T1[i].e0++)
T1[i].e1+T1[i].e0=T2[k].e1++;
biba += T1[i].e0 + 3; T1k[i].e0=T2[k].e0 + 1; }; i++; };
memcpy ( &tuda, &T1, biba );
Долго ругается матом.
и.1) Ты спокойно пьеш пиво
и.2) Тебя просят уйти по собственному, потому что покупатель ушел в другую
фирму.
Идея понятна или я много пива выпил? ;-)
--
Maksym Shevchenko
MSH21-RIPE
MS1-UANIC