Разное

Программирование на java для детей бабушек родителей и дедушек: «Программирование на Java для детей, родителей, дедушек и бабушек», Яков Файн

Файн Я. — Программирование на Java для детей, р..


С этим файлом связано 10 файл(ов). Среди них: Missia_GPON.doc, Fayn_Ya_-_Programmirovanie_na_Java_dlya_detey_r.pdf, file.png, Geneticheskiy_ko1.doc, Magic_DeLime_prod__-_Karavan.mp3, Biologia.doc, file.jpg, Gomofobam_Alex_Burkov.png, robert_pattinson_-_bellas_lullaby.m4r.
Показать все связанные файлы

  1   2   3   4   5   6   7   8   9   …   16


Программирование на Java для детей, родителей, дедушек и бабушек ii
Java Programming for Kids, Parents and Grandparents
by Yakov Fain
Copyright  2011 Yakov Fain
All rights reserved. No part of this book may be reproduced, in any form or by any, without permission in writing from the publisher.
Cover design and illustrations: Yuri Fain
Adult technical editor: Yuri Goncharov
Kid technical editor: David Fain
May 2004: First Electronic Edition (English)
June 2005: Second Electronic Edition (French)
Programmation Java pour les enfants, les parentset les grands-­‐parents
October 2011: Third Electronic Edition (Russian)
Программирование на Java для детей, родителей, дедушек и бабушек
The information in this book is distributed without warranty. Neither the author nor the publisher shall have any liability to any person or entitle to any liability, loss or damage to be caused directly or indirectly by instructions contained in this book or by the computer software or hardware products described herein.
Java and all Java-­‐based trademarks and logos are trademarks or registered trademarks of Oracle Corporation in the United States and other countries.
Windows 7 and Windows XP are trademarks of Microsoft Corporation.
All other product names and company names are the property of their respective owners.
ISBN: 0-­‐9718439-­‐5-­‐3


Программирование на Java для детей, родителей, дедушек и бабушек iii
Предисловие к русскому изданию
Здравствуйте дети, родители, а также родители родителей.
Спасибо, что взяли в руки (хоть и виртуально) мою книжку.
Написал я ее в 2004 году по-­‐английски, ибо живу я в США и первым читателем этой книги должен был стать мой младший сын Дейв, для которого английский – основной язык общения. Книжка эта была выложена бесплатно в электронном виде. Рисунки к ней нарисовал мой старший сын Юрий, который тогда еще учился в колледже на мультипликатора. Сейчас он уже работает, а сайт его http://yurifain.com
. Специально для русского издания Юрий нарисовал новую обложку. Нравится?
Книжка пользовалась успехом во всем англоязычном мире, а через год-­‐другой ее перевели и на французский язык. Прошло много лет, и я стал записывать аудио подкасты на русском языке на всякие житейские темы. Подкасты – это mp3 файлы, которые можно слушать на любом аудио плеере или прямо на компе.
Подкасты мои выкладываются в интернете по адресу http://americhka.us и слушают их тысячи русскоговорящих людей по всему миру. И вот, однажды, я спросил, не найдется-­‐ли среди моих подслушателей 3-­‐4 человека, которые и английский хорошо знают
,
и на языке Java программировать умеют
,
и готовы в жесткие сроки бесплатно перевести по паре глав на русский язык.
На следующий день мне написали пять человек, сказав, что они и знают, и умеют, и готовы. Вот имена этих добрых людей:
Александр Коноплев
Денис Лунев
Константин Медведенко
Юрий Ополев
Александр Тетерин
Спасибо вам, ребята, за то, что слово сдержали, а главное, выполнили работу в срок! Ибо есть много мальчиков с моторчиками, которые быстро загораются, берутся за работу, а потом, также быстро их интерес пропадает. К счастью, к нашим переводчикам это не относится. Когда перевод был закончен, я его перечитал и слегка отредактировал. Затем один сибиряк по имени
Юрий Мякотин снова перечитал и отредактировал текст, так что, если вы заметите сибирский акцент, то знайте, кого винить J.
В конце каждой главы есть практические упражнения и ссылки материалы для дополнительного чтения, правда на английском языке.
Если вы серьезно относитесь к изучению программирования, то я вам советую и английский свой подтянуть.
В мире программистов английский – это основной язык общения. Я


Программирование на Java для детей, родителей, дедушек и бабушек iv знаю, что и в России есть много хороших программистов и авторов пишущих по русски. Но зачем себя ограничивать, когда есть столько полезной технической литературы на английском?
На самом деле, задача была сложнее, чем перевод и легкое редактирование. За семь лет, прошедших после выхода английской книжки, язык программирования Java несколько изменился
,
и нужно было внести соответствующие корректировки в разных местах, что и было сделано. Поэтому, пользуясь издательским языком, можно смело сказать, что это издание исправленное и дополненное.
Исправленное-­‐то оно исправленное, но, все-­‐же я вполне допускаю, что несколько опечаток могли проскочить незамеченными.
Поэтому, напишите мне лично
([email protected]), если что заметите. А теперь, усаживайтесь поудобнее, попкорн слева, ноут справа и, как говорят у нас в Америке, инджойте шоу под названием Учимся
Программировать на языке Java!


Программирование на Java для детей, родителей, дедушек и бабушек v
Предисловие
Однажды, мой сын Дэйв-­‐пароход появился у меня в офисе, держа мой учебник по Java для взрослых. Он попросил меня научить его программированию, чтобы создавать компьютерные игры. На тот момент я уже написал пару книг по языку Java и провел обучение программированию на компьютерах в нескольких группах, но это были взрослые! В результатах поиска на Amazon
(крупнейший американский интернет-­‐магазин) не было ничего, кроме книжек «для чайников», но Дэйв не был «чайником»!
После того, как я провел несколько часов поиска в Google, мне удалось найти
,
либо несколько не самых удачных попыток создать курсы Java для детей, либо несколько книг, написанных в стиле популярной в Америке детской серии Reader-­‐Rabbit.
Угадайте, что я решил сделать? Я решил написать книгу по программированию для детей. С целью понимания детского образа мыслей, я попросил Дэйва стать моим первым учеником-­‐
ребенком.
Так появилась эта книга, которая подойдет следующим группам людей:
• детям в возрасте от 11 до 18 лет;
• школьным преподавателям информатики;
• родителям, желающим обучить программированию своих детей;
• абсолютным новичкам в программировании (возраст значения не имеет).
Несмотря на то, что при объяснении программирования я использую простой язык, обещаю уважительное отношение к моим читателям. Я не планирую писать, что-­‐либо похожее на
«Дорогие друзья! Вы собираетесь начать новое и удивительное путешествие…». Да, конечно! Просто возьмемся за дело.
Первые главы книги завершатся небольшой программой-­‐игрой, которая сопровождается подробными инструкциями о том, как сделать ее рабочей. Также мы создадим калькулятор, который выглядит и работает аналогично калькулятору вашего компьютерa. Во второй части книги мы вместе создадим программы для игры в крестики-­‐нолики и пинг-­‐понг.
Вам потребуется привыкнуть к языку профессиональных программистов. Все важные слова будут напечатаны вот таким
шрифтом.


Программирование на Java для детей, родителей, дедушек и бабушек vi
Элементы языка Java и программ также будут выделены, например, String.
Эта книга не охватывает все элементы языка Java. В противном случае, это сделало бы ее слишком толстой и скучной.Однако в конце каждой главы помещен раздел с материалaми для дополнительного чтения, который содержит ссылки на англоязычные веб-­‐сайты с более подробными сведениями о рассматриваемой теме.
Кроме того, в конце каждой главы вы найдете задания для самостоятельного выполнения. Каждый читатель должен выполнить задания, которые содержатся в разделе
Практические упражнения. Если эти задания покажутся вам слишком легкими, то попробуйте выполнить задания из раздела
Практические упражнения повышенной сложности. В самом деле, если вы решили читать эту книгу, то вы наверняка способный человек и должны попытаться выполнить все задания.
Чтобы получить максимум из этой книги, прочитайте ее от начала до конца. Не следует двигаться дальше, пока вы не поймете содержание текущей главы. Подростки, родители, дедушки и бабушки должны справиться с этой книгой, не прибегая к посторонней помощи, однако маленькие дети должны читать эту книгу вместе с о
взрослыми.


