Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?
Гродненский Форум
26 Апрель 2024, 04:31:19
Новости, реклама:
   Главная   Новости Гродно Помощь Игры Календарь Войти Регистрация   Меню
Гродненский Форум > Компьютеры > Программирование
(Модераторы: Админ, barmalei) > Тема:

Перспективен ли C# и .NET ?

Страниц  : 1 ... 3 4  Все   Вниз
  Печать  
Автор Тема: Перспективен ли C# и .NET ?  (Прочитано 19616 раз)
0 Пользователей и 1 Гость смотрят эту тему.
ghostWhite
Настоящий гродненец
****

Репутация: +26/-0
Offline Offline

Пол: Мужской
Сообщений: 387


Просмотр профиля
« Ответ #120 : 04 Февраль 2009, 23:37:39 »

Кстати, не я один заметил сходство С# и Java.

http://oz.by/books/more1018545.html?id_search=1830656

(описание книги: )
"...Рассмотрены основные вопросы программирования на языках JAVA и С#, включая их сравнительное описание как двух важнейших и весьма сходных прикладных платформ для создания современных сетевых приложений."

Никогда не читай такие книги. Вообще никогда.

Из того что нашлось на озбае приличного это
CLR via C#. Программирование на платформе Microsoft .NET Framework 2.0 на языке C#
Программирование с использованием Microsoft ASP.NET 3.5
LINQ: язык интегрированных запросов в C# 2008 для профессионалов
Записан

Не будите во мне зверя, он и так всё время не высыпается

spammer
Почетный гродненец
*****

Репутация: +78/-19
Offline Offline

Пол: Мужской
Сообщений: 1455


Пыхнуть не хотите?

Просмотр профиля
« Ответ #121 : 05 Февраль 2009, 00:33:21 »

Тоже неплохая книженция

http://oz.by/books/more1011833.html?id_search=1831542
Записан
VooDoo
Почетный гродненец
*****

Репутация: +89/-1
Offline Offline

Пол: Мужской
Сообщений: 2885


Dum spiro spero

Просмотр профиля WWW Email
« Ответ #122 : 05 Февраль 2009, 01:58:51 »

это шутка или сцылка в буфер другая попала?
Записан

Are you human? - My body is.
Do you feel pain? - My body does.
..- --- --- -.. --- ---
Romchik
Почетный гродненец
*****

Репутация: +184/-2
Offline Offline

Пол: Мужской
Сообщений: 1803


Подпись под аватаром

Просмотр профиля
« Ответ #123 : 05 Февраль 2009, 13:42:45 »

В данный момент почитываю
http://oz.by/books/more1041517.html?id_search=1833621
http://oz.by/books/more1051976.html?id_search=1833621

И очень жду книжку рихрета про .net 3.5
Записан
iddqd
Лёдчег
Почетный гродненец
*****

Репутация: +170/-10
Offline Offline

Пол: Мужской
Сообщений: 2275


Не уйдешь!

Просмотр профиля
« Ответ #124 : 05 Февраль 2009, 14:28:43 »

ух господа, давайте попробуем держаться одной обозначенной темы Улыбка ато тут и паша лебедев, воющие псы, джефри рихтер, пхп, дельфи, ява, дотнет, обсуждение винды и почем майонез на рынке
Записан
alex-v
Настоящий гродненец
****

Репутация: +11/-0
Offline Offline

Пол: Мужской
Сообщений: 320

Просмотр профиля
« Ответ #125 : 07 Февраль 2009, 14:44:49 »

Кстати, плюс простых дотнетовских программ в том, что они после компиляции маленькие по размеру (екзешник несколько Кб)... вот только я больших проектов на C# не компилил, не знаю сколько у них екзешник весит.

И кстати не будем забывать про Java, что это интерпретатор какой-никакой, а значит работает медленнее, чем с++.
Записан
VooDoo
Почетный гродненец
*****

Репутация: +89/-1
Offline Offline

Пол: Мужской
Сообщений: 2885


Dum spiro spero

Просмотр профиля WWW Email
« Ответ #126 : 07 Февраль 2009, 15:34:44 »

а на асме ещё быстрее будет работать чем на цпп

давайте приводить конкретные сравнения
Записан

Are you human? - My body is.
Do you feel pain? - My body does.
..- --- --- -.. --- ---
iddqd
Лёдчег
Почетный гродненец
*****

Репутация: +170/-10
Offline Offline

Пол: Мужской
Сообщений: 2275


Не уйдешь!

Просмотр профиля
« Ответ #127 : 07 Февраль 2009, 17:50:33 »

давайте о скорости работы виртульных машин спорить не будем. там важна быстрота и цена разработки, а каму медленно пусть платить больше либо за хард, либо за софт. то, что экзешники маленькие еще ничего не говорит, наверно у тебя не было никаких ембедэд ресурсов. мне нравится что дотнетовский байткод (с явой тоже ведь канает, верно?) можно легко дизасемблить и при желании получит с# аутпут, что иногда очень помогает в борьбе с чужыми либами.
Записан
VooDoo
Почетный гродненец
*****

Репутация: +89/-1
Offline Offline

Пол: Мужской
Сообщений: 2885


Dum spiro spero

Просмотр профиля WWW Email
« Ответ #128 : 07 Февраль 2009, 19:57:31 »

Согласен.
Очень легко декомпилится. Незнаю как обстоят дела с C# либами, но большинство джавовских либ фришные и сорцы лежат в свободном доступе.
Частенько возникает потребность в том, что бы немного пофиксать какую-нить фичу в либе. Декомпильнул, пофиксал, пересобрал, положил... Красота.
Записан

Are you human? - My body is.
Do you feel pain? - My body does.
..- --- --- -.. --- ---
iddqd
Лёдчег
Почетный гродненец
*****

Репутация: +170/-10
Offline Offline

Пол: Мужской
Сообщений: 2275


Не уйдешь!

Просмотр профиля
« Ответ #129 : 07 Февраль 2009, 20:08:16 »

я как то по затупке с бадуна случайно удалил функцию, которую колбасил до этого примерно часа полтора. не спрашивайте как, чекина не было и отменить не работало. но бинарник с функционалом остался. рефлектором нашол этот метод, декомпильнул в c#, все красиво. тока названия переменных стали str1, int2 и т.д.  Смеющийся 
Записан
alex-v
Настоящий гродненец
****

Репутация: +11/-0
Offline Offline

Пол: Мужской
Сообщений: 320

Просмотр профиля
« Ответ #130 : 07 Февраль 2009, 20:27:49 »

Подскажите плиз как декомпилить дотнетовский екзешник. Что для этого надо? Может MSVS 2008?
Записан
DeleteR
Почетный гродненец
*****

Репутация: +125/-7
Offline Offline

Пол: Мужской
Сообщений: 1871

Просмотр профиля
« Ответ #131 : 07 Февраль 2009, 20:32:01 »

Reflector смотри
Записан
alex-v
Настоящий гродненец
****

Репутация: +11/-0
Offline Offline

Пол: Мужской
Сообщений: 320

Просмотр профиля
« Ответ #132 : 07 Февраль 2009, 20:38:23 »

ясно, спасибо
Записан
VooDoo
Почетный гродненец
*****

Репутация: +89/-1
Offline Offline

Пол: Мужской
Сообщений: 2885


Dum spiro spero

Просмотр профиля WWW Email
« Ответ #133 : 07 Февраль 2009, 20:42:27 »

Цитировать
я как то по затупке с бадуна случайно удалил функцию, которую колбасил до этого примерно часа полтора. не спрашивайте как, чекина не было и отменить не работало. но бинарник с функционалом остался. рефлектором нашол этот метод, декомпильнул в c#, все красиво. тока названия переменных стали str1, int2 и т.д.   
Шокирован во как у вас всё сложно...
у нас проще Улыбка берёшь скомпиленный класс натравливаешь на него jad и получаешь сорцы. Причём все переменные и функции будут под своими именами.
Записан

Are you human? - My body is.
Do you feel pain? - My body does.
..- --- --- -.. --- ---
alex-v
Настоящий гродненец
****

Репутация: +11/-0
Offline Offline

Пол: Мужской
Сообщений: 320

Просмотр профиля
« Ответ #134 : 07 Февраль 2009, 20:42:53 »

Кстати, в чём отличие готовых бинарных файлов для исполнения в Java и в C# ?
Java - ведь интерпритатор байткода. А C# экзешник ведь готов сразу для исполнения под ОС, без всякой интерпритации. Это так?
т.е. дотнетовские проги работают быстрее, чем Java ?
Записан
DeleteR
Почетный гродненец
*****

Репутация: +125/-7
Offline Offline

Пол: Мужской
Сообщений: 1871

Просмотр профиля
« Ответ #135 : 07 Февраль 2009, 20:47:53 »

нет, не так
Записан
alex-v
Настоящий гродненец
****

Репутация: +11/-0
Offline Offline

Пол: Мужской
Сообщений: 320

Просмотр профиля
« Ответ #136 : 07 Февраль 2009, 20:50:54 »

А как? Поясните плиз (если можно подробнее).
Записан
spammer
Почетный гродненец
*****

Репутация: +78/-19
Offline Offline

Пол: Мужской
Сообщений: 1455


Пыхнуть не хотите?

Просмотр профиля
« Ответ #137 : 07 Февраль 2009, 22:34:23 »

Шокирован во как у вас всё сложно...
у нас проще Улыбка берёшь скомпиленный класс натравливаешь на него jad и получаешь сорцы. Причём все переменные и функции будут под своими именами.

обычно все серьезные продакшен-либы обфусцированы, а это иммено и дает при декомпиляции имена "a", "aa", "aaa", и другие не менее интуитивные названия
Записан
spammer
Почетный гродненец
*****

Репутация: +78/-19
Offline Offline

Пол: Мужской
Сообщений: 1455


Пыхнуть не хотите?

Просмотр профиля
« Ответ #138 : 07 Февраль 2009, 22:38:17 »

А как? Поясните плиз (если можно подробнее).

Java и С# по принципу работы они отличаются мало, родные экзешники не делают, обоим нужна прослойка в виде виртуальной машины
Записан
DeleteR
Почетный гродненец
*****

Репутация: +125/-7
Offline Offline

Пол: Мужской
Сообщений: 1871

Просмотр профиля
« Ответ #139 : 07 Февраль 2009, 22:42:16 »

В Википедии все понятно расписано http://ru.wikipedia.org/wiki/Microsoft_.NET
Записан
VooDoo
Почетный гродненец
*****

Репутация: +89/-1
Offline Offline

Пол: Мужской
Сообщений: 2885


Dum spiro spero

Просмотр профиля WWW Email
« Ответ #140 : 07 Февраль 2009, 23:05:10 »

Цитировать
обычно все серьезные продакшен-либы обфусцированы, а это иммено и дает при декомпиляции имена "a", "aa", "aaa", и другие не менее интуитивные названия
сколько в вашей жизни было серьёзных продакшенов?

никто, никогда, ничего не обфусцирует. Я даже не могу себе этого представить... Особенно бедные support чуваки...
если в log4j всегда строится логгер по Logger.getLogge(this.class)
то в логах серьёзного продакшена  Смеющийся мы получим кучу информативных мессаг типа
[a] something...
[aa] something...

повторюсь... никто никогда не травит обфускатором

Единственное 100% применение так это для J2ME ибо надо на всём экономить. Так что при сборке частенько включают обфускатор и верификатор
Записан

Are you human? - My body is.
Do you feel pain? - My body does.
..- --- --- -.. --- ---
spammer
Почетный гродненец
*****

Репутация: +78/-19
Offline Offline

Пол: Мужской
Сообщений: 1455


Пыхнуть не хотите?

Просмотр профиля
« Ответ #141 : 08 Февраль 2009, 00:59:22 »

Цитировать
обычно все серьезные продакшен-либы обфусцированы, а это иммено и дает при декомпиляции имена "a", "aa", "aaa", и другие не менее интуитивные названия
сколько в вашей жизни было серьёзных продакшенов?

никто, никогда, ничего не обфусцирует. Я даже не могу себе этого представить... Особенно бедные support чуваки...
если в log4j всегда строится логгер по Logger.getLogge(this.class)
то в логах серьёзного продакшена  Смеющийся мы получим кучу информативных мессаг типа
[a] something...
[aa] something...

повторюсь... никто никогда не травит обфускатором

Единственное 100% применение так это для J2ME ибо надо на всём экономить. Так что при сборке частенько включают обфускатор и верификатор

