Перейти к содержимому


Фотография
- - - - -

.NET


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 98

#1 skaa

skaa

    ы-суслег

  • Небожитель
  • PipPipPipPipPip
  • 8 744 сообщений

Отправлено 31.08.2004, 08:22

вот вопрос возник такой.. щас пытаюсь изучить c# и думаю.. не приду ли я опять к кубикам, от которых ушел в borland'овском софте..? вообщем-то понятно, что компилятор должен быть лучше, ибо авторы (или соавторы) используемой ОС его написали.. но не является ли это ущербным, вот такая вот оптимальность, потому что приложение так же составляется из кубиков и дико мне напоминает builder и delphi.. только не рассказывайте мне дерево платформы .NET.. я знаю что разница принципиальная, но вот конечный результат..?
желание женщины - закон.. желайте женщину..!!

#2 Кот Баюн

Кот Баюн

    активен

  • Небожитель
  • PipPipPipPipPipPip
  • 10 444 сообщений

Отправлено 31.08.2004, 15:53

О кубиках. Технология CORBA, кстати, тоже из "кубиков" состоит. Кубики позволяют линейно масштабировать систему, вне зависимости от сложности задачи (в отличие от экспоненциального роста сложности написания с "нуля"). Если имеется ввиду визуальзые компоненты - виджеты - то это во всех нормальных средах GUI-программирования обзывают "кубиками", или умным словом - компоненты (ну, на самом деле компоненты не всегда визуальными бывают - это более обширное понятие). Так что предубеждения против "кубиков" неуместны (даже в Delphi/CBuilder).

„Именно в интуиции нам является сущность бытия как мировая воля, как единое метафизическое начало мира, которое раскрывает себя в многообразии случайных проявлений“

#3 Кот Баюн

Кот Баюн

    активен

  • Небожитель
  • PipPipPipPipPipPip
  • 10 444 сообщений

Отправлено 31.08.2004, 16:00

Об оптимальности. С приходом Java и .Net акценты оптимальности сдвинулись в другую сторону: время программиста дороже, а железо становится мощнее, так что лишний мегабайт здесь не считается. Оптимизация направлена на прикладной код так, чтобы он выполнялся быстрее и сопровождать его было бы легче, на объём никто не смотрит. Библиотеки времени исполнения раздулись до 30-50Мб, но зато как в Греции - всё есть. ;) На мобильных устройствах всё по-старому, к счастью, но зато среды программирования под мобилы/наладошки превышают по объёму все возможные разумные пределы ("гора рождает мышь"). Однако хочется удобств и быстроты создания, а не Блокнотно-консольных дрязг.

„Именно в интуиции нам является сущность бытия как мировая воля, как единое метафизическое начало мира, которое раскрывает себя в многообразии случайных проявлений“

#4 PLadikov

PLadikov

    маньяк величия

  • Небожитель
  • PipPipPipPipPipPip
  • 12 767 сообщений

Отправлено 31.08.2004, 16:46

Все верно... темп производства софта и разработки железа в последние годы начали расходиться все сильнее и сильнее... вон лонгхорн еще на год отодвинули... пока не разработаны достаточно совершенные системы-роботы, которые будут самовоспроизводиться и сами писать весь софт - значит развитие языков будет идти по пути облегчения разработки проекта, даже в ущерб пользовательским характеристикам... Если кому-то это неприятно - так никто ассемблер и С++ выбрасывать не собирается... другой вопрос - насколько долго клиент захочет ждать результата и сколько он сможет заплатить за ручную работу... будет ли ему этот совершенный продукт нужен к тому моменту, когда он созреет?
Уверенность в завтрашнем дне появляется тогда, когда это дно удается нащупать ногами

#5 Ivun

Ivun

    Сусло-Гусынь

  • Модератор
  • 13 044 сообщений

Отправлено 31.08.2004, 16:46

А чем тебе кубики жить не дают? Самый короткий путь между целью и результатом (ака денюшкой). ООП же не зря придумали -- те же кубики.

#6 Ivun

Ivun

    Сусло-Гусынь

  • Модератор
  • 13 044 сообщений

Отправлено 31.08.2004, 17:02

Это вы Павел хорошо рассуждаете, только кто сказал что C++ -- это не кубики? Давно не видел проекта НЕ построенного на этой схеме ("кубиков").

