Записки разработчика
суббота, 13 апреля 2013 г.
среда, 7 ноября 2012 г.
воскресенье, 14 октября 2012 г.
Домашний GIT сервер
Недавно озадачился GIT сервером для свои маленьких проектиков и всяких там экспериментов.
Во первых, пришлось выбрать между уже существующим Git хостингом (GITHub, Assemble и т.д.) и попыткой поднять что то свое в домашних условиях. Заверения знакомых о безопасности, стабильности и бескорыстности крупных online сервисов как то не убедили.
Далее было увлекательное знакомство с кучей поделок разной степени зрелости и работоспособности.
Все испытанные серверы можно разделить на две большие группы - а) надстройки над нативным пакетом git и б) надстройки над EGit. В первом случае мы имеем нечто, что работает под управлением Apache и для выполнения действий использует пакет git. Как правило эти умеет отображать историю комитов, изменения и списки репозиториев. Во втором это java решения которые используют EGit для работы с репозиторием (нативный пакет git не требуется). Эти сервера, как правило, по мимо всего прочего, умеют создавать/удалять ропозитории и нормально поддерживает http/https протоколы.
В итоге очень понравилось два продукта:
Во первых, пришлось выбрать между уже существующим Git хостингом (GITHub, Assemble и т.д.) и попыткой поднять что то свое в домашних условиях. Заверения знакомых о безопасности, стабильности и бескорыстности крупных online сервисов как то не убедили.
Далее было увлекательное знакомство с кучей поделок разной степени зрелости и работоспособности.
Все испытанные серверы можно разделить на две большие группы - а) надстройки над нативным пакетом git и б) надстройки над EGit. В первом случае мы имеем нечто, что работает под управлением Apache и для выполнения действий использует пакет git. Как правило эти умеет отображать историю комитов, изменения и списки репозиториев. Во втором это java решения которые используют EGit для работы с репозиторием (нативный пакет git не требуется). Эти сервера, как правило, по мимо всего прочего, умеют создавать/удалять ропозитории и нормально поддерживает http/https протоколы.
В итоге очень понравилось два продукта:
- SCM-Manager (http://www.scm-manager.org/). Поддерживает git, svn и Mercurial репозитории. Авторизацию, визуализацию истории коммитов и др.
- Gitblit (http://gitblit.com/). Работает только с git репозитариями, визуализация истории/коммитов и др.
пятница, 12 октября 2012 г.
Манифест, блять! (перепост)
http://пиши-код-блять.рф
Также интересно было почитать ссылки в футере (http://programming-motherfucker.com/ , http://factorized.tumblr.com/post/4180288873/programming-motherfucker и т.д.)
Также интересно было почитать ссылки в футере (http://programming-motherfucker.com/ , http://factorized.tumblr.com/post/4180288873/programming-motherfucker и т.д.)
пятница, 3 августа 2012 г.
Миграция на .NET платформу: Начальные сведения о платформе
Чтобы начать хоть что то писать, при переходе с Java, мне потребовалось узнать:
Также есть интересная библиотека Power Collections - "типа" commons-collections.
Синтаксис
В большинстве случаев, синтаксис Java и C# похожи. Из незнакомого (и того, что нужно знать "уже сейчас"):- out параметры - такого в java нету, а в C# используется довольно часто;
- Область видимости internal;
- static class - для любителей "Tools" и "Utils" классов :);
- виртуальные методы и overriding - это по началу вызвало особые недоумения;
- индексатор([]) и перегрузка операторов - такого тоже нету в Java, но эти механизмы часто используются;
- делегаты и events - для меня, это оказались самыми непривычными и непонятными темамию (полезная статья и еще одна);
- Структуры (structure) - очень похожи на классы, но ведут себя по особенному:) (очень рекомендую почитать).
Коллекции
Структура коллекций и их интерфейсы очень отличается от java collections. Особенно "доставляет" класс Dictionary :) (линк).Также есть интересная библиотека Power Collections - "типа" commons-collections.
Assembly и зависимости
Принципе, ничего сложного и нового. Просто надо знать что это такое, как его создать и настроить.Resources (строки, файлы, иконки)
Очень полезная штука. В java вопрос хранения и доступа к внутренним строкам, иконкам и др. файлов решался как попало и чем попало. В .NET у assembly есть контейнер, в котором можно хранить именованные ресурсы. Также есть механизм удобного программного доступа к ним. Особенно это радует при разработке UI модулей и иногда, при написании тестов.четверг, 2 августа 2012 г.
Миграция на .NET платформу: Базовый инструментарий
Просто читать книги по языку не интересно - хочется надо что то пробовать писать. Для этого необходимо понять:
По поводу настроек - тут все немножко сложнее (по сравнению с Eclipse). Настройки проектов и солюшенов хранятся в файлах sln и csproj. Как правило, эти файлы вместе с исходниками находятся под контролем версий. А вот глобальные настройки IDE (горячие клавиши, окна и др.) хранятся в "Мои Документы/Visual Studio XXXX" и об этом желательно не забывать, чтобы после перестановки ОС не было "мучительно больно":)
- в чем писать (IDE)
- как это запустить
- где это все хранить
... в чем писать (IDE)?
Альтернатив как бы особо то и нету. Конечно же, кроме Visual Studio есть сторонние IDE для работы с C# кодом, но больше напоминают поделки студентов.... как это запустить?
есть нечто напоминающее JDK - .NET framework. Включает в себя виртуальную машину, базовый набор библиотек и инструментарии для отладки и разработки. Похоже, что есть 4 основные (переломные редакции):- .NET 1.0 - самая первая и самая убогая версия. В данное время практически не используется.
- .NET 2.0 - первая доведенная до юзабельного состояния версия. Вылечили многие детские болезни 1.0. Начали интересные синтаксические отличия от Java :)
- .NET 3.5 - не только язык, но и платформу перекопали на столько, что у многих библиотек появились версии до 3.5, и после 3.5. Также, полным ходом внедряется элементы из функциональных языков.
- .NET 4.0 - уже не самая новая, но вполне свежая и актуальная версия. "Типа" много усовершенствований, новая версия
виртуальной машиныCLR, доработан UI фреймверк и т.д.
... где это все хранить?
По поводу кода - у VS есть вполне достойные плагины для работы с SVN и Git репозиториями.По поводу настроек - тут все немножко сложнее (по сравнению с Eclipse). Настройки проектов и солюшенов хранятся в файлах sln и csproj. Как правило, эти файлы вместе с исходниками находятся под контролем версий. А вот глобальные настройки IDE (горячие клавиши, окна и др.) хранятся в "Мои Документы/Visual Studio XXXX" и об этом желательно не забывать, чтобы после перестановки ОС не было "мучительно больно":)
Подписаться на:
Сообщения (Atom)