Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
188 / 120 / 4
Регистрация: 23.01.2010
Сообщений: 1,320

Действительно ли программа написанная на C# в перспективе на много лет вперёд

30.10.2017, 20:30. Показов 1658. Ответов 17
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Действительно ли программа написанная на C# в перспективе на много лет в перед даже с учетом выхода новой ОС будет работать?

Добавлено через 44 секунды
без изменения кода, без перекодирования (компеляции) и т.п. и т.д.?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
30.10.2017, 20:30
Ответы с готовыми решениями:

Компьютер на 5 лет вперед
Доброе утро! Постараюсь грамотно объяснить суть вопроса. В 2007 году купил себе комп, который исправно служил мне вплоть до 2013 года....

Антивирусы и программа написанная на C#
Доброе время суток. Почему антивирусы считают что моя программа содержит в себе вирусы? VT так же выдает 2 результата якобы с вирусами:...

Первый апгрей за много лет
Здравствуйте уважаемые пользователи.У меня поступило несколько вопросов по поводу апгрейда.Сейчас расскажу не большую историю. Был у...

17
360 / 287 / 76
Регистрация: 21.06.2016
Сообщений: 1,115
31.10.2017, 00:05
Ересь.
С# - это синтаксический сахар, человекопобный текст, который обработается компилятором в IL код.
И именно он уже будет обработан CLR и из него получится байт-код. Это если ну очень поверхностно. Если грубо - нет програм написаных на с#, есть программы написаны с помощью с#. А запускаться они будут - зависит от обратной совместимости фреймворка .net
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
31.10.2017, 00:14
Цитата Сообщение от hoolygan Посмотреть сообщение
С# - это синтаксический сахар, человекопобный текст, который обработается компилятором в IL код.
По такой "логике" вообще не существует языков программирования — они все являются синтаксическим сахаром, который обработается компилятором в машинные инструкции.
Ну и конечно же никто и ничто не запрещает написать компилятор, который преобразует код на шарпе прямиком в натив.
0
Заблокирован
31.10.2017, 02:50
Цитата Сообщение от kolorotur Посмотреть сообщение
компилятор, который преобразует код на шарпе прямиком в натив.
kolorotur,
так что, для того, чтобы это чудо произошло, достаточно поставить в VS2015 режим Отладки "Release" и будет шастье?)
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18298 / 14222 / 5368
Регистрация: 17.03.2014
Сообщений: 28,900
Записей в блоге: 1
31.10.2017, 03:16
titan4ik, нет. Конфигурация Release это немного о другом. .NET Native это отдельная опция компиляции доступная только для т.н. универсальных приложений.
1
Неадекват
 Аватар для freeba
1501 / 1237 / 248
Регистрация: 02.04.2010
Сообщений: 2,807
31.10.2017, 03:36
Цитата Сообщение от n971030 Посмотреть сообщение
без изменения кода, без перекодирования (компеляции) и т.п. и т.д.?
Ну тащемта мне встречались программы написанные еще на FW1.1(2004-2005 год) и прекрасно работающие на win10, без обновлений и перекомпиляций.

PS: Так то шарп позиционируется как язык для энтерпрайза, а там стандарты и технологии не меняются десятилетиями.
0
Эксперт .NET
 Аватар для Usaga
14311 / 9391 / 1355
Регистрация: 21.01.2016
Сообщений: 35,420
31.10.2017, 06:08
Цитата Сообщение от n971030 Посмотреть сообщение
без изменения кода, без перекодирования (компеляции) и т.п. и т.д.?
Да. И более того: эти программы со временем будут становится немного эффективнее, ведь JIT с каждой новой версией .NET тоже улучшается, а сам код, который этот JIT выдаёт, рассчитан на текущий процессор на котором данная программа запускается. Т.е. ваша программа будет каждый раз докомпилироваться под новое железо.