#7 PLadikov

PLadikov

    маньяк величия

  • Небожитель
  • PipPipPipPipPipPip
  • 12 767 сообщений

Отправлено 31.08.2004, 17:14

Это вы Павел хорошо рассуждаете, только кто сказал что C++ -- это не кубики? Давно не видел проекта НЕ построенного на этой схеме ("кубиков").

Вань, когда же ты читать то научишья? Где ты усмотрел, что я назвал С++ "не кубиками"? Я вел речь о ТРУДОЕМКОСТИ написания софта...
Читай внимательно, поправляльщик... :-)

В конце концов COM - тоже не откровение... можно кубиками назвать даже просто - отдельные процедуры и даже машинный код биоса... но судя по топику его смысл именно в делении систем программирования на более высокоуровневые и менее высокоуровневые...

Уверенность в завтрашнем дне появляется тогда, когда это дно удается нащупать ногами

#8 Гость_MindKiller_*

Гость_MindKiller_*
  • Гость

Отправлено 31.08.2004, 17:41

НА С++ НЕТ КУБИКОВ, Я ПРОВЕРЯЛ !

#9 true

true

    Небожитель

  • Небожитель
  • PipPipPipPipPipPip
  • 11 667 сообщений

Отправлено 31.08.2004, 18:56

НА С++ НЕТ КУБИКОВ, Я ПРОВЕРЯЛ !

судя по заставке vc 6 он состоит из плюсиков  :)
С приходом опыта многие задачи становятся нам не только по плечу, но и глубоко по %%%.

#10 skaa

skaa

    ы-суслег

  • Небожитель
  • PipPipPipPipPip
  • 8 744 сообщений

Отправлено 01.09.2004, 10:52

у меня Visual Studio .NET Architect Edition 2002.. там тоже плюсики.. :D так все-таки у microsoft .net будущее, а borland vcl дохнет..? микрософтовские кубики круче..? :)
желание женщины - закон.. желайте женщину..!!

#11 csharp

csharp

    Новосел

  • Житель
  • 86 сообщений

Отправлено 04.09.2004, 00:42

По удобству и простоте использования компонентов работы с базами данных  С# пока не догнал VCL. Обещают в следующей версии улучшить. Пока приходится использовать компоненты других фирм, например ComponentOne, Infragistics, DevExpress. Хотя какая разница, проблем из-за этого особых не возникает. Borland тоже переключается на .Net, выпустили свой C# Builder. По сравнению с Delphi в .Net глюков пока не заметил, но зато раздражают тормоза при загрузке программы и в прорисовке окон. Но доступ к данным ускорился очень заметно. А главное - язык очень красивый, мощный, при этом простой и интуитивно понятный. Насчет кубиков. Они нужны, если их не использовать, то придется постоянно копировать один и тот же код во многие места программы с риском ошибок и трудностью их исправлений. Если есть время, можно попытаться написать свои кубики и потом их использовать. Сравнив свой кубик (на который можно потратить время большее чем на саму программу) со стандартным кубиком, поймете, что так делать больше не надо :) Конечно если Вам не заказали написание компоненты - тут уж никуда не денешся, будешь крутым :)

#12 Кот Баюн

Кот Баюн

    активен

  • Небожитель
  • PipPipPipPipPipPip
  • 10 444 сообщений

Отправлено 04.09.2004, 01:21

<...>Пока приходится использовать компоненты других фирм, например ComponentOne, Infragistics, DevExpress. Хотя какая разница, проблем из-за этого особых не возникает.

На этапе сопровождения проблемы обязательно возникнут - придётся поддерживать и сторонние компоненты.
Будет интересно.

Borland тоже переключается на .Net, выпустили свой C# Builder.

Никуда она не переключается: как сидела на нескольких стульях, так и сидит. Janeva чего только стоит!

По сравнению с Delphi в .Net глюков пока не заметил, но зато раздражают тормоза при загрузке программы и в прорисовке окон.

Так ведь при загрузке программы происходит компиляция байт-кода в нативный и складирование его в загашник на диске, при последующих запусках особых тормозов нет.

Но доступ к данным ускорился очень заметно. А главное - язык очень красивый, мощный, при этом простой и интуитивно понятный.

Сколько копий сломано за эти три года. УЖАС!

Брошу свои три копейки в оценку .Net:
+ автобоксинг удобная вещь - не нужно придумывать объектные обёртки над данными примитивного типа;
+ автогенерация прокси/стабов для удалённого взаимодействия объектов - удобно, чёрт возьми;
- не поддерживаются checked exceptions (вроде конструкции throws в сигнатуре метода в Java), то есть программист может забить на обработку исключений (как в Delphi, Access Violations - конец кина, электричество закончилось ;));
- классы ошибки и исключения никак не отличаются друг от друга, что я считаю не очень хорошо;
- ПРЕПРОЦЕССОР C# - этот злобный метаязык над языком, позволяющий подставить костыль там, где основной язык не может двигаться;
- и последнее, пока всё, что создано в .Net, работает хорошо только в Windows и НИГДЕ более; хотя экзерсисы вроде Novell Mono оставляют надежду, что .Net появится на Linux в неконсольном варианте.


„Именно в интуиции нам является сущность бытия как мировая воля, как единое метафизическое начало мира, которое раскрывает себя в многообразии случайных проявлений“

#13 HelloHello

HelloHello

    ирландец

  • Почетный житель
  • 3 825 сообщений

Отправлено 10.09.2004, 13:53

Удобно писать CS (клиент-серверные) приложения (COM) где серверная часть на c++ (другом языке, позволяющем сделать производительное и отточеное приложение), а клиентская на C#.

True-music Fun!
Anti-Emo! Anti-ModernR&B!



#14 Кот Баюн

Кот Баюн

    активен

  • Небожитель
  • PipPipPipPipPipPip
  • 10 444 сообщений

Отправлено 24.09.2004, 02:29

Удобно писать CS (клиент-серверные) приложения (COM) где серверная часть на c++ (другом языке, позволяющем сделать производительное и отточеное приложение), а клиентская на C#.

Это смотря кому и как. Иногда бывает действительно удобно гланды через анус вырывать, если жизнь заставит.

COM - это устаревшая технология, которая закончила своё развитие ещё в прошлом веке.

Да, операционная система держится на ней и никуда от неё не денется даже Longhorn. Придуманы обёртки в .Net для неё. Почти все прикладные продукты MS завязаны на COM/OLE, о серверных COM+-динозаврах тоже можно говорить долго, так как они до сих пор живее всех живых, несмотря на смену "линии партии".

COM - это бинарный формат объектной модели MS, и практически работает сегодня на стероидах в силу сложившихся обстоятельств, ожидая своей затянувшейся смерти. Ох, не скоро она наступит (это же своеобразный FoxPro, на котором куча софта работает уже лет 15!).

Не надо заморачиватся сегодня COM/OLE/DCOM, а уж тем более ActiveX оценить будет некому. На смену им пришли WebServices с открытым SOAP-протоколом. Так что имеет смысл хотя бы прикоснуться к новому, чем тратить время на рухлядь.  :)

Давно пошла такая тенденция, что на C++ серверные приложения пишут в очень редких случаях - когда нужно вручную управлять тонкостями распределения памяти и потоков. Прикладной код пишут на C# или Java, что тоже не даёт 100% безопасного кода (перезанятие памяти из-за неэффективного "объектостроительства", выливающееся в жуткий своп). Ни о каком C++ в прикладном коде для систем массового обслуживания (биллинг, например, или интернет-магазин) речь уже не идёт - нужно защищать операционку от переполнений буферов, висячих указателей, утечек памяти - на это добровольно немногие согласятся. Вручную колбаситься (писать код с нуля) тоже - увольте.

Устойчивые от ошибок каркасы и библиотеки на C++, заточенные именно под middle-tier (серверное ПО), стоят немеряно, так что остаётся писать на C# или Java, в относительно недорогих и надёжных системах, обеспечивающие полный жизненный цикл прикладного ПО промышленного назначения.


„Именно в интуиции нам является сущность бытия как мировая воля, как единое метафизическое начало мира, которое раскрывает себя в многообразии случайных проявлений“

#15 Гость_MindKiller_*

Гость_MindKiller_*
  • Гость

Отправлено 24.09.2004, 09:56

