Jump to content

Обсуждаем языки программирования


Recommended Posts

С++? Это шутка такая?

Неприязнь к плюсам?

Недавно говорили про мою любовь к Си, теперь неприязнь. Вы уж определитесь.

Да как можно об этом спорить, я не могу понять... У каждого свои идела. Если бы выбирать между C++ и C# - я бы выбрал плюсы. Это очень личный вопрос и хватит его обсуждать.

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

Разница в том, что C# как и любой другой скриптовый язык - внедряется в приложение написанное на С++ (либо другой компилируемый, однако есть случаи когда внедряли Lua в C#) и выполняется на нём имея свою виртуальную машину (в случае с .NET это CLR). Прелесть всего этого в том, что скриптовый язык можно ограничить в возможностях, например не давать прямого доступа к жесткому диску машины, удалить функции для работы с ОС такие как system.

Хоть и скриптовые языки можно компилировать, но они компилируются в байт-код, а не в машинный. Разница в том, что байт-код выполняется интерпретатором (например Lua), а машинный код выполняется уже на процессоре.

МТА и так написана на С++, вы собираетесь встраивать С++ в С++?

Мне даже представить страшно, если МТА например даст возможность использовать ресурсы в виде подключаемой dll написанной на С++. Прямая дорога вирусам.

Link to comment
  • Replies 62
  • Created
  • Last Reply

Top Posters In This Topic

Единственное, что будет полезным из перечисленного тобой перед изучение Lua - ничего.

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

Сначала попытки поддеть, упрекнуть в мании к одному языку, а затем:

Да как можно об этом спорить, я не могу понять... У каждого свои идела. Если бы выбирать между C++ и C# - я бы выбрал плюсы. Это очень личный вопрос и хватит его обсуждать.

Почему же вдруг. И если имеется выбор, между двумя полноценными универсальными ЯП, то почему же нет понимания о безопасности. Если язык нравится без достаточного владения им, то это ли не мания. Мне вот к примеру очень нравится RX-8, но чисто теоретически, т.к. я не был в ней даже пассажиром, и своей машины вовсе нет. Я могу рассказать насколько она великолепна, и даже спорить о том что она лучше многих других. Вот выходит подобная картина.

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

Вообще для таких целей подбирается любой скриптовый, в первую очередь по синтаксу, расширяется, кастомизируется. Игровых движков ведь много, каждый десятый применяет свой скриптовый. Начиная от языков разметки и заканчивая все теми же С# и Java. Кстати говоря различные языки сетевой и клиентской части, не такая уж редкость.

Jeff_Monson, понятно что многие вещи сложно реализуемы или вообще невозможны, но это совсем не говорит о том что люди уже реализовали все возможное.

Ну дык, проектов как Сталкер, и подобные, мало очень. Для этих проектов, которые можно пересчитать на пальцах, вводить новый язык не самое приятное дело для разработчиков.

Даже если таких проектов, станет лишь в два раза больше, это будет большим развитием MTA, чем скажем внедрение собственного физ.движка, а по усилиям несопоставимо в пользу нового языка, мне так кажется.

Добавление нового языка, конечно добавило бы удобств какому-то количеству людей, но главным образом было бы полезно появлением новых людей в MTA. Если что-либо ещё из сугубо скриптовых, то главным образом могло бы принести некоторое кол-во игроков, в качестве приданного к пускай и не очень хорошим разработчикам, вполне возможно что могло бы привести разработчиков чего-либо синглового. Если тот же C# то привело бы разработчиков, которые могли бы активно участвовать в самом MTA, хотя-бы когда каких-то возможностей им не хватает.

Хотя я все же считаю, что на данный момент это не могло бы быть приоритетной задачей.

Link to comment
  • 3 weeks later...
  • 2 weeks later...

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

:shock:

Разница в том, что C# как и любой другой скриптовый язык

Вот это утро вы мне устроили.... C# стал скриптовым языком, а скриптовый и компилируемый язык - это у вас антонимы.

А. Фи. Геть.

Link to comment

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

:shock:

Разница в том, что C# как и любой другой скриптовый язык

Вот это утро вы мне устроили.... C# стал скриптовым языком, а скриптовый и компилируемый язык - это у вас антонимы.

А. Фи. Геть.

Читаем дальше и повнимательней.

Или вы можете доказать обратное? C# не стал скриптовым, он им всегда был.

Link to comment
  • Other Languages Moderators

Читаем дальше и повнимательней.

Или вы можете доказать обратное? C# не стал скриптовым, он им всегда был.

ИМХО c# это нечто среднее, между скриптинговым ЯП и языком общего назначения.

Дело в том, что в C# в отличии от того же Lua есть возможность усправления памятью. Однако C# хорошо встраивается в любое приложение. Я всё же считаю что это язык общего назначения, однако, нет ничего плохого, если его встроить в какую нибудь игру/мультиплеер, что нам уже доказали в Unity.

Link to comment
ИМХО c# это нечто среднее, между скриптинговым ЯП и языком общего назначения.

Дело в том, что в C# в отличии от того же Lua есть возможность усправления памятью. Однако C# хорошо встраивается в любое приложение. Я всё же считаю что это язык общего назначения, однако, нет ничего плохого, если его встроить в какую нибудь игру/мультиплеер, что нам уже доказали в Unity.

Скриптинг есть не только в играх, он активно используется в других местах, например в браузерах JavaScript, разработка сайтов на PHP, Node.JS или ASP.Net - всё это сценарии, т.е. криптинг и C# не смотря на свою сложность тоже является таковым.

Однако C# хорошо встраивается в любое приложение.

Как и любому скриптовому языку ему нужно куда-то встраиваться и выполняться с помощью интерпретатора. В случае с C# код переводится в CIL и выполняется в .NET Framework (CLR).

Link to comment

Все выполняется в какой-то среде, процессор это тоже своего рода среда. Разница между более высокими(скриптовыми) языками, и теми же С# и Java, в том что в первом случае сама виртуальная машина(среда языка) по сути встраивается в программу, когда используется как скриптинг(т.е. всегда), а во втором случае она оказывается рядом с программой, когда используется как скриптинг, а когда используется самостоятельно, по сути замещает или вытесняет ту роль что была у программы.

Т.е. по-любому выше традиционных высокоуровневых(тех же С/С++), но ниже традиционных скриптовых. Я бы назвал(а может где и встречалось уже такое наименование) их виртуальными. Но как называть это дело каждого)

Link to comment
  • Other Languages Moderators
Все выполняется в какой-то среде, процессор это тоже своего рода среда. Разница между более высокими(скриптовыми) языками, и теми же С# и Java, в том что в первом случае сама виртуальная машина(среда языка) по сути встраивается в программу, когда используется как скриптинг(т.е. всегда), а во втором случае она оказывается рядом с программой, когда используется как скриптинг, а когда используется самостоятельно, по сути замещает или вытесняет ту роль что была у программы.

Т.е. по-любому выше традиционных высокоуровневых(тех же С/С++), но ниже традиционных скриптовых. Я бы назвал(а может где и встречалось уже такое наименование) их виртуальными. Но как называть это дело каждого)

Постарайся писать как можно проще. Не в кружке литераторов же.

C# это язык который напрямую работает с .NET, поэтому он является скриптинговым, а С/C++ в данном случае никуда не встраивается.

Link to comment

Вообще скриптовым может стать любой ЯП. Можно сделать asm скриптовым и встроить куда-нибудь.

Всё-таки "уровень" языка придумали не зря. Чем он выше - тем сложнее будет на нем писать с последующей трансляцией(компиляцией) в что-то очень низко-уровневое.

C# - ИМХО самый мощный-удобный язык для скриптинга.

Постарайся писать как можно проще. Не в кружке литераторов же.

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

Просто тут большинство постов короткие, и длинные не привычно видеть.

Link to comment
  • 3 weeks later...
в мта нет никакого выбора языка. есть луа, используйте.

В 1.5 собираются добавить веб браузер, так что теоретически теперь интерфейсы можно будет писать на яваскрипте, со всем вытекающим (с памятью, я так полагаю, тоже)

Link to comment
  • Other Languages Moderators

В 1.5 собираются добавить веб браузер, так что теоретически теперь интерфейсы можно будет писать на яваскрипте, со всем вытекающим (с памятью, я так полагаю, тоже)

Уже добавили.

Link to comment

В 1.5 собираются добавить веб браузер, так что теоретически теперь интерфейсы можно будет писать на яваскрипте, со всем вытекающим (с памятью, я так полагаю, тоже)

Уже добавили.

Само собой. Имелся ввиду сам полный релиз 1.5, который всё ближе и ближе. Хотя этот браузер, мне кажется, будет использовать каждый второй по назначению "ВКОНТАКТИК ПОКА НЕ РЕСПНУЛСЯ", а не для чего-то более интересного.

Link to comment
Хотя этот браузер, мне кажется, будет использовать каждый второй по назначению "ВКОНТАКТИК ПОКА НЕ РЕСПНУЛСЯ", а не для чего-то более интересного.

На сколько я знаю он будет рисоваться, как шейдеры. То есть скриптами, а не по желанию игрока в меню МТА.

Браузеру еще будет неплохое применение в лобби сервера, например, сделать через сайт авторизацию, какие-нибудь функции аккаунта, донат например. Да и еще на сайте сразу же будут новости и какие-нибудь правила, туториалы, медиа-файлы и прочее. Да еще и на сайте активность повысится.

Link to comment

Я изначально был против этой идеи, так как не нужный и бесполезный функционал. Лучше бы просто встроили движек того же вебкита, что дало бы возможность рисовать GUI на HTML и CSS. А если уж нужно отображать сайты, то http функции в помощь. Если стоит вопрос куков - то дополнительно реализовать.

Т.е. внедряя движек вебкита мы уже получаем больше функционала который гораздо полезнее чем то, что предлагают в МТА 1.5.

Кроме как просматривать сайты разработчики ничего не смогут. Да и как я слышал, ограничения будут лютые. Даже если реализовывать GUI - то обработчики нажатия кнопок и т.д. будут выполняться на самом сайте, а это уже дополнительный костыль в виде сокетов к серверу (PHP SDK, например).

Link to comment
  • 3 months later...

Плохо то, что придумщики «языков программирования» не знают моментов, которые наука прошла 32 года назад. Моя любимая система программирования - Forth. Поэтому меня возмущает, что для программиста проблема в длине имен. Программисту надо давать возможность самому решать, как назвать table.size, math.random (и какими буковками, ведь часто лучше - родными для него).

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.

×
×
  • Create New...