Аннотация: Блок+Питон=Блокопитон Чтобы понять что такое Блокопитон нужно взять два языка программирования Scratch и Python ,Скретч служит транслятором для языков програмирования и переводом их на русский язык, а Питон превращает абстрактный язык в реальный язык. Эта истема позволяеть изучать любой язык достаточно быстро а так же переводить один язык в другой если это нужно через систему Карт действий
Блок+Питон=Блокопитон
издательство smashwords
автор Штумоз
10.05.2020
Аннотация : Блок+Питон=Блокопитон.
Существует много визуальных языков: scratch, tynker , Kodu Game Lab, gamebender, игры Например Dreams , Грезы от PlayStation.
Эти программы на самом деле не чему не обучают и не имеют практического применения.Они нужны только для получения грантов от Национального научного фонда NSF
info@nsf.gov ,получения денег от доверчивых спонсоров, и для рекламы Массачусетского технологического института .Это просто модель получения денег ,которая ничего общего не имеет с образованием. Раз вы не можете получить готовый продукт применяя полученные знания,значить знаний вы не получили.
Исключением служит компания Epic Games , которая использует blueprints . Но этот язык не совсем хорош, так же по нему нет литературы.
Просматривая лекцию Python - Intro to Computer Science - Harvard's CS50 (2018) которую посмотрело 264 336 человек,меня поразил тот факт что никто не видит очевидное.
Блок -это объект ,которому можно присвоить любую переменную. Что это дает на практике? поскольку блок это объект ,мы имеем универсальный язык, объектно визуальный язык программирования. Это позволяет сделать как транслятор языков, так и доступность программирования на любом языке мира .
Scratch , tynker , Kodu Game Lab. Сами по себе и по отдельности , эти программы бесполезны,так как не несут практического применения на практике, не позволяют продать готовый продукт. Эти программы являются программами обучениями ,но они ничему не учат и не дают возможность пользоваться тем что вы создаете.
Однако если объединить Блоки с реальным языком программирования. Оптимальное решение Это Питон, он практически идеально вписывается в схему блоков,мы получаем универсальный язык для быстрого обучения и реального создания продуктов. Так родилась идея Блокопитона, Блок+Питон. Так появилась методика, которая очень легко обучает любому языку. Так как блок позволяет транслировать один язык программирования в другой. В свою очередь это позволяет программировать на любом языке зная всего один язык. Этот способ позволяет сделать абстрактный язык программирования,реальным языком.
В основе обучения лежит идея Детских кубиков, языка Лого, гиперссылок и карт действий.
Эта книга не является учебником. Она не создавалась командой профессионалов, она писалась по принципу “Творите,рано или поздно все равно что то получиться, продукты создают те, кто что то делает,профессионалы ждут пока им заплатят.”
Чем является эта книга ? кому она может быть интересна? Она может быть интересна ТРИЗ, разработчикам программного обеспечения,учителям, чем является эта книга?она
дневник ,черновик, так ее правильно назвать.
Операторы в Python
Глава первая Арифметические операторы
Прежде чем мы приступим к работе , мы познакомимся с операторами.
Пусть надпись гласит ,что это операторы Питон , это не должно нас смущать,
на самом деле это просто операторы . Обычная математика ,которую можно выразить в любом выражении на рисунке 1 (рис.1 ) приведена таблица Арифметических операторов .
(рис 1)
Сложение
допустим у меня есть одно яблоко , на столе лежит еще одно яблоко . Если я положу свое яблоко на стол,то сколько будет на столе яблок? яблоко + яблоко=2 яблока . Это операция сложения. Ее можно представить таблицей.
(рис 2)
На рисунке два приведена таблица, которую вы легко можете заполнить самостоятельно .Из заполнения таблицы мы видим , что если сложить числа в виде выражений то один плюс один будет два ,два плюс два равно четыре и так далее 1+1=2, 2+2=4, 3+3=6 ,можно продолжать в порядке увлечения почти бесконечно. Это базовая математика и если мы хотим программировать, то азы математики нам будут полезны.
2 Вычитание
Чем можно представить сложение ? это когда вам что то дают. Условно вы Большой дракон, у вас есть пещера, и если вы что то приносите в эту пещеру, или другие вам что то дают, то это сложение. Вы складываете все ценности в свою пещеру и там их накапливаете. Но что если кто то хочет взять из вашей пещеры что нибудь? правильно это будет отъем, отнимание. Вычитание.
пока Дракон все носить в пещеру идет накопление это сложение, но если кто то что то берет из пещеры это вычитание .
(рис 3)
Допустим У дракона в пещере было четыре золотых ключа, летучая мышь
пролетая мимо взяла один , сколько у дракона осталось ключей?
4-1 =3 У дракона осталось три ключа.
(рис 4)
Для более легкого запоминания, примеры можно визуализировать . Главная цель визуализации — упростить и ускорить восприятие информации. Примером визуализации служит в нашем примере дракон с пещерой. Сложно запомнить и усвоить информацию,которую тяжело представить.
Потому на рис. 1 рядом с арифметическими операторами присутствуют блоки.
Что такое блок? это объект, объект который содержит описание,это описание позволяет понять нам суть объекта. Например дерево, это объект который с зелеными листьями,производить кислород, из него делают бумагу, древесный уголь и так далее. Блок это объект , и мы можем дать ему любое значение. У нас блок это объект ,который выполнять действия , те которые мы ему присвоим.
3 Умножение .
Как же описать процесс умножения? ведь мы не дошли до циклов, можно было бы сказать что это повторяющийся цикл, где одно число прибавляет само себя какое то количество раз. например число три с циклом повторения три,причем каждый цикл мы складываем эти числа 3,3,3 и складывает в сумму. 3+3+3=9.
Раньше поступали так, вот тебе таблица умножения и сиди учи. То есть ты должна была заполнить даже не понимая процесса. Не знаю правильный ли подход просто запомнить наизусть таблицу умножения?.
Что такое умножение? это когда одно число нужно сложить столько раз,сколько указывает второе число. Визуально это довольно легко понять .
проще рассмотреть на примере .
Пример 3*4 =3+3+3+3=12 мы число три сложили столько раз ,насколько указал множитель.
(рис 5)
на рисунке три ,показано следующее, мы берем три клеточки и делаем из них ряд. этот ряд три клетки 1,2,3. потом мы умножаем этот ряд на четыре. Это действие можно было бы описать словом клонирование.Мы создаем четыре одинаковых ряда ,это и есть умножение. Более доступным словом будет возможно тиражирование.
Это можно представить так. Допустим вам на принтере нужно распечатать листок бумаги. Это и есть умножение. Лист который даст нам принтер это копия с первого листа,которая идентична. Допустим мы рисуем на листе число 10 , потом нажимаем на принтере создать три копии. Это и есть умножение. запись будет такой 10*3 =10+10+10=30 . Сложив числа на каждом листе бумаге мы получим сумму чисел. Этот процесс и есть умножение.
4 Деление .
Этот процесс довольно просто описать. Итак вам нужно что то разделить , допустим яблоко , на две части . Яблоко одно, а вас допустим двое, потому нужно разделить на две равные части. Если бы у вас было два яблока, то вы бы дали одно тому с кем хотите поделиться и у вас осталось бы одно , это и есть деление .В результате деление два на два у вас осталось бы одно яблоко. Если яблоко целое, то его лучше разрезать. Это деление целого числа один на два. в результате у вас получится не целое яблоко,а половина. ½=0.5 . Дробное число. Если запишите столбиком вы получите дробь . Пример 2/2=1 ; ½=0.5
(рис.6)
5. Деление по модулю.
Деление по модулю Возвращает остаток от деления.
Пример 7%2=1 ; 8%3=2 . Выглядит это так 7= 2+2+2+ 1 число 2 полностью и без остатка поместилось трижды ,больше раз число 2 не помещается, остаток 1 ,
число три в восемь помещается два раза , остаток два. 8=3+3+2,число три ,два раза помещается полностью, остаток 2.
6.Целочисленное деление.
Деление в котором возвращается только целая часть результата. Часть после запятой отбрасывается. Деление нацело.
Пример 15//7=2 если разделить пятнадцать на семь, то мы получим 2,5 ,целое значение 2, число после запятой отбрасываются.
4/3 = 1 , целое значение 1.
Глава два Операторы сравнения
(рис .7)
Оператор сравнения , символ == в виде двух знаков равно обозначает сравнение. В программе Питон один символ = означает приравнивание.
данный символ == именно сравнивает значения,равны ли они или нет?
пример 1==1 , значение верное,значение true – означает «да», «верно», «истина».
1==2 ? нет значение неверное так как два не равно одному , false – означает «нет», «неверно», «ложь».
➢ true – означает «да», «верно», «истина».
➢ false – означает «нет», «неверно», «ложь».
Следующий оператор сравнения != состоить из восклицательного знака и знака равно обозначает Не равно ≠
Пример 2 != 1 true (верно) два не равно один .
Оператор сравнения записываемый вот такими символами <
или вот таки > сравнивает больше ли одно числовое значение чем другое?
оператор записываемый как равно >= или <= значить больш ли одно значение чем другое и равно ли оно?
1>=1 ? это значить 1 =1 ? или 1>1 ? поскольку значение 1=1 верно ,то выражение верное true (верно) .
Давайте установим на наше устроство две программы.
Scratch и Python .Поскольку наглядный пример самый понятный, а усвоить можно только то что делаешь.
Терия абсолютно бесполезна без практики .Если мы не можем применять наши знания на практике,они для нас мертвый груз. Если наши знания не позволяют создавать продукт,то они не являются знаниями.
Давайте скачаем и установим скретч ,эту программу мы будем использовать как переводчик ,а так же как отладчик. Чуть позднее как транслятор.
ну или на прямую с сайта . Можно было выбрать например https://developers.google.com/blockly , или https://www.tynker.com/ ,но эти програмы не имеют перевод на русский язык. Поскольку мы будем использовать программу как раз для перевода ,то другие программы нам не подходят,так как скретч иметь перевод на любой язык ,а это ключевой момент.
Программа легко устанавливается и не иметь сложностей с установкой .
Выбор языка происходить в верхнем окошке.
А теперь установим Питон .
Установка Питон
А.) Переходим по адресу https://www.python.org/ выбираем слово Downloads (загрузка,скачать) выбрать Windows и нажать на кнопку
Б.) Выбираем добавить Патч ,ставим галочку Add Python 3.8 Path и жмем Customize installation (Настроить установку)
В.) на следующем шаге просто выбираем все галочки и жмем дальше .
добавляем три галочки внизу ,выбираем место куда хотим установить программу и жмем дальше .После этого мы получим сообщение что установка завершена . Теперь нам нужно настроить Запуск программы. Это очень важный момент .Мы находим файл в папке куда мы установили программу,который называется pythonw.exe и создаем ярлык этой программы.
теперь переходим в его свойства и в строке объект меняем его свойства вот такой строкой .
D:\Pyton\pythonw.exe "D:\Pyton\Lib\idlelib\idle.pyw" (ваш диск куда установлена программа :\ваша папка куда вы установили \pythonw.exe "ваш диск:\ваша папка куда установили \Lib\idlelib\idle.pyw")Применяем и закрываем. И вот теперь у вас питон установлен . Если у Вас все сделано правильно вы получите вот такое вот окно .
Эта консоль и есть наша программа для изучения языка питон . В Опции, через Конфигурация IDLE можно сменить шрифт и размер шрифта. В следующем окне можно выбрать темную тему ,изменить цвет текста.
Вот теперь у нас есть инструмент с которым мы можем работать. Практика без теории , тоже ничего не даст. Мы будем учиться в процессе обучения .
Итак у нас есть два инструмента , Скретч и Питон , Скретч- это визуальный язык программирования, в виде блоков. Реального применения ему негде нет .
Питон -язык программирования, на котором в теории можно писать программы. По идее можно было бы не тратить время на это и выучить С# (си шарп ) что позволило бы сразу работать с Юнити и производить готовый продукт .Но тут стоить задача быстрой разработки игр и приложений, а также задача обучаться очень быстро любому языку. Конечно было бы удобнее если бы у Каждого из вас был бы Блокопитон , но так как его нет, то что бы понять что такое блокопитон нам нужно именно две программы , Скретч как блоки и Питон как реальный живой язык программирования.
Скретч
Скретч условно разделен на три области .Слева это блоки , каждый блок, это визуальный код который переведен на на русский язык. По центру место сборки кода . Справа это окно сцены,которое служить для проверки работы нашей программы.
Питон представляет собой окно имеющие вид консольной строки .
Приступаем к работе и обучению
Для того чтобы написать какое то сообщение , я бы взяла мел, и написала его на доске.
Этого простого действия было бы достаточно .Так же я могла бы произнести фразу вслух . Это действие.
Давайте откроем Скретч , найдем в коде оператор внешний Вид
и возьмем блок Сказать .
перетянем его в центр ,на место сборки блоков. Чтобы этот код работал , нужно зайти обратно в код ,выбрать события ,найти блок Когда влаг нажат и тоже переместить в место сборки кода .А теперь соединить их .Первый блок всегда флаг.
Запись будет следующей, когда влаг нажат ,сказать привет . Если вы теперь нажмете на флаг вверху сцены, то программа выполнит ваш код.
Вот так все просто .
Теперь попробуем сделать тоже самое в Питон,а так же просто не получится,потому что Питон общается с нами через команды английского языка. В этом основное отличие . Для того чтобы вывести какое то сообщение в Питон существует команда print( ) . На русский она переводится как Распечатать .Если бы это было русская программа, было бы очень удобно ,так как мы бы просто ввели Распечатать( "привет") .
Давайте откроем Питон , выберем в углу слово Fail и создадим новый файл.
У вас откроется чисток окно. и давайте наберем команду
print(" Я покорю этот мир" )
после чего нажимаем мышкой на слово RUN(Запустить)
или можно нажать кнопку F5 .
программа попросит вас сохранить файл,сохраните, после чего команда выполнит ваш код.
А теперь давайте создадим карту действия. Для чего нужна карта действия?
Карта действия помогает запомнить, но кроме того что она позволит запомнить ,она будет выполнять роль перевода одного языка в другой и обратно .
Что такое карта? это объект .
Мы можем создать большую колоду карт .Каждую карту мы подпишим и условно назначим ей дествие. Таким образом мы получим библиотеку.
Эта библиотека будет иметь описания действий. Наша карта ,ее действие
Сказать, сообщить, показать,распечатать,вывести на экран . И мы описали как это сделать . Один язык программирования это Скретч, второй Питон.
Если мы в скретч просто ведем то что нарисовано на карте действия ,мы получим действие,даже если будем делать это неосознанно. Точно так же если мы с карты действия введем команду ,она будет выполнена.
Если мы теперь возьмем язык которого мы не знаем, пусть С++,внесем строку ниже, то даже не зная языка мы сможем выполнить действие на незнакомом языке программирования. .