Программно создать игровое поледля Морского боя, включая нумерацию строк и столбцов. Зполнять поле текущим состоянием массива. Позволять пользователю изменять состояние массива и сохранять его в переменной сессии. Позволять очистить массив.
Пример (левое поле “My Field”)
Необходимо предоставить ссылку на работающий скрипт + ссылку на исходный код скрипта (копия файла скрипта с расширением txt).
Published on 16.04.2011 18:21.
Filed under: 2010/11, Веб-программирование
Уважаемые студенты, изучающие веб-программирование на PHP!
Проверьте себя, что вы умеете из нижеперечисленного, всё ли у вас есть для того, чтобы двигаться в изучении веб-программирования дальше?
Вы должны понимать следующие элементы PHP:
- базовый синтаксис;
- типы данных (числа, строки, массивы, логический, NULL), принцип динамической типизации и преобразования типов (из числа в строку и обратно);
- переменные и их область видимости;
- построение выражений и используемые для этого операторы (арифметические, логические, присвоение, сравнение, конкатенация, тернарный оператор)
- основные управляющие структуры – if/else/elseif, while/do-while, for/foreach и switch;
- встроенные и пользовательские функции, передача параметров по ссылке и по значению, возвращение результата работы функции;
- передача скрипту параметров и их обработка, предопределённые массивы $_GET и $_POST;
- механизм сессий и предопределённый массив $_SESSION
- механизм cookies и предопределённый массив $_COOKIE
Кроме этого, вы должны уметь:
- пользоваться следующими встроенными функциями “из головы”, не подсматривая в документацию: isset(), empty(), rand(), count(), print_r(), error_reporting(), echo(), die(), exit(), setcookie(), time(), strlen();
- ориентироваться в документации на php.net и в случае необходимости быстро отыскивать там нужную вам встроенную функцию;
- понимать синтаксис описания встроенных функций в официальной документации php.net, уметь читать примеры и модифицировать их для использования в своём коде;
- интегрировать код на PHP внутрь HTML-документа, устанавливать ссылки на php-скрипты с параметрами в них и отправлять на обработку php-скрипту простейшие веб-формы.
Если вы не осиливаете офдок на английском, то воспользуйтесь упрощённым курсом на W3Schools, в крайнем случае обратитесь к частично переведённой на русский язык официальной документации или купите (скачайте) книгу по PHP 5.x на русском.
Внимание! Полной документации по PHP 5.х, качественно переведённой на русский язык нет! Не поддавайтесь соблазну изучать PHP по различным устаревшим курсам, пособиям, книгам и сайтам, где идёт речь о 3-й или 4-й версии PHP. Они безнадёжно устарели!
Запускать свои скрипты лучше всего на сервере cs.mk.ee (предварительно убедитесь, что у всех файлов установлены права доступа 755). Если вы желаете работать с PHP локально на своём компьютере, то вам нужно установить XAMPP или любой другой набор из Apache2, PHP 5.x и других полезных программ из этого списка. Подобные комплекты софта созданы и для других ОС – для Мака и Линукса.
Писать свой код в Windows лучше всего в одном из следующих бесплатных текстовых редакторов с подсветкой синтаксиса и поддержкой прямой работы с FTP-сервером (перечисляю свои личные предпочтения, но разумеется никто не запрещает вам использовать Geany, Eclipse или любой другой свободный или коммерческий продукт, с которым вы будете чувствовать себя комфортно):
Published on 16.04.2011 17:56.
Filed under: 2010/11, Веб-программирование
Уважаемые студенты!
Экзамен по веб-программированию (PHP) состоится в будущий вторник, 1 июня, в 17:30 в компьютерном классе.
У тех, кто всё ещё не предоставил домашние задания ещё есть срок сделать это до 23:59 31.05.2010
До встречи на экзамене!
Published on 27.05.2010 13:03.
Filed under: 2009/10, Веб-программирование
Уважаемые студенты!
Публикую задачу на использования технологии Ajax. Решение задачи является одним из условий допуска к экзаменту.
Собственно, задача: создать страницу, которая показывает случайную фотографию из директории с фотографиями на сервере. Под фотографией разместить кнопку “Show Next Random Image”, нажатие на которую при помощи Ajax (т.е. без перезагрузки страницы) заменяет эту фотографию на другую случайную фотографию из той же директории.
Фотографии должны быть в формате jpeg, размером не меньше 500х500 пикселей, числом не менее 5 разных.
Ссылки на готовые работы (клиенткая часть ссылкой на html, серверная – ссылкой на txt) прошу оставлять в комментах к этой записе.
Удачи!
Published on 10.05.2010 03:21.
Filed under: 2009/10, Веб-программирование
Уважаемые студенты!
Те из вас, кто всерьёз заинтересовался программированием на PHP или использованием Ajax, могут посмотреть следующие презентации в поисках best practices и нюансов работы с этими технологиями в различных условиях:
Published on 05.05.2010 11:31.
Filed under: 2009/10, Веб-программирование
Тем, кто всерьёз заинтересовался возможностями Javascript, в свободное время настоятельно рекомендую ознакомиться с:
- докладом “Секреты Javascript” вашего коллеги Александра Мочёнова в таллиннском DevClub’e. (слайды на английском, видео – на русском). Александр рассказывает о весьма “продвинутых” возможностях Javascript, о которых мы на лекциях даже не говорили – думаю, многим из вас, у кого сложилось ложное впечатление о Javascripte как о сранительно простом языке программирования, будет интересно узнать о реальных возможностях языка.
- доклад того же оратора в рамках того же мероприятия, но уже непосредственно о jQuery (неважное качество картинки, слайды на SlideShare) – по некоторым аспектам дополняет то, что мы успели затронить на лекции.
- статья 24 Javascript Best Practicies for Beginners – доступным английском языком рассказано и показано, как надо делать, а как не надо.
- статья jQuery and JavaScript Coding: Examples and Best Practicies на SmashingMagazine – то же самое, но с фокусом на jQuery
- для самых маньяков, желающих стать гуру Javascript: подборка тематических статей на dev.opera.com
- материалы по Javascript Metaprogramming
Поскольку в конце курса по PHP мы ещё затронем тему объедининения между собой PHP и Javascript (jQuery) при помощи Ajax, то одновременно хочется успеть посмотреть, как строятся многоуровневые приложения с использованием сторонних веб-сервисов.
Будет здорово, если вы в рамках самостоятельной работы ознакомитесь с документацией и примерами следующих службам Google:
В таком случае на последней лекции мы сможем добавить их в наше учебное приложение. На экзамене Google API точно не будет, так что вы ничего не теряете, но самостоятельно ознакомившись с документацией у нас появляется шанс успеть больше.
Published on 10.04.2010 17:39.
Filed under: 2009/10, Веб-программирование
Уважаемые студенты!
Сегодня мы закончили знакомство с Javascript. К этому языку программирования мы ещё вернёмся после того, как изучим основы PHP: для использования Ajax и различных Google API.
А пока домашнее задание:
При помощи Javascript, HTML и CSS (а главное – максимально активно используя jQuery) написать программу, играющую с пользователем в классические крестики-нолики.
Некое подобие технического задания:
- перед началом игры пользователю необходимо представиться (ввести имя или никнейм, по которому программа в дальнейшем будет обращаться к пользователю);
- перед началом игры случайным образом определяется, будет ли пользователь играть за крестики или за нолики;
- игру всегда начинают крестики (не важно – играет на них компьютер или человек);
- сложность AI (созданного вами “искусственного интеллекта”) может быть любой: похвально, если вы научите свою программу сводить любую партию вничью или выигрывать, если компьютер получает право первого хода. Но для зачёта достаточно, даже если компьютер будет делать ходы “наобум”.
- необходимо воспроизвести все правила игры и определение победителя (с учётом ничьей);
- в программе должна быть кнопка “Начать новую игру”;
- после того, как компьютер сделает ход, нужно подсветить для пользователя клетку, заполненную компьютером и, если не наступил конец игры, оповестить его о переходе права хода к пользователю (Например, выводом сообщения “Теперь ваш ход, %username%”;
- для ввода/вывода запрещается использовать alert() и prompt()
- код программы должен быть корректно отформатирован и содержать комментарии в разумных количествах;
- придерживайтесь “хороших практик” программирования: используйте семантически корректный HTML, отделите оформление и программный код от структуры файла, вынеся CSS и Javascript во внешний файл или секцию <head>;
- постарайтесь при выполнении этого задания использовать знания, полученные в ходе курсов “Веб-технологии” и “Пользовательские интерфейсы”.
Работы разместите на своих серверах или на mk.ee/~%ваше_имя% и оставьте ссылку на свою работу в комментариях к этой записи.
Мотивационная часть
Кнут: на экзамен по веб-программированию допускаются только самостоятельно выполнившие это задание.
Пряник: авторы наиболее интересных и функциональных программы (эффективность AI, процедура определение победителя, качество кода, использование средств jQuery, аккуратность интерфейса) получат весомый бонус на экзамене.
Published on 10.04.2010 17:15.
Filed under: 2009/10, Веб-программирование