Jump to content
Korean Random
Pavel3333

Почему Autodesk 3ds Max писали на C#?

Recommended Posts

Почему не на C++? Там ведь можно спокойно включить direct3d библиотеку, чем идти окольными путями в C#.

Share this post


Link to post

Short link
Share on other sites

Почему не на C++? Там ведь можно спокойно включить direct3d библиотеку, чем идти окольными путями в C#.

А почему ты так решил? )

 

Русская вики говорит что там C#

 

Английская вики говорит что там C++

 

На самом деле там вообще смесь наверно) Язык для задачи выбирается)

Share this post


Link to post

Short link
Share on other sites

На самом деле там вообще смесь наверно) Язык для задачи выбирается)

Согласен. На Шарпе удобно писать интерфейс. На Плюсах удобнее делать 3D-редактор.

Но, с другой стороны, еслиб писалось всё чисто на C++, то можно было бы расходовать меньше оперативной памяти,тк в Плюсах большая быстрота исполнения кода и расход памяти контролирует разработчик из Autodesk'a.

Share this post


Link to post

Short link
Share on other sites

 

 

Но, с другой стороны, еслиб писалось всё чисто на C++, то можно было бы расходовать меньше оперативной памяти,тк в Плюсах большая быстрота исполнения кода и расход памяти контролирует разработчик из Autodesk'a.

А если чисто на ассемблере писать, то вообще! ) Только нафиг оно надо, если писать там 200 лет? )

  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

ASM крут!

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

Share this post


Link to post

Short link
Share on other sites

@Pavel3333, Blender вообще написан на C/C++/Python и норм.

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

Ядро у макса явно не на C# написано.

Edited by ShadowHunterRUS

Share this post


Link to post

Short link
Share on other sites

 

 

ASM крут! Но очень долго писать на языке, который почти равнозначен машинному коду))

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

  • Upvote 3

Share this post


Link to post

Short link
Share on other sites

Почему не на C++? Там ведь можно спокойно включить direct3d библиотеку, чем идти окольными путями в C#.

 

На C# это не так уж и проблематично. Есть механизм P/Invoke, с помощью которого можно описать реализуемые в библиотеке методы. Я даже не сказал бы, что это было сложнее, чем заголовки в том же C++.

 

Но, с другой стороны, еслиб писалось всё чисто на C++, то можно было бы расходовать меньше оперативной памяти,тк в Плюсах большая быстрота исполнения кода и расход памяти контролирует разработчик из Autodesk'a.

 

Насчёт оперативной памяти ты прав, C# в этом плане проигрывает C++, зато выигрывает в плане отсутствия утечек. А вот насчёт быстроты кода - не согласен. В C# очень многое сделано для оптимизации, и управляемый код уже не хуже неуправляемого, а в перспективе и эффективнее будет.

  • Upvote 2

Share this post


Link to post

Short link
Share on other sites

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

Даже парсера json нет(

Share this post


Link to post

Short link
Share on other sites
бесполезными примочками

 

Какими? Пример, пожалуйста.

Edited by Pavel3333

Share this post


Link to post

Short link
Share on other sites

 

 

Даже парсера json нет(
 

Там есть парсер XML и .config. Этого вполне достаточно.

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

Share this post


Link to post

Short link
Share on other sites

Даже парсера json нет(

Есть встроенный: https://msdn.microsoft.com/ru-ru/library/system.runtime.serialization.json.datacontractjsonserializer(v=vs.110).aspx

Но в основном все используют http://www.newtonsoft.com/json

 

К тому же он вообще в большинстве случаев не нужен, потому что все прячется за WCF или Web API, и программист работает с контрактами, а не с данными.

 

Не стоит рассуждать о том, в чем не разбираешься.

Бесполезными.

То, что ты их не понимаешь, не делает их бесполезными.

Edited by sirmax
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

То, что ты их не понимаешь, не делает их бесполезными.

Даже вброс сделать нельзя)

Я на .NET не писал никогда)

Edited by ShadowHunterRUS

Share this post


Link to post

Short link
Share on other sites

Бесполезными.

Пипец ты "объективный", вечно передёргиваешь когда тебя просишь привести примеры) Ну зачем? ))

Share this post


Link to post

Short link
Share on other sites

Ну зачем?

а ты зачем пишешь, когда я написал это

Даже вброс сделать нельзя)

тоже скучно?

Share this post


Link to post

Short link
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...