Deutsch
Germany.ruФорумы → Архив Досок→ Программирование

Access 3

1055  1 2 все
Zenja0 постоялец13.11.10 17:48
Zenja0
13.11.10 17:48 
Я тут уже несколько раз задавал вопросы по поводу Аццесса.
У меня ещё есть один "вопрос - просьба". Я в течении не скольких лет вел на работе базу данных (мной когдато созданную)
За это время я пришёл к выводу что многое в моей базе данных не правильно.
Сейчас я многое в ней изменил. Хотелось бы её комуни будь показать.
Может быть кто нибудь согласился бы посмотреть и высказать своё мнение.
zenja.ucoz.ru
#1 
Murr_0003 постоялец13.11.10 18:30
NEW 13.11.10 18:30 
в ответ Zenja0 13.11.10 17:48
Хотелось бы её комуни будь показать.
------
У каждого более-мение работающего программиста со временем образуется несколько версий нескольких баз. Как правило они совершенно неинтересны - те же таблицы, те же реляции... ну иногда немного процедур и триггеров...
Аксессовские же базы - еще более неинтересные, чем все остальные - "прогеры на аксессе" - худший подваниант вариант прогеров VB6... ничего кроме бреда в их коде не ожидается...
Ничего личного - просто не интересно...
#2 
toptop местный житель15.11.10 08:29
NEW 15.11.10 08:29 
в ответ Murr_0003 13.11.10 18:30
В ответ на:
"прогеры на аксессе" - худший подваниант вариант прогеров VB6... ничего кроме бреда в их коде не ожидается...

Т.е. выбор "бредового" языка подразумевает написание исключительно бредового кода? А на путёвых языках пищут исключительно путёвый код.
#3 
Murr_0003 постоялец15.11.10 10:14
NEW 15.11.10 10:14 
в ответ toptop 15.11.10 08:29
подразумевает написание исключительно бредового кода?
------
Выбор малоподходящего инструмента гарантирует большие трудозатраты.
Соответственно, при минимизации собственных усилий по разработке кодер
будет вынужден создавать быдлокод. Альтернатива (в Аксесс) возможно и
существует, но чтобы ею воспользоваться надо иметь хорошо поставленный
процесс разработки и контроль за ним. Аксессисты, обычно, не имеют обоих
составляющих.
А на путёвых языках пищут исключительно путёвый код.
-------
Быдлокдить можно в любой среде.
Я уже как-то писал - пришел в контору на переговоры по позиции Сениор
Девелопер - дают тест. Совершенно элементарный, не соответствующий по
сложности предлагаемой позиции. Потом разговор. В ходе выясняется - в
конторе НЕТ прогеров, способных освоить кодинг на C#.NET... Причем под
НЕТ надо понимать оба варианта - не способны обучиться сами и не могут
быть обучены на стороне...
#4 
toptop местный житель15.11.10 13:26
NEW 15.11.10 13:26 
в ответ Murr_0003 15.11.10 10:14
Имхо - прогер, не способный освоить кодинг - не прогер. А прогер и в Акцессе прогер.
#5 
Murr_0003 постоялец15.11.10 13:56
NEW 15.11.10 13:56 
в ответ toptop 15.11.10 13:26
А прогер и в Акцессе прогер.
------
Ну начнем с простого - с модификации одной таблицы.
Вопрос будет следующий - где и какие изменения в коде последуют за изменением таблицы?
Не уверен, что даже опытный кодер VB6... и тем более Аксесса... сможет более-мение точно ответить на этот вопрос...
Если найдется утверждающий что он сможет - я его отошлю к одной прожке которую довелось сопровождать
- 256.000 байт мешанины из SQL, коннектов, ловли эвентов и управления отдельными элементами на форме...
Будет интересно посмотреть как он будет мудохаться...
Если не понятно - практически весь код в аксессе именно так и выглядит - система принуждает писать так...
#6 
toptop местный житель16.11.10 09:16
NEW 16.11.10 09:16 
в ответ Murr_0003 15.11.10 13:56
В ответ на:
Вопрос будет следующий - где и какие изменения в коде последуют за изменением таблицы?

Ответ на "где" будет следующий - в формочках, где эта таблица используется и в коде, где обрабатываются данные этой таблички. На "какие" отвечу также абстрактно "соостветственные".
В ответ на:
Если не понятно - практически весь код в аксессе именно так и выглядит - система принуждает писать так...

Система не принуждает писать мешанину - и в Акцессе, несмотря на всю его монолитность и недостатки, можно при желании и отсутствии хаоса в мозгах, поддерживать структурированный код, даже при гораздо больших объемах.
Ну, а доставшийся в наследство код можно долго и бесполезно обсуждать. Думаю, что если удалось бы посмотреть код того автора на яве или си, он бы не намного отличался от акцессовского.
В любом случае, если систему знаешь, то можно с ней работать.
#7 
Murr_0003 постоялец16.11.10 12:24
NEW 16.11.10 12:24 
в ответ toptop 16.11.10 09:16
Ответ на "где" будет следующий - в формочках
------
Лучшим вариантом было бы - в Аксессе.
Именно такой ответ - в формочках - и предполагался, потому что Аксесс вынуждает смешивать в коде формы управление контролами формы, бизнес-логику и операции ввода-вывода.
Изменение же в таблице должно затрагивать лишь операции ввода-вывода. Управление контролами и бизнес-логика могут остаться без изменений.
"соостветственные"
------
Наверное в данном случае мне надо было акцентировать внимание на количественных показателях.
Опять таки - дело в том, что невозможно сказать где именно в коде и в скольких частях кода будут необходимы изменения.
Тупой кодер вполне мог написать тот же АПДЭЙТ рассматриваемой таблицы в 10 местах, мог - в 20-ти, мог - и более - и никто не может сказать где оно есть и сколько его есть... и нужно просматривать весь код чтобы их найти.
можно при желании и отсутствии хаоса в мозгах, поддерживать структурированный код
------
Можно. Но лишь путем больших затрат, чем в других системах. Т.е. Аксесс принуждает делать плохой код.
В любом случае, если систему знаешь, то можно с ней работать.
------
Работать можно с любой системой, если понятна цель работы.
Но один из моих коллег определил работу с Аксессом так - "Ты можешь писать на Аксессе, если понимаешь что, как и почему делал твой предшественник..." И Я с ним согласен...
#8 
toptop местный житель16.11.10 15:36
NEW 16.11.10 15:36 
в ответ Murr_0003 16.11.10 12:24
В ответ на:

Ответ на "где" будет следующий - в формочках
------
Лучшим вариантом было бы - в Аксессе.
Именно такой ответ - в формочках - и предполагался, потому что Аксесс вынуждает смешивать в коде формы управление контролами формы, бизнес-логику и операции ввода-вывода.
Изменение же в таблице должно затрагивать лишь операции ввода-вывода. Управление контролами и бизнес-логика могут остаться без изменений.

Ответ был сродни вопросу. Ты спросил где, я подразумевая, что изменения в таблице имеют влияние на все приложение, ответил: в форме - для обеспечения ввода/вывода. Далее я написал: в коде, подразумевая, что это нужно для управления контролами и бизнес-логикой, но так как это не вписывается в твои понятия - это было просто проигнорировано.
В ответ на:

Наверное в данном случае мне надо было акцентировать внимание на количественных показателях.
Опять таки - дело в том, что невозможно сказать где именно в коде и в скольких частях кода будут необходимы изменения.
Тупой кодер вполне мог написать тот же АПДЭЙТ рассматриваемой таблицы в 10 местах, мог - в 20-ти, мог - и более - и никто не может сказать где оно есть и сколько его есть... и нужно просматривать весь код чтобы их найти.

Ага, "тупой" кодер. Значит-таки не система влияет, а способность кодера.
В ответ на:

можно при желании и отсутствии хаоса в мозгах, поддерживать структурированный код
------
Можно. Но лишь путем больших затрат, чем в других системах. Т.е. Аксесс принуждает делать плохой код.

Ну, тут остается лишь развести руками. Если попытаться собрать два высказывания в одно, то получится: В системе можно писать хороший код, но она принуждает писать плохой. Можно, я не буду ничего добавлять?
В ответ на:

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

Ключевое слово здесь совсем не Акцесс. Накопипастить стописят строк вместо того, чтобы написать нормальный цикл можно и на яве, и на си. И если я вижу что предшественник нафигачил, то я не задумываюсь, почему он это сделал.
Да, у Акцесса свои тараканы, но он и не позиционируется как среда разработки, а про работу предшественника - я как-то не заморачиваюсь, почему он написал фигню, я ее переделываю и спокойно сплю.
#9 
Murr_0003 постоялец16.11.10 19:30
NEW 16.11.10 19:30 
в ответ toptop 16.11.10 15:36
я ее переделываю
------
У тебя так много времени? У меня его вечно не хватает. Можем попробовать померить - у меня 15 минут на фиксинг какого-нибудь бага в незнакомой задаче. Возьмешься исправить прожку на Аксесс или VB6 за это время? Объем кода там относительно не большой мег 30-40...
Все остальное, все что свыше 15 минут - непозволительная роскошь...
изменения в таблице имеют влияние на все приложение
------
Далеко не факт. У меня регулярно случаются изменения в базе, которые не затрагивают формы и требуют минимального изменения DAL.
Значит-таки не система влияет, а способность кодера.
------
В случае Аксесса - изначально - система. Кодер - на втором месте.
В системе можно писать хороший код, но она принуждает писать плохой.
------
Именно. Можно делать правильный код, но затраты на его разработку, в тех задачах в которых обычно используется Аксесс, существенно выше. Так что именно так как написано - можно, но вынуждает.
Накопипастить стописят строк
------
Накопипастить - можно.
Помнится, разок вывалился тайм-оут в прожке... Разбираться было долго некогда, потому пришлось проанализировать код предшественников - он был именно таким, каким его рекомендует мелкософт и каким он получится в Аксессе... после чего было написана пара процедур... объем кода сократился где-то на 2000 строк и появилась возможность обрабатывать тайм-аут... Но это не Аксессовский код и подход - там бы все осталось по старому...
#10 
toptop местный житель17.11.10 13:38
NEW 17.11.10 13:38 
в ответ Murr_0003 16.11.10 19:30
В ответ на:
я ее переделываю
------
У тебя так много времени? У меня его вечно не хватает.
Есть специальные курсы по рациональному использованию времени.
В ответ на:

Можем попробовать померить - у меня 15 минут на фиксинг какого-нибудь бага в незнакомой задаче. Возьмешься исправить прожку на Аксесс или VB6 за это время? Объем кода там относительно не большой мег 30-40...
Все остальное, все что свыше 15 минут - непозволительная роскошь...

Я обычно не меряюсь,... но уговорил, выкладывай исходники, глядишь еще народ подтянется, пообсуждаем. Опять же по сравнению с предыдущими постами объемчик как на дрожжах...
В ответ на:

изменения в таблице имеют влияние на все приложение
------
Далеко не факт. У меня регулярно случаются изменения в базе, которые не затрагивают формы и требуют минимального изменения DAL.

Может проще вычислять, чем как Коробочка всё собирать?
В ответ на:

В случае Аксесса - изначально - система. Кодер - на втором месте.
В системе можно писать хороший код, но она принуждает писать плохой.
------
Именно. Можно делать правильный код, но затраты на его разработку, в тех задачах в которых обычно используется Аксесс, существенно выше. Так что именно так как написано - можно, но вынуждает.

Я думал всегда, что инструмент подбирают под задачу. И в тех задачах, где удобней всего использовать Акцесс, его и используют. А можно примерчик вынуждения, что ли?
В ответ на:

Помнится, разок вывалился тайм-оут в прожке... Разбираться было долго некогда, потому пришлось проанализировать код предшественников - он был именно таким, каким его рекомендует мелкософт и каким он получится в Аксессе... после чего было написана пара процедур... объем кода сократился где-то на 2000 строк и появилась возможность обрабатывать тайм-аут... Но это не Аксессовский код и подход - там бы все осталось по старому...

За 15 минут проанализировать и 2000 строк чужого кода, и рекомендации от мелкософта, и еще и свой код. Ну, дык, не всем дано быть гениями.
В ответ на:
Можно делать правильный код
- это их предыдущего абзаца.
Для информации: используемый в Акцессе язык - процедуральный, поэтому там тоже можно написать пару процедур, а таймер можно из формы использовать. Опять же вызовы Windows API не запрещал никто.
#11 
voxel3d патриот17.11.10 15:13
voxel3d
NEW 17.11.10 15:13 
в ответ toptop 17.11.10 13:38
В ответ на:
И в тех задачах, где удобней всего использовать Акцесс, его и используют.

Я думаю, таких задач нет.
Dropbox - средство синхронизации и бэкапа файлов.
#12 
Murr_0003 постоялец17.11.10 16:07
NEW 17.11.10 16:07 
в ответ toptop 17.11.10 13:38
курсы по рациональному использованию времени
------
Например - шведские - "тайм менеджмент". Ситуацию это не меняет - после оптимизации временных затрат времени все одно не хватает.
выкладывай исходники
------
Попроси у ТС - он как раз этого хотел. Что до меня - у меня VB6 & Аксесс только в суппорте или\и для о-о-очень маленьких задачах. Да и то - Аксесс - только как дата-сторадже и то, только тогда, когда гарантированно нет доступного SQL... с портэйблом - отпадает и это...
Может проще вычислять, чем как Коробочка всё собирать?
------
Не понял сентенцию. Это видимо что-то типа - создать индекс или сканить всю таблицу. Ответ - по задачке.
в тех задачах, где удобней всего использовать Акцесс, его и используют
------
Единственная задача, в которой удобнее всего использовать Аксесс - задача для которой недостаточна квалификация исполнителя. Для всего остального уже лет 5-ть есть нормальная замена.
За 15 минут
------
У меня команда работала с 15-ти минутным шагом. Ничего - пыхтели и не померли.
там тоже можно написать пару процедур
------
Да, можно. Но там это - сложнее. Причем сложнее настолько, что проще сделать так как рекомендует билли...
Опять же вызовы Windows API не запрещал никто.
------
Не, не запрещает. Только вот какой проблем - аксесс-писатели, обычно, не подозревают об наличии ВинАПИ...
А как только начинают догадываться - уходят с Аксесса...
#13 
Murr_0003 постоялец17.11.10 16:10
NEW 17.11.10 16:10 
в ответ voxel3d 17.11.10 15:13
Угу... С появлением портабле СКЛ - Аксесс можно считать мертвым...
Только вот какая штука - довольно много объявлений о работе, имеющих
в списке требуемых навыков и Аксесс...
#14 
voxel3d патриот17.11.10 16:34
voxel3d
NEW 17.11.10 16:34 
в ответ Murr_0003 17.11.10 16:10, Последний раз изменено 17.11.10 16:57 (voxel3d)
В ответ на:
С появлением портабле СКЛ

Ппц.
Первая версия BerkeleyDB была разработана в июне 1986 года.
Dropbox - средство синхронизации и бэкапа файлов.
#15 
Murr_0003 постоялец17.11.10 17:03
NEW 17.11.10 17:03 
в ответ voxel3d 17.11.10 16:34
Первая версия Berkeley DB была разработана в июне 1986 года.
------
ISAM и Бетрив - еще раньше. Как много людей сейчас в состоянии обрисовать компрессию ключей в ИСАМе или использовать тот же Аксесс для фронта к бетриву?
Речь, разумеется, идет об популярных, белее-мение нормально сопровождаемых системах, для которых можно легко найти админов и кодеров...
#16 
voxel3d патриот17.11.10 17:29
voxel3d
NEW 17.11.10 17:29 
в ответ Murr_0003 17.11.10 17:03
В ответ на:
Речь, разумеется, идет об популярных, белее-мение нормально сопровождаемых системах, для которых можно легко найти админов и кодеров...

Речь, вообще-то, идёт про обезьянок. Любой программист разберётся с берклидб.
Dropbox - средство синхронизации и бэкапа файлов.
#17 
Murr_0003 постоялец17.11.10 17:33
NEW 17.11.10 17:33 
в ответ voxel3d 17.11.10 17:29
Любой программист разберётся с берклидб
------
Разобраться - разберется, если будет надо.
Вопрос 1 - а оно ему надо?
Вопрос 2 - что делать потом?
#18 
toptop местный житель17.11.10 19:12
NEW 17.11.10 19:12 
в ответ voxel3d 17.11.10 15:13
Тут, признаюсь: дал маху я. Хотя, если бы только мы решали, какой инструмент использовать. А то ведь принесли на чашечке - дафай-дафай.
#19 
toptop местный житель17.11.10 19:14
NEW 17.11.10 19:14 
в ответ Murr_0003 17.11.10 16:07
Склихасофский.
#20 
1 2 все