Модераторы: Partizan, gambit

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Может ли C# работать без .NET? 
V
    Опции темы
Dims
Дата 31.12.2008, 13:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1016
Регистрация: 21.11.2006

Репутация: 0
Всего: 11



На одной флиланс-бирже столкнулся с заданием: написать две версии программы, одну -- на C#, другую -- под платформу .NET. Я только что начал освавивать C# и написал на разъяснительной доске, что C# не может работать без .NET, за что сразу же был исключён за недостаточность квалификации.

smile

Так ли это? Действительно ли C# может работать без .NET?
PM MAIL   Вверх
Partizan
Дата 31.12.2008, 13:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


Профиль
Группа: Модератор
Сообщений: 2828
Регистрация: 19.12.2005
Где: Санкт-Петербург

Репутация: 18
Всего: 67



А можете текст задания дословно скинуть или дать ссылку?


--------------------
СУВ,
       Partizan.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
Dims
Дата 31.12.2008, 14:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1016
Регистрация: 21.11.2006

Репутация: 0
Всего: 11



PM MAIL   Вверх
Drabuna
Дата 31.12.2008, 14:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дивелоперчег
*


Профиль
Группа: Участник
Сообщений: 157
Регистрация: 27.3.2008
Где: Киев

Репутация: нет
Всего: 3



С# без .NET-а не бывает. 
PM MAIL   Вверх
Dims
Дата 31.12.2008, 14:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1016
Регистрация: 21.11.2006

Репутация: 0
Всего: 11



Цитата(Drabuna @ 31.12.2008,  14:08)
С# без .NET-а не бывает.

Может, я понял что-то неправильно?
PM MAIL   Вверх
Drabuna
Дата 31.12.2008, 14:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дивелоперчег
*


Профиль
Группа: Участник
Сообщений: 157
Регистрация: 27.3.2008
Где: Киев

Репутация: нет
Всего: 3



Перечитал задание 3 раза, автор хочет чего то невозможного только потому что не хочет заставлять юзверей устанавливать .NET. Есть ли смысл тогда использовать C# а не С++? И не проще будет установить .NET framework вместо того чтобы писать 2 различных программы которые будут выполнять одинаковое действие? Погуглил и по мсднил ничего подобного не нашел)
PM MAIL   Вверх
Dims
Дата 31.12.2008, 14:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1016
Регистрация: 21.11.2006

Репутация: 0
Всего: 11



Я как раз ему и написал, что, возможно, он имел в виду C++, а не C#.
PM MAIL   Вверх
Drabuna
Дата 31.12.2008, 14:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дивелоперчег
*


Профиль
Группа: Участник
Сообщений: 157
Регистрация: 27.3.2008
Где: Киев

Репутация: нет
Всего: 3



http://forum.vingrad.ru/topic-110895.html разве что как вариант сделать как в теме. Иначе не представляю)
PM MAIL   Вверх
Partizan
Дата 31.12.2008, 14:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


Профиль
Группа: Модератор
Сообщений: 2828
Регистрация: 19.12.2005
Где: Санкт-Петербург

Репутация: 18
Всего: 67



Да....тут как раз у заказчика недостаток квалификации =)


--------------------
СУВ,
       Partizan.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
nerezus
Дата 31.12.2008, 16:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вселенский отказник
****


Профиль
Группа: Участник
Сообщений: 3330
Регистрация: 15.6.2005

Репутация: 1
Всего: 43



Dims, увереннее в себе надо быть.


--------------------
Сообщество художников Artsociety.ru
PM MAIL WWW   Вверх
source777
Дата 31.12.2008, 18:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 4
Всего: 56



Цитата(Dims @  31.12.2008,  13:52 Найти цитируемый пост)
Действительно ли C# может работать без .NET? 
Действительно может без .NET, но на Mono, да можешь хоть сам виртуальную машину написать...   smile 
ну это так, полуоффтоп в данном случае, т.к. заказчик вряд ли захочет устанавливать Mono...
А вообще не надо забывать, что C# - это язык программирования, и теоретически можно для него создать(а может уже кто и создал...), как компилятор в native-код, так и интерпретатор. В любом случае к .NET он жёстко не привязан, просто он популярен в рамках .NET.




--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
Djinn
Дата 2.1.2009, 00:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 250
Регистрация: 18.5.2007

Репутация: нет
Всего: 1



Цитата(source777 @  31.12.2008,  18:00 Найти цитируемый пост)
А вообще не надо забывать, что C# - это язык программирования, и теоретически можно для него создать(а может уже кто и создал...), как компилятор в native-код, так и интерпретатор. В любом случае к .NET он жёстко не привязан, просто он популярен в рамках .NET.


Не совсем понял, могли бы вы объяснить ?
PM MAIL   Вверх
Hades
Дата 2.1.2009, 00:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 226
Регистрация: 8.8.2008

Репутация: 1
Всего: 37



PM MAIL   Вверх
Djinn
Дата 2.1.2009, 02:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 250
Регистрация: 18.5.2007

Репутация: нет
Всего: 1



сенкс, вроде пол smile
PM MAIL   Вверх
source777
Дата 3.1.2009, 16:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 4
Всего: 56



Цитата(Djinn @  2.1.2009,  00:34 Найти цитируемый пост)
Не совсем понял, могли бы вы объяснить ? 

Я имел в виду, что ничто не мешает сделать компилятор C# в нативный код, если его ещё нет. Не надо отождествлять язык и платформу... 
А то получаются глупости типа "Программы на C++ невозможны без gcc" или "Программы на C# невозможны без .NET"... 
Язык не привязан ни к компилятору или ни к фреймворку, если очень захотеть, то можно писать на Java под .NET, а на C# под JVM.  smile 

Это сообщение отредактировал(а) source777 - 3.1.2009, 16:26


--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
archeg
Дата 3.1.2009, 17:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 612
Регистрация: 6.1.2007
Где: Киев

Репутация: 11
Всего: 27



Все, не могу smile Влезу в тему.
C# - это язык. Который компилируеться всегда в мсил код, который запускает платформа .нет. Значит, упрощенно говоря, C# не умеет работать без платформы .Net. Конечно же, в теории можно было бы написать какой-то нейтивный шарп, который сразу же компилировал бы в нейтив (так же как С++ есть нейтив и не нейтив, я так понял что это имел ввиду source777)- но тогда это уже будет не тот шарп, про который все привыкли говорить. В основном когда говорят Си шарп - имееться ввиду сам язык + платформа .нет, по скольку языка без платформы не существует. Как появиться - семантика "Си шарп" измениться smile

На счет моно. Моно - это есть платформа .Нет пол Линукс. То есть моно - это та же платформа .Net (только написана другими разработчиками и с ориентированостью на никсы)

На счет нейтив кода. Существуют компиляторы, которые вкомпиливают в екзешники всю платформу .нет и на выходе мы получаем екзешники, которые будтобы запускаються без платформы .нет. На самом деле, они запускаються с ней, просто она влита в тот пакет и запускаеться при запуске екзешника. Конечно же там куча ограничений и думаю очень много приложений так не скомпилишь. Да и весит такой пакет 40 метров.




--------------------
ИМХО задница есть универсальный интерфейс. Ибо через задницу можно сделать абсолютно ВСЕ (bash.org.ru)

Дядька всегда можно спросить в аське, если не задалбывать - не откажет smile
И вообще, на самом деле я студент, и ненавижу обращение на "Вы") Тут все свои  ;)
PM MAIL ICQ Jabber   Вверх
Hades
Дата 3.1.2009, 17:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 226
Регистрация: 8.8.2008

Репутация: 1
Всего: 37



Цитата(archeg @  3.1.2009,  16:24 Найти цитируемый пост)
C# - это язык. Который компилируеться всегда в мсил код

ну почему же,
что мне мешает сделать свой компилятор,
взять какой-то код на C# и скомпилировать его моим компилятором и получить что-то другое чем мсил код.
PM MAIL   Вверх
source777
Дата 3.1.2009, 18:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 4
Всего: 56



Цитата(archeg @  3.1.2009,  17:24 Найти цитируемый пост)
C# - это язык. Который компилируеться всегда в мсил код, который запускает платформа .нет. 
Выделенное верно, остальное - нет.

Цитата(archeg @  3.1.2009,  17:24 Найти цитируемый пост)
Конечно же, в теории можно было бы написать какой-то нейтивный шарп, который сразу же компилировал бы в нейтив 

Да, про это я и говорю и я не считаю, что это был бы какой-то другой C#, была бы просто другая библиотека классов...

Цитата(archeg @  3.1.2009,  17:24 Найти цитируемый пост)
В основном когда говорят Си шарп - имееться ввиду сам язык + платформа .нет
С чего ты это взял? Когда я имею в виду .NET я и говорю .NET,  а C# - это в первую очередь определённый синтаксис, потом набор концепций, которые сейчас поставляются через CLR, но возможна и другая реализация тех же концепций, а уж только потом C# - один из языков, позволяющих использовать .NET, поэтому я не понимаю людей, которые отождествляют C# с .NET.

Цитата(archeg @  3.1.2009,  17:24 Найти цитируемый пост)
На счет моно. Моно - это есть платформа .Нет пол Линукс. То есть моно - это та же платформа .Net (только написана другими разработчиками и с ориентированостью на никсы)
С чего ты взял, что Mono - это .NET под Линукс? Никто кроме MS не может написать .NET ни под какую ОС. А вот свою реализацию виртуальной машины, совместимой с .NET это пожалуйста.
Вот Mono как раз одна из таких виртуальных машин, частично совместимая с .NET, есть какие-то фичи .NET которых нет под Mono, есть какие-то фичи Mono, которых нет под .NET, и это вполне нормально.
Цитата
Mono is a project led by Novell (formerly by Ximian) to create an Ecma standard compliant, .NET-compatible set of tools, including among others a C# compiler and a Common Language Runtime. Mono can be run on Linux, BSD, UNIX, Mac OS X, Solaris and Windows operating systems.




--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
archeg
Дата 3.1.2009, 19:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 612
Регистрация: 6.1.2007
Где: Киев

Репутация: 11
Всего: 27



Цитата(Hades @  3.1.2009,  17:37 Найти цитируемый пост)

ну почему же,
что мне мешает сделать свой компилятор,
взять какой-то код на C# и скомпилировать его моим компилятором и получить что-то другое чем мсил код. 

Прочитай внимательно то что я написал smile Шарп всегда компилируеться в мсил потому что нету компилятора который бы компилировал во что-то другое. Напишешь такой - мое утверждение будет не правильно. Щас оно правильно потому что никто не написал smile
Цитата(source777 @  3.1.2009,  18:45 Найти цитируемый пост)
Цитата(archeg @  3.1.2009,  17:24 )
В основном когда говорят Си шарп - имееться ввиду сам язык + платформа .нет

С чего ты это взял? Когда я имею в виду .NET я и говорю .NET,  а C# - это в первую очередь определённый синтаксис, потом набор концепций, которые сейчас поставляются через CLR, но возможна и другая реализация тех же концепций, а уж только потом C# - один из языков, позволяющих использовать .NET, поэтому я не понимаю людей, которые отождествляют C# с .NET.

Ну, в идеале - ты прав. Шарп это только язык. В реалии понятия немного смешались - особенно для тех кто не очень в этом шарит или просто не разбирался smile К примеру есть полно книг - в названии которых есть только "C#" и нету ".Net". Тем не менее эти книги описывают как язык, так и фреймворк. Такое явление имеет место потому что нету нейтивного компилятора под шарп и на сегодня шарп работает только с .нет

Цитата(source777 @  3.1.2009,  18:45 Найти цитируемый пост)
Цитата(archeg @  3.1.2009,  17:24 )
На счет моно. Моно - это есть платформа .Нет пол Линукс. То есть моно - это та же платформа .Net (только написана другими разработчиками и с ориентированостью на никсы)

С чего ты взял, что Mono - это .NET под Линукс? Никто кроме MS не может написать .NET ни под какую ОС. А вот свою реализацию виртуальной машины, совместимой с .NET это пожалуйста.
Вот Mono как раз одна из таких виртуальных машин, частично совместимая с .NET, есть какие-то фичи .NET которых нет под Mono, есть какие-то фичи Mono, которых нет под .NET, и это вполне нормально.

Цитата
Mono is a project led by Novell (formerly by Ximian) to create an Ecma standard compliant, .NET-compatible set of tools, including among others a C# compiler and a Common Language Runtime. Mono can be run on Linux, BSD, UNIX, Mac OS X, Solaris and Windows operating systems.

Не согласен, но это скорее всего конфилкт понятий. Для меня .Net - это любая платформа, которая умеет запускать мсил. Microsoft .Net - это реализация .Net от майкрософта. Никто никому не мешает написать свою реализацию .Net под другую систему. Как пример можно взять JVM. Они были когда-то в виде двух вариантов реализаций - от майкрософта и от сан. Отличались довольно серйозно. При том и то и то было JVM.
В контексте данного вопроса это неважно, по-скольку заказчик (или кто там?) сказал что ему не подходит .Net потому что его нужно устанавливать. Моно тоже нужно устанавливать


--------------------
ИМХО задница есть универсальный интерфейс. Ибо через задницу можно сделать абсолютно ВСЕ (bash.org.ru)

Дядька всегда можно спросить в аське, если не задалбывать - не откажет smile
И вообще, на самом деле я студент, и ненавижу обращение на "Вы") Тут все свои  ;)
PM MAIL ICQ Jabber   Вверх
Partizan
Дата 4.1.2009, 00:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


Профиль
Группа: Модератор
Сообщений: 2828
Регистрация: 19.12.2005
Где: Санкт-Петербург

Репутация: 18
Всего: 67



archeg
source777

тролли  smile 

Заканчивайте =)
Просто достаточно сказать автору, что заголовок темы несколько странный =)

C# - это язык...то есть он содержит ключевые слова, алфавит, "предложения" и другие языковые конструкции...
То есть это тупо - то, какие правила мы используем при написании кода...
Во что этот код превращается - дело второе...то есть действительно ничто не мешает(помимо сложности задачи) нафигачить компилятор, который это всё будет в native компилять...в этом source777 безусловно прав...


archeg, тоже прав, ибо C# действительно настолько сросся с .NET в отсутствии native-компиляторов, что действительно воспринимается как часть .NET (хотя идеологически верно всё-таки будет воспринимать C# и .NET как разные и независимые вещи)

з.ы. а вообще автор спрашивал правильно ли он указал работодателю, что ТЗ неверно, ибо "две версии проги: одна под C#, другая под .NET" - это вообще  smile ... ибо если уж пишешь на C#, то оно и второму условию(что оно под .NET) - вполне удовлетворяет...

Сомнения автора мы развеяли и он понял, что он был прав... Так что имхо топик можно помечать решённым smile


--------------------
СУВ,
       Partizan.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
Dims
Дата 4.1.2009, 00:27 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1016
Регистрация: 21.11.2006

Репутация: 0
Всего: 11



Ребята, большое спасибо за инфу. Про Моно не знал.

Но особенно спасибо, конечно, вот за эти подсказки:


Цитата(source777 @  31.12.2008,  18:00 Найти цитируемый пост)
А вообще не надо забывать, что C# - это язык программирования


Цитата(archeg @  3.1.2009,  17:24 Найти цитируемый пост)
C# - это язык.


Цитата(Partizan @  4.1.2009,  00:05 Найти цитируемый пост)
C# - это язык...


 smile 

Всех с наступившим Новым Годом!

 smile 
PM MAIL   Вверх
unicuum
Дата 7.1.2009, 15:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 830
Регистрация: 16.3.2005
Где: Рашка

Репутация: 1
Всего: 8



Цитата(Dims @  31.12.2008,  13:52 Найти цитируемый пост)
Так ли это? Действительно ли C# может работать без .NET? 

user posted image

mono-project.com

Цитата(Partizan @  31.12.2008,  14:55 Найти цитируемый пост)
Да....тут как раз у заказчика недостаток квалификации =) 

Ха, ха и ещё раз ха smile 


--------------------
user posted image
обычный день на винграде
PM   Вверх
Partizan
Дата 7.1.2009, 15:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


Профиль
Группа: Модератор
Сообщений: 2828
Регистрация: 19.12.2005
Где: Санкт-Петербург

Репутация: 18
Всего: 67



Цитата

Ха, ха и ещё раз ха


Чего смешного?


--------------------
СУВ,
       Partizan.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
Dims
Дата 7.1.2009, 17:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1016
Регистрация: 21.11.2006

Репутация: 0
Всего: 11



Цитата(unicuum @  7.1.2009,  15:45 Найти цитируемый пост)
mono-project.com

Читаем с сайта: 

Цитата

Mono is a cross platform, open source .NET development framework.


То есть, MONO -- это опенсорсный .NET.
PM MAIL   Вверх
Страницы: (2) [Все] 1 2 
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.1602 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.