Setter injection with Unity 2.0

25 мар. 2011 г. | | |

Пример Setter injection на Unity 2.0 (продолжая тему этого примера)

Пакеры для .NET exe, dll

| | |

Программы, позволяющие  сделать из exe и кучи приблудившихся dll один exe модуль:

Стандартная от MS - ILMerge - http://www.microsoft.com/downloads/en/details.aspx?FamilyID=22914587-b4ad-4eae-87cf-b14ae6a939b0&displaylang=en

NETZ - http://madebits.com/netz/index.php

Molebox - http://www.molebox.com/

Nbox - http://nbox.codeplex.com/

Рефакторинг - не панацея

| | |

Недавно мне попалась фраза
Рефакторинг кода должен осуществляться до полного исчерпания его возможностей, поскольку наибольшая производительность может быть достигнута только в условиях работы с исходным кодом максимально высокого качества.

А так ли это? Попахивает  фанатизмом.

Насколько б рефакторинг не был полезной техникой, нужно понимать, что рефакторинг - это не панацея. Сколько не переименовывай названия методов и переменных, если архитектура кода из разряда "а всё, что плохо держится, мы подопрем деревянными распорками" (из байки "Если б программисты строили дома"), то лучше она от этого не станет. Проектирование ПО плюс постоянный рефакторинг при написании кода – это сильная связка. Плохо спроектированную систему будет трудно рефакторить – есть где разгуляться, да понять бы, за что сначала взяться - рефакторинг будет перекраивать ее, и, если браться за это, то явно не перед сдачей проекта проекта – это не то, на что следует тратить время. «Приближение срока окончания работ – единственный случай, когда можно отложить рефакториг, ссылаясь на недостаток времени.» - говорит М. Фаулер («Рефакторинг. Улучшение существующиего кода»).  
Но не стоит злоупотреблять этой техникой и в мирные времена, когда срок сдачи еще не близок, а руки чешутся что-нибудь переиначить. Рефакторинг кода к шаблонам может иметь не только положительные стороны, но и отрицательные, например, тотальное усложнение кода. Как и любой техникой, рефакторингом нужно использовать с умом. И вообще, ум нужно использовать, это тоже полезная техника ;)

Constuctor injection with Unity 2.0

18 мар. 2011 г. | | |

Пример Constructor Injection на Unity 2.0.

Прелести байткода или зачем нужен обфускатор

10 мар. 2011 г. | | |

Прекрасная идея портируемости приложений, кроссплатформенности родила языки, использующие виртуальные машины, компилирующие промежуточный платформенно-независимый код (байт-код) в платформенно-специфичный код. Яркие примеры таких языков - Java, C#, VB, ActionScript etc. История, которую я хочу рассказать, будет именно о последнем, но общие моменты касаются всех языков, компилирующихся в промежуточный код.

История одного приложения

9 мар. 2011 г. | | |

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