Coding — Пишем чат JAVA + PHP Часть 1
Дорогие читатели сегодня хочу вам рассказать об архитектуре приложения которое я разрабатываю.В этом посте я постараюсь вам рассказать, как в идеале это все будет работать.
Если вам понравится то в последующих частях я расскажу о практической реализации.
Подробнее
Модульное тестирование или юнит-тестирование (англ. unit testing) — процесс в программировании, позволяющий проверить на корректность отдельные модули исходного кода программы.
Модульное тестирование служит мне, как разработчику в достижении двух целей:
1. Определить интерфейс разрабатываемого класса еще до его реализации
2. Проверить, не привело ли добававление нового функционала к ошибкам в уже существующем коде
Для установки понадобятся сам lighttpd, и php-cgi и php-gd и php-mysql и сам mysql с mysql-client.
1. Устанавливаем всё это командой
urpmi lighttpd php-cgi php-gd php-mysql mysql mysql-client
нужные зависимости подтянуться автоматом.
Затем изменяем конфиг находящийся в
/etc/lighttpd/lighttpd.conf
К сожалению сабжевый портал так и не обзавёлся своим рсс-фидом, но получать обновления о любимых сериалах ох как хочется!
Задачу решил с помощью PHP+XSLT.
Предлагаю изменить механизм, который генеирует размер шрифта тегов на следующий (логарифмический):
$size = round(log($frequency) / log($total + 1) + 1, 2);
Где
$frequency - частота употребления тега, а
$total - сумма
$frequency всех тегов.
Cоздал новый блог в продолжение недели скриптов написанных участниками welinux, и начну я блог с проекта который имею честь поддерживать.
Mosquito Bloody Mary — нетребовательный но полнофункциональный блог-движок на файлах (не использующий баз данных) с открытым исходным кодом (GPL v3 & above) написанный на php. Поддерживает плагины и шаблоны. Достаточно прост в использовании, к тому же имеет базовые возможности CMS.
С недавних пор движок начал жить второй жизнью, так как основной разработчик Mosquito ветки Bloody Mary уже более года как забросил работу над ним и я успел подхватить упавшее знамя до окончательной смерти проекта. Изначально поддерживал как движок своего блога (писал плагины, правил баги), но с недавних пор решил выложить в публичный доступ и поддерживать как основной
Список возможностей достаточно обширен и описан тут. Уже готовится документация по созданию плагинов и шаблонов, а так же сами шаблоны и плагины (которых, к слову сказать, на данный момент 10 штук из которых один не опубликованный, не считая плагинов в базовой поставке)
Примеры сайтов на Mosquito Bloody Mary
- Русскоязычная планета Jabber
- MQ - Muha
- Заметки аскитичного гика
- Собственно, сайт самого движка
Накидал небольшую утилитку на PHP. Позволяет в полуавтоматическом режиме производить деплой стуктуры Баз Данных в проекте.
Пользу уже приносит! Стоит в кроне на тестовом сервере после svn update.
А как вы производите подобные миграции?
Недавно я взялся за реализацию собственного issue tracker
Почему? Пробовал наладить с клиентами общение в Mantis - не вышло, слишком он для них сложный.
Перечислю основные возможности:
- Всего четыре роли: разработчик, клиент, менеджер, админ
- неограниченное кол-во проектов
- управляемая видимость пользователь-проект
- сортировка приоритетов drag`n`drop (перетаскиванием)
- Локализация: ru или en (требуется помощь в EN )
- простое (на мой взгляд) управление статусами - статусы двух типов видимый и невидимый соответственно задачи с этими статусами видны или скрыты по умолчанию
- Назначение задачи пользователю
Целевая аудитория системы - небольшие предприятия или команды.
Кому интересно выдам сырцы с инструкциями по установке.
Первый релиз планирую недели через 2-4.
Была задача, организовать общение http-сервера на CentOS с MSSQL-сервером на win2k3.
apache+mysql+php(extension mssql.so)+freetds
Вроде всё как обычно. Но вебсервер категорически отказывался соединяться и получать данные от MSSQL, что через cms, что через простой скрипт отдавало - Something went wrong while connecting to MSSQL
Рубикон был перейден и я снес Apache 2. Эти два события, не связанные ни временем, ни пространством, довольно резко сыграли на всем мире (1) и на моем компьютере (2).
//I do it with Debian
Но так как веб-сервер все-таки нужен, я поставил lighttpd
Страничка по умолчанию в lighttpd приятна глазу (и более многословна, чем такая же страница в Apache2). Но мне еще был нужен PHP5.