ПрофильПрофиль
ПользователиПользователи
ГруппыГруппы
ПоискПоиск
 
ВходВход
 
Учебный форум для написания тестовых писем (песочница)

Форумы на FizMat >> IT-клуб >>
 
C# vs. Pascal
Предыдущая тема :: Следующая тема Страница 1 из 3
На страницу 1, 2, 3  След.
ReGeDa
На начало сообщения C# vs. Pascal
Ср 14 Дек 2005 14:21
regeda
 
На днях прочитал о синтаксисе нового языка С# Exclamation . Понятно, что ребята из Майкрософт постарались. Особенно, понравиться C# любителям Object Pascal (Delphi), ибо очень прослеживается простота и читабильность нового языка. По-моему мнению, C# даже более человечным языком пишется, чем язык Pascal. В общем, C# самый что ни на есть ООПешный, при этом понять синтаксис не составит труда никому, уж очень он прост, по-моему мнению. И, кстати, наверное, данный язык можно отнести не только к разделу теории, но и практики. Правда, с С++ ему не сравниться (я уже перешел на С++, имхо С++ куда эмпирический язык, чем Pascal). Так что вечная память дедушке Pascal'ю Laughing , светлый путь C# Smile и человеческое уважение С++ Cool !!!

_________________
Если я захочу изменить мир к лучшему, то обязательно начну с себя

Ответить с цитатой     Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
freeman
На начало сообщения Re: C# vs. Pascal
Ср 14 Дек 2005 14:32
freeman
 
regeda писал(а):
По-моему мнению, C# даже более человечным языком пишется, чем язык Pascal.

К сожалению, человечность не гарантирует качество(не к C#).
Цитата:
уж очень он прост

Может только с первого взгляда?
Цитата:
И, кстати, наверное, данный язык можно отнести не только к разделу теории, но и практики

Вообщем он был создан специально под технологию .NET. Говорить о какой - то теории нет смысла(ИМХО). Smile
Цитата:
Правда, с С++ ему не сравниться

Ест-но, два совершенно разных подхода.
Цитата:
имхо С++ куда эмпирический язык, чем Pascal

и т.д. и т.п. Very Happy
Цитата:
Так что вечная память дедушке Pascal'ю

Точнее дедушке Вирту, при всем моем уважении к нему.
Цитата:
светлый путь C# и человеческое уважение С++

Forever!!!

_________________
0x2B | ~0x2B = 0xFF

Ответить с цитатой     Посмотреть профиль Отправить личное сообщение
Alexander Shagin
На начало сообщения Re: C# vs. Pascal
Чт 15 Дек 2005 01:09
shagin
 
regeda писал(а):
На днях прочитал о синтаксисе нового языка С# Exclamation . Понятно, что ребята из Майкрософт постарались.

Пришлось им постаратьсяSmile DotNet - ответная реакция на скандал с Sun Microsystems. По сути, новый продукт - аналог Java. А без подобных технологий, такому гиганту как MicroSoft придется потерять гигантский сектор рынка.
regeda писал(а):
По-моему мнению, C# даже более человечным языком пишется, чем язык Pascal. В общем, C# самый что ни на есть ООПешный, при этом понять синтаксис не составит труда никому, уж очень он прост, по-моему мнению.

Если подходить к этому вопросу с профессиональной точки зрения, то для некоторых и ASM-код будет не менее "человечным языком" чем этот текст. А бывают случаи, что объяснить назначение BEGIN END предстовляется практически неразрешимой задачейSmile. Многое определяется кругом решаемых задач и первоначальным опытом в программировании. Соответственно и выбираются инструменты.

regeda писал(а):
Правда, с С++ ему не сравниться (я уже перешел на С++, имхо С++ куда эмпирический язык, чем Pascal).

К вопросу сравнения различных языков, по моему, часто подходят не совсем корректно. Что лучше, а что хуже для решения каких именно задач? Если вы владеете Turbo Pascal(или Basic) и Вам его возможностей с лихвой хватает - с какой стати в должны выслушивать "чудесные истории" о волшебстве какого-нибудь нового ультрамодного языка. Другое дело, если возможностей перестает хватать, то выбор нового инструмента вполне оправдан. Если вспомнить историю появления языков программирования, то все они в первую очередь создавались для решения конкретных задач. Так что сравнивать C# корректней всего все-таки с Java. А Delphi vs C++ в 90% процентах случаев равноценны - дело вкуса и привычки.

regeda писал(а):
Так что вечная память дедушке Pascal'ю Laughing , светлый путь C# Smile и человеческое уважение С++ Cool !!!


Боюсь, что век Pascal и Basic может продлится не меньше чем у C#. Во всяком случае пока будет жива платформа, на которой работают компиляторы.



Последний раз редактировалось: shagin (Чт 15 Дек 2005 19:17), всего редактировалось 2 раз(а)
Ответить с цитатой     Посмотреть профиль Отправить личное сообщение Отправить e-mail
Alexey N. Sergeev
На начало сообщения
Чт 15 Дек 2005 18:29
alexey
 
Расскажите, плз., что такое .NET? В двух словах?

Ответить с цитатой     Посмотреть профиль Отправить личное сообщение
Alexander Shagin
На начало сообщения .Net
Чт 15 Дек 2005 19:12
shagin
 
В двух словах .Net это платформа от Microsoft для исполнения программ. С Java роднит ее тот факт, что исполяемый код хранится в промежуточном формате (IL-код), который выполняется сервером .Net (В принципе тоже, что и Java-машина от Sun). Отличие от Java, это то, что языков под эту платформу может быть много (C#.Net, Delphi.Net и др.).

Ответить с цитатой     Посмотреть профиль Отправить личное сообщение Отправить e-mail
Павел Жданович
На начало сообщения Re: C# vs. Pascal
Вт 20 Дек 2005 00:45
zhd
 
regeda писал(а):
Так что вечная память дедушке Pascal'ю Laughing , светлый путь C# Smile и человеческое уважение С++ Cool !!!


Спор о языках порождает религиозные войны... Confused
Так что, я полностью согласен. C# -- замечательный язык.

Не так уж важно, IMHO, на чем делать код. Важно, какие технологии поддерживает среда разработки.
А Паскаль - он дедушка хитрый... Wink

Ответить с цитатой     Посмотреть профиль Отправить личное сообщение
freeman
На начало сообщения Re: .Net
Вт 20 Дек 2005 14:06
freeman
 
shagin писал(а):
В двух словах .Net это платформа от Microsoft для исполнения программ.

Это целая архитектура, и не совсем для исполнения, а скорее всего развертывания проектов.
Цитата:

С Java роднит ее тот факт, что исполяемый код хранится в промежуточном формате (IL-код), который выполняется сервером .Net (В принципе тоже, что и Java-машина от Sun).

Во первых IL (intermediate language) это не формат а целый язык, созданный специально для этой системы.
во -вторых программа написанная для .Net не является интерпретируемой пусть и во внутреннем формате(java -машина). она преобразуется, при первом исполнении, JIT- компилятором установленным в windows в команды процессора. (кстати для дот нет можно писать и на java)
Цитата:
Отличие от Java, это то, что языков под эту платформу может быть много

Как я уже говорил язык для этой платформы один MSIL. А вот преобразование в него может осуществлять компилятор поддерживающий эту технологию(С#, Delphi .Net и т.д. и т.п.)
Цитата:
А Delphi vs C++ в 90% процентах случаев равноценны - дело вкуса и привычки.

в 0.0000090 %случаев т.к. они совершенно разные языки(Delphi -вообще-то это среда)
Цитата:
Так что сравнивать C# корректней всего все-таки с Java

В чем - в синтаксисе? да похожи но по-причине наследия(!!!!) от C++;
Цитата:
Пришлось им постараться DotNet - ответная реакция на скандал с Sun Microsystems. По сути, новый продукт - аналог Java.
Кто кому аналог - .Net Jave?????????
Цитата:
Расскажите, плз., что такое .NET? В двух словах?

В двух очень трудно, потому как .Net очень сложная архитектура. Она включает жеско стандартизированные спецификации, типы данных, правила работы, передачи и т.д..
Хотя .Net и применяется сейчас в основном на win системах, но ничего общего с ними она не имеет.

_________________
0x2B | ~0x2B = 0xFF



Последний раз редактировалось: freeman (Вт 20 Дек 2005 14:48), всего редактировалось 2 раз(а)
Ответить с цитатой     Посмотреть профиль Отправить личное сообщение
ReGeDa
На начало сообщения Теоретики vs. Практики
Вт 20 Дек 2005 14:29
regeda
 
Сам Вирт писал в своих статьях. что созданный им язык Pascal в первую очередь направлен на изучение теории программирования. По этому можно разделить существующие языки на практические и теоретические. А подтвердить это тем, что большинство программ, написаных по Windows, являются семейством C++ (Microsoft или Borland).
Конечно же, никто не запрещает преподавать Object Pascal и изучать его. Но все равно кто-то вырастает и отказывается от Pascal, а кто-то остается и довольствуется тем, что сочинил Borland, сделав из Turbo Pascal некий С++подобный язык. Я не хочу никого (программистов на Delphi) обидеть, я сам изучал и понимал программирование на Object Pascal.
C# - это что-то новое. Чистый объектно-ориентированный язык и это уже не шутки. Конечно, интересно посмотреть что из него выйдет, но мне кажется, что C# хороший конкурент Object Pascal.
И вообще никто не запрещает, например, программировать игры на Delphi || C++ || C# || Visual Basic, но кто-то сделает игру более мощной и гибкой, а кому-то придеться кочегарить и кочегарить!!!

_________________
Если я захочу изменить мир к лучшему, то обязательно начну с себя

Ответить с цитатой     Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
Alexander Shagin
На начало сообщения Re: .Net
Вт 20 Дек 2005 20:12
shagin
 
Возможно мой ответ "в двух словах" был слишком краток и содержал массу упрощений, что впрочем, на мой взгляд, не было в ущерб общему смыслу. Постараюсь аргументированно это обосновать.
freeman писал(а):

Это целая архитектура, и не совсем для исполнения, а скорее всего развертывания проектов.

Платформа, действительно, здесь не очень удачноее слово, слишком узкое понятие. Точнее это, видимо
"Программное обеспечение для объединения информации, пользователей, систем и устройств"( Б. Гейтс http://soft.compulenta.ru/32694/)
Что кстати понимается под развертыванием проектов???

freeman писал(а):

Во первых IL (intermediate language) это не формат а целый язык, созданный специально для этой системы.
во -вторых программа написанная для .Net не является интерпретируемой пусть и во внутреннем формате(java -машина). она преобразуется, при первом исполнении, JIT- компилятором установленным в windows в команды процессора. (кстати для дот нет можно писать и на java)


Платформа .NET основана на использовании общей среды выполнения кода CLR (Common Language Runtime), подобной виртуальной Java-машине, и набора библиотек, доступных для ряда языков программирования. Независимо от того, какой язык используется в процессе разработки, программа компилируется в промежуточный код IL (Intermediate Language). IL - это именно формат, понятный для CLR в .Net для исполнения(аналогично байт-куду Java, концептуальное свойство). ([url] http://www.csm.ru/article/csharp/news16.php [/url])


freeman писал(а):
Как я уже говорил язык для этой платформы один MSIL. А вот преобразование в него может осуществлять компилятор поддерживающий эту технологию(С#, Delphi .Net и т.д. и т.п.)


Все верно, если не различать термины, но зачем тогда цитировать фразу об отличии от Java? Если же быть точным в терминах, то
"исходный текст программы компилируется в промежуточный код, не зависящий от языка и платформы; этот код в дальнейшем выполняется в специальной управляемой среде".

freeman писал(а):

в 0.0000090 %случаев т.к. они совершенно разные языки(Delphi -вообще-то это среда)


Я, возможно, ошибся в цифре 90%. Но если расставить точки над i, то следует все-таки определится что мы ей считаем. Я расцениваю ее как процент области применимости языков для решения конкретных прикладных задач. Языки то разные(Кстати, начиная ,кажется, c Delphi 6 Object Pascal официально именуется Delphi), но сейчас и на том и на другом с успехом решается огромное кол-во самых разных задач. Я говорю о потенциале языка, не о его распостранении в мировом сообществе программистов.

freeman писал(а):

"Так что сравнивать C# корректней всего все-таки с Java"
В чем - в синтаксисе? да похожи но по-причине наследия(!!!!) от C++;


во многом C# и Java схожи, но было бы неверно отождествлять эти языки ... здесь подробнее по пунктам http://www.csm.ru/article/csharp/news16.php
Для заметки: Родителями C# стали Scott Wiltamuth и Anders Hejlsberg, получивший известность, как автор Delphi(!!!), что во многом определяет "человечность" C#Smile

freeman писал(а):
Кто кому аналог - .Net Jave?????????

Да, именно так. После того как Microsoft стала разрабаывать свою спецификацию Java, Sun предъвила судебные претензии (подробнее прочтите на [url] http://zdnet.ru/?ID=310715 [/url] ). В результате мы уже не наблюдаем Java в поставке XP(в отличие от ранних версий).
А наблюдаем развитие .Net

freeman писал(а):

Хотя .Net и применяется сейчас в основном на win системах, но ничего общего с ними она не имеет.

.Net это детище Microsoft:)...ваше отношниее к кроссплатформенности со стороны Microsoft,думаю, не вызывает сомнения. DotNet - это будущее Microsoft, его "коммунистическое будущее".(кстати сама идея великолепная). Тем не менее ее основная идея кроссплатформенности уже дала свои плоды: компания Novell объявила о выпуске первой версии открытой среды разработки Mono, позволяющей создавать приложения на платформе Microsoft .Net для Linux и других операционных систем.

Для тех кому интересно, материал взят с:
http://winall.ru/net_dot/,
http://soft.compulenta.ru/14462/,
http://soft.compulenta.ru/37511/,
http://soft.compulenta.ru/38804/,
http://soft.compulenta.ru/31653/

Ответить с цитатой     Посмотреть профиль Отправить личное сообщение Отправить e-mail
Павел Жданович
На начало сообщения Re: Теоретики vs. Практики
Вт 20 Дек 2005 21:45
zhd
 
regeda писал(а):
Сам Вирт писал в своих статьях. что созданный им язык Pascal в первую очередь направлен на изучение теории программирования.


Вирт это писал очень давно. С тех пор многое изменилось.

Цитата:
По этому можно разделить существующие языки на практические и теоретические. А подтвердить это тем, что большинство программ, написаных по Windows, являются семейством C++ (Microsoft или Borland).


На C++ существует международный стандарт, и это весьма мощный и распространенный язык. Но называть Паскаль "теоретическим" некорректно.
Не взялась бы такая фирма, как Borland, делать деньги на среде разработки, представляющей только академическую ценность.
А их версии Delphi Enterprise весьма прилично стоят. Поскольку на Delphi делаются проекты корпоративного уровня, а денег на такие вещи обычно не жалеют. Важный момент состоит в том, что IBM собиралась распространять свою СУБД DB2 с триалом Delphi.
http://www-128.ibm.com/developerworks/db2/zones/borland/bigpicture.html
Достаточно вспомнить, что DB2 и Oracle - основные игроки на мировом рынке реляционных СУБД.
Я сейчас не говорю о достоинствах Паскаля. Мне, по большому счету, не так важно сейчас, какой у языка синтаксис. Я про технологии, которые поддерживает система разработки приложений.

А "теоретические" языки есть, их создавали Д.Кнут, К.Дейт и т.д. Один - для демонстрации техники алгоритмизации, другой - для демонстрации работы в реляционной модели данных.

Цитата:
Но все равно кто-то вырастает и отказывается от Pascal, а кто-то остается и довольствуется тем, что сочинил Borland, сделав из Turbo Pascal некий С++подобный язык.


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

Цитата:
И вообще никто не запрещает, например, программировать игры на Delphi || C++ || C# || Visual Basic, но кто-то сделает игру более мощной и гибкой, а кому-то придеться кочегарить и кочегарить!!!


Я не пишу игры, драйверы и вирусы, и для задач, в которых я участвую, Delphi подходит. А это: разработка многозвенных приложений и работа с базами данных. И это не теоретические задачи, так как они работают в реальной корпоративной инфраструктуре, под ощутимой нагрузкой.
И, как говорится, "It works!" Smile

Ответить с цитатой     Посмотреть профиль Отправить личное сообщение
freeman
На начало сообщения
Ср 21 Дек 2005 09:52
freeman
 
Цитата:
Что кстати понимается под развертыванием проектов???

Одно из главных достоинств данной среды. Самостоятельное управление установкой/удалением проектов/программ(крайне упрощенно)
Цитата:
IL - это именно формат, понятный для CLR в .Net для исполнения(аналогично байт-куду Java, концептуальное свойство).

Если мне не верят на слово, буду цитировать microsoft.com
http://msdn.microsoft.com/library/rus/default.asp?url=/library/RUS/cpguide/html/cpconinsidenetframework.asp
Цитата:
При компиляции в управляемый код компилятор транслирует исходный код в промежуточный язык Microsoft (MSIL), предоставляющий независимый от процессора набор инструкций, который можно эффективно преобразовать в машинный код.

Цитата:
Код MSIL и метаданные содержатся в файле переносимого исполняемого формата (PE),

Полноценный exe-шник!!!
Цитата:
Перед выполнением кода на промежуточном языке MSIL необходимо его преобразовать с помощью компилятора по требованию (JIT) .NET Framework в
Цитата:
машинный код

Чем дальше тем больше дух захватывает.
Цитата:
В процессе компиляции MSIL в машинный код должна выполняться проверка(!!!!), если администратор не установил политику безопасности, разрешающую обойти проверку

^^^Фантастика, можно понимать если я юзер - то получу один код, а если админ то совершенно другой!
Цитата:
При следующем вызове метода(программы) будет выполняться существующий откомпилированный код

И где же тут аналогия jave???
Вот перечень языков поддерживающих .Net:
APL, Fortran, Pascal,
C++, Haskell, Perl,
C#, Java Language, Python,
COBOL, Microsoft JScript®, RPG
Component Pascal, Mercury, Scheme,
Curriculum, Mondrian, SmallTalk,
Eiffel, Oberon, Standard, ML
Forth, Oz, Microsoft Visual Basic®
Цитата:
расцениваю ее как процент области применимости языков для решения конкретных прикладных задач

Каких задач? MSVC++ и Delphi не единственные среды программирования, существуют много других специализированных на конкретных проблемах. А если брать только доли С++ и среды Delphi я думаю 1000/1.
Цитата:
"человечность" C#

Что понимать под этим словом? для меня например синтаксис pascalя, как кошмарный сон.
Цитата:
В результате мы уже не наблюдаем Java в поставке XP(в отличие от ранних версий).
А наблюдаем развитие .Net

Странно, вы будете и дальше утверждать тождественность Java и .Net?
Цитата:
Microsoft .Net для Linux и других операционных систем.

Хочется сказать .Net forever - Microsoft must die Smile Smile
Цитата:
Вирт это писал очень давно. С тех пор многое изменилось.

Но не взгляды на идею "теоритического" языка.IMXO
Цитата:
На C++ существует международный стандарт, и это весьма мощный и распространенный язык

Если быть точным то 2 стандарта: ANSI и ISO. Причем разные производители компиляторов по разному выбирают поддерживаемый стандарт. Например Microsoft -большей частью ANSI, Borland -ISO

_________________
0x2B | ~0x2B = 0xFF



Последний раз редактировалось: freeman (Ср 21 Дек 2005 14:55), всего редактировалось 1 раз
Ответить с цитатой     Посмотреть профиль Отправить личное сообщение
Павел Жданович
На начало сообщения
Ср 21 Дек 2005 13:15
zhd
 
freeman писал(а):
Shagin писал(а):
Что кстати понимается под развертыванием проектов???

Одно из главных достоинств данной среды. Самостоятельно управляющая установкой/удалением проектов/программ(крайне упрощенно)


Нельзя ли чуть подробнее, начиная с термина "проект"?
Поскольку подобные рекламные клише появились довольно давно, однако самостоятельность каждый раз выглядела по-разному. Smile

freeman писал(а):
Жданович писал(а):
Вирт это писал очень давно. С тех пор многое изменилось.

Но не взгляды на идею "теоритического" языка.IMXO


Взгляды на идею - да, остались, в основном.
Просто с тех далеких пор Паскаль перестал быть "теоретическим" языком.

Ответить с цитатой     Посмотреть профиль Отправить личное сообщение
freeman
На начало сообщения
Ср 21 Дек 2005 14:22
freeman
 
Цитата:
Нельзя ли чуть подробнее, начиная с термина "проект"?

Вот здесь:
http://msdn.microsoft.com/library/rus/default.asp?url=/library/RUS/cpguide/html/cpcondeployingnetframeworkapplications.asp

Цитата:
Просто с тех далеких пор Паскаль перестал быть "теоретическим" языком.

Во многом благодаря фирме Borland.

_________________
0x2B | ~0x2B = 0xFF

Ответить с цитатой     Посмотреть профиль Отправить личное сообщение
Alexander Shagin
На начало сообщения
Ср 21 Дек 2005 14:25
shagin
 
freeman писал(а):
.Net и прочее

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

Так же просьба быть более последовательным в Вашей характеристики Microsoft и .Net
freeman писал(а):
Хочется сказать .Net forever - Microsoft must die Smile Smile


Отрицать или не знать что .Net это и есть Microsoft , т.е. ее прародитель, основной идеолог будущего развития, и уже неотъемлемая часть как минимум нетактично. Зная Microsoft, даже подумать, что она пустит этот проект в "свободное плавание" не представляется возможным. Кроссплатформенность - ДА, но вот полный контроль за развитием - .NET!!! Плохо это или хорошо - покажет время.

Ответить с цитатой     Посмотреть профиль Отправить личное сообщение Отправить e-mail
ASP
На начало сообщения
Пн 20 Фев 2006 15:07
asp
 
[quote="freeman"]
Цитата:
При следующем вызове метода(программы) будет выполняться существующий откомпилированный код

И где же тут аналогия jave???


А как же HotSpot?

Ответить с цитатой     Посмотреть профиль Отправить личное сообщение
Показать сообщения:    
Начать новую тему   Ответить на тему На страницу 1, 2, 3  След.

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Математический факультет Волгоградского государственного педагогического университета
Учебный компьютерный центр ВГПУ, 2005-2007
Powered by phpBB © phpBB Group