вторник, 14 июня 2016 г.

Рождество Билли

Мало того, что это ужасно само по себе, вы ведь знаете, — Билли откроет корневой подарок первым, и всем остальным придётся ждать перестроения кучи.

Неужели это так?


понедельник, 13 июня 2016 г.

Многоуровневая абстракция

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

Зачем вообще делят на уровни абстракции? 



Паттерн проектирования Abstract Factory (Абстрактная фабрика) на PHP

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

Пример

Читать далее... (продолжение)

понедельник, 23 мая 2016 г.

Почему же хорошо быть программистом?

  
А как думаете вы?
Оставляйте в комментариях.

Абстракция БД

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

Первым шагом стало написание простенького класса, который облегчал работу с БД. Кода стало не на много меньше, в основном упрощались типовые запросы. Также, автоматически экранировались входные параметры. Бонусом, появилась возможность использовать код с БД, отличных от MySQL (написав класс с таким же интерфейсом). По крайней мере, большинство запросов переписывать не пришлось бы. Код выглядел примерно так:

$db = new MysqlDb($server, $user, $pass, $db, $prefix);
$db->select($key, $value); // Возможно было много вариантов запроса, используя различное количество параметров.
while ($db->fetch()) {
   $row = $db->getRow();
   …
}
Либо $rows = $db->getResult();
* This source code was highlighted with Source Code Highlighter.

Чтобы еще упростить работу с БД,...(Продолжение)

суббота, 21 мая 2016 г.

Абстракция в программировании.: Что же такое абстракция?

Абстракция в программировании.: Что же такое абстракция?: Абстрактные типы данных. Абстрактный тип данных — это совокупность данных вместе с множеством операций, которые можно выполнять над этими ...
 

Количество просмотров

Постоянные читатели