В статье рассказываю о разработанном Desktop приложении для Windows, чтобы поделиться им со всеми желающими и получить обратную связь.
User
Открытый смысл скрытого текста для разработчиков документации
— Видишь суслика?
— Нет…
— И я не вижу. А он есть!
Одним из мощных и удобных инструментов текстовых редакторов является скрытый текст. Этот инструмент имеется практически во всех редакторах. Самым популярным и совершенным редактором на данный момент является MS Word. Поэтому некоторые возможности скрытого текста рассмотрены на его примере.
Почему стоит регистрировать программы для ЭВМ как изобретения: 5 примеров из практики
Компьютерные программы помогают компаниям справляться со всё большим количеством задач. Они регистрируются российскими компаниями для выявления простоев оборудования, определения наиболее выгодных способов инвестирования, программ автоследования инвестиционных портфелей и других целей. Сейчас программы для ЭВМ регистрируются не только IT-компаниями, но и предприятиями самых разных отраслей. Мы уже писали про это отдельный материал на Хабре.
Однако это относится к регистрации компьютерных программ в качестве объектов авторского права. Более высокий уровень их защиты — регистрация в качестве изобретения. Об этом мы подробно расскажем ниже.
Автоматизация разработки конструкторской документации средствами VBA. Продолжение
Продолжение статьи об автоматизации создания комплектов проектных документов по ЕСКД и СПДС.
Автоматизация разработки конструкторской документации средствами VBA
При выполнении проектов, в которых требуется разработка конструкторской документации соответствующей ГОСТам ЕСКД или СПДС, возникает много задач, связанных с ее корректным изготовлением. Часть этих задач связана с непосредственным оформлением документов – заполнением основных надписей, полей в форматных рамках документа. Другая часть задач связана с поддержанием связности информации в пределах комплекта документов - единство используемых децимальных номеров, названий изделий, используемых в тексте наименований и тому подобных вещей. Такие задачи можно решать по разному, но автоматизация, безусловно, облегчит жизнь разработчику.
В данной статье, я расскажу о своем подходе к автоматизации такой работы на примере документов Word. Этот же подход применим и к Visio и к AutoCAD и к любому продукту, в котором предусмотрена возможность использования Visual Basic for Application (VBA).
Представим себе такие входные условия для решения:
в составе документации должны быть документы по ГОСТ 2.102, в том числе текстовые, оформленные с учетом ГОСТ 2.105, схемы по ГОСТ 2.701 и, не дай бог, что-то еще строительное по ГОСТ 21.101. А из инструментов есть только стандартный Microsoft Office, Microsoft Visio, Autodesk AutoCAD (это если бог был немилостив) и собственное желание оформить все как можно быстрее, лучше и не затрачивая усилий (то есть, в наличии имеется продуктивная лень).
Взаимодействие C# и C++ кроссплатформенно
Известно, что языки базируются на совершенно разных наборах аксиом.
В С# (CLR, если точнее) вы имеете дело с типами фиксированных размеров (за редкими оговорками), код может быть скомпилирован JIT-компилятором под любую из поддерживаемых целевых платформ (если явно не оговорено иное).
В мире C++ всё совсем иначе: одни и те же типы могут иметь разные размеры при компиляции на разные платформы (привет, size_t), код генерируется по-разному для разных платформ, операционных систем и прочих прелестей.
Под катом будем пробовать их подружить с учётом указанных особенностей.
Сравнение производительности С++ и C#
Например, сложно поспорить с тем, что код C# может работать быстрее за счет оптимизации под платформу во время JIT компиляции. Или например с тем, что ядро .Net Framework само по себе очень хорошо оптимизировано.
С другой стороны, весомым аргументом является то, что С++ компилируется непосредственно в машинный код и работает с минимально возможным количеством хелперов и прослоек.
Встречаются и мнения о том, что производительность кода измерять не правильно, ибо микро уровень не характеризует производительность на макро уровне. (я конечно соглашусь с тем что на макроуровне можно испортить производительность, но вряд ли соглашусь с тем что производительность на макро-уровне не складывается из производительности на микро-уровне)
Попадались и утверждения о том, что код на С++ примерно в десять раз быстрее кода на С#.
Все это многообразие противоречивых мнений приводит к мысли о том, что нужно самому попробовать написать максимально идентичный и простой код на одном и другом языке, и сравнить время его выполнения. Что и было мною сделано.
Зачем айтишнику писать статьи?
Каждый день (да что там, каждый час) кто-то пишет на Хабр, а кто-то его читает. Авторы приходят на Хабр по-разному: чаще через песочницу или корпоративное приглашение, реже через инвайт друга, ещё реже — через общение с кураторами или модераторами. Они пишут обо всём: от сложнейших технических тем до здоровья и лайфхаков борьбы со стрессом. Большинство авторов (реально больше половины) пишут без внешней материальной мотивации: им не платит компания, они не авторы контент-студии и ещё не добрались до ППА. Но они пишут, делятся своим опытом, знаниями, мыслями, идеями и делают мир читателей интереснее, Хабр — лучше и ярче, а себя — более продвинутым. Кто-то пишет одну статью и уходит, кто-то прокачивается до техноевангелиста и становится легендой Хабра.
Сегодня я постараюсь осмыслить, зачем автору писать статьи (причём не только на Хабр), а вы в комментариях скажете, что тут не так :-)