![]() |
Различия C
А в чем различия языков C# и C?
|
http://ru.wikipedia.org/wiki/C_Sharp
http://ru.wikipedia.org/wiki/Си_(язык_программирования) ну а если коротко, то сишарп работает на технологии .NET и без установленного .НЕТ фреймворка на компе, прога, написанная на шарпе не пойдет. с другой стороны, сишарп проще для начинающего, имхо. зы. знающие меня поправят =) |
стоит так-же добавить что халявы небывает , и приложения C# работают ЗНАЧИТЕЛЬНО медленнее своих С/С++ аналогов , спасает лиш то что для небольших приложений мощность большиства современных машин этот недостаток компенсирует
|
А если обобщить - это совершенно разные языки ;). Читай википедию (линки сверху). Если есть конкретная задача - то наверное можно посоветовать какой язык выбрать (и то не всегда) - а так это как спросить в чем разница между яблоком и апельсином ;) ;)
|
Спасибо за информацию. :yees:
|
На самом деле написать приложение чуть больше чем "хелло ворлд" на чистом С++, да ещё снабдить его более приятным интерфесом чем консоль довольно хлопотно. Посему и берут шарпей для написания графического интерфейса. Ядро приложения остаётся как правило сишная, что бы работала быстрее, а вот диалоги, вывод данных и так далее делается шарпом, что бы при разработке больше времени уделять самой обработке данных, а не тому, как отследить положение курсора на экране.
|
Цитата:
|
ИМХО разница скорее идеологическая... C ближе к железу (тактика), C# ближе к ОО-абстракциям (стратегия), ну и к Microsoft-у, вестимо.
|
На Сишарпе интерфейсы надо писать. На плюсплюсе тоже можно, но дольше и вероятность ошибиться больше.
Но что-то серьезное на сишарпе только мазохист будет писать. |
Цитата:
Не тот ли программист будет "мазохистом", который вместо концентрации на серьезной бизнес логике очень серьезного бизнес-приложения будет воевать со значительно более вероятными утечками памяти в неуправляемом коде С++? Тут без определения назначения этого самого "чего-то серьезного" никак не обойтись... |
Цитата:
Если все нормально написано, ни каких утечек памяти не бывает. Это факт. |
Цитата:
Сколько я не видел библиотек, будь то GUI или что другое, во всех есть ошибки. Без них никуду не деться. Потеря памяти - самая распространённая ошибка в С ++ это факт. Хоть и написанно тысячи книг про это, ошибки повторяются раз за разом. Виной тому полиморфия в Си, это одно из самых спорных мест в его философии и использование указателей - это мощное оружие, но порезаться об него, как нефиг делать. |
Цитата:
Кстати код пишет не гении а чернорабочии... если бы был гением код бы не писал. |
Цитата:
|
Цитата:
|
ЕЖ
Цитата:
А .NET это реализация идеи-фикс - типа, "каждая домохозяйка должна уметь писать программы". |
А обсуждение тихо съехало с С на С++... :)
Даже если не принимать в расчет разницу в поколениях языков, я бы начал с самого начала - у этих языков явно выражена заточка под определенные операционные системы. Если говорить о С - то это изначально Unix. Именно этот тандем - С и Unix - и дали столь мощный толчок развитию и языка, и ОС, причем сами и Керниган, и Ричи об этом так и писали. Кстати, я намеренно не говорю о С++ - вопрос стоял о С, а это принципиально разные языки. C# же изначально предназначался не как реализация идеи о домохозяйках и программах, а как майкрософтовский "ответ Чемберлену" на Sun-овскую Java и технологию J2EE. Вообще, среда .NET разрабатывалась как среда для enterprise applications - что с успехом и используется во многих местах. Я не буду утверждать, что для чего больше подходит, но в моей 8-летней практике участия в разработке очень больших систем я видел очень мало серьезных бизнес-приложений, в которых бы C# использовался для сложной бизнес-логики, или когда производительность приложения являлась критическим фактором. Кстати, точно так же для этих целей не используется Java или какой-либо другой язык 4-го поколения. Я бы сказал так - это два разных, абсолютно разных языка, у которых, можно сказать, случайно, схожий синтаксис. Это единственное, на мой взгляд, что их обобщает. В остальном же - никакого сходства, ну, кроме тех логических постулатов, которые являются принципиально общими для всех языков программирования :). |
| Часовой пояс GMT +4, время: 17:53. |
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.