веб-разработка

Цукалос, М. Scala: просто и функционально

Цукалос, М. Scala: просто и функционально [Текст] : [базовые концепции функционально-объектного языка программирования Scala] : [учебник] / Михалис Цукалос [Mihalis Tsoukalos]  //  Linux Format. — 2015. — № 7 (198), июль. — С. 80-83. — (Академия кодинга) (Scala). — Библиогр. "Скорая помощь": с. 80 (3 назв.). — Прил.: "Родство Scala и Java" : [связи и особенности Scala и единственное, чего в Scala не исправить — на выполнение программы, использующей Java Virtual Machine, нужно больше времени, чем на выполнение двоичного файла в Linux]. — С. 81 ; "Сопоставление с шаблоном в Java" : [значение сопоставления с шаблоном, примеры, значение порядка условий сопоставления, рекомендация написать простую версию grep на Scala в качестве упражнения]. — С. 83. 
     Аннотация
     Базовые концепции функционально-объектного языка программирования Scala (www.scala-lang.org), разработанного Мартином Одерски (Martin Odersky).
     Если Вы следите за статьями о языках программирования рубрики "Академия кодинга", то, возможно, обнаружили, что в качестве примеров кода обычно используется определение чисел Фибоначчи, реализация алгоритма сортировки и ввод/вывод в файлы. Это сделано специально, чтобы вы сравнили, как похожие программы реализуются на разных языках.
     Scala — установка в Debian, интерактивная среда и утилита для выполнения кода (scala), компилятор (scalac); код для программы “Hello World!”, 3 способа запуска кода и команда запуска кода из командной строки UNIX в интерактивной среде, расчет чисел Фибоначчи с помощью чистой рекурсии и хвостовой рекурсии, реализация пузырьковой сортировки методом итерации, обработка аргументов командной строки (получение и оперирование ими в программах); ввод/вывод в файлы на примере программы, которая прочтет текстовый файл строка за строкой, вставит в начало каждой строки номер и сохранит результат в новом текстовом файле. 
     Функциональное программирование в Scala на практических примерах, где используются анонимные (безымянные) функции и функции используются как переменные.
     Веб-программирование в Scala: фреймворки Lift (http://liftweb.net) и Play (https://www.playframework.com), пример кода веб-приложения на фреймворке Play.
     Рекомендуются книги: Martin Odersky “Programming In Scala” (Мартин Одерски "Программирование на Scala"), Nilanjan Raychaudhuri “Scala In Action” [Ниланджан Райчаудхури "Scala в действии".

 

Ельчук, К. HTTrack: клоны сайтов

Ельчук, К. HTTrack: клоны сайтов [Текст] : [возможность утилиты HTTrack клонировать сайты как способ обучения веб-разработке] : учебник / Кент Ельчук [Kent Elchuk]  //  Linux Format. — 2015. — № 6 (197), июнь. — С. 80-83. — (Учебник) (Клонирование сайтов). — Прил.: "Скорая помощь" : [для изменения клона сайта требуется знание HTML, CSS и JavaScript]. — С. 80 ; "Скорая помощь. Вы можете добавить свой код на PHP/MySQL в динамические web-страницы, переместив свою копию в каталог /var/www или /var/html/www, переименовав файлы с расширением .php и изменив соответствующие пункты меню." : [совет]. — С. 81 ; "Скорая помощь. Чтобы открыть и изменить свои клоны на локальном компьютере с Linux, можете поместить их в каталог /var/www и открывать в браузере по ссылке http://localhost/имя_клона." ; "Изменение в конфигурации PHP" : [изменение в php.ini — изменить максимальное время выполнения скрипта (max_execution_time), отключить функцию]. — С. 82 ; "Введение в Firebug" : [Firebug — расширение веб-браузера для анализа и изменения содержания веб-страниц] : [установка, просмотр кода элемента страницы, редактирование тэга]. — С. 83. 
     Аннотация
   
 Как известно, лучший метод обучения — практика. А почему бы не использовать возможность утилиты HTTrack клонировать сайты для обучения веб-разработке, не нарушая при этом авторских прав? Кент Ельчук показывает как клонировать сайт с помощью HTTrack, как внести изменения в клон и раскрывает секреты создания собственного шаблона и его изменения под свои нужды. 
     Приводится — список команд для установки и использования пакета httrack в системах на базе Debian, таких как Raspbian и Ubuntu; команда загрузки файлов и ссылок из главного каталога; команда клонирования подкаталога; код скрипта для клонирования сайта и объяснение его работы; код примера всех элементов страницы.
     Утилита HTTrack применяется не только для клонирования сайтов или подкаталогов. Все о программе: 
     Cohen, B. Httrack Users Guide (3.10) [Electronic resource] / Fred Cohen. — Mode of access: http://www.httrack.com/html/fcguide.html.   

 

Михайлов, Н. Open Clip Art Library: веселые картинки

Михайлов, Н. Open Clip Art Library: веселые картинки [Текст] : [бесплатная библиотека графических элементов Open Clip Art Library (openclipart.org) — история онлайн-проекта, выпуски онлайн-коллекции графических элементов дизайна, сообщество библиотеки] / Николай Михайлов  //  Linux Format. — 2015. — № 5 (196), май. — С. 60-61. — Веблиогр. "Использованные источники": с. 61 (7 назв.). — Прил.: "Картинки из клипарта на web-странице". — С. 61. 
     Аннотация
     Бесплатная библиотека графических элементов Open Clip Art Library (openclipart.org) — история, выпуски онлайн-коллекции графических элементов дизайна, сообщество библиотеки. 
 

Уэлдон, Г. CakePHP: Важные ресурсы [Текст] : учебник : [обзор источников информации] / Грэм Уэлдон (Graham Weldon)  //  Linux Format. — 2011. — № 3 (142), март. — С. 68-71. — (CakePHP. Учебник) (Linux Format на DVD). — Прил.: "Ценнейший наш ресурс" : [документация CakePHP, созданная сообществом]. — С. 69 ; "Будьте общительны" : [@cakephp — страница CakePHP в Twitter как источник информации о релизах, проектах и событиях]. — С. 70 ; "Автогенерация API" : [источник API CakePHP]. — С. 71. 
     Аннотация
     Рассмотрены источники информации по CakePHP (http://cakephp.org) — Cookbook, она же "Поваренная книга" CakePHP (http://book.cakephp.org)], Bakery (Пекарня; http://bakery.cakephp.org), API CakePHP (http://api.cakephp.org), сайт "Вопросы по CakePHP" (http://ask.cakephp.org), сайт CakePHP TV (http://tv.cakephp.org), ежегодная конференция CakeFest (http://cakefest.org), сайт PHP (http://php.net), блоги разработчиков, в частности, блог одного из ведущих разработчиков CakePHP Марка Стори (Mark Story; http://mark-story.com), сайт CakeDC (http://cakedc.com),. ресурс www.pseudocoder.com, RSS

 

Уэлдон, Г. CakePHP : Часть III. CakePHP: сайт для закладок

Уэлдон, Г. CakePHP [Текст] : Часть III. CakePHP: сайт для закладок : учебник / Грэм Уэлдон (Graham Weldon)  //  Linux Format. — 2011. — № 2 (141), февр.. — С. 72-75. — (CakePHP III) (Учебник). — Прил.: "Скорая помощь" : [сервис миниатюр Thumboo! (www.thumboo.com)]. — С. 73 ; "Скорая помощь" : [книга на http://book.git­scm.com, которая поможет научиться работать с Git или улучшить свои навыки] ; "Применяем модули". — С. 74 ; "Повторно об исходниках" : [коды учебника]. — С. 75. 
     Аннотация
     Демонстрируется применение программного каркаса CakePHP (cakephp.org) для построения сайта с закладками URL, где будут храниться не только адреса с их описанием, но и аватары пользователей, а также будет возможность делиться ссылками в социальных сетях.
     Соглашения PHP — http://book.cakephp.org/view/901/CakePHP­Conventions — пригодится тем, кто захочет самостоятельно разрабатывать веб-приложения с CakePHP.

 

Уэлдон, Г. CakePHP : Часть II. CakePHP: пишем загрузчик файлов

Уэлдон, Г. CakePHP [Текст] : Часть II. CakePHP: пишем загрузчик файлов : учебник / Грэм Уэлдон (Graham Weldon)  //  Linux Format. — 2011. — № 2 (141), февр.. — С. 68-71. — (CakePHP II) (Учебник). — Прил.: "Классовая борьба" : [классы PHP]. — С. 69. 
     Аннотация
     Демонстрируется применение программного каркаса CakePHP (cakephp.org) для создания загрузчика файлов, который пригодится, когда нужно отправить файл или поделиться им, сохранив контроль над доступом к выданному файлу. В итоге мы научимся находить контроллеры, углубляться в модели и создавать представления. 

 

Уэлдон, Г. CakePHP : Часть  I. CakePHP: раз — и web-приложение!

Уэлдон, Г. CakePHP [Текст] : Часть  I. CakePHP: раз — и web-приложение! : учебник / Грэм Уэлдон (Graham Weldon)  //  Linux Format. — 2011. — № 2 (141), февр.. — С. 64-67. — (CakePHP I) (Учебник) (Linux Format на DVD). — Веблиогр. "Здесь и далее": с. 67 (8 назв.). — Прил.: "Завелись личинки" : [«личинка» (slug) в таблице с книгами, то это не мелкие червячки – так называется уникальная строка URL­-адреса, построенная на основе названия книги]. — С. 65 ; "Настройка ссылок" : [метод Inflector::slug использует символ подчеркивания при генерации коротких ссылок, но его можно изменить на любой другой символ или набор символов, отвечающий нуждам пользователя]. — С. 66. 
     Аннотация
     Демонстрируется применение программного каркаса CakePHP (cakephp.org) для создания многопользовательской библиотеки книг разных владельцев. В ходе урока показано: процесс создания базы данных книг, таблиц books и users, работа утилиты bake (генерация кода моделей, представления, контроллера), настройка связи с базой данных, добавление книг в базу данных, введение коротких ссылок, автоматизация ссылок.

 

Херрон, Ф. Flask: создать монитор процесса

Херрон, Ф. Flask: создать монитор процесса [Текст] : [создание монитора сервера с помощью Python Flask и psUtil на сервере и Angular.js на стороне клиента] : учебник / Филип Херрон [Philip Herron]  //  Linux Format. — 2015. — № 1 (191-192), янв.. — С. 92-95. — (Академия кодинга) (Flask). — Прил.: "Здесь показана общая архитектура встраивания Angular.js в web-страницу" [Изображение] : [схема]. — С. 93 ; "Bootstrap и Angular" : [обеспечение бесконфликтной совместной работы Bootstrap.js и Angular.js]. — С. 94 ; "Скорая помощь. Для использования приложений Flask я предпочитаю использовать обратный прокси-­сервер nginx и запускать несколько экземпляров сервера Flask, настраивая app.run(port=1234) так, чтобы каждый из них мог использовать уникальный порт. Пока ваше приложение обеспечивает сохранность данных в движке, это очень хорошо работает. Другие методы использования Flask см. на http://flask.pocoo.org/snippets/category/deployment.". — С. 95.
     Аннотация
     Веб-разработка на Python. Подробно рассмотрено создание кода монитора сервера с помощью Python Flask и psUtil на сервере и Angular.js на стороне клиента для привязки данных, которая применяется при создании по-настоящему динамичных сайтов, например, Gmail.

 

Ельчук, К. Строим ВМ для разработки PHP

Ельчук, К. Строим ВМ для разработки PHP [Текст] :  [создание среды разработки на PHP при помощи виртуальной машины] / Кент Ельчук [Kent Elchuk]  //  Linux Format. — 2015. — № 1 (191-192), янв.. — С. 52-55. — (Начала работы с PHP). — Прил.: "Безопасность PHP" : [меры обеспечение безопасности домашнего сервера PHP]. — С. 53 ; "Скрипты PHP и командная строка" : [различие запуска скриптов PHP из командной строки и из браузера]. — С. 54 ; "Сервер электронной почты" : [установка и настройка почтового сервера Postfix, простейший способ проверки исходящей почты (приводятся команды проверки)]. — С. 55. 
     Аннотация
     Создание среды разработки на PHP и изучения PHP. Показано, как применение полной виртуальной машины ВМ (VM) поможет в создании веб-страниц, запуске скриптов PHP и доставке электронной почты. Кроме этого показано, как клонировать виртуальную машину и перенести её на другую машину, независимо от того, будет ли хост или гость 32- или 64-битным. Рассмотрен весь процесс сборки — скачивание самой свежей версии Ubuntu, установка Virtualbox на Ubuntu, установка пакетов и модификация пакетов. 
     Установка Virtualbox на Ubuntu для новичков — работа с файлом /etc/apt/sources.list, создание виртуальной машины с Ubuntu, расширение её функциональности при помощи гостевых дополнений Virtualbox (http://download.virtualbox.org/virtualbox) и её настройка.
     Клонирование виртуальной машины и запуск функционального сервера с Apache, MySQL, PHP и Postfix. Создание тестового файла PHP (test.php) в текстовом редакторе.
     Настройка DNS и переадресация портов. Настройка собственного IP-адреса виртуальной машины.
     Основы PHP на примере создания скриптов на PHP — как создавать комментарии, переменные, массивы, циклы (foreach, for и while), функции (sprintf()), классы и объекты, CRUD, запросы MySQL и включать файлы.
 

Моллетт, Э. Nginx : MySQL: ссылки на базу данных

Моллетт, Э. Nginx [Текст] : MySQL: ссылки на базу данных : учебник / Эндрю Моллетт (Andrew Mallett)  //  Linux Format. — 2014. — № 12 (190), дек.. — С. 74-77. — (Учебник) (Nginx). — Веблиогр. "Web-сервисы в Pi": с. 75 (2 назв.). — Прил.: "Скорая помощь" : [основные типы операторов MySQL]. — С. 74 ; "Скорая помощь. Такие файлы PHP, как config.php, включены из include_path, по умолчанию это будет включать текущую директорию; можно добавить дополнительные пути с помощью функции PHP set_include_path. Если вы управляете сервером, вы также можете настроить пути на постоянной основе в PHP.ini и директиве include_path…". — С. 75 ; "Условия Primary, Unique и Foreign Key". — С. 77. 
     Аннотация
     Завершает учебник о создании динамических сайтов на Raspberry Pi работа с сервером базы данных MySQL и мы создаем простую базу данных контактной информации (contact). 
     После создания (подробности создания таблиц, добавление данных в таблицу), запуска базы данных и знакомства с основами технологии создания запросов SQL мы создадим страницу на PHP для поиска и отображения его результатов, а потом сможем выполнять удаленный поиск по базе данных с помощью форм HTML на веб-­сервере Nginx.
     Промышленность устами маркетологов внушает, что встраиваемые устройства — это нечто особенное и дорогостоящее, а учебник продемонстрировал нечто необычное и мощное на надежном маленьком Raspberry Pi. 
 

 

Моллетт, Э. Nginx. PHP: серверные формы

Моллетт, Э. Nginx [Текст] : PHP: серверные формы : учебник / Эндрю Моллетт (Andrew Mallett)  //  Linux Format. — 2014. — № 12 (190), дек.. — С. 70-73. — (Учебник) (Nginx). — Прил.: "Скорая помощь. Если ваша PHP-­страница никак не работает, создайте простую страницу с функцией phpinfo(), которая напоминает то, что мы делали в LXF188. Эта страница подтвердит, что PHP на самом деле работает." ; "Анатомия формы должна позволить нам отображать данные, вводить данные и отправлять данные. Такую функциональность предоставляет элемент input" [Изображение] : [цвет. схема]. —  С. 70 ;  "Массивы и переменные" : [объяснение термина]. — С. 71 ; "Элемент формы может иметь атрибуты, включающие действие [Action], метод отправки данных [Method], а также (необязательно) тип кодировки [Enctype]» [Изображение] : [цвет. схема]. — С. 72 ; "$_SERVER" : [интересные переменные массива $_SERVER(‘HTTP_USER_AGENT’) и $_SERVER(‘REMOTE_ADDR’)]. — С. 73. 
     Аннотация 
     Следуя предыдущим частям учебника, мы готовы добавить на наш сайт несколько форм и немного PHP, чтобы создать динамические страницы. Мы разработаем веб-страницу для размещения на Pi или на другом сервере, которая будет принимать температуру в градусах Цельсия и преобразовывать ее в градусы Фаренгейта, обойдясь без длинной таблицы с градусами по Цельсию и по Фаренгейту, потому что температуру для нас преобразует простая HTML-форма с одним полем для ввода и кнопкой Submit (Отправить). 
     Применительно к нашему проекту рассмотрены: основы HTML-форм (определение, элементы <input> и “submit”, атрибут “value”, код HTML-страницы); оживление HTML-формы с помощью XHTML (придание атрибутов элементам, задание типов); атрибуты формы (action, method и enctype), которые говорят форме, что она должна делать с полученными данными; особенности методов GET и POST; применение метода GET, которое означает, что на страницу нужно добавить  PHP­скрипты, чтобы она могла обрабатывать информацию; PHP-код — тэги, анализ кода примера, поиск ошибок в лог-файле ошибок веб-сервера Nginx и лог-файле доступа.
 

Бидвелл, Д. Hack : Hip Hop Virtual Machine

Бидвелл, Д. Hack [Текст] : Hip Hop Virtual Machine : [язык программирования Hack от Facebook] / Джонни Бидвелл (Jonni Bidwell)  //  Linux Format. — 2014. — № 11 (189), нояб.. — С. 96-99. — (Академия кодинга) (Hack). — Прил.: "Установка" : [особенности установки HHVM в различных дистрибутивах Linux]. — С. 97 ; "Краткая история хип-хопа" : [Hip Hop Virtual Machine — эволюция от транслятора кода на C++ HipHop для PHP (он же HPHPc) до виртуальной машины Hip Hop Virtual Machine с открытым исходным кодом; история идеи использования виртуальных машин для кода]. — С. 99. 
      Аннотация
      Усилия Facebook по поддержке PHP — в 2014 году анонсирована спецификация формата PHP 5.6, представлен JIT­-компилятор для PHP с тройным увеличением производительности Hip Hop Virtual Machine (HHVM, http://hhvm.com),анонсирован Hack, язык программирования для HHVM, который хорошо интегрируется в PHP, но предоставляет дополнительные функции. 
      Язык программирования Hack для Hip Hop Virtual Machine (HHVM) — установка, пример использования для факторизации больших целых чисел, функции (primeloop), режимы (Strict и Partial), преобразование PHP на Hack, обобщения, обращение с HTML-­формами. 
 

 

Ельчук, К. PHP/SQLite

Ельчук, К. PHP/SQLite [Текст] : PHP/SQLite: Почта чохом : учебник : [инструкции по настройке собственного PHP-скрипта массовой рассылки по электронной почте] / Кент Ельчук (Kent Elchuk)  //  Linux Format. — 2014. — № 10 (188), окт.. — С. 72-75. — (PHP/SQLite. Учебник). — Прил.: "Наш эксперт" : [краткая справка об авторе] ; "Скорая помощь. База данных SQLite имеет расширение по умолчанию .sqlite, которое вы при желании можете переименовать в .db. Также ей нужно будет настроить разрешения на 777, если вы планируете изменять ее из своего приложения. В противном случае вы получите только частичные привилегии.". — С. 72 ; "Соединения SQLite и MySQL" : [пример реализации в скрипте]. — С. 73 ; "Скорая помощь" : [приводится команда скрипта, которая конвертирует базу данных MySQL в SQLite] ; "Предоставьте SMTP данные об электронной почте" : [показано как задать программе отправки SMTP хост электронной почты, порт, имя пользователя и пароль]. — С. 74 ; "Функция SMTP vs Mail()" : [использование встроенной функции PHP mail() в файле index.php для массовой рассылки] ; "Скорая помощь. Когда ваш первый столбец обрабатывается MySQL с автоприращением, обычно он имеет тип Int и первичный ключ. В SQLite вам нужно конвертировать тип Int в INTEGER и сделать его первичным ключом. По умолчанию конвертирование базы данных MySQL с таблицами, которые используют тип int, произойдет в тип Int в SQLite.". — С. 75. 
      Аннотация
      Кент Ельчук помогает реализовать один из способов сеять разумное, доброе, вечное при помощи компьютерных технологий и предлагает скрипт массовой рассылки по электронной почте. Приложение может работать на любом локальном хосте (Raspberry Pi, USB­-брелок, виртуальная машина или учетная запись своего веб­хостинга). 
      Успехов! 

 

Браун, К. По рецептам д-ра Брауна

Браун, К. По рецептам д-ра Брауна [Текст] : Добротное администрирование систем из причудливых заворотов кишок серверной : [Материалы для сисадминов Linux-систем] / Крис Браун (Chris Brown)  //  Linux Format. — 2009. — № 6 (119), июнь. — С. 44-47. — (Рецепты доктора Брауна). — Веблиогр. "Где узнать больше": с. 47 (6 назв.). — Содерж.: Почти волшебство : [Что потрясло Криса Брауна: «технический прогресс приблизился к той точке, когда почти невозможно удивить никого (а особенно молодежь) вообще ничем… большинство качественных изменений, происшедших в последнее десятилетие, связаны с преобразованием источников информации в цифровую форму»] ; Мудрость Moodle : [Moodle — свободная система управления обучением с открытым исходным кодом, веб-приложение на PHP, предоставляющее возможность создавать сайты для онлайн-обучения — общая информация]. — С. 44 ; Структура репозитория Debian. Debian/Ubuntu. Недоумеваете, откуда берутся ваши Deb-­пакеты? Давайте разберемся с устройством репозиториев ;  Структура репозитория Ubuntu. Менеджеры пакетов автоматически выбирают нужные файлы исходя из архитектуры, на которой работают : [Схема] ; Строка из файла /etc/apt/sources.list. Эти части связывают карманы и компоненты с URL-адресами сервера : [Схема] ; Схема файловой системы репозитория Ubuntu. Показаны лишь некоторые каталоги : [Схема]. — С. 45 ; В первый раз Apt-proxy получает Deb-файл с сервера, а затем достает его из кэша : [Схема] ; APT для нетерпеливых : [Четыре полезные команды APT]. — С. 46 ; Отраженная слава. Прокси-серверы и зеркала доставят репозитории Debian или Ubuntu поближе к дому и ускорят установку ПО : [Работа в командной строке: установка и запуск прокси-сервера APT, создание зеркала Debian (если это необходимо), развертывание собственного репозитория ]. — С. 46-47 ; Зеркалирование — потенциально затратная операция. Она создает локальную копию целого репозитория из сети : [Схема]. — С. 47.
      Аннотация 
      Потрясение от чудес технического прогресса не может отвлечь Криса Брауна от рутины организации репозиториев Debian при помощи командной строки. 

 

Бидвелл, Д. Django: своя личная CMS

Бидвелл, Д. Django [Текст] : Django: своя личная CMS : учебник / Джонни Бидвелл (Jonni Bidwell)  //  Linux Format. — 2014. — № 9 (187), сент.. — С. 88-91. — (Академия кодинга) (Django). — Прил.: "Создаем блог с Django и Zinnia" : [пошаговое руководство]. — С. 91.
      Аннотация
      Критика систем управления контентом (content management system, CMS) WordPress и Drupal. 
      Современное понимание фреймворков, характеристика фреймворка Django. Создание индивидуальной системы управления контентом на Django CMS (www.djangopackages.com/grids/g/cms) — среда запуска Virtualenv, установка, настройка, запуск CMS, создание блога (файлы settings.py и urls.py, интеграция в блог приложения для блогов Zinnia), добавление галереи изображений, размещение в Интернете с помощью веб-сервера Nginx (установка пакета uWSGI в качестве интерфейса между Django и Nginx, настройка Nginx на примере конфигурационного файла /etc/nginx/sites-available/mysite_nginx.conf). Создание блога с помощью фреймворка Django и приложения Zinnia.