NForum.RU: С Sharp - NForum.RU

Перейти к содержимому

Страница 1 из 1
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

С Sharp с чем его едят

#1 Пользователь офлайн   Shurf 

  • Бывалый
  • Иконка
  • Группа: Суперпользователи
  • Сообщений: 124
  • Регистрация: 10.05.2006

Иконки сообщения  Отправлено Friday, 28.07.2006 - 00:30

Подскажите в чем заключается особенность программирования С# от соответственно С и С++. И с чем енто вообще едят, то бишь какой пакет программ нужен для программирования ?
0


Страница 1 из 1
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

Другие ответы в этой теме

#2 Пользователь офлайн   Creperum 

  • Завсегдатай
  • Иконка
  • Группа: Суперпользователи
  • Сообщений: 429
  • Регистрация: 23.02.2006

Отправлено Friday, 28.07.2006 - 19:38

Скажу честно - С# не знаю ВООБЩЕ. Так что только теоритически, то что видел/слышал.
С# поставляется с той же Visual Studio (в наиболее полных версиях, ессно... Enterprise; Professional, на худой конец). Там он, кстати, реализован достаточно полно, то бишь, есть уже готовые "основы" для решения каких-то стандартных задач.
С чем его едят и в чем "фишка" - как я уже сказал, нинаю, необразованый я :) . Но точно знаю, что C# очень широко используется в рамках платформы .NET
Короче, как я понимаю, эта зверюга разводится скотоводами из некоей малоизвестно фирмы Microsoft...
Собсна, вот. :)
0

#3 Пользователь офлайн   Shurf 

  • Бывалый
  • Иконка
  • Группа: Суперпользователи
  • Сообщений: 124
  • Регистрация: 10.05.2006

Иконки сообщения  Отправлено Saturday, 29.07.2006 - 01:14

Мож кто есчо попробует разагнать туман, а то есчо больше заитересовало :D
0

#4 Пользователь офлайн   hate`me`bitch 

  • Осваивающийся
  • Иконка
  • Группа: Пользователи
  • Сообщений: 18
  • Регистрация: 08.06.2006

Отправлено Saturday, 05.08.2006 - 23:10

http://ru.wikipedia.org/wiki/C_Sharp =)

P.S. Либо у меня паранойя, либо моё последнее сообщение с этой сцылкой правда исчезло :blink:
0

#5 Пользователь офлайн   Creperum 

  • Завсегдатай
  • Иконка
  • Группа: Суперпользователи
  • Сообщений: 429
  • Регистрация: 23.02.2006

Отправлено Sunday, 06.08.2006 - 02:07

Либо у меня глюки, либо это действительно так...

А по существу материала - спасибо. Ясно и чётко. Как это я не догадался заглянуть? :)

Кстати, всё таки про скотоводов я был прав. :D Я тут открыл Dreamweaver (если кто не в курсе - это вообще-то тварь для разработки именно Веб-приложений)... Так вот. Там, выбирая что создать видишь чудную строку:
Create new: ASP .NET C#
Так что вот. Думайте сами, решайте сами - иметь или не иметь (базовые знания о C#) :D .
Применяют обширно кешно... Хотя я прекрасно на сегодняший день обхожусь и без знания С# :D .
0

#6 Пользователь офлайн   RenegadeMS 

  • Энтузиаст
  • Иконка
  • Группа: Супермодераторы
  • Сообщений: 72
  • Регистрация: 29.12.2005

Отправлено Tuesday, 08.08.2006 - 19:07

По моему еще одна разработка, которая нужна мало кому:)
0

#7 Пользователь офлайн   Eclipse TH 

  • Бывалый
  • Иконка
  • Группа: Суперпользователи
  • Сообщений: 135
  • Регистрация: 25.10.2007

Отправлено Tuesday, 20.11.2007 - 22:36

Вот инфа о Шарпе (с Википедии скачал).

C# (произносится си-шарп) — язык программирования, сочетающий объектно-ориентированные и аспектно-ориентированные концепции. Разработан в 1998—2001 годах группой инженеров под руководством Андерсa Хейлсбергa в компании Microsoft как основной язык разработки приложений для платформы Microsoft .NET. Компилятор с C# входит в стандартную установку самой .NET, поэтому программы на нём можно создавать и компилировать даже без инструментальных средств вроде Visual Studio.

C# относится к семье языков с C-подобным синтаксисом, из них его синтаксис наиболее близок к С++ и Java. Язык имеет строгую статическую типизацию, поддерживает полиморфизм, перегрузку операторов, указатели на функции-члены классов, атрибуты, события, свойства, исключения, комментарии в формате XML. Переняв многое от своих предшественников — языков С++, Delphi, Модула и Smalltalk — С#, опираясь на практику их использования, исключает некоторые модели, зарекомендовавшие себя как проблематичные при разработке программных систем: так, C# не поддерживает множественное наследование классов (в отличие от C++) или вывода типов (реализовано в .NET Framework 3.0).

Особенности языка

C# разрабатывался как язык программирования прикладного уровня для CLR и, как таковой, зависит, прежде всего, от возможностей самой CLR. Это касается, прежде всего, системы типов C#, которая отражает FCL. Присутствие или отсутствие тех или иных выразительных особенностей языка диктуется тем, может ли конкретная языковая особенность быть транслирована в соответствующие конструкции CLR. Так, с развитием CLR от версии 1.1 к 2.0 значительно обогатился и сам C#; подобного взаимодействия следует ожидать и в дальнейшем. (Однако эта закономерность будет нарушена с выходом C# 3.0, представляющим собой расширения языка, не опирающиеся на расширения платформы .NET.) CLR предоставляет C#, как и всем другим .NET-ориентированным языкам, многие возможности, которых лишены «классические» языки программирования. Например, сборка мусора не реализована в самом C#, а производится CLR для программ, написанных на C# точно так же, как это делается для программ на VB.NET, J# и др.


Название языка[/b]

Нота до-диез

Символ # в названии языка можно интерпретировать и как две пары плюсов ++, намекающие на новый шаг в развитии языка по сравнению с C++ (подобно шагу от C к C++), и как музыкальный символ диез, вместе с буквой C составляющий в английском языке название ноты до-диез. Последнее и дало название языку. Несмотря на то, что символ # (октоторп) в действительности является символом для обозначения номера на большинстве клавиатур и отличается от символа диез ♯ (Unicode U+266F), Microsoft, как автор языка, неоднократно обращалась к своим клиентам с просьбой принять это допущение.


Стандартизация

Первая версия C# стандартизированa в ECMA (Standard ECMA-334 C# Language Specification, 3rd edition (June 2005)) и ISO (ISO/IEC 23270:2003, Information technology — C# Language Specification). Базируясь на этой спецификации, известно, как минимум, о двух независимых реализациях C#, находящихся в настоящее время на различных стадиях разработки
Mono, начата компанией Ximian и продолжена ее покупателем и преемником Novell.
dotGNU и Portable.NET, разрабатываемые Free Software Foundation

В конце 2005 года Microsoft объявила о планах предать публичной спецификации вторую версию C#, но к настоящему времени эта спецификация еще не получила статус международного стандарта. Существующее положение ставит, таким образом, Microsoft в роль едва ли не единственной рыночной силы, развивающей C#.


Версии


Версия 1.0

Проект C# был начат в декабре 1998 и получил кодовое название COOL (C-style Object Oriented Language). Версия 1.0 была анонсирована вместе с платформой .NET в июне 2000 года, тогда же появилась и первая общедоступная бета-версия; C# 1.0 окончательно вышел вместе с Microsoft Visual Studio .NET в феврале 2002 года.

Первая версия C# напоминала по своим возможностям Java 1.4, несколько их расширяя: так, в C# имелись свойства (выглядящие в коде как поля объекта, но на деле вызывающие при обращении к ним методы класса), индексаторы (подобные свойствам, но принимающие параметр как индекс массива), события, делегаты, циклы foreach, структуры, передаваемые по значению, автоматическое преобразование встроенных типов в объекты при необходимости (boxing), атрибуты, встроенные средства взаимодействия с неуправляемым кодом (DLL, COM) и прочее.

Кроме того, в C# решено было перенести некоторые возможности C++, отсутствовавшие в Java: беззнаковые типы, переопределение операций (с некоторыми ограничениями, в отличие от C++), передача параметров в метод по ссылке, методы с переменным числом параметров, оператор goto. Также в C# оставили ограниченную возможность работы с указателями — в местах кода, специально обозначенных словом unsafe и при указании специальной опции компилятору.


Версия 2.0

Проект спецификации C# 2.0 впервые был выложен Microsoft в октябре 2003 года; в 2004 году выходили бета-версии (проект с кодовым названием Whidbey), C# 2.0 окончательно вышел 7 ноября 2005 года вместе с Visual Studio 2005 и .NET 2.0.

Новые возможности в версии 2.0
Частичные типы (разделение реализации класса более чем на один файл).
Обобщённые, или параметризованные типы (generics). В отличие от шаблонов C++, они поддерживают некоторые дополнительные возможности и работают на уровне виртуальной машины. Вместе с тем, параметрами обобщенного типа не могут быть выражения.
Новая форма итератора, позволяющая создавать сопрограммы с помощью ключевого слова yield, подобно Python'у и Руби.
Анонимные методы, обеспечивающие функциональность замыкания.
Оператор '??': return obj1 ?? obj2; означает (в нотации C# 1.0) return obj1!=null ? obj1 : obj2;.
Обнуляемые ('nullable') типы-значения (обозначаемые вопросительным знаком, например, int? i = null;), представляющие собой те же самые типы-значения, только могущие принимать также значение null. Такие типы позволяют улучшить взаимодействие с базами данных через язык SQL.


Версия 3.0

В июне 2004 года Андерс Хейлсберг впервые рассказал на сайте Microsoft о планируемых расширениях языка в C#3.0.[1] В сентябре 2005 года вышли проект спецификации C# 3.0 и бета-версия C# 3.0, устанавливаемая в виде дополнения к существующим Visual Studio 2005 и .NET 2.0. [2]

Новые возможности в версии 3.0

В C# 3.0 появились следующие радикальные добавления к языку:
ключевые слова select, from, where, позволяющие делать запросы из SQL, XML, коллекций и т. п. (запрос, интегрированный в язык, Language Integrated Query, или LINQ)
Инициализация объекта вместе с его свойствами:
Customer c = new Customer(); c.Name = "James";
превратится в
Customer c = new Customer { Name = "James" };
Лямбда-выражения:
listOfFoo.Where(delegate(Foo x) { return x.size > 10; });
превратится в
listOfFoo.Where(x => x.size > 10);
Подразумеваемый тип локальной переменной: var x = "hello"; вместо string x = "hello";
Безымянные типы: var x = new { Name = "James" };
Методы-расширения — добавление метода в существующий класс с помощью ключевого слова this при первом параметре статической функции.

C# 3.0 будет совместим с C# 2.0 по генерируемому MSIL-коду; улучшения в языке — чисто синтаксические и реализуются на этапе компиляции. Например, многие из интегрированных запросов LINQ можно уже сейчас осуществить, используя безымянные делегаты в сочетании с предикатными методами над контейнерами вроде List.FindAll и List.RemoveAll.


[b]Пример «Hello, World»

using System;
class Example
{
	static void Main()
	{
		Console.WriteLine("Hello, world!");
	}
}

Сообщение отредактировал Eclipse TH: Sunday, 06.01.2008 - 09:05

0

Страница 1 из 1
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему