![]() |
Ответ: Классы
Цитата:
посмотрю как ты в объёмном чужом коде ковыряться будешь, не зная, что откуда берётся. Цитата:
Этот этап пройден несколько лет назад. Сейчас с этим кодом можно только работать. Код УЖЕ написан, и его никто не будет переписывать. Можно сколько угодно говорить о его не совершенстве, но отсутствие венгерской нотации в таком уже написанном коде усложнила бы работу на порядок. Цитата:
Академическое мышление, что чему должно и кто кому чем обязан малоценны в ентерпрайзе. Решение далеко не всегда оказывается самым эффективным, а перерешивать никто и ничего не будет. Алсо классы и функции выполняют весьма себе определённые задачи. Просто задачи эти весьма объёмны. Есть такой замечательный дядька - Джоэл. В его книге о программировании очень не плохо расписана ситуация по поводу совершенства кода: Пишет программист код. Внезапно у очень многих появляется непреодолимое желание взять и переписать. Начать всё заного, сделать всё чище и лучше. Почему? Да потому что код заполонили всякие костыли, фиксы, да и вообще он стал громозким и запутанным. Но переписывать такое НЕЛЬЗЯ НИ В КОЕМ СЛУЧАЕ. почему? Потому что на этот код потрачено много сил и средств. Он уже отлажен и работает. И вся его громозкость - результат фиксов багов, добавления функционала ВНЕЗАПНО потребовавшегося заказчику и т.п. Именно так ф-ции, классы и решения различных задачь и разростаются со временем. Создать грамотную архитектуру с нуля не возможно. Так или иначе всегда придётся вносить коректироки. В данном случае венгерская нотация позволяет максимально эффективно находить деффекты и вносить коректировки. то что МОГЛИ БЫТЬ маленькие ф-ции, самодокументируемый код, куча однозначных спецификаций и ответственных руководителей - это бесспорно. А ещё каждый обидатель этого форума МОГ БЫ БЫТЬ миллиордером. Все эти "могло бы, должно, обязано" - фигня. Оно уже есть, оно работает и в этом надо разбираться. И венгерская нотация позволяет разбираться быстрее и эффективней. И каждый раз, когда берёшься за проект, не можешь быть уверен, что он не разрастётся, не зальётся говнокодом и тупыми индускими конструкциями. Потому внесение таких нотационных подсказок весьма не плохое решение. P.S. соре за объём.. на работе делать нех, пока рабочий девайс не прокачают... |
Ответ: Классы
Цитата:
Цитата:
когда я писал свой первый двиг и его заполнили костыли, фиксы и он стал громоздким и запутанным, я написал новый с нуля, и это очень даже окупилось. я просто понял все ошибки прошлого кода и постарался написать без них. я понимаю если проект, использующий код, подходит к концу - тогда можно добавлять костыли, это будет дешевле. в ином случае надо срочно всё переписывать, иначе эксплуатация кода будет каждодневной пыткой. |
Ответ: Классы
С расчётом на будущее использование - рефакторинг, один из отличных процессов, который несёт кучу профита для самого разработчика и продукта. Это делать нужно с умом, т.к. порой большое убер-бревно вот так не перепишешь, поэтому рефакторинг не простая задача, которая требует подхода.
А то что академические подходы не выживают в коммерции - с этим согласен. Только дополню: в школе, вас учат, и учитесь вы базируясь разным источникам, но не важнейшему - опыту. А лучший опыт, это коммерческий опыт. Ты говоришь о проектах, с которыми тебе приходится работать, но они уже есть. Это не оправдание что так нужно теперь делать всё. Двигаться нужно вперёд, а не засиживаться на одном месте. Да, в твоём случае, венгерская нотация, помогла бы, но это не оправдывает её. Т.к. она помогла бы для разбора ужасного кода. Получается что она применима для ужасного кода, и помогает там. В хорошем и слаженном коде, таких проблем не возникает. Другой момент, это "философия" и организация работ. И несмотря на твой комент "в зду..", ты потом как раз затрагиваешь эти моменты: Цитата:
Тут уже разговор перетекает в организацию проектов, и лид девелоперов, командную работу.. |
Ответ: Классы
Цитата:
|
Ответ: Классы
Цитата:
лично я сам свой движок переписывал, переписываю и ещё раз перепишу :D но это потому, что я никому не обязан сдавать его. И потому что он сравнительно крохотный по объёму. Когда разрабатываешь продукт для заказчика, и понимаешь что изначально сделал что то не так, придётся допиливать то, что есть. а вот В СЛЕДУЮЩИЙ РАЗ взявшись за такое, ты уже будешь знать как подойти грамотней. Так люди и качаются. Вот только вне домашней кухни выбрасывать продукт и начинать заного - верх идиотизма. Цитата:
я отчасти с командой конечно согласен.. быстрее б просто уже выпустить это всё г-но, и отделаться.. >>Проблема организации проекта. это ПОФИГ. Ещё раз повторяю - оно УЖЕ организовано. >>В хорошем и слаженном коде, таких проблем не возникает. хороший код в энтерпрайзе - утопия. нельзя заранее знать насколько удачной выйдет огромная система. в определённый момент она запрасто может "поплыть", и превратиться в кашмар. Венгерская нотация МОЖЕТ пригодится если код свалится в унылое говно, потому отказываться от неё - весьма и весьма самоуверенно. Цитата:
венгерская нотация просто крутая страховка, на случай если система разработана неудачно. И быть её противником, оче не правильно. |
Ответ: Классы
Цитата:
Да куча всего. Другое дело тут пойдёт уже речь о более сложных процессах, со всякими темплейтами, рефлекциями и т.п. Там вот уже без знаний и разного рода исследований по коду будет тяжко. Особенно в рефлекции.. |
Ответ: Классы
Я для себя открыл такую крутую штуку как Source Insight :)
но этого всего на самом деле не достаточно. |
Ответ: Классы
*взял попкорн*
|
Ответ: Классы
falcon, так что, не будешь голословным, или пруфа не ждать ?
Проект с несколькими тысячами файлов исходников(минимум 2к) и весом в несколько гигов (минимум 2) на стол ! |
Ответ: Классы
NitE, ам.. ну да, как раз думал, чоб в свободный доступ исходники не выложить :D
ваще-то я NDA подписывал)) могу минимально нарушить, рассказав, что работаю с SIP телефонами компании Avaya (т.е. по сути эти объёмные исходники компилятся в небольшую бинарку, которая крутится под жутко кастрированным и допиленным линухом встроенным в эти самые агрегаты ) но это врядли удовлетворит твоё NitE любопытство. Можешь засчитать это как слив, но исходники я тебе не предоставлю)) |
Ответ: Классы
Цитата:
|
Ответ: Классы
falcon, ))) мне не нужны исходники, достаточно будет скриншота с замазанными именами файлов, если надо, и открытым пропертисом где видно коль-во файлов и суммарный вес. И чтоб без читерства !
|
Ответ: Классы
NDA.. - он уже его нарушил, так ещё я бы не советовал.
|
Ответ: Классы
Как то это глупо что ли.
Если это чото значит, окей, в понедельник всё будет :) MoKa ну блин, это же ТАК ВАЖНО чо..))) МОЙ рабочий проект ЕСТЕСТВЕННО имеет решающее значение в венгерской нотации)) |
Ответ: Классы
У меня вопрос:
Если в функцию я передаю по ссылке класс, чтобы осуществить линейное преобразование(передвижение),хотя можно было бы обойтись ссылкой на матрицу.Сильно ли я теряю в производительности? |
Часовой пояс GMT +4, время: 10:59. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot