-
Имеются ли утилиты для компиляции MSIL кода в машинный код? Например, если потребуется сделать программу на C#, которую можно запускать и без наличия .net framework. Или это невозможно?
-
Поищи в нете....Уйму таких вопросов. Только нормальных инструментов нет.....
-
>>MeF Dei Corvi © (13.09.05 15:38)
А каков смысл вырывать гланды через задний проход?
-
> А каков смысл вырывать гланды через задний проход?
Ну иногда приходится... > Поищи в нете....Уйму таких вопросов. Только нормальных инструментов > нет.....
Но ведь чисто теоритически такое возможно?
-
>>MeF Dei Corvi © (13.09.05 17:19) [3]
Зачем писать приложение под .NET Framework, чтобы потом "руками" генерировать машинный код по IL-коду? К тому же, откуда вы возьмёте без установленного Framework'а код классов, которые используется практически любым .NET'овским приложением? И это ещё не всё. Есть ещё много моментов.
Ваш вопрос сродни такому: как заставить заработать программу, написанную под Win32, в DOS.
-
> К тому же, откуда вы возьмёте без установленного Framework'а > код классов, которые используется практически любым .NET'овским > приложением?
Вопрос в том, как запустить программу без .net-а, а не как скомпилировать без него. > Зачем писать приложение под .NET Framework, чтобы потом > "руками" генерировать машинный код по IL-коду?
С# классный язык... А фреймворк есть далеко не у всех.
Вопрос ставлю следующим образом: Возможно ли, чисто теоритически, перевести IL-код+код требуемых сборок и библиотек в машинный код, чтобы приложение могло работать независимо от .net?
P.S. А вообще всё это глупость, но интересно реально ли?
-
> С# классный язык... А фреймворк есть далеко не у всех.
БОльшая часть его классности обеспечена именно фреймворком.
-
> DiamondShark © (13.09.05 18:50) [6]
> БОльшая часть его классности обеспечена именно фреймворком.
Ну уж если человек сказал, что язык хорош, зачем перевирать на то что этот язык фреймворком классный. Тогда и дельфи ничуть не хуже, так, тоже ведь фр-к тот же самый поддерживает? C# гораздо более изящный язык чем Д. Мое мнение, и мнение многих.
П.С. На чем пишешь? ??На клавиатуре!
-
[7] мимо (13.09.05 22:26) > C# гораздо более изящный язык чем Д. Мое мнение, и мнение > многих
Кому и кобыла невеста :)
-
Забавно. Только вот кому то и корова невеста, Джо.
-
> [9] мимо (13.09.05 22:38)
Забавно. То, что кому-то и Сишарп "изящнее" Делфи.
-
Ну что ты пристал как (?)лист (?)банный. Ну нету никакого сравнения в удобстве написания, у тебя на паскале половину текста begin занимает, тратишь время на то чтобы править и объявление и реализацию, пишешь i := i + 1, при написании кода объяви его на два метра вверху, хотя переменная тебе нужна только вот здесь.. да что там. Все таки кобыла лучше коровы, я бы свою жену лучше так называл)))
-
> [11] мимо (13.09.05 22:49) > Ну что ты пристал как (?)лист (?)банный. Ну нету никакого > сравнения в удобстве написания, у тебя на паскале половину > текста begin занимает,
угу. А какой <cencores> придумал в Сишарпе перед каждой(!) функцией обязательно (!) указывать область видимости?? Когда смотришь на класс, сплошные спецификаторы только в глаза и бросаются. Это разве можно назвать изящным? Нет уж, лучше кобыла... Только не нужно Страуструпа обвинять, он к Сишарпу руку не прикладывал, но зачем эту гадость было в него тянуть, непонятно... А по поводу begin...end - это ИМХО гораздо лучше и ЧИТАБЕЛЬНЕЙ, чем бесконечные скобки... А почему любой метод - это только функция? Где мои любимые процедуры? Верните мне их, пожалуйста, не надо мне этих дурацких void'ов! 8-| И не нужно на C пенять - хуже языка, действительно, не было :))
:P
-
И какого <censored> нельзя было нормально разделить объявление и реализацию в классе - нет, нужно все в кучу свалить было :-() Пока класс просмотришь, глаза сломаешь :( :P
-
Не надо глазами по коду бегать чтобы посмотреть класс - для этого и есть Code Explorer или Structure, и прочие аналоги. Там все прекрасно видно. То есть на настоящий момент возможность разобраться в коде, особенно чужом, решается инструментальными средствами на уровне IDE или посторонних средств (а для FW есть прекрасные утилиты), без этого никак.
Про Си и Сипп никто ничего не говорит, у них общего меньше чем у Delphi Object Pascal и Pascal as is.
Область видимости - это кто такое говорит что обязательно - пожалуйста, не указывай, метод будет приватным. Зато при конкретном указании ясно видно по месту, в какой области видимости живет данный идентификатор.
А кто сказал что функция void не процедура? Вернуть из нее ничего не удается. Да и какая разница? Можно ведь и в дельфи использовать аналогичный WinAPI подход, возвращая код ошибки например.
Вот, например еще this и Self. В бейсике мне лично не нравится слово Me. Блеяние какое-то)) Так вот, например, if Self is TObject - читаем: если сам есть объект. То if (this is object) читаем: если это объект. Как то более по-русски, хотя и на C#.)
По поводу читабельности - хорошо офомленный код всегда приятно читать, чем плохо оформленный. А примеры того и другого не зависят от языка. Каждая скобка идет на отдельной строке, вот и все что нужно для читабельного кода. Очень быстро привыкаешь. Семантически не вижу разницы между begin и {. Но. Во первых, белого пространства больше. Во вторых, пока он раз-два-три-четыре... вы уже раз-два-раз-два, бодренько так. Писать меньше. Это приятно. К тому же, разве вы не привыкли уже читать исходники на С - подобных языках? Уже пора привыкнуть, если еще нет.
Ну а что насчет i := i + 1? или +5? ))) В книге пачеко и тейксейры о 6 дельфи, по-моему, встретилась мне опечатка, (по-моему с.74) что дескать, теперь язык поддерживает do-and-assign. Хе. Промахнулись ребята, нету такого, а жаль, но это мелочь.
Да в общем, какая разница, речь немного не об этом. Меня всегда как-бы немного удивляли такие споры хали-вары - на чем хочешь на том и пиши, я предпочитаю писать на клавиатуре. Все зависит от платформы, задачи и ограничений (не языка, разумеется, а, так сказать, техусловий).
Роль фреймворка в развитии С# - ключевая. Язык, можно сказать, создан для фреймворка. Вот и все. Поэтому, как я себе порекомендовал писать для .NET на C#, так и пишу, ибо это есть два продукта, созданных вместе. Так же как если писать для VCL на DOP.
В общем, не ругайте всех почем зря, а просто пишите на клавиатуре, кто во что горазд.
-
> [14] мимо (14.09.05 01:00)
Хе, я всего-лишь на вот это отвечал:
> C# гораздо более изящный язык чем Д.
Ну вот лично для меня - С# имеет неуклюжий, "неизящный" синтаксис и хоть режь меня :) Даже и рядом с OP поставить не могу. Ни по читабельности, ни по удобству самого писания. Ну ты и сам-таки признался, что без посторонних аналитических средств при просмотре кода обойтись сложно :p ---
> а просто пишите на клавиатуре, кто во что горазд.
тут, разумеется, спорить невозможно, согласен :)
-
П.С. Объявление переменных в любом месте кода считаю большим злом. Дурная наследственность С.
-
Мда, я не пытался описать когда следует пользоваться CodeExplorer и и же с ним. В своих проетах пользуюся довольно таки редко. В больших классах и в чужих каракулях. Внешние инструментальные средства, которыми пользуюсь предназначены для просмотра кода в библиотеках FW, потому что там точно черт ногу сломит.
Ну а вот лично для меня - группа языков С имела неуклюжий синтаксис, хотя и не такой уж супер степени, но до тех пор, пока сам не перешел на С#, т.е. пока он был для меня в режиме read-only.
А. Ладно. Заходить сюда травить душу. Я и сам год назад стоял бы на твоей стороне и что-то доказывал.
П.С. Объявление переменных в любом месте кода считаю большим добром. От этого никто не страдает, как минимум. Разве можно считать признаком хорошей читабельности необходимость держать в голове блок var при просмотре кода?
-
Не надо холиворов :)
-
Удалено модератором
-
активность форма по NET заметно поднялась, но вот беда - все больше не потрепаловку смахивает.
Куда хозяин смотрит?
-
> активность форма по NET заметно поднялась, но вот беда - > все больше не потрепаловку смахивает.
Холивар - хороший способ повышения активности. :) Можно холиварить на темы .net vs win32, win vs linux, win vs mac, C# vs VB.NET, php vs asp.net, C# vs Delphi, C# vs C++, winxp vs winvista, asp vs asp.net, FCL vs VCL... и многие другие...
-
> Джо © (14.09.05 01:40) [16] > > П.С. Объявление переменных в любом месте кода считаю большим > злом. Дурная наследственность С.
А в C нету ничего такого, по крайней мере в ANSI С.
-
эх.... do-and-assign и временные переменные..... это все что я теперь хочу еще от дельфи для полного счастия :)... остальные хотелки (типа each или record record end end) уже есть
-
2 MeF Dei Corvi
> P.S. А вообще всё это глупость, но интересно реально ли?
Вовсе и не глупость. Есть куча тулзовин, которые делают возможным запуск без .NET Framework. Не помню, как они правильно называются, но однажды вопросом задался таким же как и вы месяца 3 назад. Цены этих вещей рознятся от 100 до 10000 у.е. Поскольку рисковать с дешевыми смысла не усмотрел, а потратить дополнительно 5 - 10 тысяч гринов к проекту не реально. Пришлось ставить .NET Framework как обязательный патч к винде. Все подобные системы основываются на перекомпоновке exe или dll на MSIL, включают туда код из Framework и если есть в системе Framework, к нему не обращаются. Получается большой exe, ну, например 2, 5 или 10 метров. В зависимости от тулзы, подключенных к проекту сборок и еще каких-то критериев. Ищи на Гугле. Я находил...
|