Программирование на Java для детей, родителей, дедушек и бабушек vii
Благодарности
Благодарю всех архитекторов и разработчиков, безвозмездно работающих над программой Eclipse, которая является одной из лучших из доступных сред интегрированной разработки программ
Особая благодарность водителям междугородних автобусов компании New Jersey Transit за плавное вождение — половина этой книги была написана по пути на работу на автобусе № 139.
Благодарю жену Наташу за успешное управление бизнесом под названием семья.
Особая благодарность Юрию Гончарову, эксперту в области программирования на Java из Торонто, Канада. Он выполнил редактирование книги, проверил каждый пример кода и предоставил ценный отзыв, который позволил улучшить эту книгу.


Программирование на Java для детей, родителей, дедушек и бабушек viii
Содержание
ПРЕДИСЛОВИЕ К РУССКОМУ ИЗДАНИЮ ………………………………….. III
ПРЕДИСЛОВИЕ ….. ……………………………………………………………………… V
БЛАГОДАРНОСТИ ……………………………………………………………………. VII
СОДЕРЖАНИЕ …………………………………………………………………………. VIII
ГЛАВА 1. ПЕРВАЯ ПРОГРАММА ………………………………………………. 13
Установка Среды Java ………………………………………………………………………………………………. 14
Три основных шага в программировании ………………………………………………………………… 18
Шаг 1 – ввод текста программы ………………………………………………………………………………… 18
Шаг 2 – компиляция программы ………………………………………………………………………………. 20
Шаг 3 – запуск программы …………………………….. ………………………………………………………… 21
Материалы для дополнительного чтения …………………………………………………………………. 22
ГЛАВА 2. ПЕРЕХОД К ECLIPSE IDE ………………………………………….. 23
Установка Eclipse IDE ……………………………………………………………………………………………….. 23
Приступаем к работе с Eclipse …………………………………………………………………………………… 28
Создание программ в Eclipse IDE ………………………………………………………………………………. 32
Запуск HelloWorld в Eclipse ……………………………………………………………………………………… 35
Как работает программа HelloWorld …………………………………………………………………………. 36
Материалы для дополнительного чтения . ………………………………………………………………… 38
Практические упражнения ………………………………………………………………………………………… 38
Практические упражнения для умников и умниц ……………………………………………………. 39
ГЛАВА 3. ДОМАШНЕЕ ЖИВОТНОЕ И РЫБА НА ЯЗЫКЕ JAVA …. 40
Классы и объекты ……………………………………………………………………………………………………… 40
Типы Данных …………………………………………………………………………………………………………….. 42
Создаём Домашнее Животное ……………………………………………………………………………………. 46
Наследование – Рыбка Тоже Домашнее Животное …………………………………………………… 52
Переопределение методов . …………………………………………………………………………………………. 56
Дополнительное чтение …………………………………………………………………………………………….. 57


Программирование на Java для детей, родителей, дедушек и бабушек ix
Практические упражнения ……………………………………………………………………………………….. 57
Практические упражнения для умников и умниц ……………………………………………………. 58
ГЛАВА 4. ОСНОВНЫЕ КОНСТРУКЦИИ ЯЗЫКА JAVA ……………….. 59
Комментарии в программе ………………………………………………………………………………………… 59
Принятие решений с помощью оператора if …………………………………………………………….. 60
Логические операторы ……………………….. …………………………………………………………………….. 62
Во втором случае логическое не применяется к результату вычисления
выражения в скобках. ……………………………………………………………………………………………… 63
Условный оператор ……………………………………………………………………………………………………. 63
Использование else if ………………………………………………………………………………………………… 64
Оператор switch и принятие решений …………………………………………………………………… 65
Как долго живут переменные? ………………………………………………………………………………….. 66
Специальные методы: конструкторы ……………………………………………………………….. ……… 67
Ключевое слово this ………………………………………………………………………………………………… 68
Массивы …………………………………………………………………………………………………………………….. 69
Повторение действий с помощью циклов …………………………………………………………………. 71
Материалы для дополнительного чтения …………………………………………………………………. 74
Практические упражнения ………………………………………………………………………………………… 74
Практические упражнения для умников и умниц ……………………………………………………. 75
ГЛАВА 5. ДЕЛАЕМ ГРАФИЧЕСКИЙ КАЛЬКУЛЯТОР ………………….. 76
AWT и Swing …………………………………………………………. …………………………………………………… 76
Пакеты и ключевое слово import ………………………………………………………………………………. 77
Основные элементы Swing ………………………………………………………………………………………… 78
Схемы Размещения ……………………………………………………………………………………………………. 81
FlowLayout — построчное расположение …………………………………………………………………….. 82
GridLayout — табличное расположение ……………………………………………………………………… 82
BorderLayout — размещение по областям …………………………………………………………………… 84
Комбинирование схем размещения ………………………………………………………………… ………… 85
BoxLayout — расположение по горизонтали или вертикали ………………………………………. 88
GridBag Layout — более гибкое табличное расположение ………………………………………….. 89


Программирование на Java для детей, родителей, дедушек и бабушек x
CardLayout – колода карт ………………………………………………………………………………………….. 90
Можно ли создавать окна, не используя схемы? ……………………………………………………….. 91
Компоненты окна ………………………………………………………………………………………………………. 91
Материалы для дополнительного чтения …………………………………………………………………. 95
Практические упражнения ………………………………………………………………………………… ……… 95
Практические упражнения для умников и умниц ……………………………………………………. 96
ГЛАВА 6. СОБЫТИЯ ОКНА ……………………………………………………… 97
Интерфейсы ……………………………………………………………………………………………………………….. 98
Слушатель по имени ActionListener ………………………………………………………………………… 100
Регистрация компонентов с ActionListener ……………………………………………………………… 101
Из-за кого событие-то? …………………………………………………………………………………………… 102
Приведение типов — casting ………………………………………………………………………………………. 102
Как передавать данные между классами ………………….. ……………………………………………. 105
Доделываем калькулятор ………………………………………………………………………………………… 106
Некоторые другие слушатели событий …………………………………………………………………… 112
Как использовать адаптеры …………………………………………………………………………………….. 114
Материалы для дополнительного чтения ……………………………………………………………….. 115
Практические упражнения ………………………………………………………………………………………. 115
Практические упражнения для умников и умниц ………………………………………………….. 115

  1   2   3   4   5   6   7   8   9   …   16


перейти в каталог файлов

Программирование на Java для детей, родителей, дедушек и бабушек / Версия для печати и PDA

Программирование на Java для детей, родителей, дедушек и бабушек / Версия для печати и PDA

Интернет-портал MegaWEB содержит много ресурсов для веб-мастеров, интернет-разработчиков, веб-дизайнеров и seo-оптимизаторов. Это видеоуроки, книги и справочники в формате ebook: PDF-CHM-DJVU, а также программы и утилиты для того, чтобы сделать сайт или раскрутить сайт в сети Интернет.

Книга «Программирование на Java для детей, родителей, дедушек и бабушек»

Версия для печати и PDA

Книга «Программирование на Java для детей, родителей, дедушек и бабушек» научит программировать на языке Java любого, при этом возраст не имеет значения. Изложение материала дается на примерах небольших Java-программ, которые сопровождаются подробными инструкциями о том, как сделать их рабочими. Несмотря на то, что при объяснении основ программирования автор использует простой язык, вам потребуется постепенно привыкать к сленгу профессиональных программистов. Читателю предлагается выполнить задания, которые приводятся после рассмотрения каждой темы. Если эти задания покажутся вам слишком легкими, то попробуйте выполнить задания повышенной сложности. В самом деле, если вы решили научиться программировать на Java, то вы наверняка способный человек и должны попытаться выполнить все задания.

Структура книги «Программирование на Java для детей, родителей, дедушек и бабушек»

Первая программа

  • Установка среды Java
  • Три основных шага в программировании

Переход к Eclipse IDE

  • Установка Eclipse IDE
  • Приступаем к работе с Eclipse
  • Создание программ в Eclipse IDE
  • Запуск HelloWorld в Eclipse
  • Как работает программа HelloWorld

Домашнее животное и рыба на языке Java

  • Классы и объекты
  • Типы данных
  • Создаем домашнее животное
  • Наследование – Рыбка тоже домашнее животное
  • Переопределение методов

Основные конструкции языка Java

  • Комментарии в программе
  • Принятие решений с помощью оператора if
  • Логические операторы
  • Условный оператор
  • Использование else if
  • Оператор switch и принятие решений
  • Как долго живут переменные?
  • Специальные методы: конструкторы
  • Ключевое слово this
  • Массивы
  • Повторение действий с помощью циклов

Делаем графический калькулятор

  • AWT и Swing
  • Пакеты и ключевое слово import
  • Основные элементы Swing
  • Схемы размещения
  • Flow Layout – построчное расположение
  • Grid Layout – табличное расположение
  • Border Layout – размещение по областям
  • Комбинирование схем размещения
  • Box Layout – расположение по горизонтали или вертикали
  • GridBag Layout – более гибкое табличное расположение
  • Card Layout – колода карт
  • Компоненты окна

События окна

  • Интерфейсы
  • Слушатель по имени ActionListener
  • Регистрация компонентов с ActionListener
  • Приведение типов – casting
  • Как передавать данные между классами
  • Доделываем калькулятор
  • Некоторые другие слушатели событий
  • Как использовать адаптеры

Апплет Крестики-нолики

  • Изучаем HTML за 15 минут
  • Апплеты и AWT
  • Как писать апплеты
  • Пишем игру Крестики-нолики
  • Стратегия
  • Текст программы

Исключения – ошибки в программах

  • Чтение трассировки стека
  • Генеалогическое дерево исключений
  • Блок try/catch
  • Ключевое слово throws
  • Ключевое слово finally
  • Ключевое слово throw
  • Создание своих исключений

Сохранение счета игры

  • Байтовые потоки
  • Буферизированные потоки
  • Аргументы командной строки
  • Чтение текстовых файлов
  • Класс File

Разные полезные штучки

  • Работа с датами и временем
  • Перегрузка методов
  • Чтение данных с клавиатуры
  • Тебе пакет
  • Уровни доступа
  • Возвращаемся к массивам
  • Класс ArrayList

Возвращаемся к графике. Пинг-понг

  • Стратегия
  • Код
  • Основы многопоточности
  • Заканчиваем игру Пинг-понг

  1. Java архивы – jars
  2. Советы для работы в Eclipse
  3. Как опубликовать веб-страницу

Прочитайте книгу «Программирование на Java для детей, родителей, дедушек и бабушек» от начала и до конца, чтобы получить максимум знаний. Не следует двигаться дальше, пока вы не поймете содержание текущей темы. Все возрастные категории людей: подростки, родители, дедушки и бабушки – смогут понять излагаемый материал, не прибегая к посторонней помощи!

Формат: PDF
Качество: eBook
Страниц: 231

Поделиться с друзьями

Включи JavaScriptу себя в браузере!

Приложение FamCam — Майкл Грисафе

В рамках базового курса программирования Java я работал с двумя другими студентами над программированием приложения с помощью Android Studio. Целью этого приложения было позволить маленьким детям, бабушкам и дедушкам обмениваться фотографиями и видео безопасным, простым и надежным способом. Идея этого приложения была разработана Кристиной Пеллерано и реализована нашей студенческой командой. Ниже приведены шаги, которые мы предприняли вместе при разработке и программировании этого приложения.

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

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

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

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

Цифровой прототип находится здесь: http://loumlj.axshare.com/#p=home. ПРИМЕЧАНИЕ. Чтобы увидеть цифровой прототип, для параметра Axure необходимо установить значение «Телефон в портретной ориентации (320 x 480 и меньше)».

UML-диаграмма. Мы вместе разработали UML-диаграмму всех объектов и методов, необходимых для нашего приложения.

Это процесс приложения FamCam для нового пользователя. После выбора кнопки «новый пользователь» на целевом экране пользователю предлагается ввести свою информацию, включая номер телефона, который будет использоваться для его идентификации. Родители будут вводить эту информацию для своих детей, а бабушки и дедушки будут вводить свою собственную информацию. Затем новые пользователи могут импортировать телефонные номера со своего телефона, а в бэкэнде будет выполняться поиск в базе данных, чтобы определить, совпадают ли они, что указывает на то, что член семьи, которого знает пользователь, зарегистрирован. Затем пользователь может добавить этих членов семьи в свой семейный список и будет перенаправлен на главный домашний экран приложения.

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

Код Java и XML для нашего проекта Android Studio можно найти на GitHub здесь:

https://github.com/FayeFZ/FamCam-Project

На занятиях по программированию на Java я изучил базовые навыки Java и совместно с одноклассниками программировал приложение «FamCam» с помощью Android Studio.

Приложение FamCam было создано для связи географически дальних родственников с их детьми. В частности, мы заинтересованы в том, чтобы связать бабушек и дедушек с их внуками.

Что такое FamCam?

Наш проект свяжет территориально дальних родственников с их детьми, будь то это их внуки, племянницы, племянники или собственные дети. Дети, особенно под 5 лет, любят смотреть фотографии своих близких и себя, часто берут смартфоны и планшеты родителей, чтобы посмотреть последние фотографии (любой родитель скажет вам, что практически невозможно отобрать у них телефон/планшет, как только они начинают смотреть на фото).

Наш Приложение предоставит детям портал для просмотра последних фотографий, отправленных из близких родственников в безопасной, защищенной среде. Это позволит детям оставаться на связи со своими дальними родственниками.

Примечание. Этот проект является продолжением концепции проекта, созданной Кристиной Пеллерано для SI 582. Зима 2014.

Кто входит в группы пользователей?

Для целей этого проекта мы сосредоточим наше приложение на детях в возрасте до 5 лет. и дедушки и бабушки.

Почему это важно?

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

Кто конкуренты?

Facebook: бабушки и дедушки могут зарегистрироваться на страницах Facebook, а родители могут публиковать фотографии своих детей. на страницах Facebook для бабушек и дедушек. Instagram: родители могут публиковать фотографии своих детей в Instagram и делиться ими с бабушка и дедушка. Skype: бабушки и дедушки могут участвовать в видеочатах со своими внуками через Skype. Развлекательные приложения для детей: такие приложения, как Elmo Calls, имитирующие популярную игру Sesame. Уличная кукла, говорящая с детьми, и другие игровые приложения, ориентированные на детей.

Чем наша идея лучше?

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

Другие дочерние приложения ориентированы только на игры, а не на общение.

Код Java и XML для нашего проекта Android Studio можно найти на GitHub здесь:

https://github.com/FayeFZ/FamCam-Project

Дата
Декабрь 2014

Клиент
Базовый курс программирования на Java Мичиганского университета

Роль
Один из трех студентов, работающих над проектом по изучению основ программирования на Java0003

Консалтинг, Интерактивный дизайн, Дизайн услуг, Исследование пользовательского опыта

Консалтинг, Дизайн услуг, Исследование пользовательского опыта

Исследование пользовательского опыта

Консалтинг, Интерактивный дизайн, Исследование пользовательского опыта

Консалтинг, Дизайн услуг, Исследование пользовательского опыта

Управление проектами, Здравоохранение, Исследование пользовательского опыта

Дизайн взаимодействия, Управление проектом, Здравоохранение, Исследование пользовательского опыта

Управление проектами, Исследование пользовательского опыта

Дизайн взаимодействия, Исследование пользовательского опыта

Дизайн взаимодействия, Программирование, Исследование пользовательского опыта

Дизайн взаимодействия, Управление проектом, Здравоохранение, Исследование пользовательского опыта

Графический дизайн, Интерактивный дизайн, Исследование пользовательского опыта

Дизайн взаимодействия, Исследование пользовательского опыта

