Содержание

Введение

Структура и интепретация компьютерных программ

Примеры

JavaScript

Упражнения, основы

JavaScripthttp://mind42.com/pub/mindmap?mid=881c1a94-db5e-44c3-85b2-fba084b87b9b

JavaScript

http://adm-lib.ru/books/6/JavaScript-pr.pdf (7.5. Массивы стр. 129)

http://adm-lib.ru/books/6/JavaScript-pr.pdf (8. Функции стр. 139)

function f(x) { return x*x; }        // инструкция function
var f = function(x) { return x*x; }; // функциональный литерал
 
f[0] = function(x) { return x*x; };  // Определить и сохранить функцию в переменной
 
var tensquared = (function(x) {return x*x;})(10); // Определить и вызывать

8.3. Функции как данные стр. 148

// Эта функция возвращает другую функцию
// От вызова к вызову изменяется область видимости, 
// в которой была определена вложенная функция
function makefunc(x) {
    return function() { return x; };
}
// Вызвать makefunc() несколько раз и сохранить результаты в массиве:
var a = [makefunc(0), makefunc(1), makefunc(2)];
// Теперь вызвать функции и вывести полученные от них значения.
// Хотя тело каждой функции остается неизменным, их области видимости
// изменяются, и при каждом вызове они возвращают разные значения:
alert(a[0]( )); // Выведет 0
alert(a[1]( )); // Выведет 1
alert(a[2]( )); // Выведет 2

Замыкания

OOP

OOPhttp://mind42.com/pub/mindmap?mid=39739721-e3da-4a96-a09f-40aed2f4d325

http://dmitrysoshnikov.com/ecmascript/ru-javascript-the-core/ !!!

http://dmitrysoshnikov.com/ecmascript/ru-chapter-2-variable-object/ (дополнение)

(C++ http://www.slideboom.com/slidelogs/vivid_bw/271/Учебные%20курсы/presentation/145864 )

Learning JavaScripr

http://net.tutsplus.com/tutorials/javascript-ajax/the-best-way-to-learn-javascript/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+nettuts+%28Nettuts%2B%29

JavaScript Tutorials

http://docs.webplatform.org/wiki/javascript/tutorials

Проектирование и разработка прикладных программ

Не смотря на то, что рассматриваются общие принципы, следует иметь ввиду, что акцент будет сделан на интерактивные мультиформатные веб приложения. Презентацияhttps://docs.google.com/present/edit?id=0ASJDtWIdOzzjZGRnNHJ3ZGJfNWN2emM2OWZq&hl=ru&authkey=CO7akH8

Средства моделирования и документирования

LucidChart

Gliffy

Flowchart

Средства и среды разработки начального уровня

TutorialsPoint

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

JSBIN

Online cреда разработки интерактивных веб приложений (HTML редактор с поддержкой CSS и javaScript)

Локальный Web сервер

http://en.wikipedia.org/wiki/MoWeS (выше всяких похвал: Portable, однако, UPDATE: As of November 7th, 2012 the site went offline, stating that «CH Software discontinued business activities».)

http://ru.wikipedia.org/wiki/XAMPP

http://www.apachefriends.org/en/xampp-windows.html

DOM: работа с HTML-страницей

http://javascript.ru/tutorial/dom

http://javascript.ru/tutorial/dom/intro Введение. DOM в примерах!!!

http://www.w3schools.com/htmldom/default.asp – пример начального уровня

http://www.w3schools.com/htmldom/tryit.asp?filename=try_bulb

Some DOM Object Methods

http://www.w3schools.com/htmldom/dom_methods.asp

Объект style

http://www.wisdomweb.ru/HDOM/style.php

Введение в события

http://javascript.ru/tutorial/events/intro

http://www.w3schools.com/htmldom/dom_events.asp

http://www.w3schools.com/htmldom/tryit.asp?filename=tryhtmldom_events_mousedown

http://www.w3schools.com/htmldom/tryit.asp?filename=tryhtmldom_events_mouseover

http://www.w3schools.com/jsref/dom_obj_event.asp

Пример реализации в среде браузера:

http://habrahabr.ru/post/148404/

http://jsfiddle.net/ySG6a/

Актуальные технологические решения на базе javaScript

Apple

http://www.apple.com/html5/

Frameworks

http://en.wikipedia.org/wiki/Comparison_of_JavaScript_frameworks - Comparison of JavaScript frameworks

http://en.wikipedia.org/wiki/Ample_SDK

http://dev.sencha.com/deploy/ext-4.0.0/examples/

jQuery

http://jquery.com/ – официальный сайт jQuery

http://jqapi.com/ - jQAPI - Alternative jQuery Documentation - For Version 1.7 - интерактивный справочник

http://jqapi.com/jqapi-latest.zip - скачать jQAPI - Alternative jQuery Documentation

http://jquery.page2page.ru/index.php5/Заглавная_страница

http://jquery.page2page.ru/index.php5/JQuery_UI

jquery-tutorials-for-designers

yk60x86_v10.66.4.3.zip

*

Learn jQuery in 30 Days

http://tutsplus.com/lesson/hello-jquery/

http://tutsplus.com/lesson/not-so-fast-jquery/

Примеры 1

http://jsfiddle.net/Researcher/U6SXh/

http://jsfiddle.net/Researcher/bmcmu/1/

http://jsfiddle.net/Researcher/bmcmu/2/

http://habrahabr.ru/post/42809/

Примеры 2

http://snook.ca/archives/javascript/simplest-jquery-slideshow

http://jsfiddle.net/Researcher/JggGv/

15 Resources To Get You Started With jQuery From Scratch

http://net.tutsplus.com/tutorials/javascript-ajax/15-resources-to-get-you-started-with-jquery-from-scratch/

Плагины (plugins) для jQuery

http://docs.jquery.com/Plugins/Authoring

http://www.jqueryrain.com/

https://github.com/shichuan/javascript-patterns/blob/master/jquery-plugin-patterns/basic.html - шаблон для шаблона

http://www.linkexchanger.su/2008/67.html - Как написать плагин для jQuery.

https://github.com/davist11/jQuery-Presentation - jQuery-Presentation

http://layout.jquery-dev.net/demos.cfm - UI Layout Demos

http://share.auditory.ru/kafedra/Sergey.Kondrashov/lesson2/s3Slider_UI_plagin/index.html

http://intridea.github.io/sketch.js/docs/sketch.html - sketch.coffee Sketch.js is a simple jQuery plugin for creating drawable canvases using HTML5 Canvas. It supports multiple browsers including mobile devices (albeit with performance penalties).

Презентации на jQuery

Альтернатива http://prezi.com/ - http://bartaz.github.com/impress.js/#/imagination - javaScript презентация

http://github.com/bartaz/impress.js/

Google Chrome Frame - HTML5 решение для IE8 и ниже

http://habrahabr.ru/post/122280/

http://www.google.com/chromeframe/?quickenable=true

TypeScript

http://www.typescriptlang.org/Samples/

http://typescript.codeplex.com/sourcecontrol/latest#samples/raytracer/raytracer.ts

http://www.typescriptlang.org/Samples/raytracer/raytracer.html

CMS

textcms

http://textcms.ru/

Impress Pages

http://www.impresspages.org/

https://github.com/impresspages

http://habrahabr.ru/post/141533/

LotusCMS

https://github.com/Lotuscms/LotusCMS-Content-Management-System

http://all-cms.net/other-cms/cards/5082-lotuscms-fraise-v305.html

Structure CMS

http://cmsbezmysql.ru/page/structure-cms не поддерживает utf-8

http://code.google.com/p/structure-cms/downloads/list

HTML5

http://diveintohtml5.info/

http://books.openlibra.com/pdf/dive-into-html5.pdf

http://www.modernizr.com/download/#-canvas-canvastext-audio-video

http://jsfiddle.net/sbaN5/8/

<VIDEO>

http://diveintohtml5.info/video.html#what-works - !!!

http://www.mirovideoconverter.com/ - videoconverter

http://handbrake.fr/downloads.php - videoconverter

http://easyhtml5video.com/ - videoconverter

http://habrahabr.ru/company/microsoft/blog/127295/ - Как сделать собственный видео-плеер на HTML5 Video - !!!

http://ghinda.net/customizable-html5-media-player/

http://dev.opera.com/articles/view/custom-html5-video-player-with-css3-and-jquery/

http://dev.opera.com/articles/view/everything-you-need-to-know-about-html5-video-and-audio/ - !!!

http://www.thecssninja.com/javascript/fullscreen - Fullscreen HTML5 video

http://www.thecssninja.com/demo/fullscreen/ - Fullscreen HTML5 video demo

https://developer.mozilla.org/en/DOM/Using_full-screen_mode - Using_full-screen_mode for HTML5 video

За и против MVC

MVC для начинающих

http://chtivo.webhost.ru/articles/mvc.php

http://habrahabr.ru/post/119369/

Три подхода к методологии построения сложного клиентского приложения

http://habrahabr.ru/post/136886/

Интерфейсы. Прочь от MVC

http://javascript.ru/optimize/antimvc

Эти бесчисленные парадигмы, концепции, инструменты и фреймворки

http://habrahabr.ru/post/117365/

JavaScript - MVC

http://tech.winstertjose.com/search?q=Simplest+form+of+JavaScript+MVC+

http://www.linkedin.com/groups/JavaScript-MVC-121615.S.239151379?view=&srchtype=discussedNews&gid=121615&item=239151379&type=member&trk=eml-anet_dig-b_pd-ttl-cn&ut=3cDguskjLr55M1

Из личного опыта

Подробнее...

OOP. JavaScript Design Patterns

8 ферзей

http://www.infanata.com/2007/08/03/obektno_orientirovannoe_programmirovanie_v_deystvii.html

http://gendocs.ru/docs/28/27165/conv_1/file1.pdf

http://ideone.com/illst

Визуализация положения ферзей

Temp (Education resources)

Введение в Spine.js

http://ruseller.com/lessons.php?rub=32&id=1184

http://spinejs.com/pages/examples

Управление проектами

В данном разделе несколько важных ссылок:

The Business Model Canvas

http://www.businessmodelgeneration.com/canvas

http://rubius.com/data/upload/publications/TRPO.pdf

актуально: стр. 1 - 7, стр. 14… TortoiseSVN, если не:

http://ru.wikipedia.org/wiki/Экстремальное_управление_проектами

http://www.booksgid.com/business/653-dug-dekarlo.-jekstremalnoe-upravlenie.html Дуг ДеКарло. Экстремальное управление проектами!!!

http://epmc.ru/docs/Paper_111014.pdf - Евразийский стандарт управления проектами (ЕСУП) 2012 !!!

http://www.ted.com/talks/dan_pink_on_motivation.html (имеются русские титры)

SCM (Source Code Management) Git

Линус Торвальдс о GIT на Google Talks [видеоперевод 8 частей] 2007 г.

Краткая справка по GIT

GIT - краткая справка.

Дополнения к оформлению

По документации: Техническое задание в большей степени учебное, направленное на закрепление пройденной темы, чем на создание конкурентной прикладной (игровой) программы. По существу цель задания: организация проектной деятельности максимально приближенной (в рамках учебного процесса) к реальной проектной деятельности, это своего рода формализация последовательности действий при проектировании и разработки продукта: проектирование, разработка и сборка, организация производственного процесса, тестирование и документирование. К структурной модели неплохо бы было бы добавить аналитическую и организационную. Аналитически обзор альтернативных решений. Хронометраж ( http://ru.wikipedia.org/wiki/Управление_временем, (http://habrahabr.ru/post/130100/) ) Возможно материал по хронометражу и не стоит публиковать в вике, а представить в качестве аналитической записки к защите. Подготовить представление работы к защите проекта (5-10 мин) для Вас хороший тренинг выступления (у многих этот процесс вызывает большие проблемы на защите диплома), а для других полезный пример организации управления проектом.

Пример пояснительной записки

http://wiki.auditory.ru/Serafim.Nenarokov/web-tech_%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82

OTHERS

<note>Следующий далее материал, для текущей работы на данный период времени не актуален!</note>

Objective-J

http://ru.wikipedia.org/wiki/Objective-J http://280slides.com/Editor/ http://cappuccino.org/learn/tutorials/objective-j-tutorial.phphttp://intepra.ru/wiki/doku.php/private:links

JavaScript UML

yuml

http://yuml.me/diagram/scruffy/activity/draw

Локальный сервер

MoWeS Portable

http://www.chsoftware.net/en/mowes/mowesportable/mowes.htm http://www.chsoftware.net/en/mowes/mowesmixer/mowesmixer.htm?step=2

Apache Portable Runtime (статья)

http://www.rsdn.ru/article/files/libs/apr.xml

О чем эта статья

Данная статья предлагает первоначальное знакомство с кроссплатформенной библиотекой Apache Portable Runtime (APR). Этот продукт известен прежде всего тем, что используется в составе популярного Web-сервера Apache.

В статье не содержится примеров кода или детального обсуждения проблем. Ее цель – рассказать о самом существовании этой библиотеки и бегло описать ее возможности. К сожалению, библиотека APR не столь широко известна, как некоторые другие подобные продукты, а разработчики не снабдили ее обширной документацией. Это можно объяснить тем, что основное предназначение APR – оптимизировать работу популярного Web-сервера, а не быть самостоятельным продуктом. В данной статье будут выделены функциональные слои, из которых сложена библиотека, и рассмотрены возможности самой библиотеки в различных аспектах.

Статья носит обзорный характер, поэтому углубления в детали не будет.

Apache 2: Часть 8. Apache Portable Runtime (APR) IBM

http://www.ibm.com/developerworks/ru/library/os-apache_8/index.html Описание: В этом документе рассматривается применение APR в модулях Apache.

dokuwiki_on_a_stick_2008-05-05

http://www.splitbrain.org/blog/2008-05/16-dokuwiki_on_a_stick_2008-05-05 http://www.splitbrain.org/blog/2011-01/16-dokuwiki_on_a_stick_in_dropbox

Проект погода

Архив погодных данных

http://thermo.karelia.ru/graphs/graphs_msk.shtml

Для решения задач проекта рекомендую следующие инструментальные средства:

Загрузка XML документов с различных доменов

Пример, загрузки XML документа с другого домена: http://intepra.ru/xml/

Базовый скрипт:

   <script>
    $(document).ready(function(){
            $.ajax({
		url: 'http://intepra.ru/xml/get-xml.php',
                data: {url: 'http://informer.gismeteo.ru/xml/99592_1.xml'},
                dataType: 'jsonp',
                jsonp: 'callback',
                jsonpCallback: 'jsonpCallback',
                success: function(){
                    alert("success");
                }
            }); 
    });
 
    function jsonpCallback(data){
        $('#jsonpResult').text(data.result);
    }
    </script>

8f

http://ideone.com/YeeOI - аналогичное решение с применением наследования посредством прототипов (prototype)