Давно пошла такая тенденция, что на C++ серверные приложения пишут в очень редких случаях - когда нужно вручную управлять тонкостями распределения памяти и потоков. Прикладной код пишут на C# или Java, что тоже не даёт 100% безопасного кода (перезанятие памяти из-за неэффективного "объектостроительства", выливающееся в жуткий своп). Ни о каком C++ в прикладном коде для систем массового обслуживания (биллинг, например, или интернет-магазин) речь уже не идёт - нужно защищать операционку от переполнений буферов, висячих указателей, утечек памяти - на это добровольно немногие согласятся. Вручную колбаситься (писать код с нуля) тоже - увольте.

у вас какие-то статистические данные есть или это надо читать как "мне бы хотелось чтобы это было так" ?

#16 Кот Баюн

Кот Баюн

    активен

  • Небожитель
  • PipPipPipPipPipPip
  • 10 444 сообщений

Отправлено 24.09.2004, 20:12

читать как "мне бы хотелось чтобы это было так" ?

www.theserverside.com

„Именно в интуиции нам является сущность бытия как мировая воля, как единое метафизическое начало мира, которое раскрывает себя в многообразии случайных проявлений“

#17 Гость_MindKiller_*

Гость_MindKiller_*
  • Гость

Отправлено 24.09.2004, 20:29

and what ?
почему-то все джависты долго и упорно хоронят C++ и при этом он живее всех живых языков, от чего он еще не помер как вы думаете ?

http://www.theserver...?thread_id=7388

Having taught C++/advanced C++ for several years vs teaching java I find that people pick up java faster than C++/

так вот, джависты - это всего-лишь люди которые пошли легким путем, писать "серверный" софт на яве очень просто, а на C++ нужны годы чтобы писать вменяемое server side ПО да еще и под сложные сервера (аппаратная часть).
и то что рынок серверов за явой - это так хочется думать явистам, C++ пока к счастью никто не отменял. а если нравится кодить в своем "скудном мирке", где нельзя сделать чего-то что не предполагали разработчики VM - то это пожалуйста, у нас демократия :)


#18 Гость_MindKiller_*

Гость_MindKiller_*
  • Гость

Отправлено 24.09.2004, 20:33

и еще, уважаемый, у вас слово сервер и базы данных я надеюсь в голове никак жестко не связаны ? иначе нам не о чем разговаривать

#19 Кот Баюн

Кот Баюн

    активен

  • Небожитель
  • PipPipPipPipPipPip
  • 10 444 сообщений

Отправлено 24.09.2004, 20:43

and what ?
почему-то все джависты долго и упорно хоронят C++ и при этом он живее всех живых языков, от чего он еще не помер как вы думаете ?

http://www.theserver...?thread_id=7388


Having taught C++/advanced C++ for several years vs teaching java I find that people pick up java faster than C++/

так вот, джависты - это всего-лишь люди которые пошли легким путем, писать "серверный" софт на яве очень просто, а на C++ нужны годы чтобы писать вменяемое server side ПО да еще и под сложные сервера (аппаратная часть).
и то что рынок серверов за явой - это так хочется думать явистам, C++ пока к счастью никто не отменял.

Не правда ли, интересная выборка: http://www.theserver...iews/matrix.tss
Что Вы можете предложить взамен на C++?!

а если нравится кодить в своем "скудном мирке", где нельзя сделать чего-то что не предполагали разработчики VM - то это пожалуйста, у нас демократия :)

Я VM и тем более ОС вообще в упор не замечаю в Java. У меня перед глазами ПРИЛОЖЕНИЯ и ИХ ДАННЫЕ. Труд сосредоточен в одной точке, а не разбрасывается по фронту "борьбы" с API и железом.


„Именно в интуиции нам является сущность бытия как мировая воля, как единое метафизическое начало мира, которое раскрывает себя в многообразии случайных проявлений“

#20 Кот Баюн

Кот Баюн

    активен

  • Небожитель
  • PipPipPipPipPipPip
  • 10 444 сообщений

Отправлено 24.09.2004, 20:46

и еще, уважаемый, у вас слово сервер и базы данных я надеюсь в голове никак жестко не связаны ? иначе нам не о чем разговаривать

Да нет. Я их разделяю на ПО Front-End и Back-End, соответственно.


„Именно в интуиции нам является сущность бытия как мировая воля, как единое метафизическое начало мира, которое раскрывает себя в многообразии случайных проявлений“




Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 скрытых пользователей