По какой причине у нас есть lower_case_with_underscores соглашение о присвоении имен? [закрытый]

Что ОС и ЦП Вы используете? Если Вы используете 32-разрядную ОС, то процесс в Вашей системе физически не может обратиться больше чем к 4 ГБ памяти. Так как большинство текстовых редакторов пытается загрузить весь файл в память, я сомневаюсь, что Вы найдете тот, который сделает то, что Вы хотите. Это должен был бы быть очень необычный текстовый редактор, который может сделать обработку из ядра, т.е. загрузить блок файла за один раз.

можно быть в состоянии загрузить такой огромный файл тем, если Вы используете 64-разрядный текстовый редактор на компьютере с 64-разрядным ЦП и 64-разрядной операционной системой. И необходимо удостовериться, что у Вас есть достаточно пространства в Вашем разделе подкачки или Вашем файле подкачки.

19
задан dav 16 November 2009 в 04:50
поделиться

9 ответов

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

Кроме того, когда вы создаете дополнительные потоки, ОС должна управлять большим количеством потоков. И если для обработки завершенного чтения будет выбран другой ЦП, вы потеряете все кэширование ЦП, в котором был создан ваш поток.

Как вы обнаружили, вы не можете «ускорить» приложение, просто используя добавление тем.

в хорошей настраиваемой программе чтения с экрана, это очень просто). Для людей без каких-либо нарушений зрения, а это, без сомнения, 90% или более, вам не нужно заботиться (если только вы не хотите быть инклюзивным и помогать людям, которые не разделяют ваш дар идеального зрения ... неа, кого волнуют эти парни, верно?!).

Но последовательность по-прежнему важна и помогает всем.

49
ответ дан 30 November 2019 в 01:48
поделиться

Я слышал, что в других контекстах говорилось, что words_with_underscores легче отделить для читателей, не являющихся носителями английского языка, чем wordByCamelCase. Визуально требуется меньше усилий для анализа отдельных иностранных слов.

15
ответ дан 30 November 2019 в 01:48
поделиться

Исторически сложилось так, что многие компьютеры не обладали возможностями смешанного регистра. Во времена COBOL все программы были прописными. В начале 80-х многие «персональные компьютеры» поставлялись только с заглавными буквами. Например, для Apple II + вы можете приобрести карту расширения нижнего регистра. Когда программы начали использовать смешанный регистр, случай верблюда не был популярен. Многие программы взяли то, что раньше было написано заглавными буквами, и просто конвертировали в нижний регистр. На протяжении 80-х годов различные языки приписывали значение регистру, а в 90-х годах Java популяризировала синтаксис camelCase. Языки, которые имеют более древнюю историю или более тесно связаны с системным программированием Unix, как правило, избегают семантического использования смешанного регистра.

6
ответ дан 30 November 2019 в 01:48
поделиться

Соглашение о нижнем регистре с подчеркиванием восходит к unix apis. Все их системные вызовы находятся в этом соглашении.

5
ответ дан 30 November 2019 в 01:48
поделиться

Что бы вы ни делали, я думаю, важно, чтобы вы были последовательны. Я видел пару руководств по стилю (например, Google Python Style Guide ), которые советуют вам использовать символы подчеркивания.

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

Вы используете camelCasing? Я не против! Всегда есть Режим очков . :)

2
ответ дан 30 November 2019 в 01:48
поделиться

Используйте соглашение об именах что использует ваш магазин.

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

2
ответ дан 30 November 2019 в 01:48
поделиться

Это Мейерс придумал aLongAndTotallyUnreadableMethodeName и an_even_longer_but_perfectly_readable_method_name, вы уже использовали его для сравнения? тогда ваша любимая конвенция будет выглядеть более естественно. Но начинающие программисты могут предпочесть символы подчеркивания (размер выборки N = я, в 2001 г.)

Я думаю, что в некоторых языках используется camelCase, потому что их API может быть действительно ужасным. Вам нужно дополнительное пространство, чтобы код мог поместиться в среде IDE без упаковки.

Например:

poly = geometryLibrary.polygonGenerator.createFromPointSet(myList.listContentsToPointset())
1
ответ дан 30 November 2019 в 01:48
поделиться

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

Помните, что в течение всего срока реализации проекта на чтение кода тратится больше времени, чем на его написание.

0
ответ дан 30 November 2019 в 01:48
поделиться

LowerCaseWithUnderScoresAreSuperiorBecauseTheTextYouNormallyReadInABookOrNewsPaperForExampleIsNotWrittenLikeThis. .

12
ответ дан 30 November 2019 в 01:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: