Fractalizer’s Weblog

Просто мой блог. Основная тема – программирование

Блог переехал

Опубликовано FractalizeR на Август 18, 2008

По некоторым причинам я перемещаю блог на свой личный домен www.fractalizer.ru

Основную часть блога я теперь буду вести на английском, поскольку (возможно, к сожалению) так сложилось, что основная часть заинтересованных читателей так или иначе владеет английским (по моему, возможно, ошибочному мнению, программист, не зависимо от национальности, не владеющий английским языком, – нонсенс).

Приношу свои извинения тем, кому это доставит неудобства.

Рубрика: Uncategorized | Оставьте комментарий »

Zend Framework -> Zend_Session – удобная ОО-работа с $_SESSION

Опубликовано FractalizeR на Ноябрь 9, 2007

Назначение и возможности

Zend_Session и Zend_Session_Namespace предназначены для удобной работы с глобальной переменной $_SESSION. Использование объектов предоставляет следующие преимущества:

  • ОО-доступ к переменным сессии
  • Автоматическая проверка на XSS-атаки (с помощью классов Zend_Session_Validator_*)
  • Zend_Session_Namespace позволяет иметь как бы несколько независимых друг от друга частей сессии – пространств имен
  • Каждое отдельное пространство имен можно блокировать/разблокировать, управляя возможностью вносить в него изменения, а также читать статус блокировки
  • Можно создавать несколько объектов Zend_Session_Namespace, обращающихся к одному и тому же пространству имен, а также запрещать создавать такие дубликаты
  • Можно управлять временем жизни как пространства имен, так и отдельных его элементов

Статья предполагает, что читатель хорошо знаком с работой с сессиями с помощью стандартных функций PHP.
Читать далее…

Рубрика: Мои статьи, PHP, Zend Framework | Отмечено: , , , , , , , | Оставьте комментарий »

Zend Framework -> Zend_Config: работаем с настройками

Опубликовано FractalizeR на Ноябрь 8, 2007

Назначение и возможности

Класс Zend_Config предназначен для единообразной работы в ОО-стиле с конфигурационными файлами в трех (в 1.02) форматах: PHP Array (просто PHP файл с данными, представленными в виде массива PHP), INI-формата Windows и XML.

Zend_Config поддерживает древовидную структуру данных произвольной глубины. В формате PHP массивов и XML эта возможность поддерживается самим форматом, а в INI папки первого уровня – секции INI файла, а все последующие уровни обозначаются внедрением разделителя в имя опции внутри секций (об этом далее).

В формате PHP массивов поддерживаются все типы данных, которые вы только пожелаете сохранить в настройки, формат INI ограничен возможностями функции parse_ini_file, которая используется для парсинга (советую перед использованием конфигурационных файлов в этом формате внимательно прочитать документацию по этой функции и комментарии пользователей к ней. Есть достаточное количество дефолтов и ограничений), а из формата XML все данные возвращаются в текстовом виде.

При использовании форматов INI и XML есть возможность наследовать настройки одного раздела от другого.

Следует иметь ввиду, что as-is Zend_Config хоть и позволяет изменять значения внутри объекта конфигурации, но записывать измененный вариант он не может. Если такой функционал требуется, лучше обратиться к пакету Config из PEAR, который обладает куда большим количеством поддерживаемых форматов и возможностью конвертирования из одного формата в другой (и много-много всего другого!).

Читать далее…

Рубрика: Библиотеки, компоненты, Движки, CMS, Мои статьи, PHP, PHP, Zend Framework | Отмечено: , , , , , , | Комментарии (2) »

Zend Framework – новый PHP фреймворк от Zend

Опубликовано FractalizeR на Ноябрь 8, 2007

Не так давно состоялся финальный релиз версии 1.0-1.02 фреймворка от Zend для PHP. Пользуясь поддержкой практического монополиста рынка PHP решений, этот фреймворк обещает стать стандартом де-факто на серверах, таким же, каким сейчас является PEAR.

Сам фреймворк центрирован вокруг Web-служб, авторизации и аутентификации и MVC. В дальнейшем разработчики обещают обратить внимание на веб-формы (аналог HTML_QuickForm из PEAR) и Ajax.

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

В Zend Framework 1.02 входят следующие классы:

Читать далее…

Рубрика: Библиотеки, компоненты, Движки, CMS, PHP | Отмечено: , , , | Оставьте комментарий »

Zend Studio Neon – одна из самых мощных IDE для PHP

Опубликовано FractalizeR на Ноябрь 8, 2007

Не так давно вышел новый Zend Studio Neon Beta. Zend Studio Neon – это новая Zend Developer Studio, основанная на Eclipse. Кажется, в Zend поняли не особую перспективность дальнейшей разработки собственного тормозящего движка и решили воспользоваться готовеньким, то есть Eclipse, у которой более 2 миллионов пользователей. Разработав PDT как бесплатный Core, чтобы подключить opensource разработчиков, они выпустят на ее основе Neon, такой новенький и блестящий.

