понедельник, 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 г.

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

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

среда, 8 мая 2013 г.

Абстракция данных.

Абстракция данных является мощным инструментом современного программирования. Этот концептуальный подход позволяет объединить тип данных с множеством операций, которые допустимо выполнять над этим типом данных. Более того, эта философия позволяет использовать такой тип данных не задумываясь о деталях внутренней организации данных, которые могут быть продиктованы средствами используемого компьютерного оборудования.

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

Что же такое абстракция?

Абстрактные типы данных.

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

Ссылка: ... .

Абстрагирование

Смысл абстрагирования. Абстрагирование является одним из основных методов, используемых для решения сложных задач. Хоар считает, что "абстрагирование проявляется в нахождении сходств между определенными объектами, ситуациями или процессами реального мира, и в принятии решений на основе этих сходств, отвлекаясь на время от имеющихся различий". Шоу определила это понятие так: "Упрощенное описание или изложение системы, при котором одни свойства и детали выделяются, а другие опускаются. Хорошей является такая абстракция, которая подчеркивает детали, существенные для рассмотрения и использования, и опускает те, которые на данный момент несущественны" . Берзинс, Грей и Науман рекомендовали, чтобы "идея квалифицировалась как абстракция только, если она может быть изложена, понята и проанализирована независимо от механизма, который будет в дальнейшем принят для ее реализации" . Суммируя эти разные точки зрения, получим следующее определение абстракции:

Абстракция выделяет существенные характеристики некоторого объекта, отличающие его от всех других видов объектов и, таким образом, четко определяет его концептуальные границы с точки зрения наблюдателя.

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

Выбор правильного набора абстракций для заданной предметной области представляет собой главную задачу объектно-ориентированного проектирования. Ввиду важности этой темы ей целиком посвящен этот блог.

Ссылка: ... .

 

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

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