Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Клуб программистов > Свободное общение
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.10.2016, 13:14   #11
Pavia
Лис
Старожил
 
Аватар для Pavia
 
Регистрация: 18.09.2015
Сообщений: 2,409
По умолчанию

По культуре есть очень много, вот:
https://habrahabr.ru/post/303786/
Стивен МакКонналл Совершенный код. - изд Питер. 2005 г.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал .
Pavia вне форума Ответить с цитированием
Старый 14.10.2016, 13:26   #12
8Observer8
Старожил
 
Регистрация: 02.01.2011
Сообщений: 3,328
По умолчанию

Им тоже очень тяжело Trying To Speak Russian!
8Observer8 вне форума Ответить с цитированием
Старый 14.10.2016, 15:11   #13
MihalNik
МегаМодератор
СуперМодератор
 
Регистрация: 27.11.2012
Сообщений: 5,711
По умолчанию

[оффтоп]
Цитата:
Сообщение от 8Observer8 Посмотреть сообщение
Им тоже очень тяжело Trying To Speak Russian!
Ей предлагали слова "миссис" и "мистер")
"Это в Америке мистер. А здесь просто" какой-нибудь "Константин Станиславович"
[/оффтоп]
Благими намерениями устлана дорога на programmersforum.ru
MihalNik вне форума Ответить с цитированием
Старый 14.10.2016, 15:27   #14
GreenWizard
мальчик-помогай =)
Форумчанин
 
Регистрация: 16.09.2010
Сообщений: 522
По умолчанию

Цитата:
Сообщение от SayHello Посмотреть сообщение
Мог бы ты мне подсказать,где можно почитать подобные вещи, про культуру,кодекс программиста и т.д. Не хочу в итоге оказаться "Васьком" и где то в грязь лицом упасть. Цель стать довольно компетентным и творить чудеса )))
Прямо такого единого и всеобщего стандарта нету. Есть куча обрывочных упоминаний (например, по запросу "принципы хорошего кода), есть серьёзные сборники правил (запрос "*язык* style guidlines"), НО:
- оно очень для разного уровня.... там есть правила для очень специфических вещей, которые новички и не выдели, а есть и совсем простые правила... оно всё идёт скопом, поэтому может образоваться ещё большая каша в голове, чем была
- многие рекомендации являются личным виденьем их авторов (будь то Вася Пупкин или же опыт NASA - это сугубо их мнение, на основе их опыта и условий работы)
- твоё виденье кода будет меняться, а с ним и твой личный набор предпочтений..... например, я длительное время ставил { на новой строке, а сейчас мне это режет глаз т. к. пришёл к др. стилю

С другой стороны, есть общие моменты, которые стоит соблюдать хоть как-то. Например:
- Отступы в коде. Ты можешь использовать хоть пробелы, хоть табы, ставя их хоть по одному, хоть по 10, но они должны быть и иметь один общий стиль. Намного легче "переключиться" на др. стиль отступов, чем читать код без них.
- Именование. Как я уже писал, очень желательно использовать англ., а не какой-то транслит, НО ещё более важно, чтоб имена отражали суть вещей и были понятными (но без перегибов, а то тут один хомяк мой додумался давать имена по 4+ слов англ., чтоб прям всё передать в имени). Ещё программирование тесно завязано на доверии, поэтому не стоит "слона" называть "машиной" Грубо говоря, только счётчики циклов могут иметь имена i/j/k, а всё остальное должно иметь вполне осознанные имена, чтоб никто не спрашивал себя "а f6876 что делает?".... кстати, наличие чисел в именах - тоже не ок, в 99% случаев (есть жаргонные замены, например, "То" на "2"... strToInt -> str2int.... но и они допустимы редко)
- Умение гуглить... не совсем касается кода, но бесят вопросы, которые решаются одним запросом гуглу, но человек либо не умеет гуглить, либо ему лень. Есть вопросы, которые требуют опыта и знаний, на них вот приятно отвечать, а есть откровенные сопли аля "мимими, решите за меня, вам тут делать нечего ведь"

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

Последний раз редактировалось GreenWizard; 14.10.2016 в 15:34.
GreenWizard вне форума Ответить с цитированием
Старый 14.10.2016, 15:34   #15
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Цитата:
Сообщение от GreenWizard Посмотреть сообщение
запрос "*язык* style guidlines"
Еще есть более общие книги типа "Совершенный Код" Макконнелла.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 14.10.2016, 17:08   #16
SayHello
Новичок
Джуниор
 
Регистрация: 13.10.2016
Сообщений: 4
По умолчанию

Я пока еще не имею представления о хорошо и понятно написанном коде или хреново написанном ,но эни вей большое спасибо,что уделил время

p/s По поводу отступов.
int a=1,b=x+y - не правильно.
int a = 1, b = x+y -правильно
Я так понял?
SayHello вне форума Ответить с цитированием
Старый 14.10.2016, 17:17   #17
8Observer8
Старожил
 
Регистрация: 02.01.2011
Сообщений: 3,328
По умолчанию

Мне кажется, что если человек не имел никакого представления о программировании и начнёт читать "Совершенный Код", то он скоро заскучает и ошибочно может подумать, что программирование не его.

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

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

Последний раз редактировалось 8Observer8; 14.10.2016 в 17:22.
8Observer8 вне форума Ответить с цитированием
Старый 14.10.2016, 17:19   #18
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Цитата:
Я так понял?
не. Скорее про
Код:
void DoStuff(int x)
{
    for (int i = 0; i < 10; i++)
    {
        if (i == x)
        {
            Foo();
        }
        else
        {
            int y = i * 2;
            FooBar(y);
        }
    }
}
вместо
Код:
void DoStuff(int x)
{                for (int i = 0 ; i < 10; i++)
{
                           if (i ==x) { Foo(); }
        else        {
            int y = i * 2; FooBar(y);   }   }
}
Конкретный стиль (табы или пробелы, { на новой строке или нет, пробелы вокруг = или нет и т.п.) не важен, главное чтоб одинаковый во всем проекте или соответствовал принятому в команде, языке и т.п.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.

Последний раз редактировалось Alex11223; 14.10.2016 в 17:21.
Alex11223 вне форума Ответить с цитированием
Старый 14.10.2016, 17:38   #19
GreenWizard
мальчик-помогай =)
Форумчанин
 
Регистрация: 16.09.2010
Сообщений: 522
По умолчанию

Цитата:
Сообщение от SayHello Посмотреть сообщение
p/s По поводу отступов.
int a=1,b=x+y - не правильно.
int a = 1, b = x+y -правильно
Я так понял?
Код:
command1;
command2;
while(...){
command3;
if(....)
command4;
}
command5;
с отступами (2 пробела):
Код:
command1;
command2;
while(...){
  command3;
  if(....)
    command4;
}
command5;
уже видны "вложения" и проще ориентироваться

про автоформатирование: IDE умеет само форматировать, все основные алгоритмы есть в стандартных библиотеках языков, для любых задач уже есть framework-и и всякие "визуальный конструктор сайтов\игр\др."..... всё, народ, расходимся, программисты не нужны
это прекрасно, что оно автоматически форматирует код, я сам этим пользуюсь, но если я начну писать в стиле "а пофиг, потом нажму кнопку и оно станет читаемым", то задачи я буду решать дольше и, главное, хуже... я не призываю писать в блокноте и вручную соблюдать все отступы, НО за ними нужно следить, чтоб не допустить менее заметных и более опасных ошибок... оно нужно далеко не для эстетического удовольствия, а из вполне практических нужд
GreenWizard вне форума Ответить с цитированием
Старый 14.10.2016, 17:50   #20
one_man_show
Пользователь
 
Аватар для one_man_show
 
Регистрация: 07.10.2016
Сообщений: 23
По умолчанию

Начинающему программисту как правило трудно читать вспомогательные материалы, особенно про стиль, оформление и т.п., так как в первую очередь важнее сконцентрироваться на языке, синтаксисе и используемом инструменте. Но есть испытанный годами способ: выберите в качестве материала для изучения исходные тексты одного известного автора, используйте приёмы, алгоритмы и методы программирования этого автора, стиль удастся перенять автоматически в процессе изучения.
Во времена DOS в качестве такого автора было удобно использовать огромную библиотеку примеров производителя компиляторов Turbo C и Turbo Pascal от компании Borland. И примеры были классные, часто их куски можно было использовать в своих реализациях, и стиль навязывался определенный, его автоматом перехватывал, не задумываясь.
Позже та же фирма выпустила Delphi и Builder, которые поставлялись с массой примеров, приучающих к определенному стилю.
С уважением,
Ваган Саруханов
one_man_show вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Тест на знание СУБД MS SQL и на знание языка программирования T-SQL nactyx SQL, базы данных 11 09.11.2015 15:49
Изучение Американского английского russian-stalker Свободное общение 14 27.06.2010 20:33
автоматический перевод с английского Alar Общие вопросы Delphi 5 04.04.2008 18:23