Конечно, сказок не бывает и .NET нужной версии в новых версиях ОС может не быть и их нужно будет ставить отдельно. Вполне даже может настать момент, когда на новой ОС вообще уже не будет поддерживаться старая версия .NET (такого пока нет). Да и CLR старых версий .NET может перестать развиваться. Т.е. приложение на C# всё равно не будет вечным, но проживёт оно "бодрым" достаточно долго.

Добавлено через 1 минуту

Не по теме:

hoolygan, ну и хрень вы выдали.

0
360 / 287 / 76
Регистрация: 21.06.2016
Сообщений: 1,115
31.10.2017, 09:56
Usaga, та ну....
Пруф
Исходный код, написанный на языке C# компилируется в промежуточный язык (IL), который соответствует спецификациям CLI. Код на языке IL и ресурсы, в том числе точечные рисунки и строки, сохраняются на диск в виде исполняемого файла (обычно с расширением .exe или .dll). Такой файл называется сборкой. Сборка содержит манифест с информацией о типах, версии, требований безопасности, языке и региональных параметрах для этой сборки.

При выполнении программы C# среда CLR загружает сборку и выполняет различные действия в зависимости от сведений, сохраненных в манифесте. Если выполняются все требования безопасности, среда CLR выполняет JIT-компиляцию из кода на языке IL в инструкции машинного языка. Также среда CLR выполняет другие операции, например автоматическую сборку мусора, обработку исключений и управление ресурсами. Код, выполняемый средой CLR, иногда называют "управляемым кодом", чтобы подчеркнуть отличия этого подхода от "неуправляемого кода", который сразу компилируется в машинный язык для определенной системы. На следующей схеме показаны связи между файлами исходного кода C#, библиотеками классов .NET Framework, сборками и средой CLR, существующие во время компиляции и во время выполнения.
ссылка на первоисточник
Так в чем же хрень? В том, что упустил JIT компилятор?
0
Эксперт .NET
 Аватар для Usaga
14311 / 9391 / 1355
Регистрация: 21.01.2016
Сообщений: 35,420
31.10.2017, 10:01
hoolygan, хрень в том, что в вопросе подразумевалось уже скомпилированное приложение, а не кучка файлов с кодом на C# внутри. Мне кажется, что это настолько очевидно, что даже явно на это указывать не имело смысла.
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
31.10.2017, 10:02
Цитата Сообщение от hoolygan Посмотреть сообщение
Так в чем же хрень?
Да практически во всем написанном.
Вот есть, скажем, язык С++. Он как, труъ язык программирования или тоже синтаксический сахар?
0
360 / 287 / 76
Регистрация: 21.06.2016
Сообщений: 1,115
31.10.2017, 10:52
Всё, понял, я тупой.
Ушел учиться.
0
Эксперт .NET
 Аватар для Usaga
14311 / 9391 / 1355
Регистрация: 21.01.2016
Сообщений: 35,420
31.10.2017, 10:55
hoolygan, вы просто вопрос задом наперёд поняли. Под "программой" люди в 99% случаев понимаю собранный исполнимый образ, а не архив с исходниками.
2
Заблокирован
31.10.2017, 17:34
Цитата Сообщение от OwenGlendower Посмотреть сообщение
.NET Native это отдельная опция компиляции доступная только для т.н. универсальных приложений.
Для возможности разработки универсальных приложений в VS2015 нужно скачать кучу доп инструментов. Кто знает, там всё free или в основном платное?
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18298 / 14222 / 5368
Регистрация: 17.03.2014
Сообщений: 28,900
Записей в блоге: 1
31.10.2017, 17:35
titan4ik, инструменты для разработки UWP приложений бесплатные
1
188 / 120 / 4
Регистрация: 23.01.2010
Сообщений: 1,320
02.11.2017, 17:00  [ТС]
Цитата Сообщение от freeba Посмотреть сообщение
Ну тащемта мне встречались программы написанные еще на FW1.1(2004-2005 год) и прекрасно работающие на win10, без обновлений и перекомпиляций.
PS: Так то шарп позиционируется как язык для энтерпрайза, а там стандарты и технологии не меняются десятилетиями.

т.е. если я правильно понимаю - то если я перепишу свою программу с delphi на шарп у меня будет гарантия того что спустя 15-25 лет у меня все же программа будет работать?

Ну а касательно веса программы то тут и сравнения нет, всего несколько 100 килобайт на шарпе это несколько 10 мб. на дельфи?

а фрейм верк наверно будет в будущем встроен в ОС, как вы думаете?

чистого с++/си как мне помнится был последний с++6 версии а дальше пошел шарп или смесь что ли.
0
Эксперт .NET
 Аватар для Usaga
14311 / 9391 / 1355
Регистрация: 21.01.2016
Сообщений: 35,420
02.11.2017, 17:19
n971030, гарантий вам никто не даст, но вероятность высока. Правда и приложение на Delphi тоже скорее всего рабочим останется. Если оно уже написано и работет, то переписывать его резона нет никакого.

Добавлено через 21 секунду
Цитата Сообщение от n971030 Посмотреть сообщение
чистого с++/си как мне помнится был последний с++6 версии а дальше пошел шарп или смесь что ли.
А это я не понял. С++ никуда не делся и ни с чем не смешался.
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18298 / 14222 / 5368
Регистрация: 17.03.2014
Сообщений: 28,900
Записей в блоге: 1
02.11.2017, 17:19
Цитата Сообщение от n971030 Посмотреть сообщение
т.е. если я правильно понимаю - то если я перепишу свою программу с delphi на шарп у меня будет гарантия того что спустя 15-25 лет у меня все же программа будет работать?
Таких гарантий никто дать не может.

Цитата Сообщение от n971030 Посмотреть сообщение
а фрейм верк наверно будет в будущем встроен в ОС, как вы думаете?
Он встроен начиная с Windows XP SP2.

Цитата Сообщение от n971030 Посмотреть сообщение
чистого с++/си как мне помнится был последний с++6 версии а дальше пошел шарп или смесь что ли.
Чистый C++ никуда не делся. Всего лишь добавили его разновидность с привязкой к .NET - C++/CLI. Программист волен свободно выбирать между ними.
0
188 / 120 / 4
Регистрация: 23.01.2010
Сообщений: 1,320
02.11.2017, 18:06  [ТС]
Цитата Сообщение от OwenGlendower Посмотреть сообщение
Таких гарантий никто дать не может.
Походу нет смысла возится)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
02.11.2017, 18:06
Помогаю со студенческими работами здесь

Программа написанная на FoxPro 2ой версии
Доброго времени суток уважаемые форумчане ! Нужен Ваш совет! Итак, есть программа написанная на Foxpro ещё в "лохматые"...

Вылетает программа, написанная под Android
Программа под Android Вылетает когда работает на переднем плане. Когда работает в фоновом то не вылетает) На сринах видно как программа...

Вылетает программа написанная под Андроид
Программа под Android Вылетает когда работает на переднем плане. Когда работает в фоновом то не вылетает) На сринах видно как программа...

Если много лет не пользоваться стиральной машиной
Доброго дня, у меня итальянская ARDO, куплена примерно в 2002, с десяток лет я стирал эпизодически или практически не стирал, теперь забыл,...

Программа, написанная на Delphi XE8, не работает на WinXP
Я сделал программу на Delphi XE8 для моих знакомых! У меня Win 7 а у них xp и она на xp не работает! Как это исправить!?! Помогите!


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
1С: Контроль уникальности заводского номера
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере документа выдачи шин для спецтехники с табличной частью. Данные берутся из регистра сведений, по которому настроено. . .
Хочу заставить корпорации вкладываться в здоровье сотрудников: делаю мат модель здравосохранения
anaschu 22.03.2026
e7EYtONaj8Y Z4Tv2zpXVVo https:/ / github. com/ shumilovas/ med2. git
1С: Программный отбор элементов справочника по группе
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа. В качестве фильтра для отбора справочника служит группа номенклатуры. Отбор по наименованию группы. . .
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru