tag:blogger.com,1999:blog-8596733192274108952.post1350979674509135446..comments2024-03-12T06:00:18.305+02:00Comments on Programming stuff: Частичные классыSergey Teplyakovhttp://www.blogger.com/profile/14300835272589262297noreply@blogger.comBlogger7125tag:blogger.com,1999:blog-8596733192274108952.post-64097740359534303132011-03-20T22:33:53.290+02:002011-03-20T22:33:53.290+02:00@eugene: ну, я же говорил, что это не rocket scien...@eugene: ну, я же говорил, что это не rocket science. Ну а вообще, пример с добавлением функциональности в автосгенерированный код - не выдумка. Я правда сталкивался с этим на практике. Ну а разбивка тестов на частичные классы мне, ИМХО, нравится и я это тоже потихоньку использую на практике.Sergey Teplyakovhttps://www.blogger.com/profile/14300835272589262297noreply@blogger.comtag:blogger.com,1999:blog-8596733192274108952.post-64421188102968409842011-03-17T22:50:44.183+02:002011-03-17T22:50:44.183+02:00@Anatoly: Без обид, но если вам приходится править...@Anatoly: Без обид, но если вам приходится править ФОРМУ сообща, то, что-то не так в королевстве датском. В форме вообще код до неприличия простой. Если это не так - надо курить в сторону MVC/MVP. <br />@Sergey: Мне показалась несколько искусственной статья. Partial классы - по-моему меньшее, что может волновать в процессе разработки. Как правильно замечено - в основном касается автосгенерированного кода. Во всех остальных случаях можно без них обойтись. Крайне редко возникает необходимость разбивать класс на несколько файлов (я это вообще один раз видел), потому что удобства это не доставляет. ИМХО, это сделано для борьбы с автосгенерированными файлами. Про Process(IFoo foo) все понятно, но тоже ВЕСЬМА частный случай и опять же из-за автосгенерированного кода.eugenehttps://www.blogger.com/profile/00368111825500921630noreply@blogger.comtag:blogger.com,1999:blog-8596733192274108952.post-51351785458271509772011-03-15T20:11:54.586+02:002011-03-15T20:11:54.586+02:00@NN: Да, действительно частичными не только классы...@NN: Да, действительно частичными не только классы, но и структуры с интерфейсами. Сейчас упомяну.<br /><br />@Anatoliy: спасибо за дополнение.Sergey Teplyakovhttps://www.blogger.com/profile/14300835272589262297noreply@blogger.comtag:blogger.com,1999:blog-8596733192274108952.post-86613386568248610902011-03-15T17:46:32.680+02:002011-03-15T17:46:32.680+02:00От себя хочу добавить - это мегаполезная возможнос...От себя хочу добавить - это мегаполезная возможность при коллективной работе над проектом. Например, в проекте есть ряд "популярных" форм, которые приходится править одновременно многим членам проекта. До того, как мы в проекте начали использовать Partial классы, шла постоянная торговля типа "Ты когда отпустишь форму SyperMainForm??? Мне там необходимо подправить метод MyGeniusMethod!". Теперь все подобные формы (классы...) разбиты на файлы (в каждом находятся методы сгруппированные по функционалу типа SyperMainFormPrint, SyperMainFormSaveData...). И каждый из участников разработки проекта правит свой файл.Anatoliyhttps://www.blogger.com/profile/02430615743159355893noreply@blogger.comtag:blogger.com,1999:blog-8596733192274108952.post-58697984985386296412011-03-15T15:34:12.305+02:002011-03-15T15:34:12.305+02:00Есть еще и частичные структуры :)Есть еще и частичные структуры :)Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-8596733192274108952.post-773239716367066842011-03-15T10:45:39.923+02:002011-03-15T10:45:39.923+02:00>>когда для расширения функционала >>н...>>когда для расширения функционала >>нужно было создать класс-наследник >>и добавить в него весь необходимый >>дополнительный функционал.<br /><br />логично было бы про <br /><a href="http://www.research.ibm.com/designpatterns/pubs/gg.html" rel="nofollow">Generation Gap</a> упомянутьrsphttps://www.blogger.com/profile/09978063971662516203noreply@blogger.comtag:blogger.com,1999:blog-8596733192274108952.post-36688509574614514442011-03-15T10:42:37.616+02:002011-03-15T10:42:37.616+02:00А как же частичные интерфейсы ?
http://msdn.micros...А как же частичные интерфейсы ?<br />http://msdn.microsoft.com/en-us/library/wa80x488.aspx<br /><br />It is possible to split the definition of a class or a struct, an interface or a method over two or more source files.<br /><br />Об этом стоило бы упомянуть :)NNhttps://www.blogger.com/profile/16823052781877891385noreply@blogger.com