Записи, отмеченные как программирование
Вторник, 8 Июнь. 2010
Если кажется, что Webmoney перестала работать – это вовсе не так. Дело в том, что истек срок действия сертификатов, которыми сервер подписывал свои ответы клиенту. Истекший сертификат не считается валидным, поэтому был выпущен новый сертификат. На этот раз сроком на 20 лет. Но все проблемы с сертификатом можно легко решить. И вот как это сделать:
Продолжить чтение "Если перестали работать интерфейсы Webmoney"
Воскресенье, 14 Февраль. 2010
Сегодня я узнал, что я – необразованный ретроград – изобрел велосипед. Точнее, пародию на велосипед. Как известно, я программирую на Java и в данное время мы работаем над новой игрой, konklav.ru. Собственно, мы решили избавиться от архитектурных недостатков сервера Берсерка, и несмотря на то, что в новом движке используется множество старого кода – он довольно сильно переработан. Рефакторинг несет в себе две основные цели: первой из них является повышение производительности под высокой нагрузкой (избавляемся от ненужных синхронизаций, переходим на блокирующие коллекции, где это возможно). Вторая цель – улучшение модульности. Уже сейчас скелет сервера Конклава Бессмертных можно использовать для программирования любой онлайн игры.
Продолжить чтение "Оказалось, что я необразованный ретроград"
Вторник, 22 Декабрь. 2009
Пользуюсь этим замечательным IDE я еще с версии 3.0.x, в начале 2006 года у меня была первая "легальная" лицензия на 5-ку, потом было еще много всяких версий, и в итоге я пришел к выводу, что слишком много кода я пишу именно в этой среде разработки, чтобы ее не купить. В принципе, если задуматься, своей головой и пальцами, печатающими всякую хню, я заработал больше, чем потратил на копию этого IDE, - вот IDEA и стала еще одной программой в моем небольшом списке "честно купленного" ПО. Как бывший фанат Eclipse, я всячески желаю успехов их проекту, но по меньшей мере для меня - выбор между этими двумя замечательными IDE для разработки на Java давно уже очевиден.
Продолжить чтение "JetBrains IDEA - наконец-то я ее купил!"
Суббота, 28 Февраль. 2009
Мне всегда очень тяжело почему-то писать, как нужно что-то делать. Казалось бы, мысленный идеал, наверное, живет в душе каждого программиста. Но он временами недостижим, временами слишком сложен, временами - просто нереализован... Так и получаются неудобные, недоделанные, неготовые проекты. Для меня основными проблемами всегда были: нехватка времени, нехватка сосредоточенности, нехватка целеустремленности, или же нехватка стимула. Например, из-за банальной невнимательности, не далее чем сегодня, в нашей внутренней статистике Берсерк-Онлайн было найдено огромное расхождение (размером с мою зарплату). Нет, мы не потеряли деньги - мы просто ошиблись в расчетах, а конец месяца - самое время находить подобные ошибки. У меня состоялся нехороший разговор с моим шефом, другом и партнером (в одном лице). Проблему в статистике, само собой, я устранил мгновенно, но неприятный осадок остался, и над этим досадным происшествием я думал весь вечер. Выводы озвучены в продолжении статьи. Написано довольно сумбурно, - если чувствуете, что я загоняюсь - просто не читайте дальше... ничего не потеряете.
Продолжить чтение "Нехорошие модели взаимодействия с пользователем"
Среда, 29 Октябрь. 2008
Итак, очередная статья из цикла "Хороший, качественный код". На этот раз мне бы хотелось поговорить об оформлении условного оператора if. Этот оператор присутствует почти в каждой программе, и им можно пользоваться по-разному. Как и раньше, не буду претендовать на то, что мои слова - истина в последней инстанции, и предоставлю несколько возможностей выбора. Начнем с форматирования исходников:
Продолжить чтение "Хороший, качественный код. Условия"
Воскресенье, 19 Октябрь. 2008
Очень часто, и в книгах, и в Интернет, и (возможно) от начальства, можно слышать про необходимость комментариев. Давайте посмотрим, насколько написание комментариев является необходимым.
Во-первых, чем большее количество разработчиков работают над проектом, тем более необходимо наличие комментариев. Если разработчиков немного, возникает другой фактор - фактор человеческой памяти. Если еще три-четыре месяца спустя написания кода можно прекрасно вспомнить, зачем он нужен, как писался, что и почему он делает - вряд ли это удастся вспомнить спустя несколько лет. Особенно, если ведется интенсивная работа над различными проектами.
С другой стороны, комментарии внутри методов - очень часто излишни. Например, напишем (с использованием псевдокода, подозрительно похожего на Java) небольшой метод для магазина по торговле электронными товарами:
Продолжить чтение "Хороший, качественный код. Комментарии"
Суббота, 18 Октябрь. 2008
Я уже вскользь писал на эту тему ранее, в статье "Как не надо писать код". Но в том случае упоминалось лишь о том, что мне не нравится, а не о том, как все должно быть на самом деле. Я не собираюсь писать, скажем, про паттерны, про них и без меня написано многое. Мне приходится (и я этому рад) работать с самым разным кодом - отличным и ужасным, разных авторов, на разных языках программирования. В связи с этим я вкратце изложу, какой стиль программирования я считаю правильным и почему. Не настаивая на том, что моя точка зрения - мудрая, правильная и единственно верная (© Ильф и Петров). Небольшой цикл статей "Хороший, качественный код" - скорее повод задуматься, чем руководство к действию.
Пятница, 26 Сентябрь. 2008
Прошло более месяца с момента, когда я последний раз сюда писал. Теперь работа над блогом возобновляется. Произошло много чего интересного, и я бы не сказал, что последний месяц выдался ненасыщенным на события:
- Во-первых, 1 сентября был очень важный день в жизни нашего проекта, игры Берсерк-Онлайн. Игроки получили возможность купить карты из нового набора «Рождение Героев» (всего в наборе 65 карт). И сулит это мне очень даже неплохую зарплату спустя месяц.
- Во-вторых, 2 сентября у меня случился 26й день рождения. С чем я себя запоздало поздравляю :-)
- В-третьих, 5 сентября я свидетельствовал на свадьбе друга.
- В-четвертых, до 9 сентября примерно, мы правили баги в новых картах, которые не выявило предварительное тестирование. Что, впрочем, неудивительно — тяжело, когда обновления выпускаются такими крупными пачками
- В-пятых, еще были дни рождения у друга и сослуживца.
- В-шестых, наши соседи начали затяжной ремонт — на работе схожу с ума от звуков ремонта. Задумываюсь о покупке берушей :-)
- В-седьмых, запустили обновленную версию платежной системы для игры «Золотой Клон». Самый эффективный способ пополнить игровой счет в «Золотом клоне» — через наш пункт пополнения счетов. Поскольку обменник — фактически сторонний хобби-проект, работы ведутся до сих пор, и постоянно расширяется спектр предоставляемых услуг.
- В-восьмых, мной принято окончательное и бесповоротное решение вновь отказаться от курения. Три года назад (на мой 23й день рождения), моим подарком мне любимому стали чистые легкие сроком на год. Успешно не курил 1.5 года. Я не готов ставить себе цель «отказаться от курения навсегда», или что-то вроде этого — но еще один год очистки легких, это разумно.
Ах да, мой летний запал заботы о собственном здоровье и физическом развитии, успешно сошел на «нет». Отжиматься надоело. Буду пробовать возобновить под мое счастливое расставание с курением.
Поскольку, мой «во-первых» начинался с фраз про карты и деньги, осталось написать что-нибудь про два ствола. Уже который год мечтаю о снайперской винтовке и лицензии для отстрела альтернативно одаренных (шутка, конечно), а в этом году под эту фразу мне чуть было не подарили арбалет :-).
Пятница, 23 Май. 2008
Как известно, JetBrains IDEA довольно давно поддерживает редактирование JavaScript; с недавних пор она "научилась" понимать и ActionScript 3 код (в том числе MXML). SELENA EAP (нестабильная версия, "обгоняющая" текущий релиз) вполне сносно. Ниже расскажу, что я делал и как, чтобы этого добиться. Но для начала - надо скачать SELENA EAP. Есть еще более новая версия, Diana EAP. Подробнее можно прочесть в статье "IDEA 8 + Flex = поддержка и отладка".
Продолжить чтение "IDEA + Adobe Flex - текущее состояние дел"
Вторник, 13 Май. 2008
Никогда не понимал, почему каждый раз при переезде сервера на новое железо, приходится перетаскивать хранимые процедуры отдельно. Для тех, кто обладает памятью, лучшей, чем у меня: экспорт хранимых процедур и функций включается параметром --routines, например: mysqldump --routines --extended-insert berserk > outputfile.sql Если же база уже перенесена, и не хватает лишь переноса хранимых функций и процедур, можно воспользоваться командой: mysqldump --routines --no-create-info --no-data --no-create-db --skip-opt berserk > outputfile.sql Название базы (berserk) выделено курсивом, вероятно, вам потребуется его заменить. Импорт в базу на новом сервере можно осуществить так: mysql newberserk < outputfile.sql Выполнит импорт в базу newberserk. Очень жаль, что --routines до сих пор не является параметром по умолчанию.
|