В Java имя файла должно быть общедоступным именем класса, определенным в том файле Java. C# имеет подобное требование? у меня может быть файл A.cs, который только определяет общедоступный Класс B внутри? спасибо,
Нет, нет аналогичное требование.
Да, вы можете это сделать.
Однако это считается плохой практикой.
Microsoft StyleCop предупредит вас, если вы сделаете это, но все будет скомпилировано нормально.
Нет, не требуется, чтобы имя файла соответствовало единственному общедоступному классу, определенному в файле. Фактически, нет необходимости иметь связь между именем содержащего файла и любыми классами, которые определены в файле. В этом утверждении подразумевается, что можно даже определить более одного класса в одном и том же включающем файле (даже если существует несколько общедоступных классов, в отличие от Java). Более того, можно определить класс для нескольких файлов с помощью ключевого слова partial
.
Однако передовой практикой является определение одного класса для каждого файла и присвоение файлу того же имени, что и определяемый класс (или структура и т. Д.).
Нет, в C # вам не нужно называть свой класс так же, как ваш файл.
Аналогичным образом, вы можете иметь несколько общедоступных
классов в файле. Java позволяет иметь только один.
Это может быть полезно для определения нескольких общедоступных перечислений в одном файле. Из нескольких небольших классов.
Однако класть слишком много в один файл - плохая практика.
imagemagick имеет команду под названием identity, которая обрабатывает это - проверьте с бумажной документацией - вероятно, есть способ справиться с этим из вашего приложения RoR.
-121--2303391-Что касается места хранения паролей: используйте одностороннее солевое хеширование для обеспечения безопасности. Вот статья о том, почему .
-121--4903883- Возможно наличие файла A.cs
, который содержит открытый класс B
, но считается неправильной практикой.