Обсуждение:Учебник по программированию: различия между версиями

Содержимое страницы недоступно на других языках.
Материал из Викиучебника — открытых книг для открытого мира
Содержимое удалено Содержимое добавлено
/* Внимание! Все обсуждения удаляются постепенно. Для того, чтобы не засорить страницу обсуждения этого учебника. Если тем болше пяти, то п…
Метка: possible spambot (testing)
Метка: possible spambot (testing)
Строка 1: Строка 1:
== '''TGP - глобальный проект программирование''' ==
== '''TGP - глобальный проект программирование''' ==
<span style="color:purple">'''Внимание! Все обсуждения удаляются постепенно. Для того, чтобы не засорить страницу обсуждения этого учебника. Если тем болше пяти, то первая удаляется. Это правила проекта TGP'''</span>
<span style="color:purple">'''Внимание! Все обсуждения удаляются постепенно. Для того, чтобы не засорить страницу обсуждения этого учебника. Если тем болше пяти, то первая удаляется. Это правила проекта TGP'''</span>
=== <span style="color:green">'''Предложения по улучшению учебника'''</span> ==
=== <span style="color:green">'''Предложения по улучшению учебника'''</span> ===


== О просьбах ==
== О просьбах ==

Версия от 11:40, 22 апреля 2014

TGP - глобальный проект программирование

Внимание! Все обсуждения удаляются постепенно. Для того, чтобы не засорить страницу обсуждения этого учебника. Если тем болше пяти, то первая удаляется. Это правила проекта TGP

Предложения по улучшению учебника

О просьбах

Просьба не вносить никаких изменений в этот учебник! Это пособие для начинающих.

Отмечу, что цель проекта Викиучебник — способствовать совместной разработке учебного (инструктирующего) материала. (О чем упоминает и заглавная страница: «Здесь в вики-среде совместно пишется образовательная литература…»)

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

Некоторые из замеченных неточностей:

  • отсутствие завершающих утверждения ; во многих примерах кода;
  • Perl чувствителен к регистру не только переменных, но и операторов и имен функций; как следствие, оператор If не будет верно воспринят — требуется if; аналогично и функция (не оператор!) print;
  • [ч]тобы символ В не воспринимается [sic] как управляющий ставится знак \ (обратной косой черты). — разве символ В когда-либо понимается Perl как управляющий?? напротив, \ используется для того, чтобы сделать управляющий код из следующего за ним символа n.

Касаемо оформления, — использование явных style=, с одной стороны, усложняет правку (опять же, — Викиучебник посвящен совместной работе), но что хуже — может быть помехой просмотру. Так, некоторые пользователи Викиучебника могут выбрать отличный от умолчания стиль оформления (например: с использованием темно-зеленого цвета фона), в результате чего нынешние зеленые заголовки окажутся трудночитаемыми.

Также не очень удачно смотрятся фрагменты, оформленные ведущими пробелами. Во-первых, поскольку содержащийся в таких фрагментах текст не разбивается на строки, длина строки может превысить ширину окна у конкретного пользователя. Во-вторых, в отличие от ведущих пробелов, использование <source lang="perl" /> дает также и подсветку синтаксиса.

Наконец, поскольку предполагается (!) совместная работа, авторство желательно указать не в тексте учебника, а в «истории» — для чего достаточно зарегистрироваться и, внося изменения, не забывать представляться системе. (Напомню, что регистрация — общая для всех проектов Фонда.)

Ivan Shmakov (ов) 18:21, 14 декабря 2013 (UTC)[ответить]

Почему я прошу не вносить никаких исправлений в мой учебник

Я знаю, что Вики-учебник это онлайн текстовый редактор. Но я прошу не править мой учебник потому, что: многие не знают Perl (я выучил его с начала сентября). 85.26.241.180 09:33, 15 декабря 2013 (UTC)[ответить]

Викиучебник — отнюдь не «онлайн текстовый редактор», но (как уже упомянул выше) — ресурс для совместной разработки учебного (инструктирующего) материала. Это одна из причин, почему для внесения изменений в Викиучебник не необходима какая бы то ни было регистрация — мы считаем, что любой материал здесь может содержать неточности и явные ошибки, и, дабы способствовать их устранению, возможность внести исправления и улучшения должна быть предоставлена любому желающему.
В отношении «многие не знают Perl» — не ясно, как это может быть причиной не вносить исправления в разрабатываемый учебник? Тем более, в случае очевидных неточностей. К примеру, выполним код одного из примеров:
$a = "оператор";
$b = "print";
print $a . $b; # результат: оператор print
Результат:
$ perl -e '$a = "оператор"; $b = "print"; print $a . $b;' 
операторprint
Действительно, ни $a, ни $b, ни вызов функции print не содержат пробелов. Откуда бы им взяться в выводе?
Исправленная мной ранее форма print = "текст" также является синтаксически неверной:
$ perl -e 'print = "текст";' 
Can't modify print in scalar assignment at -e line 1, near ""текст";"
Execution of -e aborted due to compilation errors.
Кроме того, остаются пожелания к оформлению: использование <source lang="perl" /> для оформления фрагментов Perl-кода, исключение «лишних» (мешающих просмотру) '''<span />''' из заголовков, etc. — такие проблемы с оформлением не составило бы труда устранить, пожалуй, никому из более или менее опытных редакторов Викиучебника, совершенно никак не затрагивая содержание. Не ясно, почему такие правки могли бы вызывать возражения?
Ivan Shmakov (ов) 10:42, 15 декабря 2013 (UTC)[ответить]

Обновления в учебнике

Обновления

ЕСЛИ ВЫ НАЧАЛИ ЧИТАТЬ ЭТОТ УЧЕБНИК, ТО ВАМ СТОИТ ЕГО ПЕРЕЧИТАТЬ 85.26.241.200 04:40, 29 декабря 2013 (UTC)[ответить]

85.26.241.239 03:53, 29 декабря 2013 (UTC)[ответить]
Перенесено из Обсуждение участника:Ivan Shmakov#Темы учебников.

Кроме того, в той же главе,разделе Perl, оператор & назван синонимом and, хотя это (очевидно) не так; cf.:

print ((58 and 110), " ", ("Hello" and "World"), "\n");
## → 110 World
print ((58  &  110), " ", ("Hello"  &  "World"), "\n");
##  → 42 @e`ld

В частном случае, когда каждый из операндов заведомо равен 0 или 1, результат ($a & $b) действительно совпадет с ($a and $b). Тем не менее, в общем случае это не так, да и типичным является применение оператора and в качестве условного — do_we_have_a_problem_p () and die ("Houston, we have a problem."), в то время как & в этом контексте не имеет смысла.

Ivan Shmakov (ов) 14:09, 24 января 2014 (UTC)[ответить]

Смысл данного учебника

Я, честно, не очень понимаю смысл существования данного учебника. Во-первых, многие учебники по языкам программирования уже существуют: PHP, Perl, C Sharp, Python и др. Это получается дублирование информации; можно же просто дополнять старые. Во-вторых, такой учебник по разным языкам в будущем сложно будет читать — ведь если продолжать, то объём текста и статьи будет чрезмерный. К тому же даже не представляю себе реальную книгу, в которой были бы описаны столь разные языки. --Brateevsky {talk} 12:22, 28 февраля 2014 (UTC)[ответить]

Не нахожу причин, по которым в проекте не может существовать более одного учебника по теме; при том лишь условии, что дублирование текста при этом невелико.
Проблему объема можно решить создав подстраницы для отдельных разделов. (Тем более, что данный учебник — не единственный «одностраничный» в проекте.) Что хуже, существует проблема категоризации — при таком подходе, учебник можно отнести лишь к наиболее общей тематической категории («языки программирования»), в то время как потенциальный читатель наверняка начнет поиск материала с частных.
Наконец, перечисленные проблемы можно решить в «рабочем порядке»; в частности — дублируя «устоявшийся» материал в более специализированных учебниках. Другое дело, что в материале допущен ряд ошибок, включая оформительские (например: отказ от использования элемента <source /> для оформления фрагментов кода), типографические (использование не принятых в русскоязычной типографике кавычек и дефисов вместо тире), орфографические (Java script и Post script вместо JavaScript и PostScript), и фактические (Как и во всех науках счет начинается с нуля.)
Ivan Shmakov (ов) 08:36, 1 марта 2014 (UTC)[ответить]

Я отвечу так. Искать разные книги для изучения программирования может затянуться на долго и поэтому я собираю языки программирования в один учебник. Удалять не стоит. Это же труды человека. Было ли бы вам приятно, если бы Вы напечатали книгу в одном экземплере, а его порвали? — Это сообщение написано 85.26.241.216 (обс) 2014-03-02T05:23:23 (UTC)

Во-первых, хочу напомнить о необходимости завершать комментарии четырьмя тильдами (~~~~) для автоматической подстановки «идентификатора» участника и временной отметки.
Во-вторых, — об удалении речь не идет. (В противном случае было бы начато новое обсуждение в разделе Викиучебник:К удалению и на странице был бы размещен шаблон {{К удалению|2024-03-28}}, приглашающий всех заинтересованных лиц принять участие в этом обсуждении. К тому же, даже при удалении материал не будет потерян; так, легко обнаруживается копия учебника в Архиве Internet.)
С другой стороны, не могу не отметить, что оставление такого рода пометок в «библиотечных» книгах также не будет приятно ни авторам, ни читателям, ни «библиотекарям».
В-третьих, — о какой проблеме поиска может идти речь в эпоху Всемирной паутины? Подборку материала по теме гораздо лучше оформить как страницу со ссылками на найденный материал, — отнюдь не как страницу, содержащую сам этот материал.
Ivan Shmakov (ов) 07:16, 2 марта 2014 (UTC)[ответить]

В разделе замечен ряд фактических ошибок.

QBasic — это язык программирования для персональных компьютеров.

На деле, QBasic является одной из многих реализаций языка Бейсик (и, возможно, диалектом этого языка.)

Поскольку разработка QBasic прекращена еще в прошлом веке, едва ли найдется причина использовать его сегодня. Тем более, что существуют свободные совместимые реализации, как, например, QB64 и FreeBASIC.

… все операторы записываются в коде программы заглавными буквами. Конечно, все кроме оператора присвоения (=).

… а также операторов «больше» (>), «сложить» (+), … Кроме того, нет и необходимости записывать «буквенные» операторы заглавными — на работу программы это не повлияет. (Хотя встроенный в QBasic редактор и настойчив в приведении имен таких операторов к верхнему регистру.)

Да, оператор («операция») = называется оператором присваивания.

Переменные в QBasic — это чаще всего один символ с присвоенным ему значением.

Как и в других диалектах Бейсика, имена строковых переменных состоят по меньшей мере из двух символов, последним из которых должен быть $ (a$, name$, etc.) Кроме того, для имен целочисленных переменных предусмотрен суффикс % (a%), etc.

Наконец, беглый просмотр кода по ссылкам с http://games.freebasic.net/BASICGaming/Issue9/ не подтверждает тезиса, что Переменные в QBasic — это чаще всего один символ — многосимвольные переменные в данной конкретной выборке, похоже, используются весьма широко.

Ivan Shmakov (ов) 16:26, 5 марта 2014 (UTC)[ответить]

Спасибо за список ошибок в главе QBasic. Кстати, можешь оформить все примеры кода синим цветом. То есть так:

Код примера

37.29.88.110 13:54, 7 марта 2014 (UTC)[ответить]

Прошу прощения? Зачем оформлять примеры кода одним цветом, если можно использовать «контекстную» подсветку?

INPUT "Who are you? "; name$
PRINT "You are: "; name$

Ivan Shmakov (ов) 14:17, 7 марта 2014 (UTC)[ответить]

Ладно оформи примеры кода контекстной подсветкой. Если можешь оформи код еще и полужирным шрифтом. У меня еще к тебе есть просьба. Посмотри код MINI CONSOL'S GAME CENTER. У меня IDLE выдает ошибку. 85.26.241.162 03:14, 8 марта 2014 (UTC)[ответить]

Синтаксис и грамматика

Просьба участников Викиучебника посмотреть учебник на наличие синтаксических и грамматических ошибок. Список ошибок пишите тут:

Ошибка Глава Параграф
Текст ячейки Текст ячейки Текст ячейки
Текст ячейки Текст ячейки Текст ячейки
Текст ячейки Текст ячейки Текст ячейки

Отзывы

Насколько Вы пока оцениваете мой учебник??? Ответ давайте в %. 85.26.241.24 11:43, 11 апреля 2014 (UTC)[ответить]

Добавление неоправданных ссылок

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

FTR, некоторые из таких правок:

  • 90235 — «обманная» ссылка, — из текста ссылки не очевидно, что данная ссылка ведет на страницу другого учебника;
  • 90168 — аналогично; кроме того, нигде на целевой странице ссылки не упоминается AJAX;
  • 90157 — результирующий учебник состоит только из ссылок;
  • 90136 — во-первых, этой правкой сделана недействительной еще одна существующая ссылка на учебник Лисп; во-вторых, нигде на целевой странице ссылки не упоминается ни Scheme, ни Lisp, ни даже функциональное программирование.

Ivan Shmakov (ов) 07:41, 20 апреля 2014 (UTC)[ответить]

Насколько интересно изложен материал в моем учебнике???