Честно говоря, судя по описанию, Neon не сильно превосходит PDT, по крайней мере в первой версии. Разве что поддержкой расширенного рефакторинга и поддержкой Zend Framework. Полный список отличий есть тут: http://www.zend.com/products/zend_studio/eclipse/compare

Саму студию можно скачать отсюда: http://downloads.zend.com/studio-eclipse/BETA/ZendStudioNeon-BETA.exe

Поработаю, посмотрим, на что она способна.

Рубрика: Инструменарий разработчика, Среды разработки, PHP | Отмечено: , , , , , , , | Оставьте комментарий »

Устанавливаем и настраиваем Eclipse PDT (PHP Development Tools)

Опубликовано FractalizeR на Ноябрь 2, 2007

Эта статья будет посвящена работе с Eclipse PDT – одной из лучших OpenSource сред для программирования на PHP.

1. Установка PDT

Заходим на главную страницу проекта, затем переходим по ссылке Download слева. Кликаем по последнему Release Build. Качаем сборку PDT All-in-One (около 120Мб). Распаковываем архив в любую папку на вашем компьютере. Запускаем eclipse.exe.

Выбор рабочей области в Eclipse

В появившемся окне нужно указать папку, в которой Eclipse в дальнейшем будет хранить все ваши проекты и их файлы. Обычно все это можно оставить по умолчанию. После нажатия Ok через некоторое время запустится Eclipse.

2. Устанавливаем нужные плагины

Читать далее…

Рубрика: Мои статьи, Среды разработки, Eclipse, PHP, PHP | Отмечено: , , , , , , , | Комментарии (8) »

STUNT – библиотека для общения программ через NAT

Опубликовано FractalizeR на Октябрь 29, 2007

Эта замечательная библиотека реализует известные алгоримы обхода NAT и позволяет двум программам общаться между собой даже если они обе сидят за NAT.

Поддерживаются и UDP и TCP протоколы.

Основной сайт проекта: http://nutss.gforge.cis.cornell.edu/stunt.php (Java реализация)
Порт библиотеки на C#: http://www.codeplex.com/Wiki/View.aspx?ProjectName=SharpStunt
C++ порт: http://www.cis.nctu.edu.tw/~gis87577/xDreaming/XSTUNT/index.html

«Соперники» STUNT: ICE, TURN

Рубрика: Инструменарий разработчика, Разное | Отмечено: , , , | Оставьте комментарий »

Propel – Object Relational Mapping (ORM) framework для PHP5

Опубликовано FractalizeR на Октябрь 29, 2007

Интересный Framework для PHP5, который позволяет вам сначала описать вашу базу данных в XML, после чего парсер Propel построит набор бизнес-объектов для удобной работы с ней:

======================================================================
<database name="bookstore">
  <table name="book">
    <column name="book_id" type="INTEGER" required="true" primaryKey="true"/>
	   <column name="title" type="VARCHAR" size="50" required="true" />
  </table>
</database>
======================================================================
// Создаем бизнес объект
$b = new Book();
$b->setTitle("War & Peace");
$b->save();
 // Делаем выборку
$c = new Criteria();
$c->add(BookPeer::TITLE, "War%", Criteria::LIKE);
$c->setLimit(10);
 $books = BookPeer::doSelect($c);
 foreach($books as $book) {
  print "<br/>" . $book->getTitle();
}
?>
======================================================================
 Читать далее...

Рубрика: Библиотеки, компоненты, Инструменарий разработчика, PHP | Оставьте комментарий »

FMOD Ex – бесплатный мультиплатформенный звуковой движок

Опубликовано FractalizeR на Октябрь 29, 2007

Популярный аудиодвижок для игр и не только. Бесплатен для некоммерческого использования.

Этот движок используется в играх таких монстров индустрии, как Blizzard, Bethesda, Activision, THQ и и многих других.
Читать далее…

Рубрика: Инструменарий разработчика, Разное | Отмечено: , , | Оставьте комментарий »

Генератор компиляторов Coco/R

Опубликовано FractalizeR на Октябрь 29, 2007

Coco/R – генератор компиляторов. Многие компиляторы .NET-вариантов языков программирования создавались с использованием Coco / R.

Вы задаете набор правил грамматики языка, а по ним Coco / R построит классы парсера и компилятора.

Coco/R портирован на C#, Java, C++, VB, Oberon, Pascal, Modula-2, Delphi, Ada, Ruby, Unicon

Сайт проекта: http://www.ssw.uni-linz.ac.at/Research/Projects/Coco/

Рубрика: Инструменарий разработчика, Разное | Отмечено: , , , , , , , , , | Оставьте комментарий »

 
Follow

Get every new post delivered to your Inbox.