OberonCore https://forum.oberoncore.ru/ |
|
Форматтер текстов учебных примеров - нужен ли и какой? https://forum.oberoncore.ru/viewtopic.php?f=7&t=389 |
Страница 1 из 7 |
Автор: | А.П. [ Вторник, 27 Февраль, 2007 16:16 ] |
Заголовок сообщения: | Форматтер текстов учебных примеров - нужен ли и какой? |
Коллеги! Есть две разработки для улучшения внешнего вида программынх текстов на КП: Beautifier в коллекции Г.Зинна и Master С.Губанова. Возникла идея попробовать их частично совместить, т.е. к Улучшателю добавить кое-какие функции по раскраске, и навесить полученное опцией на Школьный Блэкбокс. Поручить это дело можно моему ученику, он должен осилить. Как учебный проект будет ему полезен. Вопрос: будет ли методическая польза от такой прилады? Мне кажется, что польза будет, опрятность всяко лучше неряшливости. К опрятности надо приучать будущих программистов с юных лет и вместе с тем давать им инструменты, которые помогают ее соблюдать. Вопрос 2: какие опции повышения читабельности (контраста) программного текста следует предусмотреть для применения в начальном (школьном - 4-8 классы) курсе программирования? Каковы оптимальные гарнитура и размер шрифта, жирность, цвет ключевых слов и языковых конструкций и т.п.? Ясно, что увлекаться раскраской и доводить текст до яркости петушиного хвоста не следует, но всё же... Мне интересно было бы узнать в первую очередь мнение опытных преподавателей, работающих со школьниками |
Автор: | Илья Ермаков [ Вторник, 27 Февраль, 2007 17:34 ] |
Заголовок сообщения: | |
Анатолий Иванович - мое мнение: опрятность - это следование стандарту и минимализм. Есть стандартные правила оформления: 1) Ключевые слова не выделяются, они уже заглавные. 2) Экспорт и нелокальные переходы (RETURN, EXIT) - жирностью. 3) Комментарии - курсивом. А цвет? Цвет - это мощное средство выделения. Оно может и должно приберегаться для особых случаев. Цвет используется для смысловых акцентов - выделяйте изменения, выделяйте основную мысль. Пример - в "серьезных" применениях: я выделю изменения в сервис-паках синим. Код синхронизации в низкоруровневых многопоточных модулях - красным. Цвет - это не для оформления! Цвет - для выделения! Если вы растратите ресурс цвета для оформления (т.е. систематического применения по шаблону), то что вы будете применять для выделения (т.е. эпизодического, акцентирующего применения)? |
Автор: | А.П. [ Среда, 28 Февраль, 2007 09:46 ] |
Заголовок сообщения: | |
Илья Ермаков писал(а): Цвет - это не для оформления! Цвет - для выделения!
Если вы растратите ресурс цвета для оформления (т.е. систематического применения по шаблону), то что вы будете применять для выделения (т.е. эпизодического, акцентирующего применения)? Илья! Правила стандартного оформления текста я знаю. Но достигаемый ими эффект кажется недостаточным для указанного мной возраста "программистов". В первые год-два ученики с трудом запоминают вид основных языковых конструкций и помощь им, например, в виде дополнительного выделения ключевых слов жирным шрифтом кажется не лишней. Для выделения временного текста мы применяем красный цвет, часто намного более крупным шрифтом. Забыть удалить такой просто невозможно Ступенчатые отступы, обрамление знаков операций, отношений и присваивания пробелами - норма в моей практике. Но хочется еще каких-то усовершенствований, чтобы наш любимый КП/ББ стал просто неотразим в школьной среде!! |
Автор: | Pavel [ Пятница, 02 Март, 2007 09:10 ] |
Заголовок сообщения: | |
Здравствуйте. Тема выделения и оформления на начальном этапе для школьников среднего звена достаточно важна. А кому она со временем надоест, можно и отказаться. |
Автор: | Info21 [ Пятница, 02 Март, 2007 12:25 ] |
Заголовок сообщения: | |
А.П. писал(а): Но хочется еще каких-то усовершенствований, чтобы наш любимый КП/ББ стал просто неотразим в школьной среде!!
Просто Вы слишком привыкли, хочется новенького. С неотразимостью мы все тут согласимся, но не за счет же сути. Думал бы, что неотразимость лучше искать в каких-нить движущихся аналогах графики ТурбоПаскаля. |
Автор: | sacred [ Пятница, 02 Март, 2007 13:38 ] |
Заголовок сообщения: | |
info21 писал(а): Просто Вы слишком привыкли, хочется новенького.
С неотразимостью мы все тут согласимся, но не за счет же сути. Тут вопрос не в неотразимости и не в новеньком. Вопрос в эргономичности. Сравните среду Turbo Pascal 5.5 и Turbo Pascal 7.0. В 7-ке тексты явно читаются легче. В BlackBox кое-какое выделение есть, но его мало. Когда смотришь в модуль реализации неэкспортированных процедур, глазу вообще зацепиться не за что. Ваши, много раз слышанные, концептуальные возражения мне понятны, но мне кажется надо искать компромисс. Работая с плоским текстом, банально быстрее утомляешься. И верхний регистр тут не сильно помогает. Раскраску ведь придумали не для красоты. Это действительно удобно и способствует снижению утомляемости как глаз так и мозга. Я считаю, стандартные правила оформления исходного текста необходимо расширить. Несильно, но так, чтобы в любой процедуре встречались конструкции, выделенные жирностью/цветом. Иначе просто тяжело с таким текстом работать. Нет, конечно, человек ко всему привыкает, но зачем загонять его в прокрустово ложе? Тем более это относится к детям, у которых и так утомляемость повышена, а усидчивость и концетрация внимания наоборот, понижена, по сравнению с навьюченными, повидавшимя всякое, взрослыми. ИМХО конечно, но к обсуждению - welcome. P.S. Кстати, как вам было читать моё ничем не выделенное (даже абзацами) плоское-приплоское сообщение? |
Автор: | Илья Ермаков [ Пятница, 02 Март, 2007 13:47 ] |
Заголовок сообщения: | |
Да это все понятно... Тут такой момент - надо расширить TextViews так, чтобы подсветка синтаксиса не была частью форматирования текста, то есть, не сохранялась перманентно в документе, а зависела от настроек среды у конкретного индивидуума.... |
Автор: | sacred [ Пятница, 02 Март, 2007 14:08 ] |
Заголовок сообщения: | |
Илья Ермаков писал(а): Тут такой момент - надо расширить TextViews так, чтобы подсветка синтаксиса не была частью форматирования текста, то есть, не сохранялась перманентно в документе, а зависела от настроек среды у конкретного индивидуума....
Это - да! Полностью согласен. А то выделение/оформление, которое применит к частям текста уже сам пользователь - сохраняется в файле и имеет приоритет над встроенной подсветкой. Идеальный вариант. Тогда и овцы будут целы и волки сыты. Аскеты могут поотключать подсветку и пользоваться только ручным выделением. Кому надо/хочется - настроит подсветку так, как ему нравится, не задевая чувств других людей (при обмене исходниками). |
Автор: | Евгений Темиргалеев [ Пятница, 02 Март, 2007 21:47 ] |
Заголовок сообщения: | |
sacred писал(а): Когда смотришь в модуль реализации неэкспортированных процедур, глазу вообще зацепиться не за что. Ваши, много раз слышанные, концептуальные возражения мне понятны, но мне кажется надо искать компромисс...
Лично для меня в таком коде возникали трудности вида: глаз не цепляется за процедуры (не эксп.) Форматтер, которые есть в коллекции Зина (в котором кстати написано, что он сделан согласно правил оформления в ББ) есть возможность выделять имена процедур цветом. Вс е имена - одним цветом, эксп. - жирным (однако в соглашениях по оформлению я такого не видел). Поэтому пользуюсь таким способом: отформатировал код форматтером с выделением цветом, чтобы глаз цеплялся, почитал и не сохранил. Обычно-то изучаешь чужой код. А свой - чего его изучать, писать надо стараться так, чтобы потом изучать не пришлось )) |
Автор: | А.П. [ Суббота, 03 Март, 2007 13:30 ] |
Заголовок сообщения: | |
sacred писал(а): ...Вопрос в эргономичности...
Спасибо за уточнение! Именно эргономичность инструмента для изучения и освоения программирования я и имел в виду, говоря о неотразимости. Убежден, что Школьная версия ББ должна быть максимально адаптирована к возрастным особенностям своего главного пользователя - ребенка. Соответствующие настройки и дополнительные прилады выполнить несложно. Надо только иметь четкие рекомендации науки и практики в этой области. Стандартные соглашения оформления, предназначенные для взрослых профессионалов, недостаточно хороши для детского (10-13 лет) возраста, в котором, я полагаю, должно происходить первое знакомство с настоящим (не игрушечным) языком программирования. Я нередко сталкиваюсь с ошибками, которые допускают мои ученики именно из-за недостаточной эргономичности стандартных настроек ББ. |
Автор: | ScrollLock [ Четверг, 02 Август, 2007 00:34 ] |
Заголовок сообщения: | Re: Форматтер текстов учебных примеров - нужен ли и какой? |
В BlackBox, как правило, негласно нарушается одно из правил оформления текстов программы - не используется моноширный шрифт. В ряде случаев он позволяет добавить выразительности. В книгах у Вирта и у Кернигана и Ритчи для программ использован именно он. А.П. писал(а): В первые год-два ученики с трудом запоминают вид основных языковых конструкций и помощь им, например, в виде дополнительного выделения ключевых слов жирным шрифтом кажется не лишней. Может быть, применить подсветку синтаксиса? Мне частенько приходится набирать тексты программ в Far'е с "прикрученным" Color-ером и это очень удобно, когда среда показывает тебе, где обрыв комментария, и какая скобка какой соответствует. Если какой-то файл-мененджер может (и даже "древняя" среда Open Watcom C/C++ это "умеет", и бета-версия DevCPP, собранная энтузиастами), то чем BlackBox хуже? Илья Ермаков писал(а): Если вы растратите ресурс цвета для оформления (т.е. систематического применения по шаблону), то что вы будете применять для выделения (т.е. эпизодического, акцентирующего применения)? Очень просто - выделять не буквы, а делать что-то вроде маркера (выделение цветом фона). Евгений Темиргалеев писал(а): Лично для меня в таком коде возникали трудности вида: глаз не цепляется за процедуры (не эксп.) А вот тут можно использовать комментарии как элемент оформления и ASCII-арта ("отбойки", "бордюры") P.S. Есть пары цветов, которые не различаются многими людьми, не стоит их парами разделять что-то важное: жёлтый/светло-зелёный красный-коричневый-зелёный (особенно в блёклом или тёмном виде) сиреневый-синий (не очень часто, но встречается) белый-очень светлый циан оранжевый-салатовый (не все оттенки) Такого рода ляпы дизайна были уже допущены в MS Word при проверке орфографии, Far Manager (EXE-файлы и выделенные файлы), в меньшей степени Turbo Pascal (подсветка синтаксиса, но почти некритично - в целом она довольно чёткая). В этом плане красный/синий или синий/оранжевый - вполне удачные пары. |
Автор: | Сергей Прохоренко [ Пятница, 03 Август, 2007 10:04 ] |
Заголовок сообщения: | Re: Форматтер текстов учебных примеров - нужен ли и какой? |
ScrollLock писал(а): В BlackBox, как правило, негласно нарушается одно из правил оформления текстов программы - не используется моноширный шрифт. В ряде случаев он позволяет добавить выразительности. В книгах у Вирта и у Кернигана и Ритчи для программ использован именно он. А.П. писал(а): В первые год-два ученики с трудом запоминают вид основных языковых конструкций и помощь им, например, в виде дополнительного выделения ключевых слов жирным шрифтом кажется не лишней. Может быть, применить подсветку синтаксиса? Мне частенько приходится набирать тексты программ в Far'е с "прикрученным" Color-ером и это очень удобно, когда среда показывает тебе, где обрыв комментария, и какая скобка какой соответствует. Если какой-то файл-мененджер может (и даже "древняя" среда Open Watcom C/C++ это "умеет", и бета-версия DevCPP, собранная энтузиастами), то чем BlackBox хуже? Голосую всеми руками ЗА. Помимо форматтера текстов программ очень нужно что-нибудь вроде построителя выражений в конструкторе запросов MS Access. Но не столько для построения выражений, сколько для быстрого написания хорошо структурированных и отформатированных программ, изучения синтаксиса языка и быстрого доступа к объектам и функциям из готовых компонент и их описаниям. Посмотрите этот построитель выражений - это замечательная вещь, правда, применять такую панель лучше не к тексту в маленьком окошке, а к полному тексту программы. Та инструментальная панель BlackBox'а, которую мне удалось отыскать и установить - вещь удобная, но совершенно не достаточная. Если авторы перевода документации BlackBox'а думают, что начинающие в состоянии это прочесть и понять, то они очень сильно заблуждаются. А вот интерактивное взаимодействие начинающего программиста с таким вот обучающим интеллектуальным "построителем выражений" поможет очень быстро освоить и язык, и среду программирования. Все те мудрые мысли и подходы к программированию, которые обрывочно и совершенно непонятным языком (хотя примерно наполовину русским) изложены в документации и в этом форуме, совершенно естественным образом будут усваиваться в форме настраиваемых текстовых шаблонов, вставляемых в текст программы "построителем выражений". Еще одна вещь, которая просто обязана быть в школьном BlackBox'е, - это мастер создания исполнимых файлов (как exe-шников, так и сборок, запускаемых из урезанного переносимого BlackBox'а). Комментарии, которые даются по этому вопросу с важным видом профессионалами, которые съели уже не одну собаку, мало что проясняют для начинающих. |
Автор: | Илья Ермаков [ Пятница, 03 Август, 2007 10:25 ] |
Заголовок сообщения: | Re: Форматтер текстов учебных примеров - нужен ли и какой? |
А что за построитель выражений в МС Аксесс? Просто я, например, не работал |
Автор: | Darksnake [ Пятница, 03 Август, 2007 11:47 ] |
Заголовок сообщения: | Re: Форматтер текстов учебных примеров - нужен ли и какой? |
Единственное, что меня раздражает - это то, что комментарии автоматически не выделяются. Я их обычно пишу довольно много и каждый раз лазить в меню задалбывает(когда читаешь текст зеленые комментарии хорошо видны и это очень удобно). В остальном автоматика в основном мешает. Ключевые слова и так пишутся большими буквами. Единственное, что я еще себе позволяю - это писать названия функций жирным шрифтом, чтобы потом глаз легко цеплялся. Автоматический "увеличитель" и достраиватель выражений, который уже есть в ББ мне кажется вполне достаточным. А вот паель для создания исполняемых файлов - весч здравая. Я сам ими не пользуюсь, но такую возможность иметь хотелось бы. |
Автор: | ScrollLock [ Пятница, 03 Август, 2007 12:39 ] |
Заголовок сообщения: | Re: Форматтер текстов учебных примеров - нужен ли и какой? |
Darksnake писал(а): А вот панель для создания исполняемых файлов - весч здравая. Я сам ими не пользуюсь, но такую возможность иметь хотелось бы. Вполне здравая. Определённо нужен более подробный док и более продуманные модули/визарды по этому делу (а то олимпиадный модуль National клянчит и не компилирует). И хотелось бы иметь в среде всё-таки понятие проекта (пусть в виде визарда для особой системы папок), статических и динамических библиотек (хотя быть может это мой консервативный взгляд). Нужно ещё, чтобы компилятор печатал суть ошибок/предупреждений с номером строки/столбца - не всегда на глаз видно, что именно произошло. А вообще история повторяется по спирали, и в этом BlackBox есть что-то от DOS Extenders - они тоже использовали собственный формат бинарников и специальный API, отличный от формата операционной системы. Ведь все эти ocf по существу - те же dll, только собственного "хитрого" формата, не PE. P.S. И ещё нужна стандартная панель инструментов с кнопками-картинками (может быть, и сейчас как-то оно включается, но нужна по умолчанию) и средства навигации по коду (как в MS Visual Studio). В общем, в BlackBox-е надо ещё много чего доводить до ума. |
Автор: | Сергей Прохоренко [ Пятница, 03 Август, 2007 14:02 ] |
Заголовок сообщения: | Re: Форматтер текстов учебных примеров - нужен ли и какой? |
Darksnake писал(а): Единственное, что меня раздражает - это то, что комментарии автоматически не выделяются. Я их обычно пишу довольно много и каждый раз лазить в меню задалбывает(когда читаешь текст зеленые комментарии хорошо видны и это очень удобно). В остальном автоматика в основном мешает. Ключевые слова и так пишутся большими буквами. Единственное, что я еще себе позволяю - это писать названия функций жирным шрифтом, чтобы потом глаз легко цеплялся. Автоматический "увеличитель" и достраиватель выражений, который уже есть в ББ мне кажется вполне достаточным. А вот паель для создания исполняемых файлов - весч здравая. Я сам ими не пользуюсь, но такую возможность иметь хотелось бы. Разумеется, мастер создания исполнимых файлов - это приоритет номер один, а инструмент наподобие эксессовского "построителя выражений" - приоритет номер два (новая ОС - лишь номер три, хотя я прекрасно понимаю ее необходимость). Но указанный инструмент совершенно необходим, если есть цель сделать BlackBox популярным: 1. Можно ведь месяцами тащить тележку по городам и весям, а можно лететь первым классом. Разница огромная. 2. Может быть, того, что есть в BlackBox'е, и достаточно профессионалам, но вовсе не начинающим программистам, которые наверняка знакомы с прекрасным интерфейсом других средств разработки. 3. Я не понял, какой "Автоматический "увеличитель" и достраиватель выражений, который уже есть в ББ " имеется в виду, но скорее всего мы говорим о совершенно разных вещах. Новый инструмент нужен вовсе не для построения выражений, а для написания программ в целом. Насчет отключаемой подсветки текста. Имеет смысл выделять не ключевые слова (это не относится к подсветке составных операторов при указании курсором на их составную часть), а наоборот, идентификаторы, введенные программистом - аналогично тому, как красным цветом выделяются имена процедур. Свои цветовые обозначения можно ввести, например, для параметров циклов FOR, для глобальных и импортированных переменных и т.п. - чтобы их было легче найти в тексте. |
Автор: | Илья Ермаков [ Пятница, 03 Август, 2007 14:10 ] |
Заголовок сообщения: | Re: Форматтер текстов учебных примеров - нужен ли и какой? |
Да объяснит хоть кто-нибудь, что за автоматический достраиватель выражений имеется в виду? Все мозги разбил на части, все извилины заплёл! |
Автор: | Darksnake [ Пятница, 03 Август, 2007 14:40 ] |
Заголовок сообщения: | Re: Форматтер текстов учебных примеров - нужен ли и какой? |
Не знаю, что есть в Access-е, я им не пользовался уже лет 6, в ББ есть команда Capitalize&Expand, которая позволяет не морочиться с ключевыми словами и автоматически создает формочки для основных структурных элементов(очень удобная штука). В последних Дельфах есть автоматический "дополнятель", который по куску слова выкидывает список с возможными продолжениями(при этом он анализирует введеную строку и в частности при введении называния объекта может выкинуть список его свойств и методов). Не могу сказать, что это так уж нужно - скорее уж путает, чем помогает. Цитата: И хотелось бы иметь в среде всё-таки понятие проекта Я все время забываю, что его там нет... Мы пользуемся басиковским скриптом, который автоматически позволяет организовать проекты, но то, что этого нет в основной версии ББ - просто катастрофично. Без этого скрипта я бы уже загнулся, разбираясь где у меня что. Хватает того, что одних только версий одного и того же проекта одовременно живет штук 6. |
Автор: | Илья Ермаков [ Пятница, 03 Август, 2007 14:54 ] |
Заголовок сообщения: | Re: Форматтер текстов учебных примеров - нужен ли и какой? |
Нее, мужики, перекладывать управление версиями на среду - это жестоко Всё равно возможностей будет не хватать, а чтобы сделать более-менее мощный инструмент для этого, потратите уйму времени. Тут нужно брать готовую систему версионирования. Поставьте Subversion (SVN) и не мучайтесь. У нас в фирме SVN теперь для всего - для программных проектов на ББ, для документов, для публикаций... Очень удобно и безопасно. |
Автор: | Сергей Прохоренко [ Пятница, 03 Август, 2007 15:04 ] |
Заголовок сообщения: | Re: Форматтер текстов учебных примеров - нужен ли и какой? |
Илья Ермаков писал(а): А что за построитель выражений в МС Аксесс? Просто я, например, не работал Это трудно описать словами - нужно попробовать. Скорость и простота разработки запросов в MS Access по сравнению с другими СУБД - просто сказочная. Разумеется, дело не только в "построителе выражений", но и в нем тоже. В качестве иллюстрации привожу две ссылки (полезную и официальную): Полезная: http://adm.jinr.ru/doc/access/page14.htm Официальная: http://office.microsoft.com/ru-ru/access/HA101061751049.aspx#4 Но повторюсь: это надо попробовать (и попытаться обойтись без такого инструмента - это будет на порядокдольше - без всякого преувеличения). |
Страница 1 из 7 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |