Я только начинаю изучать C #. Исходя из опыта работы с Java, C ++ и Objective-C, я нахожу Pascal в C # с именами методов довольно уникальными, и сначала их трудно привыкнуть. В чем причина и философия?
Я предполагаю, что это из-за свойств C #. В отличие от Objective-C, где имена методов могут совпадать с переменными экземпляра, это не относится к C #. Я бы предположил, что одна из целей свойств (как и в большинстве языков, которые его поддерживают) - сделать свойства действительно неотличимыми от переменных и методов. Таким образом, в C # может быть «int x», и соответствующее свойство становится X. Чтобы гарантировать, что свойства и методы неразличимы, поэтому все имена методов, которые я предполагаю, также должны начинаться с заглавной буквы. (Это всего лишь моя гипотеза, основанная на том, что я знаю о C # до сих пор - я все еще учусь). Мне очень любопытно узнать, как возникло это любопытное руководство (учитывая, что оно '
(РЕДАКТИРОВАТЬ: под Pascal-case я подразумеваю PascalCase (в основном это camelCase, но начинающийся с заглавной буквы). Имена методов обычно начинаются со строчной буквы в большинстве языков)
Ответы:
Это вопрос вкуса. Кто-то однажды решил использовать стиль Pascal для имен, и это стало стандартом.
У меня есть дикое предположение, что именно Андерс Хейлсберг был архитектором Delphi, преемника Паскаля. Стиль корпуса там такой же, как в C #.
источник
Если вы спрашиваете о причинах, вот один прямо изо рта лошади:
Статья Брэда Абрамса « История вокруг корпуса Паскаля и корпуса верблюда » в блогах MSDN
И вот рекомендации по проектированию: Рекомендации по проектированию для разработчиков библиотек классов
источник
TurboPascal
это ребенокPhilip Kahn
(akaBorland
), который очень удобно забыть для Microsoft. Политика ....Не знаю о философии, но оболочка Pascal, кажется, распространена на платформах Microsoft, по крайней мере, с Win32 API дней.
источник
Я не думаю, что за этим стояла особая философия. Там должны были быть руководящие принципы, и было много моментов, которые могли повлиять на это:
источник
Я не знаю, что за корпусом есть «философия», за исключением того, что он красив и компактен и может легко отображаться в виде нескольких слов без подчеркивания.
За последние несколько десятилетий было много вариантов обсадных колонн. Они варьировались от очень кратких (см. C и стандартная библиотека C) до многословных с подчеркиванием, разделяющим каждое слово. Хотя соглашение об именах в библиотеке .NET все еще довольно многословно, я думаю, что оно занимает некоторую среднюю позицию в отношении корпусов.
источник
(- var1 var2)
Принимая дикие (но не лишенные смысла, догадки) предположения, дизайн C # курировал Никлаус Вирт , первоначальный изобретатель Паскаля. Видишь связь? ... :)
Любопытно # 1: я точно помню объявление .NET и C # (да, я доисторический ...) и как Microsoft хвасталась, имея имя Вирта на C #. Тем не менее, страницы Википедии ни на одном (C # и Wirth) не упоминают об этом.
Любопытный # 2: Хотя он и называется
PascalCase
, он был популяризированTurboPascal
компилятором (который в итоге сталBorland
), а не самим языком.источник