Логин:     Забыли пароль?
 
Пароль:   Регистрация

Форум / Программирование - В помощь новичкам и любителям.  

В помощь новичкам и любителям.


Страницы: «1» «2» «3» «4» «5» «6» «7» «8» «9» «10»
bugmenot
bugmenot
3-ий класс
Сообщения: 88
[Сообщение #81] 3 апреля 2012, 19:12

Цитата (Ерёмин А.А.):

Кто не будет читать — дураки.

Не дураки, а справочные вампиры :-)
И вообще, isLine из примера не для всех очевидно что это проверка на прямую, ибо иностранный язык прогуливали вместе с информатикой, им подавай svo6: Mas2;

виконання програми розпочинається з того самого мiсця, де призупинилося.

Gooddy
Gooddy
3-ий класс
Сообщения: 84
[Сообщение #82] 11 апреля 2012, 02:33
Фух. Систематизировать всю эту информацию оказалось труднее чем я думал. Вот содержание-список тем.

Цитата:

- Вредные советы - ошибки, которые не видит компилятор
-- Введение. Какие ошибки не видит компилятор (и что даст их исправление)
-- Ошибки связанные с типами
--- Выбор слишком “маленького” типа
--- Выбор ну совсем не того типа (а также незнание встроенных возможностей языка)
--- Изобретение велосипеда
--- Неправильное использование логического типа
-- Ошибки связанные с незнанием языковых конструкций
--- if вместо case
--- while вместо for
--- if+while вместо repeat-until
-- Выводы. Что дало избежание этих ошибок

- Полезные советы - хороший код, который работает также
-- Советы по написанию кода (по форматированию, по регистру и т.д.)
--- Советы по идентификаторам (по названиям переменных, классов, модулей)
--- Советы по константам (замена магических чисел)
--- Советы по отступам
-- Советы по способу абстракции частей кода.
--- Зачем нужно резать код на части?
--- Способы представления кода (программы)
---- Процедурное программирование
----- Рекурсия. Как использовать. Чем заменить
---- Объектно-ориентированное программирование
---- Программа как автомат
---- Функциональное программирование
-- Выводы. Что дало применение этих советов


Если какой-то пункт непонятен (непонятно про что там будет написано), могу разъяснить.

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

В целом планируется вначале как можно проще, быстрее и интереснее рассказать обо всём, что читатели получат, если будут программировать не "чтобы работало", а "чтобы я затем смог вернуться и поправить" ("чтобы затем ведущий/препод не отправил переписывать" / "чтоб другие разработчики матом не ругались"). Ну и естественно придётся упомянуть о том, что не всегда нужно стремиться к чистоте/понятности, к краткости, к скорости работы или к скорости написания.

Конечно много моментов в этом деле личные для каждого программиста, поэтому я попробую по ходу дела представлять как можно больше альтернатив.

Если есть желающие написать о каком-то пункте, сообщите.

Буду благодарен если сможете помочь с дополнением списка.

Чисти код! Чисти код! Чисти код!
Gooddy
Gooddy
3-ий класс
Сообщения: 84
[Сообщение #83] 11 апреля 2012, 02:41
В какой-то степени про это дело уже написано (рефакторинг/чистый код), однако там больше информации о том, как переделать уже существующий код, а не писать с нуля хорошо.

Ну и конечно о таких часто встречающихся ошибках как if boolValue == true then ... там не написано.

Тем более по дельфи/паскалю таких книжек нет вообще (оно и понятно почему).

to bugmenot: одной из первых будет представлена рекомендация купить русско-английский словарь. Или на худой конец пользоваться онлайн-переводчиками.

Чисти код! Чисти код! Чисти код!
bugmenot
bugmenot
3-ий класс
Сообщения: 88
[Сообщение #84] 11 апреля 2012, 13:37

Цитата (Gooddy):

одной из первых будет представлена рекомендация купить русско-английский словарь

Вот это правильно! А то щас мода мешать французский с нижегородским уже зашкаливать начала. Типа all_pokupki из кучи SQL, которую тут один хмырь навалил.

Цитата (Gooddy):

if boolValue == true then

Что-то у тебя здесь смешалась верблюжка с паскалем :-)
Это в общем-то не ошибка, а обезьяний boolshit, о котором не пишут потому что очевидно.

Цитата (Gooddy):

чтобы затем препод не отправил переписывать"

Тут такая тонкость - огромному количеству паскального говнокода мы обязаны именно преподаванию TP/Delphi в различных быдлоучебных заведениях. В ракоморье об этом хорошо написано в разделе Дельфишколокод.

Цитата (Gooddy):

Если есть желающие написать о каком-то пункте, сообщите.

Есть такая мысль - взять халявный хостинг, взгромоздить туда dokuwiki и больше не мучаться с ужасным форумом.

виконання програми розпочинається з того самого мiсця, де призупинилося.

Gooddy
Gooddy
3-ий класс
Сообщения: 84
[Сообщение #85] 11 апреля 2012, 18:57
Вообще основной аргумент для использования английского - все ключевые слова в delphi (и ещё тысяче языков) далеко не на русском.

Вики это хорошая идея.

if boolValue == true then - это конечно мощно. Читал Мука (AS3) и видимо машинально скрестил с дельфи. Жаль скобочки забыл.

Чисти код! Чисти код! Чисти код!
bugmenot
bugmenot
3-ий класс
Сообщения: 88
[Сообщение #86] 12 апреля 2012, 13:17

Цитата (Gooddy):

Вики это хорошая идея.

Я бы предоставил валяющуюся без дела mediawiki, но у меня на том хосте почему-то хронически не шлется мыло.

Верблюжка обусловлена в первую очередь чувствительностью языков к регистру, соответственно в Паскале не имеет смысла.

виконання програми розпочинається з того самого мiсця, де призупинилося.

Gooddy
Gooddy
3-ий класс
Сообщения: 84
[Сообщение #87] 12 апреля 2012, 18:41
Ой ну нет!

Верблюжка в регистронезависимых языках это рай для чтения многосоставных идентификаторов.

Цитата:

User, NewUser, AnotherUser, SuperUser, JustAnotherUserForExample

Цитата:

User, Newuser, Anotheruser, Superuser, Justanotheruserforexample

Цитата:

user, newUser, anotherUser, superUser, justAnotherUserForExample

Цитата:

user, newuser, anotheruser, superuser, justanotheruserforexample


Не было бы нужды читать код, было бы всё как в примерах 2 и 4. А так CamelCase компилятору не нужен, он нужен программисту.

Чисти код! Чисти код! Чисти код!
Gooddy
Gooddy
3-ий класс
Сообщения: 84
[Сообщение #88] 12 апреля 2012, 18:55
Конечно, стоит заметить, что в некоторых случаях лучше читается вот_такой_вот_вариант, но в паскале/дельфи хороший тон - ТолькоВерблюжийСтиль, причём обязательно с большой буквы.

Чисти код! Чисти код! Чисти код!
bugmenot
bugmenot
3-ий класс
Сообщения: 88
[Сообщение #89] 13 апреля 2012, 12:11

Цитата (Gooddy):

ТолькоВерблюжийСтиль, причём обязательно с большой буквы

ЭтоНеВерблюжка
вотЭтоОна

виконання програми розпочинається з того самого мiсця, де призупинилося.

Gooddy
Gooddy
3-ий класс
Сообщения: 84
[Сообщение #90] 14 апреля 2012, 03:20
Большая верблюжка же

Чисти код! Чисти код! Чисти код!

Страницы: «1» «2» «3» «4» «5» «6» «7» «8» «9» «10» (всего страниц: 10, текущая: 9)
Всего сообщений: 96 (сейчас показаны: с 81 по 90)

Перейти в раздел:


 © 2004 - 2018, Delphi.int.ru
Версия форума: 1.10 (19.01.2010)
RSS Delphi.int.ru Expert Код
Выполнено за 0.08 сек.
Обратная связь  
Рейтинг@Mail.ru Majordomo.ru - надёжный хостинг