Часовой пояс: UTC + 3 часа




Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 481 • Страница 1 из 251  2  3  4  5 ... 25  >
  Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 

Member
Статус: Не в сети
Регистрация: 07.05.2003
Откуда: Москва
Цитата:
Внимание!!! соблюдайте чистоту в ветке. Удаляйте те свои посты,которые уже не имеют актуальности\смысла. соблюдайте чистоту!


Книги,обязательные для прочтения:
1)Любая приличная книга по языку .Net,который вы выбрали
2) ".Net Framework" Джеффри Рихтер-книга даст базовые понятия о платформе .Net, без которых Вы ничего не сможете делать.
3) http://msdn.microsoft.com/library/rus/ официальный перевод MSDN

могу сказать что не надо брать:
- из серии "Библия...", такая толстенная рыжая книга VB.NET (однако говорят,что Visual C++.Net (Том Арчер и Эндрю Уайтчепел) из этой серии очень неплоха...)
-не брать книгу "программирование в тональности C#"-полнейшая чушь
-Разработка WEB-приложений на Microsoft Visual Basic.NET и Microsoft Visual C# .NET. мне тоже не понравилась
-не следует брать книги серии "Изучаем за 24 часа"
-книги BHW бывают разные по качеству... в основном не очень доходчивые объяснения и внимание зачастую заостряют на малозначимых темах,а важные мельком..
-"C# без лишних слов"-чушь
-Язык программирования C#. Лекции и упражнения Микелсен К.-просмотрел в магазине..насколько помню-не понравилась..

хорошие книги:
-C#: учебный курс Шилдт Г.-сам не читал,но много положительных отзывов
но лучше не брать от издательства "Питер"-у них переводы мне не понравились
-та,которую читаю "Visual C#.Net полное руководство" Джейсон Прайс.
издательство "Корона принт". книга в мягкой обложке нежно-салатового цвета

очень доходчиво объясняется суть ООП(Объектно-Ориентированного Программирования),синтаксис,даны базовые понятия о сборках,потоках и важнейших классах .Net

ЗАЧЕМ НУЖЕН ЭТОТ .НЕТ? НАМ И ТАК ХОРОШО...

Цитата:
Смысл перехода.... ну, c# - очень приятный язык. После c++ пользоваться им легко и приятно. Через некоторое время возвращение к c++ вызывает отторжение. Неудобно.
Забота о ресурсах принимает другой характер. Более мягкий.
Уходят в прошлое проблемы с некорректным доступом к памяти. Совсем.
Наконец-то появляется простая и согласованная система обработки исключений.
НАМНОГО проще отладка.
Библиотека классов очень богатая и развлетвленная. Продуманная. Нет нужды в написании 1001 wrapper-а.
Типизированные указатели на функции!!!
Асинхронное программирования становится легче в разы. Если забыть про проблемы синхронизации, то в десятки раз.
Reflection дает новое измерение в написании утилит и мета-оберток.
Атрибуты позволяют обогнать Java в технологичности. Библиотека классов богаче и приятнее. Делегаты опять же.
Простая в кодировании и в использовании (а также относительно простая в расширении) система удаленного взаимодействия.
Наконец-то MS создало удобный метод конструирования UI. Не только не хуже, чем у конкурентов, но и лучше.
ASP.Net - это просто сказка, по сравнению с другими методиками разработки web-приложений. Хотя, Java тут тоже довольно сильна.

Преимуществ - вагон и маленькая тележка. Игнорировать эту платформу - значит обрекать себя на технологическое отставание.
Единственная альтернатива - Java+IBM+Rational+Linux. Объединив все это вместе, можно попытаться что-то противопоставить.
Лично я думаю - кишка тонка, но время покажет.

P.S. Одни только xml-comments в студии .net в с# - это фича, из-за которой стоит сменить платформу.

(C)Mong



ЗАБЛУЖДЕНИЯ И ОПРОВЕРЖЕНИЯ

Цитата:
1. Программистов нужно переучивать.
Да, но обучение .net-у тех, кто привык к c++, проходит очень легко. Вообще, много званых, но мало избранных. Пишут на сях многие, а умеют писать - процентов 10 от силы.
Радикальное упрощение отладки кривовато написанного программистами средней квалификации кода - это огромное преимущество.

2. Собственные наработки, библиотеки и т.д.
Если они узко специализированы - их можно оставить и заврапить для использования из .net.
Если речь идет о библиотеках широкого назначения, то в свете clr их ценность, скорее всего, невысока.

3. Есть готовый работающий код.
Это реальное основание. Не ломалось - не чини.

4. .net медленный, с++ - быстрый.
На самом деле - довод смешной. Отпрофилируйте приложение. Скорее всего, основной источник тормозов - запросы к БД, сетевые обращения и кривые руки.
Если нет... ну тогда может вам стоит отказаться от c++ в пользу asm-а?
На самом деле, .net тоже достаточно быстрый. Все зависит от конкретной задачи. Можно показать, что в некоторых ситуациях код, написанный на c# может быть быстрее. Точно также, как это бывало в сравнениях Java и с++.

5. с++ - переносимый, а .net - нет.
Если нужен переносимый код - Java рулит. .Net к Java в ближайшие годы приблизится, скорее всего. Хотя полностью не догонит никогда, скорее всего.

6. Драйвера и т.д.
Вопросов нет.

(C)Mong

_________________
Вы все еще жарите на AMD??? Тогда мы идем к Вам!
подпись: Intel & Ko -----------------------> (C) Smoke


Последний раз редактировалось Smoke 05.08.2005 10:43, всего редактировалось 13 раз(а).


Партнер
 

Advanced member
Статус: Не в сети
Регистрация: 09.06.2003
Откуда: USSR
Ну и по теме малость тоже напишу. Данный топик было решено открыть для тех, кто начал или только собирается началь, изучение программирование под платформу .Net. В принципе выбор языка как такового не важен, все одно платформа одинаковая. Но для начала хотелось бы ввести несколько правил в эту ветку, думаю что все с ними согласятся.

1. Никаких обсуждение о достоинствах и недостатках .Net. Раз ветку создали, значить тема актуальна. Флеймить идем во "Флейм" :)
2. Обязательно при вопросе указывайте используемый вами язык программирования. И постарайтесь подробнее изложить суть проблемы.
3. Давайте изначально не засорят ветку и не будем рассуждать на чем же лучше писать. Выбор языка, сугубо личное дело, но! Если Вы не знаете какой язык взять, то думаю что каждый , кто уже пишет под .Net может описать свой язык. И большая просьба не пытаться насильно переубедить в выборе языка. Это тема наболевшая на всех програмистстких форумах. :)
__________________
Предложения по теме:
Составить список полезных книг по тематике. С указанием обязательных к прочтению. По своему опыту скажу, с "налету" ничего не получится. Так как программирование под .Net немного отличается от стандартного Win API.
_________________
Ну вот в принципе и все.

От себя добавлю. Сам я в основном пишу на Delphi, так уж получилось , что я нам нем сижу ах с 1 бета версии, не считая Turbo Pascal 1.0 с которого я начал писать на Паскале вообще. Так вот, Delphi .Net что-то мне совсем не понравился. Попробовал C++ .Net, хмм, вроде и язык тотже и многое похоже , но опять что-то не так. А вот С# как ни странно понравился, проще вьехать чтоли. Может потому, что он сильно отличается как от Delphi так и от C++. Так что мой выбор пока что C# :) И соответственно Microsoft Visual Studio 2003 .Net.


Последний раз редактировалось Ray Adams 29.01.2005 16:17, всего редактировалось 1 раз.

 

Member
Статус: Не в сети
Регистрация: 07.06.2004
Откуда: Питер
VB .NET - Я вот на нем хотел начать писать, но после VB 6.0 SP5 мне на .NET никак не перейти.
Подскажите книжки для прочтения. Только желательно в целюлозно-бумажном формате, а то
с сети не охота качать. Если кто знает где они продаются в Питере, то это еще лучше... Заранее Спасибо.

_________________
people.overclockers.ru/Valkiry


 

Advanced member
Статус: Не в сети
Регистрация: 09.06.2003
Откуда: USSR
По VB.Net сказать ничего не могу, а вот для тех кто хочет учить C# есть пара хороших книг, правда все на английском, не уверен что есть переводы
"C# - Your Visual Blue Print for building .NET Applications" авторы Eric Butow, Tommy Ryan.
"Visual C# .NET Programming" автор Harold Davis - Большой уклон в WEB
"Programing C#" - Jesse Liberty (Описание на Amazon.com)

Первая очень хорошая!
А третья просто отличная книга для начинающих писать на C# под .Net. Разжевывается все, начиная с самых основ языка. Сейчас я ее читаю, в принципе многое я и так знаю, что такое переменные и константы. Но информация подается в очень хорошей манере.


 

Member
Статус: Не в сети
Регистрация: 07.05.2003
Откуда: Москва
очень прикольно будет,если мы будем по мере того,как читаем книги пресказывать главы сюда письменно,основное содержание,без воды, с пояснениями и додумками, своими комментариями и тд.

_________________
Вы все еще жарите на AMD??? Тогда мы идем к Вам!
подпись: Intel & Ko -----------------------> (C) Smoke


Последний раз редактировалось Smoke 28.01.2005 17:26, всего редактировалось 2 раз(а).

 

Advanced member
Статус: Не в сети
Регистрация: 09.06.2003
Откуда: USSR
Ну я читаю книги на английском, думаеш стоит писать? :)


 

Member
Статус: Не в сети
Регистрация: 07.06.2004
Откуда: Питер
Ray Adams Я тоже поддерживаю идею о написании(описании) глав различных книг.
И выражать свои думки тоже не плохо... Я ЗА!

_________________
people.overclockers.ru/Valkiry


 

Member
Статус: Не в сети
Регистрация: 07.05.2003
Откуда: Москва
теперь насчет перевода в машинные коды и производительности:
Цитата:
Поверьте,я и сам из тех,кто программирует на C/C++,и,переходя на CLR,я достаточно скептически рассматривал ...дополнительные накладные расходы....Microsoft проделала значительную работу,чтобы свести эти издержки к минимуму.....сами создайте приложение и проверьте его производительность....вас удивит, насколько она высока на самом деле..

".Net Framework" изд 2 Джеффри Рихтер стр.14.

NGen.exe компилирует весь IL код некоторой сборки в файл на диске,который содержит уже реальный х86 процессорный код. т.е. трансляция из IL при выполнении не производится

_________________
Вы все еще жарите на AMD??? Тогда мы идем к Вам!
подпись: Intel & Ko -----------------------> (C) Smoke


Последний раз редактировалось Smoke 29.01.2005 16:58, всего редактировалось 1 раз.

 

Member
Статус: Не в сети
Регистрация: 23.09.2003
Откуда: South Ural
при выполнении компиляции не производится - программа уже скомпилирована в "особые" процессоронезависимые "машинные" кода виртуальной машины .NET - трансляция их в реальные машинные команды при выполнении программы - вот где источник уменьшения производительности

_________________
http://stargaz0r.nm.ru
http://people.overclockers.ru/StarGaz0r/files


 

Advanced member
Статус: Не в сети
Регистрация: 09.06.2003
Откуда: USSR
Smoke Читал я это и в принципе похожее есть в книге Programming C# и еще немного, есть интересные цитаты.
Попробую своими словами изложить.
Цитата:
Корпорация Microsoft тратит до 80% из своего бюджета , выделенного на исследования и раработку, именно на .Net. Раз уж такая компания тратит миллионы долларов на систему .Net, то к этому стоит присмотреться



Цитата:
Компиляция
В платформе .Net, программа не комппилируется в исполняемый файл, а компилируется в файлы Microsoft Intermediate Language (MSIL) , которые запускаются «расширителем» CLR. Файлы MSIL (в обычном разговоре называемый как IL) , полученные при компиляции C#, идентичны с файлами скомпилированными при использовании других .Net языков. (прим мое. Это и так понятно :) )

код программы на C# компилируется в IL и сохраняется на диске. При запуске программы, IL компилируется опять , используя Just In Time (JIT) компилятор, в результате получаем уже машинный код.

Стандартный компилятор JIT вызывается только при надобности. Когда вызывается метод программы, JIT анализирует код IL и создает высоко эффективный код, который работает очень быстро. JIT не глуп, и сам может определить, когда код уже был скомпилирован и не будет компилировать его еще раз. После запуска программы .Net она будет работать быстрее и быстрее, так как многие части программы уже скомпилированы.

Правда я тут не понял, повторная компиляция не происходит даже если ты программу выгрузил, а потом запустил заново, или это относится только к единовременному запуску программ и если ее запустить заново, то все будет компилироваться заново?.
Но я лично не соглашусь с Джеффри Рихтер, да, скорость высока, намного выше чем у Java, но все же медленнее чем чистый код. Хотя при современных скоростях машин это уже не так заметно :)


 

Member
Статус: Не в сети
Регистрация: 07.05.2003
Откуда: Москва
МS делает упор не столько на производительность,как на СТАБИЛЬНОСТЬ приложений- слабое место всех вин. приложений.

Цитата:
или это относится только к единовременному запуску программ и если ее запустить заново, то все будет компилироваться заново

я тоже думаю,что при первом запуске приложения выволняется компиляция,а при последующих запусках копий приложения\его сборок машинные коды уже запускаются из некоторого кэша. Будем рыть этот вопрос :writer:

_________________
Вы все еще жарите на AMD??? Тогда мы идем к Вам!
подпись: Intel & Ko -----------------------> (C) Smoke


Последний раз редактировалось Smoke 29.01.2005 16:04, всего редактировалось 1 раз.

 

Advanced member
Статус: Не в сети
Регистрация: 09.06.2003
Откуда: USSR
Цитата:
как на СТАБИЛЬНОСТЬ приложений

К сожалению это больше зависит от программера чем от платформы :)
Кстати кто что использует для программинга под .Net? У меня VS 2003 .Net, но видел еще несколько вариантов оболочек, хотя им конечно далековато до VS.


 

Member
Статус: Не в сети
Регистрация: 28.12.2003
Откуда: Vladivostok
Visual studio.NET 7.0 - лучшее что видел вообще для программинга. и жалкие потуги в освоении басика

Добавлено спустя 2 минуты, 4 секунды:
а не подскажет кто. если надо в программе использовать какую то программу из виндовс (в итоге надо получить NET SEND в нормальной оболочки), где искать как использовать?


 

Advanced member
Статус: Не в сети
Регистрация: 09.06.2003
Откуда: USSR
Цитата:
а не подскажет кто. если надо в программе использовать какую то программу из виндовс (в итоге надо получить NET SEND в нормальной оболочки), где искать как использовать?

Не совсем понял , что именно, поясни подробнее


 

Member
Статус: Не в сети
Регистрация: 28.12.2003
Откуда: Vladivostok
Ray Adams
Служба Messenger в xp\2000 и т.д. знаем? Пуск - выполнить - cmd - net send <ip> <текст>
Надо графическую часть, чтобы был обычный чат. К чему приступить то ?


 

Advanced member
Статус: Не в сети
Регистрация: 09.06.2003
Откуда: USSR
Vlad_Diver Ну так зачем мучать NET SEND? Можно и через Net API запросто это сдлетаь, я делал на VC++, правда под C# не переводил. Вот кстати будет мне небольшая задачка! :)


 

Member
Статус: Не в сети
Регистрация: 07.05.2003
Откуда: Москва
Цитата:
Надо графическую часть, чтобы был обычный чат

как раз сейчас эту фигню делаю. Это делается через сокеты и TcpListener()
про это все http://msdn.microsoft.com/library/rus/ читай.

все,кто хочет это сделать-стучитесь ко мне в аську(желательно) или в ЛС будем вместе делать. Есть работающий пример,уже с ГУИ. но его надо конкретно переработать.

_________________
Вы все еще жарите на AMD??? Тогда мы идем к Вам!
подпись: Intel & Ko -----------------------> (C) Smoke


 

Advanced member
Статус: Не в сети
Регистрация: 30.08.2003
Откуда: Санкт-Петербург
Ray Adams
Цитата:
Правда я тут не понял, повторная компиляция не происходит даже если ты программу выгрузил, а потом запустил заново, или это относится только к единовременному запуску программ и если ее запустить заново

ИМХО, компилируется промежуточный код в _реальный_ машинный x86 код только при перво запуске проги, а полученный образ кладется куда-то внутрь винды... Потом, насколько я понял, запускается именно он...

_________________
{:€ дед в законе :-) нородный окодемег
почетный пользователь OpenSuSE 11.3
Ремонт и модернизация ноутбуков IBM (Lenovo) ThinkPad


 

Advanced member
Статус: Не в сети
Регистрация: 09.06.2003
Откуда: USSR
Да вот и первые блины комом.
Попробовал переписать свою прогу с Си++ на C#. Сам язык С# просто до безобразия, но вот тот факт, что изначально C# практически не имеет описания Win32 функций, точнее не имеет описания больше половины функций, просто напрягает!
Сейчас сейчас за создание классов и assembly для работы с Lan Manager. Если кто уже что-то делал, дайте знать. :)


 

Member
Статус: Не в сети
Регистрация: 07.05.2003
Откуда: Москва
Вообще,Джентельмены,я считаю,что учить втупую все подряд бессмысленно. Даже если делать миниатюрные программки на каждый класс-это не научит писать настоящие программы. Только КОЛЛЕКТИВНАЯ работа над существенным проектом может научить реальным задачам. Кроме того если делаешь что-то в коллективе-морально легче собраться(знаешь,что работаешь не один и не говоришь "а ладно..завтра доделаю" ведь знаешь,что такое поведение тормозит весь коллектив...вобщем это самое лучшее средство для борьбы с ленью), если появляется проблема-ее решают ВСЕ(потому что твоя проблема-общая проблема), а не смотрят между строк,как это обычно происходит в форумах.

Кроме того,платформа .Net, как никакая другая раздвигает "границы", один пишет на VB.Net-другой на C#, приходит интуитивное понимание того,как это ВСЕ взаимодействует: сборки,версии,локализации...

Я предлагаю тем,кто действительно хочет научиться программировать,не боится перебороть собственную лень и ВСЕГДА найдет время(независимо от загруженности и усталости),чтобы написать пару..десяток..другой..третий.. строк:

Давайте делать! Вместе! Не важно что,но делать! Один общий проект!

я совершенно серьезно. и прошу каждого отнестись к этому серьезно. Иначе-просто бросьте затею изучения .Net-Вы ее не выучите.

все,кто готов: в ЛС. Комментарии сюда.

_________________
Вы все еще жарите на AMD??? Тогда мы идем к Вам!
подпись: Intel & Ko -----------------------> (C) Smoke


Показать сообщения за:  Поле сортировки  
Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 481 • Страница 1 из 251  2  3  4  5 ... 25  >
-

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  



Лаборатория














Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB | Kolobok smiles © Aiwan