Обсуждение:Учебник по программированию: различия между версиями
Метка: possible spambot (testing) |
Метка: possible spambot (testing) |
||
Строка 55: | Строка 55: | ||
: — [[User:Ivan Shmakov|Ivan Shmakov]] ([[User talk:Ivan Shmakov|о]] ▞ [[Special:Contributions/Ivan Shmakov|в]]) 10:42, 15 декабря 2013 (UTC) |
: — [[User:Ivan Shmakov|Ivan Shmakov]] ([[User talk:Ivan Shmakov|о]] ▞ [[Special:Contributions/Ivan Shmakov|в]]) 10:42, 15 декабря 2013 (UTC) |
||
== Обновления в учебнике == |
|||
'''Обновления''' |
|||
ЕСЛИ ВЫ НАЧАЛИ ЧИТАТЬ ЭТОТ УЧЕБНИК, ТО ВАМ СТОИТ ЕГО ПЕРЕЧИТАТЬ |
|||
[[Служебная:Вклад/85.26.241.200|85.26.241.200]] 04:40, 29 декабря 2013 (UTC) |
|||
[[Служебная:Вклад/85.26.241.239|85.26.241.239]] 03:53, 29 декабря 2013 (UTC) |
|||
== [[{{SUBJECTPAGENAME}}#Perl|Perl]] == |
== [[{{SUBJECTPAGENAME}}#Perl|Perl]] == |
Версия от 12:01, 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#Темы учебников.
Кроме того, в той же главе,разделе 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), и фактические (Как и во всех науках счет начинается с нуля.
)
Я отвечу так. Искать разные книги для изучения программирования может затянуться на долго и поэтому я собираю языки программирования в один учебник. Удалять не стоит. Это же труды человека. Было ли бы вам приятно, если бы Вы напечатали книгу в одном экземплере, а его порвали? — Это сообщение написано 85.26.241.216 (обс) 2014-03-02T05:23:23 (UTC)
- Во-первых, хочу напомнить о необходимости завершать комментарии четырьмя тильдами (
~~~~
) для автоматической подстановки «идентификатора» участника и временной отметки.
- Во-вторых, — об удалении речь не идет. (В противном случае было бы начато новое обсуждение в разделе Викиучебник:К удалению и на странице был бы размещен шаблон {{К удалению|2024-04-24}}, приглашающий всех заинтересованных лиц принять участие в этом обсуждении. К тому же, даже при удалении материал не будет потерян; так, легко обнаруживается копия учебника в Архиве Internet.)
- С другой стороны, не могу не отметить, что оставление такого рода пометок в «библиотечных» книгах также не будет приятно ни авторам, ни читателям, ни «библиотекарям».
- В-третьих, — о какой проблеме поиска может идти речь в эпоху Всемирной паутины? Подборку материала по теме гораздо лучше оформить как страницу со ссылками на найденный материал, — отнюдь не как страницу, содержащую сам этот материал.
В разделе замечен ряд фактических ошибок.
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$
Ладно оформи примеры кода контекстной подсветкой. Если можешь оформи код еще и полужирным шрифтом. У меня еще к тебе есть просьба. Посмотри код 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)
Насколько интересно изложен материал в моем учебнике???