Графический дизайн, Интерактивный дизайн, Управление проектом, Здравоохранение, Убикомп Дизайн, Исследование пользовательского опыта

Управление проектами, Исследование пользовательского опыта

Графический дизайн

Графический дизайн

Графический дизайн

Графический дизайн

Графический дизайн

Графический дизайн

Графический дизайн, Общественное здравоохранение

Графический дизайн, Общественное здравоохранение

Медицинская коммуникация, Общественное здравоохранение

Медицинская коммуникация, Общественное здравоохранение

Медицинская коммуникация, Общественное здравоохранение

Общественное здравоохранение

Общественное здравоохранение

Как научить бабушку программированию

Я хороший программист, но знаю многих программистов, которые намного лучше меня.

Их поцеловал Бог, а я научился ремеслу упорным трудом. Они не читали больше книг, чем другие, и не запоминали все шаблоны проектирования. Они просто пишут потрясающий код на любом языке программирования. Они легко подхватывают любой язык, библиотеку или фреймворк. Люди называют их 10X программисты — мифические существа, похожие на нас, но в 10 раз более продуктивные.

Но большинство из этих 10X не могут поделиться своими знаниями с 1-5X. Более того, некоторым из них сложно самим пройти техническое собеседование при приеме на работу. Они просто не могут ясно объяснить то, что знают. Но я могу. Когда я объясняю, люди понимают. Я знаю это по отзывам, которые я получаю о своих книгах, выступлениях на конференциях, блогах и обучающих курсах. Позвольте мне поделиться с вами, как я делаю себя ясно.

Если вы выступаете на конференции, не думайте, что некоторые люди в аудитории уже знакомы с материалами, которые вы собираетесь представить. Никогда не спрашивайте: «Сколько людей уже знают X?».

Вы здесь, чтобы объяснить X, Y и Z, и в описании вашего выступления указано, что вы будете объяснять X, Y и Z. Не могли бы вы изменить свое представление о мухе только потому, что 20% аудитории уже знают X? и 10% знают Y? Я бы не стал. Это несправедливо по отношению к остальной аудитории, и вы получите 70% недовольных людей и плохие оценки вашей презентации.

Если вы используете слайды во время презентации, они должны содержать минимум текста. Не нужно быть Стивом Джобсом и иметь одну строку на слайде. Достаточно трех-четырех пуль на слайд. Краткий фрагмент кода на слайд. Если вам нужно показать большой фрагмент кода, разбейте его на 2-3 слайда, постепенно объясняя их.

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

И, пожалуйста, перестаньте использовать слайды с лицами кинозвезд, которые «говорят» что-то о теме презентации. И эти видеоклипы или анимированные GIF-файлы тоже должны исчезнуть. Я знаю, вы пытаетесь пошутить, но видеоклипы в этом деле не помогут. Найдите другой способ. Вы когда-нибудь слышали что-то вроде: «Это была очень хорошо сделанная презентация, потому что спикер включил в свои слайды так много забавных видеоклипов»? Я тоже.

Время важно. Если вы начинающий ведущий, отрепетируйте свое выступление, чтобы увидеть, сколько времени вам потребуется. Если вам удалось уместить свое выступление в 30 минут, вам понадобится как минимум 40 минут во время реального выступления. Мне не нужно больше репетировать, а использовать формулу «2 минуты на слайд». В моих выступлениях 40-минутная презентация означает около 20 слайдов. Это приблизительная оценка, и вы должны придумать формулу, которая соответствует вашему стилю.

Если вы не используете слайды и предпочитаете кодирование в реальном времени, вы должны подготовить другие материалы, которые люди смогут использовать после вашего выступления. Это выглядит так круто, когда ведущий программирует перед аудиторией! Но вот презентация закончилась, и что осталось публике? Милые воспоминания? Перед презентацией сделайте все образцы кода доступными для скачивания, и только после этого вы сможете выполнять живое кодирование на сцене. Я знаю одного отличного ведущего, который никогда не использует слайды, но всегда дает слушателям дополнительные материалы. Его зовут Венкат Субраманиам, и вы можете посетить его веб-сайт, чтобы узнать, как подготовить образцы кода.

Не торопись. Если у вас есть 40 минут на доклад или лекцию, не пытайтесь вывалить на аудиторию все, что вы знаете. Придерживайтесь темы и сделайте то, что было обещано.

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

— Чтение записи данных из файла или сервера
— Отображение данных в виде формы или таблицы
— Как настроить пользовательский интерфейс
— Как кэшировать и повторно использовать данные
— Выполнение задачи параллельно или одновременно
– Работа с асинхронным кодом
– Предотвращение условий гонки
– Разделение монолитного приложения на модули
– Ленивая загрузка для минимизации времени ожидания пользователя
– Инструменты сборки для минимизации размера пакетов развертывания
– Взаимодействие между модулями или компонентами
— Реализация нескольких шаблонов проектирования
— Объектно-ориентированное и функциональное программирование

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

Не обманывайте публику. «Допустим, у нас есть функция foo(), создающая объект Bar». Фу и Бар не могут быть легко поняты публикой. Это лучше: «Допустим, у нас есть функция, которая вычисляетTax() и класс Person». Примеры должны иметь понятный смысл. Даже это раздражающее приложение со списком дел лучше, чем foobar.

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

Не позволяй этому умнику из зала украсть твою презентацию. Я всегда нахожу в аудитории человека, глубоко погруженного в материал моего выступления. Вы знаете, о ком я говорю. Да, тот парень! Он уже знает предмет и, возможно, лучше вас. Если он задает вопрос, на обсуждение которого требуется 5 минут, потратьте 30 секунд, чтобы сказать: «Мы можем обсудить это после разговора». Большая часть аудитории не заинтересована в этой дискуссии, а те 3 человека, которые заинтересованы, остановятся на трибуне после выступления.

Не объясняйте две новые вещи одновременно. Образец кода должен быть ориентирован на предмет объяснения. Например, если вы хотите объяснить, как получить данные с сервера для веб-страницы, не пытайтесь также объяснить, как сделать данные красивыми с помощью CSS. Сконцентрируйтесь на выполнении HTTP-запроса и показе «некрасивых» данных. Когда вы будете объяснять стили, не тратьте время на объяснение того, как делать запросы к серверу. Покажите, как сделать жестко закодированные данные красивыми. Один шаг за раз. После объяснения каждой концепции или метода покажите, как применять их вместе.

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

Перечитывать материалы обязательно. Каждый раз, когда вы будете перечитывать текст, вы будете делать его короче. Как сказал кто-то (Блез Паскаль?): «Если бы у меня было больше времени, я бы написал более короткое письмо». У меня есть определенные учебные классы, которые я провожу снова и снова, и я знаю свои слайды наизусть. Тем не менее, перед каждым занятием я просматриваю свои слайды и удаляю часть текста или упрощаю визуальные эффекты.

Если вы готовите материалы для семинара, всегда старайтесь следовать собственным инструкциям, ставя себя на место ученика. Помните, для них это новое программное обеспечение. Четко ли описан каждый шаг? Разделите шаг, который требует длинного объяснения, на два или три шага, но сделайте объяснения краткими.

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

Приготовьте план Б на случай медленного или отсутствующего подключения к Интернету в месте проведения конференции. Даже не думайте говорить: «Если мне помогут Presentation Gods…» Они не сделают этого, потому что вы не особенный. Заранее подумайте о проведении презентации без подключения к Интернету. Затем появятся боги презентаций, и ваше выступление пройдет хорошо.

Если аудитория будет использовать свои собственные ноутбуки, напишите четкие предварительные требования для программного обеспечения, которое должно быть предварительно установлено перед занятием. Но все же приходите на занятие пораньше, потому что кто-то из ребят может прийти с корпоративным ноутбуком, на котором установлен только Internet Explorer 11. Вы явно запрашивали последнюю версию браузера Chrome или предполагали, что он есть у всех? Предположения — ваш злейший враг. Не стесняйтесь заменять Chrome любым программным обеспечением, которое должно быть предварительно установлено для вашего класса.

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *