Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > Что такое C#?


Автор: Юрец 15.6.2005, 18:22
Что такое С#? Что на нем можно писать? Что на нем в основном пишут?
Он лучше или хуже С++ (или сравнивать нельзя, т.к. разные вещи?)
И еще вопросец (помоему из из той же оперы): Что такое .NET ? .NET Framework ?

Заранее извиняюсь, если такой вопрос уже был.




Автор: Дрон 15.6.2005, 18:25
C# это один из языков, созданных Microsoft для платформы .NET.

Всё остальное смотрим и спрашиваем в разделе http://forum.vingrad.ru/index.php?showforum=47

Цитата
Он лучше или хуже С++ (или сравнивать нельзя, т.к. разные вещи?)

Они похожи по синтаксису, но по смыслу отличаются довольно сильно. И цели у них разные, так что "хуже или лучше" зависит от поставленной задачи.

Автор: chipset 15.6.2005, 18:26
Модератор: из C++:Общие вопросы.

Автор: simanyay 15.6.2005, 18:47
Цитата
Что такое С#?

Язык программирования

Цитата
Что на нем можно писать?

Программы

Цитата
Что на нем в основном пишут?

Программы

Цитата
Он лучше или хуже С++ (или сравнивать нельзя, т.к. разные вещи?)

Смотря для каких задач

Цитата
Что такое .NET ?

Технологий от корпорации Microsoft

Цитата
.NET Framework ?

Фрэймворк для .NET

Автор: nikf 15.6.2005, 18:49
smile во флейме можно создать раздел "как самостоятельно прочитать книгу" !!!

Автор: Guest 15.6.2005, 19:10
Вот ё-маё за ногу!!! Забыл написать, чтоб не глумились.... smile
А отвечали серьезно!

Симан, я уж наверно в глубине души догадываюсь, что C# - язык программирования smile
И о том, что язык программирования нужен, чтоб писать программы smile

А вопрос в том, какие именно программы. Какие задачи решаются с помощью этого языка?
Что такое Фрэймворк для .NET?

Автор: simanyay 15.6.2005, 19:18
Цитата(Guest @ 15.6.2005, 21:10)
Симан, я уж наверно в глубине души догадываюсь, что C# - язык программирования smile


Может вы в глубине души догадаетесь зайти на сайт Microsoft и почитать там, а?


Автор: Domestic Cat 15.6.2005, 19:26
Может, в ФАК поместить темку "Как самостоятельно покупать / тянуть / читать книги"?

Автор: simanyay 15.6.2005, 19:28
Цитата(Domestic @ 15.6.2005, 21:26)
Может, в ФАК поместить темку "Как самостоятельно покупать / тянуть / читать книги"?


Не прочитают ведь smile

Автор: Guest 15.6.2005, 19:52
Дело в том, что на сайте Мелкософт все на фиглише (вот незадача, блин smile)
Я пытаюсь понять, что это за язык такой, что за технология .NET
Прежде чем искать/покупать/читать книги, я пытаюсь определить, стоит ли это изучать. Перспективно ли это.


Автор: simanyay 15.6.2005, 19:54
Цитата(Guest @ 15.6.2005, 21:52)
Дело в том, что на сайте Мелкософт все на фиглише (вот незадача, блин smile)
Я пытаюсь понять, что это за язык такой, что за технология .NET
Прежде чем искать/покупать/читать книги, я пытаюсь определить, стоит ли это изучать. Перспективно ли это.


http://microsoft.ru

Перспективно, но Java лучше smile

Моё субъективное мнение.

Автор: nikf 15.6.2005, 20:30
Цитата
А вопрос в том, какие именно программы. Какие задачи решаются с помощью этого языка?

любые...
смейтесь на до мной.. smile

Автор: Guest 15.6.2005, 23:50
Цитата
Перспективно, но Java лучше

Очень спорное утверждение!!!

Автор: Domestic Cat 16.6.2005, 00:03
alir, можно было под гостя и не косить smile

Автор: simanyay 16.6.2005, 10:42
Цитата(Domestic @ 16.6.2005, 02:03)
alir, можно было под гостя и не косить smile


smile

Автор: Guest 16.6.2005, 17:55
да как же, блин, из вас слово-то вытянуть....

Ну вот кто какую последнюю прогу на С# ниписал?

Автор: arilou 16.6.2005, 18:28
Лень вверху закрепленные темы посмотреть?

http://forum.vingrad.ru/index.php?showtopic=14144

Автор: nikf 16.6.2005, 19:03
Цитата
Ну вот кто какую последнюю прогу на С# ниписал?

ну блин.. прогу нельзя раз и навсегда написать. настоящую прогу... ее пишут вечно пока есть контракт с заказчиком или желание. не важно на каком языке..
Щас поддерживаю две проги C#, одна для массовой стандартизации файлов(сотни мегов инфы обрабатывается), другая для построения диаграмм.. графика. причем GDI+ (не сразу научился) работает быстрее чем GDI... нет причин использовать C++ VС++,если не знаешь и не можешь объяснить зачем нужно их использовать. так что юзай дот нет и не парься

Автор: Guest 16.6.2005, 23:27
В Си и С++ (borland) я шарю. И еще в Си-подобных языках: перл, пхп.
Нравится мне синтаксис, логичный.
Щас вот думаю еще че-нить изучить...
Вот и навожу справки по С#

Вообще стоящая вещь? Изучать стоит?

Автор: Guest 16.6.2005, 23:29
Говорят, что .net и С# - самые перспективные на данный момент.... Так ли это?

Автор: Domestic Cat 16.6.2005, 23:39
Цитата(Guest @ 16.6.2005, 14:29)
Говорят, что .net и С# - самые перспективные на данный момент.... Так ли это?

Микрософт так говорит, естественно. Но в принципе да.
И Java тоже.

Автор: Voldemar2004 17.6.2005, 15:43
Цитата(Guest @ 15.6.2005, 19:52)
Дело в том, что на сайте Мелкософт все на фиглише (вот незадача, блин )


Воспользуйся словарем Lingvo - руллез! Что за язык такой - фиглиш? Имел в виду английский? (Ну а ты Guest хотел чтоб там все было на русском/немецком?)

Цитата(Guest @ 15.6.2005, 19:52)
Я пытаюсь понять, что это за язык такой, что за технология .NET


Точка Нет - это когда ты ставишь фреймворк (в Windows Server 2003 ставить не надо - уже по дефолту стоИт) и используешь языки семейства Точка Нет. Например ВБ.NET. Суть технологии заключается в следующем: установленный фреймворк лежит в Windows ты пишешь прогу на одном из языков: VB, C++.NET и т.п. и в независимости от языка - прога обращается именно к этому Framework .NET. Это похоже на msvbvm60.dll - ты пишешь в VB прогу - и если этой проге хватает компонент (не требуется дополнительных ocx/dll и т.п.), то она (exe-файл) обращается к msvbvm60.dll, в котором содержатся ВСЕ готовый ф-ции языка VB 6. А Framework .NET - некое подобие этого, только намного больше возможностей и ориентация для работы в сетке и на высокую скорость разработки приложений.

Цитата(Guest @ 15.6.2005, 19:52)
Прежде чем искать/покупать/читать книги, я пытаюсь определить, стоит ли это изучать. Перспективно ли это.


Ты сам-то для себя реши. Смысл учить Pascal(не перспективно уже smile ), когда, например, можно выучить VB 6, потом с легкостью перейти на C++. С С++ на С# или на Visual C++.

Автор: Yurik 18.6.2005, 16:42
Цитата

Точка Нет - это когда ты ставишь фреймворк (в Windows Server 2003 ставить не надо - уже по дефолту стоИт) и используешь языки семейства Точка Нет. Например ВБ.NET. Суть технологии заключается в следующем: установленный фреймворк лежит в Windows ты пишешь прогу на одном из языков: VB, C++.NET и т.п. и в независимости от языка - прога обращается именно к этому Framework .NET. Это похоже на msvbvm60.dll - ты пишешь в VB прогу - и если этой проге хватает компонент (не требуется дополнительных ocx/dll и т.п.), то она (exe-файл) обращается к msvbvm60.dll, в котором содержатся ВСЕ готовый ф-ции языка VB 6. А Framework .NET - некое подобие этого, только намного больше возможностей и ориентация для работы в сетке и на высокую скорость разработки приложений.

Ну наконец-то я получил вразумительный ответ! Спасибо!

Цитата

Ты сам-то для себя реши. Смысл учить Pascal(не перспективно уже smile ), когда, например, можно выучить VB 6, потом с легкостью перейти на C++. С С++ на С# или на  Visual C++.

Я уже знаю С++!!!!! Вот и думаю перейти на С#!
Стоит ли?? Перспективно, как ты думаешь?

Автор: Voldemar2004 18.6.2005, 16:53
Цитата(Yurik @ 18.6.2005, 16:42)
Я уже знаю С++!!!!!
Ну, молодец!!!!!

Цитата(Yurik @ 18.6.2005, 16:42)
Вот и думаю перейти на С#!

Думай.

Цитата(Yurik @ 18.6.2005, 16:42)
Стоит ли??

Думаю, что стОит.


Цитата(Yurik @ 18.6.2005, 16:42)
Перспективно, как ты думаешь?
Наверно.

Автор: Void 18.6.2005, 20:26
Цитата(Voldemar2004 @ 17.6.2005, 17:43)
Ты сам-то для себя реши. Смысл учить Pascal(не перспективно уже smile ), когда, например, можно выучить VB 6, потом с легкостью перейти на C++. С С++ на С# или на Visual C++.

Disclaimer: махровое ИМХО. Спорить не буду.
НЕЕТ! Не надо! Не надо начинать с VB6. Говорю вам, как человек, потерявший два года с этим недоязыком, около двух лет пишущий на C++, и сейчас активно занимающийся C#. Переход с VB6 на C++ идет очень тяжело. Он хорош для своих целей (достаточно ограниченных), но начинать с него - значит забивать себе голову концепциями, которые будут очень мешать при переходе на другие языки, будь то C++ или C#.
(Можно, наверное, начинать с VB.NET. Но причиной тому может быть разве что паталогическая ненависть к C-образному синтаксису).
Переход же C++ -> C# как правило дается очень легко. Что неудивительно. И переход этот совершить (или просто освоить новую платформу) очень полезно и перспективно, ИМХО.

Автор: Yurik 18.6.2005, 21:01
Спасибо за Ваше мнение!

Автор: Domestic Cat 18.6.2005, 21:11
У ВБ / Паскаля / Дельфи синтаксис совершенно иной, потому переходить с них на С-образные языки всегда труднее.
В С ОО языках ИМО от простого к более сложным:
Java
C#
C++


Автор: Void 18.6.2005, 21:40
Цитата(Domestic @ 18.6.2005, 23:11)
У ВБ / Паскаля / Дельфи синтаксис совершенно иной, потому переходить с них на С-образные языки всегда труднее.

Дело даже не в синтаксисе (тем более, синтаксис Паскаля имеет с сишным гораздо больше общего, чем это может показаться на первый взгляд). В конце концов, это дело привычки. Одна из самых сложных вещей, которые нужно именно понять при переходе с VB6 на C++ - это указатели (ну ладно, допустим, managed-языки эту проблему снимают). И ООП, потому что то, что было в VB6 даже зачатками ООП назвать трудно. Как там осуществляется переход Delphi -> C#, не знаю, хотя слышал, что сравнительно безболезненно.

Цитата(Domestic @ 18.6.2005, 23:11)
В С ОО языках ИМО от простого к более сложным:
Java
C#
C++

Сущая правда. Хотя C++ тут - качественный рывок (вперед или назад - не будем судить smile ). C# же от Java в плане сложности языка отличается разве что бОльшим количеством синтаксического сахара, ИМХО.

Автор: sergejzr 18.6.2005, 21:44
ИМХО надо в религиозные войны эту тему..

Автор: Domestic Cat 18.6.2005, 22:00
Цитата(Void @ 18.6.2005, 12:40)

Сущая правда. Хотя C++ тут - качественный рывок (вперед или назад - не будем судить smile ). C# же от Java в плане сложности языка отличается разве что бОльшим количеством синтаксического сахара, ИМХО.


Сахар приводит к побочных эффектам smile Например введение свойств означает помимо своего синтаксиса : нужно привыкать к хелпу (пропертя отделены от методов), нужно решать что вводить - свойство или метод, нужно привыкнуть к тому, что несмотря на другой синтаксис, свойство может быть абстрактным, виртуальным, и т п. Я уже про структуры или ансейф кот не говорю.


Автор: Дрон 18.6.2005, 22:46
Раз уж начали оффтоп smile

Цитата(Domestic @ 18.6.2005, 23:00)
ансейф кот

Ну да, разве может домашнему коту понравиться небезопасный smile

А properties замечательная вещь! Начал недавно немного писать на джаве, так мне их там ужасно не хватает smile
Правда, когда только начинал на С# писать долго недоумевал, почему компилятор ругается на
Код
SomeControl.Location.X = 25;

странной фразой
Цитата
Cannot modify the return value of 'System.Windows.Forms.Control.Location' because it is not a variable

Потом привык smile

Автор: Domestic Cat 18.6.2005, 23:17
Цитата

А properties замечательная вещь! Начал недавно немного писать на джаве, так мне их там ужасно не хватает smile


Не знаю... После знакомства с шарпом у меня возникло впечатление, что декларативные языки на этом и остановятся... Казалось бы, куча нововведений - а вряд ли какое из них является реальным шагом вперед. Взять те же структуры - реализация в шарпе плохая. Проперти или индексеры - красивые обертки для методов, с одной стороны писать меньше - с другой труднее разобраться. Я как-то потратил час пытаясь найти, как же получить чего-то там то ли в таблице, то ли еще где... Оказалось добраться до значения нужно было индексером, а он в документации называется Items..

Прошу прощения, если что - ногами не пинать а переносить в соответствующую закрепленную тему. smile

Автор: stab 19.6.2005, 08:48
Цитата(sergej @ 18.6.2005, 18:44)
ИМХО надо в религиозные войны эту тему..


Модератор: ИМХО надо тему закрывать. Если есть, что по делу, то милости просим писать здесь. Если .NET vs Java, то сюда http://forum.vingrad.ru/index.php?showtopic=47924
Добавлено @ 08:50
з.ы. Кот, а чем реализация структур плоха? Только в отдельной теме или в .NET vs Java, плиз.

Автор: Domestic Cat 19.6.2005, 09:12
Цитата(cully @ 18.6.2005, 23:48)
з.ы. Кот, а чем реализация структур плоха? Только в отдельной теме или в .NET vs Java, плиз.

Ну тогда я отдельно сделаю, т.к. это ж не Java.

Автор: Guest 20.6.2005, 11:45
Цитата(Void @ 18.6.2005, 20:26)
Но причиной тому может быть разве что паталогическая ненависть к C-образному синтаксису).


Понять как создавать ф-ции, процедуры, модули... C++ Borland 5.xx очень ненаглядно.

Цитата(Domestic @ 18.6.2005, 21:11)
У ВБ / Паскаля / Дельфи синтаксис совершенно иной, потому переходить с них на С-образные языки всегда труднее.


Ну я про то же и говорю. Читать код, написанный в VB - одно удовольствие. Если в C++ синтаксис из VВ smile

Автор: Yurik 20.6.2005, 11:50
Народ, а в с# есть среда разработки? Ну не в блокноте же кодить smile
Как она? Удобная?

Автор: simanyay 20.6.2005, 12:50
Цитата(Yurik @ 20.6.2005, 13:50)
Народ, а в с# есть среда разработки? Ну не в блокноте же кодить smile
Как она? Удобная?


Visual Studio .NET - удобная.
SharpDevelop - знаю, что есть, но не видел.

Автор: Tomcat 20.6.2005, 13:48
Цитата(Domestic @ 18.6.2005, 22:17)
После знакомства с шарпом у меня возникло впечатление, что декларативные языки на этом и остановятся...

Эй, эй... Аккуратней с определениями, декларативные языки - это нечто другое!

Цитата(Domestic @ 18.6.2005, 22:17)
Казалось бы, куча нововведений - а вряд ли какое из них является реальным шагом вперед. Взять те же структуры - реализация в шарпе плохая.

Честно говоря, забыл уже когда в последний раз структуры применял. Мне кажется, это скорее наследие прошлого, потому и не стоит ожидать чего-то нового.

Цитата(Domestic @ 18.6.2005, 22:17)
Проперти или индексеры - красивые обертки для методов, с одной стороны писать меньше - с другой труднее разобраться.

Помню, когда меня ООП учили (на примере C++), то многие говорили, забудь об открытых полях (переменных-членов). С тех поро и появилась привычка писать поле, там, _field, а потом к нему пару методов GetField и SetField. С этой точки зрения пропертисы очень даже помогают. Аналогично с индексерами. И разобраться не труднее, если код нормальный.

Цитата(Domestic @ 18.6.2005, 22:17)
Я как-то потратил час пытаясь найти, как же получить чего-то там то ли в таблице, то ли еще где... Оказалось добраться до значения нужно было индексером, а он в документации называется Items..

Хех... У меня тоже такое было. Вот это и есть плохая реализация/документация.

Автор: alir 20.6.2005, 15:26
Цитата
Народ, а в с# есть среда разработки? Ну не в блокноте же кодить
Как она? Удобная?
Visual Studio .NET - ОООчень удобная и многофункциональная!

Цитата
SharpDevelop - знаю, что есть, но не видел.

Забудьте про все альтернативы. В любом случае они хуже VS.NET, либо являются просто ее урезкой. Эй! Мы же говорим о С#, потому MS здесь - стандарт!

Цитата
Честно говоря, забыл уже когда в последний раз структуры применял. Мне кажется, это скорее наследие прошлого, потому и не стоит ожидать чего-то нового.

Вот именно! С точки зрения ООП - структуры вообще лишние; все в классах, в классах.
Вообще не понимаю зачем они нужны, если только создавать элементарные типы в С++.
Даже в java их нет, а в C# их добавили в рекламных целях (ИМХО) - как один из пунктов того, что
шарп является наследником C++.

Автор: Ch0bits 20.6.2005, 15:36
alir
smile Тебя послушать... Ты не в микрософте случайно работаешь??? smile

Автор: simanyay 20.6.2005, 15:43
Цитата(alir @ 20.6.2005, 17:26)
Забудьте про все альтернативы.


Забуду, если дашь денег на лицензионную VS .NET.

Автор: Tomcat 20.6.2005, 16:19
Цитата(alir @ 20.6.2005, 14:26)
Забудьте про все альтернативы. В любом случае они хуже VS.NET, либо являются просто ее урезкой. Эй! Мы же говорим о С#, потому MS здесь - стандарт!

Не забуду про алтернативы!!!
а) Много дешевле!
б) Могут обладать другими функциональными возможностями!
в) А если мне этих "урезок" достаточно?!

Жду и верю, что #develop превратится во что-нибудь очень хорошее. Ну а пока пишу на ворованой VS.NET.

Цитата(alir @ 20.6.2005, 14:26)
Вот именно! С точки зрения ООП - структуры вообще лишние; все в классах, в классах.
Вообще не понимаю зачем они нужны, если только создавать элементарные типы в С++.

Я не был бы столь категоричен... и по отношению к ООП, и насчет того, для чего они нужны. Все таки в передаче по значению, а не по ссылке, есть какой-то смысл.

Автор: Domestic Cat 20.6.2005, 18:34
Цитата(Tomcat @ 20.6.2005, 04:48)
Эй, эй... Аккуратней с определениями, декларативные языки - это нечто другое!


Ну да, а Java, C#, C++ - функциональные что-ли?
Цитата(Tomcat @ 20.6.2005, 04:48)
С этой точки зрения пропертисы очень даже помогают.

Это да, но удобство то в чем? Писать на десяток символов меньше, и объединены гет/сет в один блок. Больше ничем. Зато появляется еще одна конструкция, усложняется документация. Если все на методах, то я, когда хочу что-то сделать, могу угадать название метода. А с пропертями мне нужно искать и в свойствах, и в методах. В результате я делаю мизерную экономию на наборе текста, но компенсирую это поиском в доках.
Если учесть, что почти любая ИДЕ дает возможность сгенерить гет/сет методы, то вообще преимущество пропертей я не вижу...

Автор: Дрон 20.6.2005, 19:34
Domestic Cat
Обсуждение пропертей предлагаю продолжить http://forum.vingrad.ru/index.php?showtopic=56185

Автор: alir 20.6.2005, 19:55
Цитата
Не забуду про алтернативы!!!
а) Много дешевле!
б) Могут обладать другими функциональными возможностями!
в) А если мне этих "урезок" достаточно?!


а) А тебе не все-равно? Практически каждый программист, работающий в России, дома пишет, используя пиратские IDE(знаю лично людей!). А в фирме, ественно, стоит лицензионный.
б)В java - да, но там ситуация другая. Возможно и будет, но пока их всего 2 и #develop сильно отстает.
в)Твой выбор. Каждому свое.

Цитата

Жду и верю, что #develop превратится во что-нибудь очень хорошее. Ну а пока пишу на ворованой VS.NET.

Жди, жди...

Автор: AntonSaburov 20.6.2005, 20:39
Модератор: Заканчиваем флудить. Уже полностью ушли от темы. И кроме того все последние сообщения не несут никакой полезной информации.

Автор: simanyay 20.6.2005, 20:42

Автор: mr.DUDA 20.6.2005, 23:43
М
 
Тема закрыта. Дальнейшее обсуждение общих вопросов, связанных с  .NET и C#, переносится в раздел "что такое .NET"


P.S. народ, ну пожалуйста, читайте закреплённые темы ДО того как создавать такие-же...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)