Происхождение имени языка С#
Я программист на C и С++, и теперь я пытаюсь изучить С#. Я купил книгу Professional С# публикациями Wrox.
При переносе с C на С++ у меня возникло сомнение, почему ++
был добавлен в C. Позже я понял, что поскольку ++
является оператором приращения, и он был добавлен в C только для того, чтобы обеспечить "объектно-ориентированное расширение",.
В С#, каково значение #
?
Ответы
Ответ 1
Название "C sharp" было вдохновлено музыкальной нотой, где резкое указывает, что письменное примечание должно быть сделано на полшага выше в поле. [6] Это похоже на имя языка С++, где "++" указывает, что переменная должна быть увеличена на 1. Острый символ также похож на лигатуру из четырех символов "+" (в сетке "два на две" ), далее подразумевая, что язык является приростом С++.
Из-за технических ограничений отображения (стандартных шрифтов, браузеров и т.д.) и того факта, что резкий символ (♯, U + 266F, MUSIC SHARP SIGN ) нет на стандартной клавиатуре, знак числа (#, U + 0023, NUMBER SIGN) был выбран для представления резкого символа в письменном названии языка программирования. [7] Это соглашение отражено в спецификации языка ECMA-334 С#. 3 Однако, когда это практично это делать (например, в рекламе или в box art [8]), Microsoft использует предполагаемый музыкальный символ.
Из Википедии.
Кроме того, в это интервью, Андерс Хейльсберг говорит:
"Мы хотели иметь ссылку на наследие языков C в названии и, наконец, на С#. Некоторые другие кандидаты, которых я помню, были eC, Safe C, C-square, C-cube, C-prime, C-star, и цезий... Глядя, и теперь я очень доволен нашим выбором".
Наконец, Наоми Гамильтон задал вопрос Андерсу Хейльсебергу прямо:
[NH] Почему язык был первоначально назван Cool, и что способствовало изменению на С#?
[AH] Кодовое имя было Cool, которое означало "C как объектно-ориентированный язык". Нам вроде понравилось это имя: все наши файлы назывались .cool, и это было классно! Мы серьезно смотрели на то, чтобы сохранить название для конечного продукта, но это было просто невозможно с точки зрения торговой марки, поскольку там было слишком много классных вещей.
Итак, комитет по именованию должен был работать, и нам нравилось понимать, что у него есть неотъемлемая ссылка на C, и небольшое слово играет на С++, так как вы можете рассматривать резкий знак как четыре плюса, поэтому его С++++. И музыкальный аспект тоже был интересен. Так что С# это было, и я действительно был очень доволен этим именем. Это служило нам хорошо.
Ответ 2
Учитывая, что это веб-сайт программиста, возможно, интересно перечислить "настоящие имена", имена, которые программисты Microsoft использовали при работе над проектами. Эти имена, как и археологические записи, как правило, появляются в исходном коде для CLR (ротор), файлов заголовков SDK и справочного источника.
С# начался как COOL (C-подобный объектно-ориентированный язык). Роторные make файлы показывают, что ранний код С# мог быть написан в файлах с расширением .cool filename. Тем не менее, есть также несколько мест, где он называется COOLC.
В CLR было несколько имен. Он начинался как проект внутри группы, работающей в Windows 2000 COM +, в исходном коде CLR имеется много ссылок на "ComPlus". Код исключения для управляемого исключения: 0xe0434f4e, 0xe0 + "COM" +1. В файле WinError.h коды ошибок CLR используют "URT", "Universal Run Time". Сокращение "Cor" появляется во многих местах в интерфейсах хостинга "COM Object Runtime". Исходный код CLR очень часто использует акроним EE, отличный от COR, короткий для Execution Engine и часть изменений в базе кода CLR, чтобы заставить его выполнять управляемый код.
Внутренние имена проектов, которые я видел:
- Rainier: Visual Studio 2002
- Everett: Visual Studio 2003
- Whidbey: Visual Studio 2005
- Orcas: Visual Studio 2008
- Гавайи: Visual Studio 2010 (очень рано)
- Ротор: версия исходного кода CLR
- Avalon: WPF
- Indigo: WCF
- Юкон: SQL Server 2005
- Katmai: SQL Server 2008
- Strike: пользовательское расширение отладчика, используемое для отладки первой версии CLR, превратилось в SOS (Son of Strike).
Ответ 3
В 1991 году Аль Стивенс представил D-Flat в журнале Dobbs Journal (DDJ); основанная на DOS инфраструктура для создания пользовательских интерфейсов (см. http://www.ddj.com/184408553). В то время D-Flat была написана на C, потому что Al Stevens написал столбец C Programming для DDJ. Название С++ уже было взято, и он рассмотрел C-Sharp, но был убежден, что кто-то уже об этом подумал (см. http://www.ddj.com/184410858). Мое мнение таково, что Аль-Стивенс долго думал о имени C-Sharp, потому что D-Flat не был прихотью, и у него так много языкового опыта.
Ответ 4
Посмотрите на это объяснение: http://www.jameskovacs.com/blog/CNETHistoryLesson.aspx
Название С# было музыкально вдохновлено. это язык C-стиля, который является шагом выше C/С++, где sharp (#) означает a полутона над запиской.
Ответ 5
"#" на самом деле означает музыкальный резкий символ - поскольку ++ указывает, что С++ - с приращением C, # указывает на С++ с добавлением или С++++; язык с C-синтаксисом, предлагающий функции более высокого уровня.
Ознакомьтесь с статьей wikipedia об этом.
Ответ 6
Это просто имя. Символ # берется из музыкальной нотации, означающей, что С# (C sharp) - половина примечания выше C.
С# частично основан на C/С++, но также на Java и Pascal (Delphi). Подобно Java, С# - объектно-ориентированный язык, а С++ и Pascal - процедурные языки с добавленной возможностью ориентации объектов.
Ответ 7
В дополнение к музыкальным ссылкам, отмеченным в других местах, обратите внимание, что символы "♯" и "#" выглядят как перекрывающиеся символы "+".
В конце концов, хотя это было маркетинговое решение, а не техническое.
(В стороне: в то время мы думали, что это плохой выбор, потому что поисковые системы игнорируют "специальные" символы, и вы получите результаты для "C". Теперь поисковые системы умнее.)
Ответ 8
С# - это музыкально вдохновленное название, а также Polyphonic С#
Ответ 9
"#" на самом деле означает музыкальный резкий символ - поскольку ++ указывает, что С++ - с приращением C, # указывает на С++ с добавлением или С++++; язык с C-синтаксисом, предлагающий функции более высокого уровня.
Ответ 10
хорошо, а С++ - с "Object Oriented Extension", С#, с другой стороны, не основано на c только синтаксисе и является тотальным объектно-ориентированным и компилируется в msil, тогда как собственный С++ компилируется в собственный двоичный код...