еще как травят, если софт не опен сорс. сплошь и рядом такое встречаю. я бы сказал что необфусцированый код это скорее исключение, чем правило. кстати аутпут логгера можно натроить не на имя класса
Записан
VooDoo
Почетный гродненец
*****

Репутация: +89/-1
Offline Offline

Пол: Мужской
Сообщений: 2885


Dum spiro spero

Просмотр профиля WWW Email
« Ответ #142 : 08 Февраль 2009, 02:01:35 »

примеры в студию Подмигивающий
даже weblogic или дрова оракловые всё открытое. Непонимающий
так и если свалится со стэкстрэйсом, как понять что к чему?
и при сборе в несколько джаров, как всё разрулится?
 Да и засудят в два счёта, если кто-то захочет заюзать код
log4j можно крутить как угодно, просто обычно делают так.
« Последнее редактирование: 08 Февраль 2009, 02:18:43 от VooDoo » Записан

Are you human? - My body is.
Do you feel pain? - My body does.
..- --- --- -.. --- ---
spammer
Почетный гродненец
*****

Репутация: +78/-19
Offline Offline

Пол: Мужской
Сообщений: 1455


Пыхнуть не хотите?

Просмотр профиля
« Ответ #143 : 08 Февраль 2009, 08:44:35 »

Примеры: xml-редактор Oxygen. Применена такая схема: api открыто, все остальное А_, B_ и даже C_ Улыбка ActiveVOS - BPEL-система, та же история.

Цитировать
так и если свалится со стэкстрэйсом, как понять что к чему?
у девелоперов то все открыто, а юзера и не надо ничего фиксить - он шлет стектрейс (утрирую Улыбка ), а там уже смотрят что делать

Цитировать
и при сборе в несколько джаров, как всё разрулится?
хз, а какие проблемы могут быть?

Цитировать
Да и засудят в два счёта, если кто-то захочет заюзать код
скажем так обфускация - это как профилактика, а не непосредственно лечение Улыбка
« Последнее редактирование: 08 Февраль 2009, 09:21:32 от spammer » Записан
VooDoo
Почетный гродненец
*****

Репутация: +89/-1
Offline Offline

Пол: Мужской
Сообщений: 2885


Dum spiro spero

Просмотр профиля WWW Email
« Ответ #144 : 08 Февраль 2009, 10:50:57 »

Цитировать
у девелоперов то все открыто, а юзера и не надо ничего фиксить - он шлет стектрейс (утрирую  ), а там уже смотрят что делать
ну... правильно. Пришлёт он мылом стэк трэйс а там...
AAAAAAAAAAA_ caused by
AAAA.aa : 69
AAAAA.aaa :23
и т.д.
я такое даже смотреть бы не стал
Цитировать
хз, а какие проблемы могут быть?
ну собирается аппликация из нескольких модулей, каждый из них будет после выхлопа обфускатора. В итоге в каждом модуле получим классы типа A.AA.AAAA . Т.е. с однаковым пэкеджем и именем. Как потом класслоадеру понять что грузить?

Посмотрел этот oxygen
какие-то они слишком алчные. Юзают кучу фришных либ и ещё что-то скрывают... При том не всё, а просто какие-то куски. Вполне может быть что это чьи-то куски, вот и закрывают что бы никто не догадался Улыбка
Записан

Are you human? - My body is.
Do you feel pain? - My body does.
..- --- --- -.. --- ---
spammer
Почетный гродненец
*****

Репутация: +78/-19
Offline Offline

Пол: Мужской
Сообщений: 1455


Пыхнуть не хотите?

Просмотр профиля
« Ответ #145 : 08 Февраль 2009, 13:00:46 »

я такое даже смотреть бы не стал

Я думаю тулы есть чтобы привести это к нормальному виду. У девелоперов ведь имеется маппинг обфусцированного кода на нормальный для конкретного билда.

ну собирается аппликация из нескольких модулей, каждый из них будет после выхлопа обфускатора. В итоге в каждом модуле получим классы типа A.AA.AAAA . Т.е. с однаковым пэкеджем и именем. Как потом класслоадеру понять что грузить?

Тоже думаю как-то эта проблема решена. Например строится полная мапа пакетов всех модулей, и потом они обфусцируются все вместе, а не по очереди. Или использовать разные класслоадеры для внутренних классов модулей, как в OSGi. Я особо не вникал в технологию, так что точно сказать не могу.

Посмотрел этот oxygen
какие-то они слишком алчные. Юзают кучу фришных либ и ещё что-то скрывают... При том не всё, а просто какие-то куски. Вполне может быть что это чьи-то куски, вот и закрывают что бы никто не догадался Улыбка

Хорошая кстати идея - воровать чужой код и обфусцировать его, чтобы не догадались Улыбка
« Последнее редактирование: 08 Февраль 2009, 14:44:12 от spammer » Записан
SVSH
Гигафлэймер
*****

Репутация: +3240/-9
Offline Offline

Пол: Мужской
Сообщений: 26625


(OO\ (|||)°(|||) /OO)

Просмотр профиля
« Ответ #146 : 18 Февраль 2009, 20:22:23 »

Кстати, в чём отличие готовых бинарных файлов для исполнения в Java и в C# ?
Java - ведь интерпритатор байткода. А C# экзешник ведь готов сразу для исполнения под ОС, без всякой интерпритации. Это так?
т.е. дотнетовские проги работают быстрее, чем Java ?
C# вроди можно при желании заставить генерировать нативный код, но по умолчанию получается байт код. У явы тоже. Но .Net перед исполнением байт кода компилирует его в нативный и нативный выполняется. Это называется Just in time compilation. У явы такого, насколько я знаю, нету.
Записан
alex-v
Настоящий гродненец
****

Репутация: +11/-0
Offline Offline

Пол: Мужской
Сообщений: 320

Просмотр профиля
« Ответ #147 : 18 Февраль 2009, 23:08:20 »

C# вроди можно при желании заставить генерировать нативный код, но по умолчанию получается байт код. У явы тоже. Но .Net перед исполнением байт кода компилирует его в нативный и нативный выполняется. Это называется Just in time compilation. У явы такого, насколько я знаю, нету.
А я слышал, что JIT-компиляция используется и в Java. Википедия в подтверждение - http://ru.wikipedia.org/wiki/JIT
Записан
Victor_K
Per Aspera Ad Astra
Гродненец
**

Репутация: +5/-0
Offline Offline

Пол: Мужской
Сообщений: 124

Per Aspera Ad Astra

Просмотр профиля Email
« Ответ #148 : 03 Март 2009, 17:59:21 »

Работаю с C# c 2001 года. Могу сказать, что данный язык довольно таки удобен, как для создания Web-приложений, так и для системных, офисных и мобильных. Основных платформ .Net существует две - Microsoft Framework.Net и Mono.Net (Sun)/ Причем они имеют некоторую совместимость, т.е. что создано под Framework.Net (v.1.1-v.3.5)? то работает под Mono.Net (v.2.x). Дополнительно Mono - платформа, которая может базироваться как в Windows, так и Unix системах (Linux, BSD, MacOS...).
Вообще данные платформы имеют достаточно развитый инструментарий и позволяют получать относительно компактный код.
На сегодня есть проекты (при чем достаточно много), в которых совмещены Java и .Net. Это дает отличный эффект. Кто не знает .net и пользуется Java - может пользоваться данными и объектами из .net приложений.
Очень удобные средства .net - это remoting, serialization и linq. Если пользоваться ими, то многое, чему учат в школе, окажется просто ненужной информацией.
Записан
spammer
Почетный гродненец
*****

Репутация: +78/-19
Offline Offline

Пол: Мужской
Сообщений: 1455


Пыхнуть не хотите?

Просмотр профиля
« Ответ #149 : 03 Март 2009, 18:11:06 »

 Непонимающий


* 25h0t52.jpg (50,04 Кб, 750x600 - просмотрено 1449 раз.)
Записан
Страниц  : 1 ... 3 4  Все   Вверх
  Печать  
 
Перейти в:  

Войти
Войдите, чтобы добавить комментарий

Войдите через социальную сеть

Имя пользователя:
Пароль:
Продолжительность сессии (в минутах):
Запомнить:
Забыли пароль?

Контакт
Powered by MySQL Powered by PHP Мобильная версия
Powered by SMF 1.1.20
SMF © 2006-2024, Simple Machines
Simple Audio Video Embedder
| Sitemap
Valid XHTML 1.0! Valid CSS!
Страница сгенерирована за 0,24 секунд. Запросов: 19.