Как стать автором
Обновить
22
0
Евгений Шанин @ZhenO

Пользователь

Отправить сообщение

Расширяем и улучшаем Cache в ASP.NET

Время на прочтение5 мин
Количество просмотров8.9K
Про ASP.NET-объект Cache наверняка знает каждый web-разработчик на платформе .NET. Совсем не странно, ведь это единственное решение для кэширования данных web-приложения в ASP.NET, доступное прямо из коробки.
Достаточно функциональный и легкий, снабженный механизмами приоритета, вытеснения, зависимостей и обратных вызовов, Cache хорошо подходит для небольших приложений, работая внутри AppDomain. Кажется, Microsoft предусмотрела все, что необходимо… Но я, тем не менее, хочу сделать его еще немного лучше. Чем же именно?
Об этом я расскажу под катом
Всего голосов 28: ↑21 и ↓7+14
Комментарии21

Перевод: 30 дней Windows Mobile — день второй (Winforms/С# vs WinAPI/C)

Время на прочтение6 мин
Количество просмотров1.6K
Итак, продолжаем перевод цикла статей 30 дней .NET [Windows Mobile]. Напоминаю, что для большего интереса переводятся сразу две статьи — из блога Криса Крафта (Windows Forms — C#) и Кристофера Фэрбейрна (WinAPI — C). На очереди день второй — управление bluetooth. Предыдущая статья из цикла —
http://habrahabr.ru/blogs/mobiledev/61248/.

Читать дальше →
Всего голосов 30: ↑22 и ↓8+14
Комментарии11

Учимся проектировать на основе предметной области (DDD: Domain Driven Design)

Время на прочтение8 мин
Количество просмотров219K

1. Введение



В данной статье я хотел бы рассказать об этих трёх буквах, постоянно находящихся на слуху, но для многих являющихся тайной за семью печатями, а так же привести ряд ресурсов, с которыми неплохо было бы познакомиться при желании продолжить развитие в проектировании на основе предметной области (DDD: Domain Driven Design).


Читать дальше →
Всего голосов 66: ↑54 и ↓12+42
Комментарии25

Первый серверный броненосец сошел со стапелей

Время на прочтение2 мин
Количество просмотров6.6K

На днях коллеги из Шотландии поделились с нами интересной новостью: первый мобильный центр обработки данных POD отправился к заказчику. Этот синий транспортный контейнер, почти ничем внешне не отличимый от своих собратьев, внутри просто напичкан новейшими и мощнейшими серверными технологиями.

В 22-х стандартных 50-юнитовых стойках, связанные 5 километрами оптического и 1 километром медного кабеля умещаются:

* несколько сотен блейд-серверов BL460cG6
* несколько десятков серверов хранения данных SB40c
* по нескольку ProLiant DL380G6, ProLiant DL380G5 и ProLiant DL580G5
* 3 десятка массивов MSA 2000
* ленточная библиотека MSL2024
* коммутаторы StorageWorks SAN, ProCurve и Voltaire
* 2 288-портовых коммутатора Voltaire
* 84 полки C7000
Читать дальше →
Всего голосов 58: ↑56 и ↓2+54
Комментарии116

Перевод: 30 дней Windows Mobile — день первый (С# vs WinAPI)

Время на прочтение7 мин
Количество просмотров2.5K

Вступление


Многие Windows Mobile разработчики, пишущие на .NET, слышали или читали замечательный цикл постов Криса Крафта «30 Days of .NET [Windows Mobile Applications]». Я решил начать цикл переводов этих постов, но чтобы было интереснее, в статьях будет представлен перевод не только оригинального поста из блога Криса с примерами на С#, но также и перевод статей от Кристофера Фэрбейрна — энтузиаста, который решил портировать все примеры Криса на C++! На текущий момент портировано 8 из 30 приложений, но это тоже очень неплохо.

При переводе я постараюсь свести к минимуму неотносящиеся к делу лирические отступления, потому что «вода» в переводе становится ещё более жидкой и читать становится невозможно :)

Итак, приступим — первое приложение, обратный отсчёт до полуночи.

Читать дальше →
Всего голосов 57: ↑43 и ↓14+29
Комментарии32

Системный подход лидера в работе с командой. Не повторяем ошибок трижды

Время на прочтение7 мин
Количество просмотров19K
Сначала повторяем чужие ошибки, потом делаем свои, потом свои же повторяем ) Итак...

Задачи менеджера проекта (лидера) в работе с командой сводятся к повышению эффективности и снижению себестоимости разработки. Эффективность команды во многом зависит от ее участников. Что мешает нам добиться синергетического эффекта? Пробуем разобраться.

В работе менеджера проектов одно из наиболее ценных качеств – это опыт. Именно опыт формирует интуицию, помогает принимать правильные решения и завершать проекты успехом. Чаще всего наш опыт основан во многом на стандартных ошибках, в стандартных ситуациях. При этом, в текучке проблем, мы придумываем нестандартный выход из них (так проще), и забываем воспользоваться устоявшимся опытом многих предшественников, сведенным в систему. Напрасно. Система «в сознании» позволяет принимать уверенные решения, думать на несколько шагов вперед, и не тратить время на эксперементы с людьми. Описанная ниже схема покажется очевидной многим из нас, но часто мы не берем ее во внимание и совершаем ошибки, которые стоят всем денег.
Читать дальше →
Всего голосов 90: ↑86 и ↓4+82
Комментарии31

Манипулируем System.Drawing.Bitmap

Время на прочтение5 мин
Количество просмотров49K
Класс System.Drawing.Bitmap очень полезен в инфраструктуре .NET, т.к. позволяет считывать и сохранять файлы различных графических форматов. Единственная проблема – это то, что он не очень полезен для попиксельной обработки – например если нужно перевести битмап в ч/б. Под катом – небольшой этюд на эту тему.
Читать дальше...
Всего голосов 38: ↑28 и ↓10+18
Комментарии54

Как учить английские слова

Время на прочтение2 мин
Количество просмотров82K
Моя учительница по английскому языку когда-то говорила, что грамматика и аудиозаписи – это просто отлично, но без знания слов далеко продвинуться нельзя. Поэтому сегодня напишу небольшую заметку о том, как я учу английские слова.
Читать дальше →
Всего голосов 102: ↑90 и ↓12+78
Комментарии184

Обратная связь с пользователями — великая вещь!

Время на прочтение2 мин
Количество просмотров10K
Главная задача пользователя сидеть в одноклассниках эффективно выполнять свою работу. Главная задача администратора — этому всячески помогать. Делать это можно по-всякому (в том числе, к примеру, блокировкой вышеупомянутого ресурса), однако большим подспорьем в работе являлась, является и будет являться обратная связь. Пренебрегать ею ни в коем случае не стоит.

В небольших конторах все просто — до админа рукой подать. Все проблемы, заморочки, мелкие недочеты всплывают практически сразу же. В больших и территориально распределенных сетях обратная связь начинает представлять некоторую проблему. Нет, ну конечно всегда есть возможность позвонить по телефону или написать письмо, но. Не каждый человек во-первых знает куда, кому и что сообщать и во-вторых не всегда вообще есть такое желание, общаться на непонятные темы с неизвестным человеком «где-то там». К тому же, если вдруг большинство пользователей с компьютером на «Вы», то имеются все шансы даже в случае телефонного звонка получить вместо описания проблемы лишь невнятное бормотание.
Читать дальше →
Всего голосов 83: ↑76 и ↓7+69
Комментарии53

Системное администрирование. Начало

Время на прочтение6 мин
Количество просмотров219K
Существует много пособий по настройке программ (Операционок, сервисов, сайтов и тд), но редко можно встретить мануал по организационным вопросам связанным с системным администрированием. Сразу скажу, опыт работы у меня достаточный. Рассматриваться предмет будет на моем личном примере работы, сразу скажу что любые аргументированные дополнения, и исправления приветствуются. Также поясню для господ минусующих: «Не нравится? Сделай лучше!», и обязательно пришли ссылку, почитаю с большим удовольствием.
Начнем
Всего голосов 196: ↑183 и ↓13+170
Комментарии172

Онлайн База Данных, сервис структур данных, динамическая объектно-реляционная проекция (Dynamic ORM)

Время на прочтение9 мин
Количество просмотров2.5K
В данной статье речь пойдет о создании рабочего прототипа онлайд БД. И рассмотрены некоторые сервисы аналоги от компаний Google и Yahoo.

Последним временем более активно стали развиваться сервисы для работы с онлайн БД. Такого рода сервисов в себя включают такие платформы как GData (Google Data API) и Yahoo! Query Language (YQL).

Указанные сервисы онлайн доступа к БД позволяют лучше контролировать и оперировать данными, получаемыми из разных сервисов платформ и самое главное это готовые сервисы для использования которых достаточно изучить документацию и примеры.
Читать дальше →
Всего голосов 29: ↑23 и ↓6+17
Комментарии12

7 творческих принципов Pixar от John Lasseter

Время на прочтение4 мин
Количество просмотров2.5K
Данный текст подготовил и перевел Евгений aka jeje. Если текст вам понравился, то благодарите Евгения, сам он опубликовать перевод не может из-за ограничений кармы.

1.Никогда не начинайте с одной идеей


Если вы хотите написать книгу, сделать дизайн мебели или мультфильма — Никогда не начинайте с одной идеей, их должно быть три.
«Причина проста. Если продюсер приходит ко мне с предложением о новом проекте, он вынашивает эту конкретную идею долгое время. Это ограничивает его. Мой ответ всегда: «Приходи ко мне, когда будешь иметь три идеи, и это не значит, что одна хорошая, а две остальных плохих. Я хочу три действительно прекрасных идеи, из которых ты не можешь решить, какая же лучше. Будь готов обосновать все три задумки. Затем мы решим, какую идею ты будешь развивать далее.»

«Проблема у творческих людей всегда одна – они чаще всего фокусируют все свое внимание на одной идее. И выходит так, что они ограничивают свой выбор с самого начала проекта. Каждый творческий человек должен это попробовать. Вы будете удивлены, как это требование внезапно заставит вас думать о других вещах, которые вы даже не рассматривали до того. Из-за этой отстраненности вы вдруг найдете новые перспективы. И поверьте мне, существует всегда, как минимум, три хороших идеи»
Читаем далее
Всего голосов 87: ↑81 и ↓6+75
Комментарии26

8 Характеристик удачного пользовательского интерфейса

Время на прочтение5 мин
Количество просмотров18K
Существует много информации о различных методах проектирования пользовательского интерфейса, которую вы можете использовать, создавая веб-сайт или интерфейс программы.
Я составил список из 8 характеристик, которые считаю залогом успешного пользовательского интерфейса.
Читать дальше →
Всего голосов 65: ↑59 и ↓6+53
Комментарии85

Кто ты — человек с Хабра?

Время на прочтение2 мин
Количество просмотров1.1K
Привет, Хабр!

Нашим коллективным умом давно завладела хабрастатистика и эти выходные были проведены в прелюбопытнейшем изучении интересов хабрапользователей. Обо всём в одном посте рассказать трудно, но для тех, кому интересно, вот небольшая выжимка:

интересы пользователей Хабра

UPD Добавлена статистика использования социальных сервисов и messenger-ов
Читать дальше →
Всего голосов 122: ↑117 и ↓5+112
Комментарии69

Закрепляем jQuery — 25 отличных советов

Время на прочтение19 мин
Количество просмотров168K
Перевод отличной статейки. Думаю, будет полезна как новичкам, которые только приступили к использованию jQuery, так и тем, кто уже какое-то время с ним работает. А кого-то, возможно, заставит глянуть эту чудесную библиотечку. Многие советы имеют отношение не только к jQuery, но и к JavaScript в целом. Лично для меня была весьма и весьма познавательной, посему и захотелось донести это «до масс». Перевод не дословный, но передающий смысл и максимально адаптированный к русскому языку.

Далее все написано от имени автора оригинальной статьи.

Введение


jQuery прекрасен. Я использую его вот уже почти год и, хотя я и был достаточно впечатлен в самом начале, он нравится мне все больше и больше по мере использования и по мере того, как я узнаю о том, как он устроен внутри.

Я не эксперт в jQuery. И даже не претендую, поэтому, если встретите ошибки, смело поправляйте меня и вносите предложения по улучшению (поправлять и присылать поправки нужно автору статьи, а не перевода — зам. пер.).

Я называю себя «среднестатистическим» пользователем jQuery и я думаю, что всем остальным будет интересно почитать и что-нибудь почерпнуть из «фишек», «трюков» и техник, которые я освоил за последний год. Статья получилась куда длиннее, чем я предполагал изначально, так что в самом начале я привел «содержание» для более удобной навигации и возможности при желании пропустить не интересующие моменты.

Содержание


  1. Загружайте фреймворк с Google Code
  2. Используйте «шпаргалку» (cheat sheet)
  3. Соединяйте все ваши скрипты и уменьшайте размер файла
  4. Используйте возможности Firebug для ведения логов
  5. Минимизируйте операции выборки в пользу кэширования
  6. Сводите манипуляции с DOM-деревом к минимуму
  7. Оборачивайте все в единый элемент, когда речь идет о любой вставке в DOM
  8. Используйте «id» вместо классов, где это возможно
  9. Задайте контекст своим селекторам
  10. Используйте последовательности вызовов методов с умом
  11. Научитесь правильно использовать анимацию
  12. Научитесь назначать и делегировать события
  13. Используйте классы для сохранения состояния
  14. Еще лучше — используйте встроенный в jQuery метод data() для сохранения состояния
  15. Пишите собственные селекторы
  16. Подготавливайте HTML и модифицируйте его, когда страница загружена
  17. Используйте «отложенную загрузку» (lazy loading) для определенного контента для выигрыша в общей скорости и преимуществ для SEO
  18. Используйте служебные функции jQuery
  19. Используйте «noconflict» для переименования глобального объекта «jquery», когда используете его с другими фреймворками
  20. Как узнать что картинки загружены?
  21. Всегда используйте последнюю версию
  22. Как проверить, что элемент существует?
  23. Добавляйте класс «JS» в элемент «html»
  24. Возвращайте «false» для отмены поведения по-умолчанию
  25. Короткая запись для события готовности документа


Rock'n'Roll!
Всего голосов 188: ↑182 и ↓6+176
Комментарии109

8 отличных хитростей jQuery

Время на прочтение4 мин
Количество просмотров28K
imageКому не нравится jQuery? Это быстрая и простая javascript-библиотека стала очень популярной в 2008 году. В этой статье я собрал список восьми очень полезных jQuery-техник, советов и хитростей.
Читать дальше →
Всего голосов 122: ↑95 и ↓27+68
Комментарии85

Формы для людей

Время на прочтение6 мин
Количество просмотров3.5K
Сейчас мы с вами поговорим о веб-формах. Я с высоты собственного невысокого полета успел накопить кое-какой опыт и жажду непременно им поделится. Все о чем пойдет речь ниже не является черепахой на которой стоят слоны. Речь пойдет о скотче на котором держится черепаха.

Итак…

Первое – Откуда ноги?


Уважаемый друг, для начала, я бы посоветовал отложить средства для рисования и верстки форм. Начнем мы с белого листа. И первым, чем лучше всего руководствоваться, это ряд вопросов самому себе, менеджеру проекта, разработчикам и прочим людям, которые принимают участие в данном эпическом созидательном действии.
  • Для кого делается форма?
  • Какая информация нужна, что бы понять и заполнить форму?
  • Каков результат заполнения формы?
  • Какие у нас есть возможности?

Подробности небольшого расследования
Всего голосов 111: ↑99 и ↓12+87
Комментарии37

Создание заставок (splash screen) в .net 3.5 SP1

Время на прочтение5 мин
Количество просмотров23K
Если вы сталкивались с программированием в .net, то наверняка замечали, что при запуске программы, написанной с использованием WPF, долгое время ничего не происходит. Так продолжается секунд 10, а потом уже открывается главное окно приложения. Даже запуск пустого шаблона WPF приложения занимает около двух секунд.

Эта пауза вносит неопределенность в восприятие программы пользователем: запустилась программа или нет?

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

О том, как это сделать написано под катом.
Читать дальше →
Всего голосов 62: ↑58 и ↓4+54
Комментарии67

ADO.NET Entity Framework близкое юзание

Время на прочтение6 мин
Количество просмотров21K
Тем, кто пишет запросы в коде страницы посвящается...

Приветствую всех!

На хабре есть немного информации о том, что в следующей версии VisualStudio 2008 будет ADO.NET EntityFramework. (Открою секрет, эта версия уже появилась.) Эта разработка представляет собой универсальный фреймворк, который позволяет создавать даталогику вашего проекта в пару кликов мыши.
До сих пор, работая с даталогикой, я сталкивался с 2 видами проектов. Первые были созданы на небезызвестном фреймворке NHibernate, другие реализовывали даталогику программистами. Я уже 3 года занимаюсь написанием и разработкой различных систем и всё это время разрабатывал логику работы с данными исключительно ручками.
И вот, на днях, после того, как я поставил новую винду, я скачал VisualStudio WebDeveloper Express, и с радостью обнаружил в комплекте поставки ADO.NET EntityFramework. Через некоторое время зарегистрировал домен, создал простенький сайт, и начал тренировать свои силы в написании программ под этот фреймворк.

Вперёд, к коду!
Всего голосов 48: ↑44 и ↓4+40
Комментарии120

Взаимодействие с базой данных на базовом уровне без привлечения специализированных фреймворков.

Время на прочтение6 мин
Количество просмотров9.5K
Этот топик является ответом на это заявление в хабраюзера wizard о том, что проекты для работы с БД на .Net занимают очень много места на диске и вообще, двадцать лет назад трава была зеленее, а деревья выше.
Как высказался один из комментаторов вышеупомянутого топика (neuotq):
чтобы выкопать ямку в песочницы не стоит использовать экскаватор и целую строительную бригаду

Важно понимать, что современные фреймворки дают программисту множество инструментов для решения задач. И если вам нужно, цитирую, «получить пару строк данных» из БД, не нужно для этого применять «комбайны с лазерным прицелом» а-ля ADO.Net Entity Framework или NHibernate. Важно понимать, что такие инструменты созданы для больших проектов. Под большим проектом я понимаю не курсовую или дипломную работу, а крупномасштабные коммерческие системы, которые стоят очень больших денег и лишний «1 день(неделя, месяц)» (опять цитата), затраченный на написание собственных велосипедов, обходится заказчику в сотни(тысячи, миллионы) отнюдь не русских денег. Хороший разработчик отличается от плохого тем, что знает, когда нужно писать велосипед, а когда достаточно взять готовый. Плохой, соответственно, либо пихает кругом фреймворки, либо же наоборот везде пишет велосипеды. И виноваты в этом не инструменты разработчика, а он сам.
Все, не буду утомлять своей философией. Под хабракатом можно почитать о том, как можно взаимодействовать с базой данных в .Net без привлечения экскаваторов.
Читать дальше →
Всего голосов 52: ↑44 и ↓8+36
Комментарии51

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность