Случайны выбор дневника Раскрыть/свернуть полный список возможностей


Найдено 278 сообщений
Cообщения с меткой

обучение онлайн - Самое интересное в блогах

Следующие 30  »
Марыся_Семицвет

Пышный рукав на одежде для куклы. Бесплатный вэбинар

Четверг, 23 Июня 2016 г. 12:48 (ссылка)

1 июля в 19:00 моё выступление по теме: "Пышный рукав на одежде для куклы".
Как создать объём по верху рукава.
Как создать объём по низу рукава
Как создать объём по линии локтя.
Как закрепить драпировки на рукавах.
Как сделать длинный рукав с пышным ниспадающим фонариком вверху и узкий но низу.
Регистрируйтесь по ссылке
http://newdirections.ru/conf/dollsjuly/?ph=WXBZD50S
baner-toys-leto (580x400, 295Kb)

Комментарии (0)КомментироватьВ цитатник или сообщество
Марыся_Семицвет

Внимание! Изменение даты вэбинара

Среда, 08 Июня 2016 г. 17:12 (ссылка)

ВНИМАНИЕ!!! Моё выступление на конференции “ИГРУШЕЧНЫЙ КУРОРТ. СЕКРЕТЫ МАСТЕРОВ!” переноситсяю. Встречаемся 16 иня в 19:00, а не 30, как было заявлено ранее.
Тема выступления "Реалистичная кисть текстильной куклы"
16 июня, 19:00
Переходите по ссылке и регистрируйтесь для участия в бесплатном вэбинаре http://www.mastersecrets.ru/toys/june/?from=10405
580x400 (580x400, 300Kb)

Комментарии (0)КомментироватьВ цитатник или сообщество
Марыся_Семицвет

ИГРУШЕЧНЫЙ КУРОРТ. СЕКРЕТЫ МАСТЕРОВ

Четверг, 26 Мая 2016 г. 14:19 (ссылка)

Остановите взгляд и кликните! http://www.mastersecrets.ru/toys/june/?from=10405
Вход свободный! Супер-мастер-классы онлайн:
ИГРУШЕЧНЫЙ КУРОРТ. СЕКРЕТЫ МАСТЕРОВ;
Регистрация здесь: http://www.mastersecrets.ru/toys/june/?from=10405
ОТДЫХАЕМ И СОЗДАЁМ ФАНТАСТИЧЕСКИЕ ИГРУШКИ
Вход свободный и запись выступлений;
Шанс поработать вместе с мастером;
Драйв от процесса создания чуда;
Доход в любимом увлечении!
ЦЕЛАЯ ГОРА ПОДАРКОВ
Мастера отблагодарят Вас за внимание ПОДАРКАМИ;
Спонсоры проведут конкурсы с СЮРПРИЗАМИ;
Партнеры устроят конкурсы и АКЦИИ;
ЗАПИШИТЕ: С 13 ИЮНЯ ПО 3 ИЮЛЯ
Регистрируйтесь здесь http://www.mastersecrets.ru/toys/june/?from=10405
И пригласите друзей!
580x400 (580x400, 300Kb)

Комментарии (0)КомментироватьВ цитатник или сообщество
Марыся_Семицвет

Осталось десять дней до встречи!

Воскресенье, 15 Мая 2016 г. 15:23 (ссылка)

25 мая в 19:00 "Текстильные хитрости". После того, как ваша текстильная шарнирная куколка готова, и вы уже наобнимались с ней, приходит время создавать одёжки для вашей любимицы.
Во время нашей встречи я покажу вам некоторые приёмы, которые, я уверена, помогут появлению неповторимых нарядов.
Как вручную обработать отверстие под шнурок.
Как сделать петлю под пуговку (прорезную, воздушную)
Как сделать текстильную розочку.
Как сделать скорняжный шов.
Как сделать оборку.
Как сделать красивую сборку на ткани.
Регистрируйтесь по ссылке, чтобы не пропустить вечер рукоделия, после которого вы не только куклу обеспечите красотой, но и самих себя.
http://newdirections.ru/conf/dollsmay/?ph=WXBZD50S
580x400 (700x483, 116Kb)

Комментарии (0)КомментироватьВ цитатник или сообщество
MelissaBer

36 сайтов, чтобы научиться новому

Вторник, 10 Мая 2016 г. 10:30 (ссылка)

Учиться онлайн, кодить, выучить иностранный язык, расширить кругозор — все в одном месте



Чтобы научиться чему-то новому, необязательно ходить на дорогостоящие курсы и просиживать часы в университетах. Виталий Дьяченко выбрал более трех десятков сайтов, на которых можно выучить все что угодно: от приготовления хумуса до создания веб-приложения. И большинство курсов — бесплатные.



Учиться онлайн



edX  —  Онлайн-курсы лучших университетов мира



Coursera — Лучшие курсы в мире. Онлайн. Бесплатно



Coursmos  —  Микрокурсы



Highbrow  —  Ежедневные курсы в почтовый ящик



Skillshare  —  Уроки и проекты, которые развивают креатив



Curious  —  Тренировка навыков при помощи видеоуроков



lynda.com  —  Технологии, креатив и бизнес-навыки



CreativeLive  —  Уроки по креативности от топ-экспертов



Udemy —  Навыки, которые пригодятся



Выучить еще один иностранный язык



Duolingo  —  Изучи иностранный бесплатно



Lingvist  —  Изучи иностранный за 200 часов



Busuu  —  Бесплатное комьюнити для изучения языков



Memrise  —  Флеш-карты для пополнения словарного запаса



Расширить кругозор



TED-Ed  —  Образовательные видео



Khan Academy — Огромная библиотека интерактивного контента



Guides.co — Огромная библиотека



Squareknot — Красивые пошаговые инструкции



Learnist — Изучай при помощи веб, печатного и видеоконтента

Читать далее...
Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
Служба_поддержкиТЦ

Расписание обучающих мастер классов на 12.04.2016

Вторник, 12 Апреля 2016 г. 13:49 (ссылка)


Расписание обучающих мастер классов на 12.04.2016.



 



Всем привет. С вами Академия Инвестирования Dem Winner  и ТЦ С нуля в миллионеры. Хотели бы вы уволиться с работы и начать свой бизнес? Многие ответят, что да. Но что мешает? что мешает вам стать богаче, что мешает вас стать успешнее? Мы знаем ответ. Это страх.  Страх того, что прогорите, страх того, что не поймут близкие, страх того, что не получиться! Каждый раз от клиентов мы слышим одно и тоже. Мы гордимся, теми, кто готов "переломить" себя и начать все с нуля. Это очень важно.  Для тех, кто готов сегодня начать с нуля мы предлагаем посетить наши мастер классы. 



16-00 Как открыть высокодоходный бизнес на посуточной аренде квартир и с минимальными затратами заработать свои первые 105 000 руб. за 3 недели http://bit.ly/1QI3f8



Читать далее...
Метки:   Комментарии (1)КомментироватьВ цитатник или сообщество
Служба_поддержкиТЦ

Расписание обучающих мастер классов на 07.04.2016

Четверг, 07 Апреля 2016 г. 15:23 (ссылка)


Расписание обучающих мастер классов на 07.04.2016.



Всем привет. 



На связи ТЦ С нуля В миллионеры и Академия инвестирования Dem Winner. Мы заботимся о наших клиентах и предлагаем только лучшее из лучших. И сегодня для вас мы пригласили:



16-00 Как зарабатывать на списании своих и чужих долгов от 215 000 руб. с каждой сделки. http://bit.ly/23PG6sp

Читать далее...
Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
Служба_поддержкиТЦ

Расписание обучающих Онлайн Уроков на 02.04.2016

Суббота, 02 Апреля 2016 г. 14:42 (ссылка)


Расписание обучающих Онлайн Уроков на 02.04.2016



Всем привет.



С вами ТЦ С нуля В миллионеры И Академия инвестирования Dem Winner



Сегодня суббота и мы предлагаем Вам провести время с пользой. А именно вместе с нами!



Мы подготовили 3 уникальных методики заработка и самое главное пройдя все от А до Я результат не заставит Вас себя ждать! только у нас самые лучшие спикеру рунета и проверенные методики заработка.



Расписание ТЦ С нуля В миллионеры на 02.04.2016



16-00 Как за 5 дней стать профессионалом в недвижимости, 

открыть собственный бизнес на посуточной аренде квартир и начать зарабатывать от $ 2000 ежемесячно http://bit.ly/1QI3f8W


читать далее
Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
Марыся_Семицвет

Мастер-классы Марыси Семицвет

Четверг, 26 Февраля 2016 г. 00:04 (ссылка)

Пройдя по ссылке, вы увидите детальные описания и сможете заказать интересующий вас мастер-класс http://melius7.com/cvety-aksessury/prodazhniki2/semicvet1
DSC_6961 (700x465, 81Kb)

Комментарии (0)КомментироватьВ цитатник или сообщество
Марыся_Семицвет

24 февраля в 19:00 (МСК) Локти и колени текстильной шарнирной куклы

Пятница, 19 Февраля 2016 г. 13:15 (ссылка)

Приглашаю на VIP-неделю в Кукольной мастерской online. Моё выступление 24 февраля в 19:00 по Москве. Поговорим о локтевых и коленных соединениях текстильной шарнирной куклы. Покажу, как сделать такие соединения для фантазийной куклы и куклы-марионетки. Вы увидите 5-6 видов соединений. Регистрируйтесь, пожалуйста, по ссылке. Совершенно бесплатно. И до встречи!
http://melius7.com/toys-vip-fevral/?ph=MBXGHFDV
baner-vip-kukly (604x431, 235Kb)

Комментарии (0)КомментироватьВ цитатник или сообщество
Марыся_Семицвет

Курсы Марыси Семицвет

Вторник, 02 Февраля 2016 г. 15:41 (ссылка)

http://melius7.com/kukolnaya-masterskaya.-yanvar/prodayushhie1/semicvet
IMG_20151119_140623 (700x661, 145Kb)

Комментарии (0)КомментироватьВ цитатник или сообщество
SvetlanaKozlova

Запись вебинара от Компьютерной Академии! | Компьютер для пенсионеров

Пятница, 29 Января 2016 г. 11:50 (ссылка)
kurs-pc-dvd.ru/blog/kompyut...demii.html


Здравствуйте, друзья! На днях я вам рассказывала об открытии онлайн Компьютерной

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
rss_rss_hh_new

Open Source Society University

Воскресенье, 11 Января 2016 г. 00:29 (ссылка)






Ребята называющие себя Open Source Society, взяли и собрали учебный план из бесплатных MOOC курсов, для желающих изучить информатику (Computer Science). Всего в программе 50+ курсов в ходе которых можно получить знания о разных аспектах CS. Курсы собраны с таких проектов как: Coursera, edX, Udacity, и т.д. На мой взгляд получилась добротная цепочка, на освоение которой, в зависимости от интенсивности и уровня подготовки, уйдет 1-2 года. Читать дальше →

http://habrahabr.ru/post/274789/

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
Марыся_Семицвет

Через 12 дней!

Пятница, 27 Ноября 2015 г. 15:56 (ссылка)

Участвую в конференции "Новогоднее волшебство" от Кукольной мастерской онлайн. Моё выступление 9 декабря в 19 часов по Москве. Тема "Соединение частей тела текстильной шарнирной куклы при помощи круглых шплинтов". Для зрителей участие абсолютно бесплатно. Чтобы ничего не пропустить, получить все анонсы и возможность смотреть моё выступление, зарегистрируйтесь по ссылке http://toysdec.melius7.com/articles/5619
580x400 (600x414, 77Kb)

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
Ipola

Нужен ли нам английский язык? Уроки английского онлайн

Понедельник, 23 Ноября 2015 г. 09:57 (ссылка)


2835299_ (145x30, 1Kb)



alt=Уроки английского онлайн/2835299_Izmenenie_razmera_Yroki_angliiskogo_onlain3 (700x231, 23Kb)



