Може би сте чували термина "Красив код". Е, в ЛЕГО Майндстормс не е точно код, но целта е същата както и във всеки друг език или платформа за програмиране - да може всеки да разбере какво прави нашата програма!

Необходимо е да се абонирате за FLLCasts.com, за да достъпите това видео
- #1489
- 20 Nov 2019
-
Всички имена в програмата ви трябва да обясняват това за което се отнасят!
Още като се започне от името на програмата ви и дори проекта ви, чак до най-малката променлива всичко трябва да има "говорещо" име. Под "говорещо" се има предвид да може някой, който не знае какво прави определена част, веднага да се досети като прочете името. Примерно ако направите програма, която да кара робота да прави квадрат, няма да я кръстите Генчо! По-"говорещо" име би било "kvadrat" или "square". Или променлива, която запазва колко живот има един играч в игра можем да я кръстим "jivot" или "Hitpoints". Ако обаче има двама или повече играча в нашата игра, често хората правят грешката да кръстят живота, така че да не се разбира за кого се отнася: "jivot1", "jivot2"... По-правилно в този случай би било нещо, което казва "животът на играч 1" - "Player1_Hitpoints". Долната черта често се използва при наименуване в програмирането, тъй като разстоянието се използва за започване на нещо ново и често не може да се слага в име. В такива случаи могат да се използват и съкращения, но трябва да сте сигурни, че всички които ги четат ще ги разберат, например "P1_HP".
-
Нищо не трябва да се повтаря повече от веднъж!
По-рано ви разказвахме за DRY принципа - Do not Repeat Yourself! Ако видите, че някаква част от програмата се повтаря, веднага я слагате в цикъл или си правите собствено блокче или и двете! Това помага за скъсяване на програмата и също за разбиването ѝ на части, което помага за по-лесно четене.
-
Разделете програмата на части (модули)!
Това е изключително важна част от правенето на красива програма, толкова важна, че имаме отделен туториал само за това тук. Целта на това правило е всяка част от програмата да прави точно определено нещо. Изпълнено добре, това ще ви помогне с изпълнението на първото правило. Ако програмата ви работи, има малко значение как разделяте отделните сегменти, може да сложите само малко растояние между тях, може да ги направите на собствени блокчета. В зависимост от програмата, може дори да ги поставите в различни нишки! Важното е ако имаме цъкъл, който кара робота да прави квадрат и също да показва картинка, можем да сложим картинката извън цикъла или дори в друг цикъл.
-
Използвайте коментари за да обясните неща които не са очевидни!
Коментарите са инструмент, който много от нас не знаят, че съществува или просто не използват. Въпреки това те са черешката на тортата ако искате кодът ви да се разбира от други хора и дори да се харесва! Коментарите са много полезни за места, които не могат да се наименуват, като суичове или математически операции. Те се използват за да обяснят определени операции, които не са особено очевидни. Например имате робот, който трябва да измери дължината, ширината и височината на една стая и да върне обема. Може да обясните каква е формулата или за какво ви трябва, ако не се записва в променлива, трябва да обясните че резултата е обема на стаята.
Правенето на четлива и лесна за разбиране програма е нещо, което доста хора забравят докато правят сложни програми, които правят готини неща. Проблемът е, че ако имат нужда от помощ по сложна програма, която изглежда така:
то никой няма да се наеме да им помогне. Затова е важно вашата програма да бъде красива и удобна за четене!
Курсове и занятия включващи този Урок
Този Урок е използван в следните курсове и занятия.

Роботика с LEGO - Ниво 4.5 Време за игра
Осмото ниво от учебната програма по LEGO роботика за ученици от пети до дванадесети клас.
С помощта на роботи създадени за игри между учениците се упражнява работа с променливи. Роботите пазят натрупаните точки от играчите и правят пресмятания с информацията в променливите. Постоянно се използват познатите вече собствени блокове за групиране на функционалност. Въвежда се понятието поведение и програмите на роботите са организирани в множество нишки, които си обменят информация. В края на нивото роботите генерират задачи с числа, чрез които учениците трябва да съставят уравнение.
- 35
- 13:40
- 221

Занятие 1 - Дърпане на въже със сензори
Въведение
Днес ще играем на дърпане на въже!
Играли ли сте тази игра? Падали ли сте на земята докато го правите?
Играта на дърпане на въже е доста често забавление, когато се съберем с повечко приятели. Както всяка игра, обаче, и тя си има проблеми. Винаги някой много силен или много тежък печели! Също докато играем навън единият отбор често пада на земята и остава с рани и петна от кал. Днес ще решим тези проблеми като направим робот, който да преобразува тегленето на въже от груба игра на сила и тежест в игра на скорост, в която никой, освен сензорът за допир, не може да се нарани!
- 6
- 5
- 28
- 3d_rotation 1