2835299_talkenglish (300x200, 14Kb)Разговаривая с друзьями и сослуживцами на родном языке, мало кто задумывается о том, зачем нам необходимо знание второго языка, например, английского. Ведь изучая иностранный язык со школьных лет, мы просто принимали как данность, что учить его надо, что в будущем нам пригодится знание иностранного языка.  Просто учили, не понимая о возможных последствиях этого. После окончания школы мало кто знал иностранный язык в совершенстве, если только он не занимался языком факультативно, помимо школьного курса. Ведь знаний по иностранному языку, которые даёт нам школа, недостаточно даже для того, чтобы написать письмо на чужом языке или ответить другу по телефону. 


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


Сегодня совсем не обязательно посещать школу изучения иностранных языков для того, чтобы овладеть английским, сегодня можно обучаться современному английскому языку по скайпу http://www.skype-study.ru/anglijskij_po_skype.php в Skype-STUDY. Чем удобно это обучение? Во-первых, обучение проводятся для студентов с разным уровнем подготовки. Во-вторых, обучение проводится дома или в командировке, или на природе – как Вам удобно. В-третьих, Вы научитесь свободно разговаривать на английском языке. В Skype-STUDY обучение проводится по специальным методикам, которые позволяют изучить английский язык в сжатые сроки.


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


 


alt=Уроки английского онлайн/2835299_Izmenenie_razmera_Yroki_angliiskogo_onlain1 (700x233, 23Kb)


Метки:   Комментарии (16)КомментироватьВ цитатник или сообщество
Светозара27

4000 видео уроков для детей

Среда, 05 Ноября 2015 г. 00:38 (ссылка)

Это цитата сообщения SvetlanaT Оригинальное сообщение

4000 видео уроков для детей .

2013-11-19_150249 (616x323, 53Kb)
2013-11-19_151846 (218x12, 0Kb)
Более 4000 видеоуроков по школьной программе от опытных учителей Санкт-Петербурга и Москвы — в открытом доступе и без рекламы. Выбираем предмет и класс. Смотрим и учимся.

2013-11-19_152027 (196x67, 5Kb)
SvetlanaT
Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
rss_rss_hh_new

Do good code: 8 правил хорошего кода

Понедельник, 02 Ноября 2015 г. 18:27 (ссылка)

Практически всем, кто обучался программированию, известна книга Стива Макконнелла «Совершенный код». Она всегда производит впечатление, прежде всего, внушительной толщиной (около 900 страниц). К сожалению, реальность такова, что иногда впечатления этим и ограничиваются. А зря. В дальнейшей профессиональной деятельности программисты сталкиваются практически со всеми ситуациями, описанными в книге, и приходят опытным путём к тем же самым выводам. В то время как более тесное знакомство могло бы сэкономить время и силы. Мы в GeekBrains придерживаемся комплексного подхода в обучении, поэтому провели для слушателей вебинар по правилам создания хорошего кода.



В комментариях к нашему первому посту на Хабре пользователи активно обсуждали каналы восприятия информации. Мы подумали и решили, что тему «совершенного кода» стоит развить и изложить ещё и письменно — ведь базовые принципы хорошего кода едины для программистов, пишущих на любом языке.



Зачем нужен хороший код, когда всё и так работает?



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



Существует множество известных подходов к критериям качества кода, о которых рано или поздно узнаёт практически любой разработчик. Например, есть программисты, которые придерживаются принципа проектирования KISS (Keep It Simple, Stupid! — Делай это проще, тупица!). Этот метод разработки вполне справедлив и заслуживает уважения, к тому же отражает универсальное правило хорошего кода — простоту и ясность. Однако простота должна иметь границы — порядок в программе и читабельность кода не должны быть результатом упрощения. Кроме простоты, существует ещё несколько несложных правил. И они решают ряд задач.




  • Обеспечивать лёгкое покрытие кода тестами и отладку. Unit тестирование — это процесс тестирования модулей, то есть функций и классов, являющихся частью программы. Создавая программу, разработчик должен учитывать возможности тестирования с самого начала работы над написанием кода.




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




  • Гарантировать лёгкость сопровождения. Продуманная и реализованная структура программы позволяет решать вопросы, связанные с работой программы на новом аппаратном обеспечении или новой платформе.




  • Упрощать процесс внесения дальнейших изменений. Чем лучше оптимизирована структура, тем проще изменять код, добавлять новые свойства, повышать быстродействие и изменять архитектуру.




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




  • Обеспечивать возможность поддержки проекта несколькими разработчиками или целыми сообществами (особенно важно для проектов с открытым исходным кодом).



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



8 правил хорошего кода по версии GeekBrains



Соблюдайте единый Code style. Если программист приходит работать в организацию, особенно крупную, то чаще всего его знакомят с правилами оформления кода в конкретном проекте (соглашение по code style). Это не случайный каприз работодателя, а свидетельство серьёзного подхода.

Вот несколько общих правил, с которыми вы можете столкнуться:

соблюдайте переносы фигурных скобок и отступы — это значительно улучшает восприятие отдельных блоков кода

соблюдайте правило вертикали — части одного запроса или условия должны находиться на одном отступе

if (typeof a ! == "undefined" &&
typeof b ! == "undefined" &&
typeof c === "string") {
//your stuff
}


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

for (var i = 0; i < 100; i++) {
}


В некоторых средах разработки можно изначально задать правила форматирования кода, загрузив настройки отдельным файлом (доступно в Visual Studio). Таким образом, у всех программистов проекта автоматически получается однотипный код, что значительно улучшает восприятие. Известно, что достаточно трудно переучиваться после долгих лет практики и привыкать к новым правилам. Однако в любой компании code style — это закон, которому нужно следовать неукоснительно.



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

Например, в коде есть строка:

DrawWindow( 50, 70, 1000, 500 );


Очевидно, она не вызовет ошибок в работе кода, но и её смысл не всем понятен. Гораздо лучше не полениться и сразу написать таким образом:

int left = 50;
int top = 70;
int width = 1000;
int height = 500;

DrawWindow( left, top, width, height );


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

http://habrahabr.ru/post/270001/

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
rss_rss_hh_new

Как «Змейка» может познакомить с ООП: сложная концепция простыми словами

Вторник, 13 Октября 2015 г. 15:08 (ссылка)

Здравствуйте! Вас приветствует редакция сайта GeekBrains.ru, сервиса онлайн-обучения программированию. Мы решили завести блог на Хабре! Уверены, что ещё успеем рассказать и обсудить много интересного из мира программирования, ИТ и онлайн-образования. Но начнём очень просто, без особых прелюдий, с обзора бесплатного курса по основам C# и ООП от одного из наших учеников. Слоган курса гласит «Сложная концепция простыми словами». Давайте же посмотрим, насколько это соответствует действительности.







Пара слов о слушателе: менеджер IT-проекта, знаком с процедурным программированием, web-разработкой, SQL. Более тесное знакомство с ООП понадобилось для глубокого внедрения в бизнес-процессы. Итак, слово нашему выпускнику.



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



Для себя я выбрал ознакомительный курс для освоения принципов объектно-ориентированного программирования, который построен на создании рабочего проекта на языке С# — консольной игры «Змейка». Это та самая змейка, за которой несколько поколений убивали время на лекциях, играя на тетрисах и на чёрно-белых телефонах Nokia. Но должен сказать, что писать свою игрушку значительно приятнее, а, главное, полезнее. В ходе создания игры преподаватель раскрывает все принципы ООП, причём так, что каждый принцип воспринимается не как навязанная скучная теория, а как решение уже назревшего в голове вопроса: «Как упростить код и сделать его читабельнее?» Но всё по порядку.



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




  • Visual Studio — интегрированную среду разработки для ряда языков программирования. Именно в Visual Studio можно познакомиться с редактором исходного кода, дизайнером классов, отладчиком и консолью.




  • GitHub — веб-сервис для хостинга IT-проектов и их совместной разработки, базирующийся на системе управления версиями Git. Знакомство с ним помогает понять, как устроен проект, обратиться к открытому коду, скопировать его, если это необходимо, просмотреть предшествующие версии кода. Для общения среды разработки и репозитория кода используется приложение Smartgit.



Выбранный язык — C#, но, как я уже понял из своей практики, принципы ООП одни и те же и могут быть легко применены при изучении другого языка.



Изначально преподаватель делает акцент на том, что будет разрабатываться продукт. Выбор на змейку пал неслучайно — всем известна логика игры, её особенности и требования. А в разработке важно уже на раннем этапе иметь целостное представление о будущем проекте. Такое видение помогает разбить его на значимые этапы и избежать многих упущений.



Первые два урока просты и понятны любому человеку, даже совершенно не знакомому с программированием. Традиционно работа начинается со счастливого ‘Hello, world!’



namespace Snake
{
class Program
{
static void Main( string[] args )
{
Console.WriteLine("Hello world");
Console.ReadLine();
}
}
}








Я ещё раз повторил для себя, что такое функция, как она работает, как создаются переменные. Для написания кода используется процедурный подход — функции последовательно применяются, принимая на входе заданные параметры. Сразу становятся очевидными два недостатка создания всего кода внутри главной функции main: разрастание кода и объявление переменных прямо внутри этой функции.



namespace Snake
{
class Program
{
static void Main( string[] args )
{
int x1 = 1;
int y1 = 3;
char sym1 = '*';

Draw( x1, y1, sym1 );

int x2 = 4;
int y2 = 5;
char sym2 = '#';

Draw( x2, y2, sym2 );

Console.ReadLine();
}

static void Draw(int x, int y, char sym)
{
Console.SetCursorPosition( x, y );
Console.Write( sym );
}
}
}


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







На третьей лекции я познакомился с понятием класса, типа данных. Класс — одно из основных понятий ООП, поэтому его изучению уделяется пристальное внимание. Переменные начинают создаваться как экземпляры класса, то есть объекты (отсюда и название ООП).



Если слушатель начинающий, то он учится понимать язык кода и выражение Point p1 = new Point(); начинает восприниматься как «создаётся объект точка p1 как экземпляр класса Point, принимающий на входе координаты».



namespace Snake
{
class Point
{
public int x;
public int y;
public char sym;

public void Draw()
{
Console.SetCursorPosition( x, y );
Console.Write( sym );
}
}
}


На этом же занятии слушатель учится думать, как компьютер. Это происходит с помощью использования точки останова и прохода по коду через отладчик: шаг за шагом можно видеть создание объектов класса, инициализацию переменных, работу функции (вызов метода Draw).







На четвёртом занятии создаётся конструктор класса Point — явно написанный конструктор со специальным синтаксисом, который ничего не возвращает.



public Point(int _x, int _y, char _sym)
{
x = _x;
y = _y;
sym = _sym;
}


Я заметил, как сокращается объём кода основной программы после создания конструктора. Конструктор принимает на вход координаты точки и символ её обозначения, но деталей реализации пользователь не видит — они скрыты внутри конструктора. Так я столкнулся с первым из трёх принципов ООП — инкапсуляцией. Инкапсуляция — это свойство системы, позволяющее объединять данные и методы, работающие с ними, в классе и скрыть все детали реализации от пользователя.



Пятая лекция погружает в вопрос организации памяти, работы программы со стэком и кучей. Объяснения дополнены наглядными схемами. После этого начинается работа с новым классом стандартной библиотеки C# List (список), в котором создаются функции добавления и удаления элемента, а также возникает цикл foreach.



List numList = new List();
numList.Add( 0 );
numList.Add( 1 );
numList.Add( 2 );

int x = numList[ 0 ];
int y = numList[ 1 ];
int z = numList[ 2 ];

foreach(int i in numList)
{
Console.WriteLine( i );
}

numList.RemoveAt( 0 );

List pList = new List();
pList.Add( p1 );
pList.Add( p2 );

Console.ReadLine();
}
}


Работая с циклом в отладчике, слушатель ещё более наглядно понимает структуру и последовательность работы программы.

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



namespace Snake
{
class HorizontalLine
{
List pList;

public HorizontalLine(int xLeft, int xRight, int y, char sym)
{
pList = new List();
for(int x = xLeft; x <= xRight; x++)
{
Point p = new Point( x, y, sym );
pList.Add( p );
}

}

public void Drow()
{
foreach(Point p in pList)
{
p.Draw();
}
}
}
}


Преподаватель отмечает, что и точка, и линии, а в дальнейшем и сама подвижная змейка по сути являются фигурами, поэтому должно существовать какое-то решение для оптимизации кода, которое позволит не копировать код, а переиспользовать его. Так я познакомился со вторым принципом ООП — наследованием. Наследование — это свойство системы, позволяющее описывать новый класс на основе уже существующего с частично или полностью замещающейся функциональностью. Таким образом, каждая линия, змейка и точка становятся частным случаем (наследуются) от класса Фигура: class HorizontalLine: Figure.



namespace Snake
{
class Figure
{
protected List pList;

public void Drow()
{
foreach ( Point p in pList )
{
p.Draw();
}
}
}
}


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



И вот змейка должна научиться двигаться в поле и управляться стрелками с клавиатуры. Задача кажется сложной, но я помнил, что речь идёт всё ещё о консоли и поэтому реализация передвижения змейки должна быть максимально простой. Я уже знал, что змейка должна двигать в четырёх направлениях, что-то есть, расти или уменьшаться. И вот тут наступает пора абстрагирования — ситуации, при которой код пишется на основе выбранных значимых характеристик объекта, а незначительные — исключаются. Выбираем значимые признаки: змейка — это фигура из точек на карте, у неё есть стартовая позиция, координаты и она движется в одном из четырёх направлений. Класс Snake серьёзно изменяется и растёт.



{
class Snake : Figure
{
public Snake( Point tail, int length, Direction direction )
Direction direction;

public Snake( Point tail, int length, Direction _direction )
{
direction = _direction;
pList = new List();
for(int i = 0; i < length; i++)
for ( int i = 0; i < length; i++ )
{
Point p = new Point( tail );
p.Move( i, direction );
pList.Add( p );
}
}

internal void Move()
{
Point tail = pList.First();
pList.Remove( tail );
Point head = GetNextPoint();
pList.Add( head );

tail.Clear();
head.Draw();
}

public Point GetNextPoint()
{
Point head = pList.Last();
Point nextPoint = new Point( head );
nextPoint.Move( 1, direction );
return nextPoint;
}
}
}


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

Но вернёмся к проекту. Появляется класс Direction (направление), в котором используется ещё один тип данных enum — перечисление, состоящее из набора именованных констант. В нашем случае это константы-направления: right, left, up, down. У класса Point появляется метод Move.



public void Move(int offset, Direction direction)
{
if(direction == Direction.RIGHT)
{
x = x + offset;
}
else if(direction == Direction.LEFT)
{
x = x - offset;
}
else if(direction == Direction.UP)
{
y = y + offset;
}
else if(direction == Direction.DOWN)
{
y = y - offset;
}
}


Таким образом, передвижение змейки реализовано как сдвиг позиции с перетиранием хвоста пробелом. Змейка управляется клавишами и управление реализовано следующим образом.



public void HandleKey(ConsoleKey key)
{
if ( key == ConsoleKey.LeftArrow )
direction = Direction.LEFT;
else if ( key == ConsoleKey.RightArrow )
direction = Direction.RIGHT;
else if ( key == ConsoleKey.DownArrow )
direction = Direction.DOWN;
else if ( key == ConsoleKey.UpArrow )
direction = Direction.UP;
}


Вновь я столкнулся с инкапсуляцией — управление змейкой уходит в класс Snake.

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



while (true)
{
if(snake.Eat( food ) )
{
food = foodCreator.CreateFood();
food.Draw();
}
else
{
snake.Move();
}

Thread.Sleep( 100 );

if (Console.KeyAvailable)
{
ConsoleKeyInfo key = Console.ReadKey();
snake.HandleKey( key.Key );
}
}


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



На последнем занятии змейка стала вполне самостоятельной, а я учился обрабатывать столкновения с препятствиями и собственным хвостом змейки. Код в лекции уже не создаётся, а берётся из репозитория и разбирается. Я не пошёл на поводу у соблазна скопировать чужой код, а некоторое время после прослушивания курса создавал свой, раз за разом обращаясь к лекциям. Вам я советую поступать точно так же — потому что для работы и понимания нужны знания. Надеюсь, я дал достаточно тизеров, чтобы вам захотелось зайти на GitHub и разобраться в реализации простой игры, основной код которой составляет всего 52 строки, а это значит, что все принципы ООП были успешно применены.



Подводя итоги, преподаватель ещё раз возвращается к главным парадигмам ООП и обращает внимание на модификаторы доступа public и private и рассказывает о ключевом слове virtual, благодаря которому метод может быть переопределён в наследном классе. Private — это закрытые данные и код внутри объекта, public — открытые. Закрытые данные и код доступны только из другой части этого же объекта, то есть извне к ним обратиться нельзя. Открытые данные и код доступны из любой части программы и нередко служат интерфейсом к закрытым частям объекта.

Если говорить о курсе в целом, то он мне помог — изменились и качество моей работы, и уровень общения с разработчиками. Советую попробовать всем, кому хоть немного интересно программирование, как минимум, это развивает мозг и учит думать системно. Я точно вернусь послушать другие курсы и пообщаться с профессионалами. Ну, а отважным новичкам желаю удачи!»



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




  • Слушайте курс с карандашом или ручкой — записывайте моменты, которые стоит переслушать или дополнительно посмотреть в Интернете или книге.




  • Не пропускайте непонятные моменты, старайтесь разобраться, обращайтесь к дополнительным источникам.




  • Не копируйте код, создавайте свой — только это позволит вам по-настоящему научиться работать с кодом.




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




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



Мы уверены, что время на самообразование никогда не бывает потраченным зря. Оно обязательно окупится.



Original source: habrahabr.ru (comments, light).

http://habrahabr.ru/post/268741/

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
Silvestr

Секреты успеха в бизнесе

Суббота, 03 Октября 2015 г. 12:27 (ссылка)

Смотреть видео в полной версии
Смотреть это видео


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



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



Но никто не хочет получить кота в мешке. Правда? Поэтому пройдите бесплатный мастер-класс Олега и протестируйте качество информации. Сегодня это можно сделать абсолютно бесплатно. Завтра может быть поздно! Регистрируйтесь и познавайте секреты успеха в бизнесе.



Пройти мастер-класс

Метки:   Комментарии (0)КомментироватьВ цитатник или сообщество
AlinkaColnishko

Хитрости жизни.

Суббота, 26 Сентября 2015 г. 15:44 (ссылка)

16 замечательных сайтов для обучения чему-то новому.
Gwkqo0qOlpw (388x572, 48Kb)
igEt9FTZxCg (388x576, 58Kb)
n30uH0AD8w0 (388x576, 67Kb)

1.
9xl-UtED49A (388x576, 183Kb)

2.
tOh28vBj0hQ (388x576, 188Kb)

Метки:   Комментарии (3)КомментироватьВ цитатник или сообщество
rss_rss_hh_new

Бесплатная библиотека Self-learning – более 20 курсов по ключевым направлениям Software Engineering

Понедельник, 24 Августа 2015 г. 15:31 (ссылка)

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



Благодаря библиотеке Self-learning сегодня получать знания и развивать различные навыки по ключевым направлениям Software Engineering можно не только на очных курсах, но и сидя за домашним компьютером.





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







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



В библиотеке Self-learning представлено более 20 курсов начального уровня по направлениям: «Разработка ПО», «Тестирование», «Управление IT-сервисами», «Системный и бизнес-анализ» и др.

Original source: habrahabr.ru (comments, light).

http://habrahabr.ru/post/265339/

Комментарии (0)КомментироватьВ цитатник или сообщество

Следующие 30  »

<обучение онлайн - Самое интересное в блогах

Страницы: [1] 2 3 ..
.. 10

LiveInternet.Ru Ссылки: на главную|почта|знакомства|одноклассники|фото|открытки|тесты|чат
О проекте: помощь|контакты|разместить рекламу|версия для pda