Часовой пояс: UTC + 3 часа




Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 1137 • Страница 2 из 57<  1  2  3  4  5 ... 57  >
  Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 

Member
Статус: Не в сети
Регистрация: 14.01.2004
Откуда: Екатеринбург
Avaddon
Цитата:
Согласен, только вот Микрософт не собирается переводит свои разработки с C++ на Шарп, и поддержук CLR в Longhorn (упаси нас от его пришествия!) постепенно упрощает.

Это только потому, что у них там десятки миллионов строк кода. Они долго будут переползать на новую платформу.
Цитата:
Ага, и операционки будем писать на Visual Basic

Как только отменят знаменитый AS IS и разработчики операционок начнут платить за ущерб от взлома - они будут писать хоть на бейсике - лишь бы уйти подальше от Си.
Цитата:
Ни один производитель специфичного оборудования не будет встраивать в свою апаратуру P4 если вполне хватает 386

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

_________________
Земля не может, не может не вращаться,
А мур не может, не может не мурчать!



Партнер
 

Member
Статус: Не в сети
Регистрация: 15.04.2004
Откуда: Москва
Raul
Цитата:
Видел я эту аппаратуру - там на входе обычно стоит обрезанный Си с кучей глюков. И живет эта платформа несколько лет, после чего на ей смену приходит другой уродец. Для обучения програмированию это имхо не годится.

Там, обычно, стоит нормальный QNX с поддержкой нормального gcc.
А вот глюков там нет вообще. По причинам вполне понятным. Ибо, зачастую, эти системы обеспечиваю безопасность людей и оборудования.
А если ты говоришь о "безопасности", то мне ничего не мешает в шарпе (в отличии от Жабы) сказать unsafe и все, вся "безопасность" CLR построится и бодро, с песнями пойдет в деревянный лес. :)

_________________
Цель жизни - d20 по жизни...


 

Member
Статус: Не в сети
Регистрация: 14.01.2004
Откуда: Екатеринбург
BW4ever
Цитата:
можешь дать линк на эти расчетные программы?

Я эти программы в Интернет не выкладываю - они делались под заказ. Эксперимент, о котором я говорю - можно поставить на любой расчетной программе самостоятельно - если там нет GUI и классов, то переход на C# достаточно прост.
Цитата:
С++ уже так же далек от компилируемого языка
Приниципиально неверно - это компилируемый язык, причем очень близкий к машинным кодам. Можно писать программу на C++ и предствлять себе, в какие инструкции она транстируется.
Цитата:
у компилируемого языка не может вылетать сообщение об ошибке на такой-то инструкции из такого-то исходного файла, как это имеет место в С++
Очень даже может быть, если компляция велась в режиме Debug.

_________________
Земля не может, не может не вращаться,
А мур не может, не может не мурчать!


 

Member
Статус: Не в сети
Регистрация: 15.04.2004
Откуда: Москва
BW4ever
Цитата:
кстати, если все так и обстоит, то С++ уже так же далек от компилируемого языка, как и VB и прочая шняга. в пользу этого довода говорит то, что у компилируемого языка не может вылетать сообщение об ошибке на такой-то инструкции из такого-то исходного файла, как это имеет место в С++

А директивами компилятора __FILE__ и __LINE__ ты пользоваться не пробовал? или хотя бы, почитать про них.
Raul
Цитата:
Очень даже может быть, если компляция велась в режиме Debug.

см. выше.


 

Member
Статус: Не в сети
Регистрация: 19.09.2003
Откуда: USSR\Rostov
А в какие иструкции транслируется след. программа:
main()
что то мне подсказывает, что она транслируется в 4 с чем-то килобайта хлама
а вот в какие инструкции транслируется
org 100h
xor ax,ax
ret
я могу сказать абсолютно точно
жду список команд программы main() :)

_________________
Why are you here?
Do you have anything worth living for?


 

Member
Статус: Не в сети
Регистрация: 14.01.2004
Откуда: Екатеринбург
Цитата:
Там, обычно, стоит нормальный QNX с поддержкой нормального gcc.
Я подумал, что речь идет о спецпроцессорах, а ты о промышленных компьютерах. Слушай, неужели ты в самом деле предлагаешь учить программированию в QNX и gcc?
Цитата:
А вот глюков там нет вообще.
Да нет, их там тоже полно. Просто они не очень заметны, потому как систему очень долго вылизывали. Это не заслуга инструмента (С++), а заслуга разработчиков.
Цитата:
то мне ничего не мешает в шарпе (в отличии от Жабы) сказать unsafe
unsafe можно запретить

_________________
Земля не может, не может не вращаться,
А мур не может, не может не мурчать!


Последний раз редактировалось Raul 26.07.2004 12:49, всего редактировалось 2 раз(а).

 

Member
Статус: Не в сети
Регистрация: 15.04.2004
Откуда: Москва
BW4ever
Зависит от компилятора...
Привожу пример для gcc:
Код:
   pushl   %ebp
   movl   %esp, %ebp
   subl   $8, %esp
   andl   $-16, %esp
   movl   $0, %eax
   movl   %eax, -4(%ebp)
   movl   -4(%ebp), %eax
   call   __alloca
   call   ___main
   movl   $1, %eax
   leave
   ret

Для Visual C код будет попроще....
Код:
   pushl   %ebp
   movl   %esp,%ebp
   movl    1,%eax
   popl   %ebp
   ret   


Добавлено спустя 4 минуты, 33 секунды:
Raul
Цитата:
Да нет, их там тоже полно. Просто они не очень заметны, потому как систему очень долго вылизывали. Это не заслуга инструмента (С++), а заслуга разработчиков.

...вылизывали и тестировали. Просто коммерческие приложения и ОС так жестоко тестировать не будут (по причине высокой стоимости).
Цитата:
Я подумал, что рачь идет о спецпроцессорах, а ты о промышленных компьютерах. Слушай, неужели ты в масом деле предлагаешь учить программированию в QNX и gcc?

На спецпроцессорах обычно, есть только ассемблер, т.к. CRT (C runtime library) для них отсутствует.
А насчет обучения... Тут тяжело сказать. Если совсем отказаться от Си, то кто будет писать софт для управления реакторами, например?
Или ты думаешь, что Мелкомягкие выпустят ОС c высочайшей надежностью? И сколько она будет стоить? :)

_________________
Цель жизни - d20 по жизни...


 

Member
Статус: Не в сети
Регистрация: 14.01.2004
Откуда: Екатеринбург
BW4ever
Цитата:
А в какие иструкции транслируется след. программа:
main()
что то мне подсказывает, что она транслируется в 4 с чем-то килобайта хлама

Это на хлам, а код для разбора argc, argv, поддержка atexit, конструкторы статических классов и прочая...

_________________
Земля не может, не может не вращаться,
А мур не может, не может не мурчать!


 

Member
Статус: Не в сети
Регистрация: 19.09.2003
Откуда: USSR\Rostov
Avaddon
Цитата:
Привожу пример для gcc:

браво!
это круто
но насчет VC- при компиляции выходит не 10 байт кода, а _4 килобайта_

Добавлено спустя 6 минут, 24 секунды:
какие классы,argc,argv?
у нас вход в программу - и выход. как и в асме. но асм компилит <10 байт, а VC 4 кб

_________________
Why are you here?
Do you have anything worth living for?


 

Member
Статус: Не в сети
Регистрация: 15.04.2004
Откуда: Москва
BW4ever
Ты не забудь:
1. Инициализация CRT.
2. Статическая линковка CRT
Ты отключи CRT (/NODEFAULTLIB) и посмотри на результат.
P.S.
Размер ассемблерного кода примера
Код:
int main() { return 1; }

800 байт.
P.P.S. Я все примеры привожу в синтаксисе AT&T asm


 

Да ребят, всего на 2 часа отключился, а тут уже целый лист прибавился.
Avaddon - отец! Полностью с ним согласен.
Raul, по твоему на чем написаны виртуальные машины и драйвера для устройств? Да и, вообще, у явы и CLR есть своя область применения, которая абсолютно не пересекается с CИ! Даже идиоту понятно, что писать какие-то приложения в интернет на СИ это долго и неудобно; но писать системные программулины на ЯВЕ - это перебор! А каких ты говорил дырах в программах на СИ? Знаешь все уже около 40 лет пишут на СИ и еще никто то него не отказывался, так что умрет он не скоро(так же как и UNIX), более того - боюсь он никогда не умрет. Потому как, уж очень он удобен для написания программ, где важно быстрое получение результата и где неважен интерфейс. Скажу еще, что ассемблер, вообще, никогда не умрет. И всегда будут нужны программеры, которые могут программировать на асме! (Насчет дыр опять) Linux написан полностью на СИ - чего-то там дыр пока нашли не много. Главное мозги программиста, а если жаловаться на ошибки, тогда надо программить на VB. Хочу заметить, что программисты изначально(вообще-то) были нужны, что бы думать и разрабатывать , а не для того что бы рисовать HTML странички и окошки для виндоуса. Смешно даже.
Да и глупо спорить обо всем том. Потому, что у этих языков разные области применения, настолько разные, как монитор и принтер.

Добавлено спустя 6 минут, 24 секунды:
Короче, люди. Должны быть программисты умеющие программировать на ассемблере, СИ, Яве, VC++, VB. Просто каждый должен определиться, что ему нравится. Но то, что программировать на СИ и языках низкого уровня сложнее и требует большего кол-ва мозгов, чем вижуал программирование для пользователей - это точно! Кто не согласен?


 

Member
Статус: Не в сети
Регистрация: 06.05.2004
Откуда: Одесса, Украина
Shadow

Думаю классическое начало не повредит в любом случае -
С++, Visual C++

Avaddon
BW4ever
Raul

Вы конечно крутые перцы, // я лично в асемблере 0 :oops:
но чел спрашивает, что ему учить, а точнее с чего начинать.
Так что не отвлекайтесь.
Для рубилова типа Visual Basic VS Assembler создавайте отдельную ветку.

_________________
Любишь разгонять - умей охлаждать!


 

Member
Статус: Не в сети
Регистрация: 14.01.2004
Откуда: Екатеринбург
Avaddon
Цитата:
Если совсем отказаться от Си, то кто будет писать софт для управления реакторами, например?
Собственно речь идет не об отказе от С, а о выборе его диалекта для целей обучения - потому что все языки группы С (C++/C#/Java) имеют много общего. А если посмотреть в корень (т.е. в виртуальную машину, которая является динамическим транслятором промежуточного кода MSIL в код x86), то и пресловутый Visual Basic тоже недалеко уходит от этой группы, потому что в VC7 его исходники тоже транслируются в MSIL.
Я поддерживаю C# и Java - потому что это новые языки, на которых можно изучить современные технологии - виртуальную машину, контроль индексов, сборку мусора, интерфейсы, процессы и многих другие актуальные вещи, о которых С++ не дает ни малейшего понятия.
А что касается реакторов - то вопрос решается просто: наняли - изучил - написал. В конечном счете, почти все программисты - полиглоты :).
Цитата:
Или ты думаешь, что Мелкомягкие выпустят ОС c высочайшей надежностью
А почему нет? Деньги есть, а разработчиков можно нанять (кстати, они именно так сделали Microsoft.NET - переманив создателей Delphi). Вопрос в том, что сверхнадежная ОС не выдержит конкуренцию с Windows и Linux, т.к. не будет подддерживать унаследованный софт. Т.е сначала надо приучить программистов писать для .NET а уже потом можно будет отринуть прошлое. Если я правильно себе все представляю, то скоро .NET станет 64-разрядной и тогда появится мода на компьютерные игры для NET, сетевые программы для NET и т.п.
Цитата:
И сколько она будет стоить
Массовый продукт всегда стоит недорого - потому что его стоимость размазывается
на многомиллионый тираж.

Добавлено спустя 5 минут, 20 секунд:
Lego_12239
Цитата:
Raul, по твоему на чем написаны виртуальные машины и драйвера для устройств

Ну вот, парню надо учиться программировать, а ты его сразу в драйверы. Да их пишут такие крутые парни, до уровня которых еще расти и расти!
Цитата:
идиоту понятно, что писать какие-то приложения в интернет на СИ это долго и неудобно

Так они почти все на СИ иа написаны! И это в самом деле идиотизм.

_________________
Земля не может, не может не вращаться,
А мур не может, не может не мурчать!


 

Member
Статус: Не в сети
Регистрация: 14.04.2003
Откуда: Минск, Беларусь
BW4ever
Цитата:
я могу сказать абсолютно точно


Цитата:
org 100h
xor ax,ax
ret

Зуб даешь что точно? Колись, будет 66h в команде из второй строчки? И последняя строчка у тебя RETF или RETN? :P

Добавлено спустя 8 минут, 11 секунд:
Raul
Цитата:
то скоро .NET станет 64-разрядной и тогда появится мода на компьютерные игры для NET, сетевые программы для NET
Более того, это достоинство IL/байткода - с новым компилятором в машинный код/JIT он может получить преимущество от исполнения на процессоре которого не существовало на момент написания кода.
P.S. С - это Portable Assembler. И не надо на нем писать ничего кроме ядер :)

Добавлено спустя 16 минут, 52 секунды:
Lego_12239
Цитата:
по твоему на чем написаны виртуальные машины и драйвера для устройств

Господа, изучите пожалуйста этот документ.
http://download.microsoft.com/download/ ... mplify.exe
Особенно пункт Future Directions и особенно
Цитата:
Another issue, not addressed earlier, is the choice of programming language – C is a very powerful language but it is also very easy to create errors.

И учтите, что драйвера пишутся на C лишь из-за временно`й невозможностим писать на чем либо другом (запаришься хедеры транслировать - кстати, за@@@@@ интерфесы ОС в таком виде экпортировать :( ) - ничего сакрального в их коде по сравнению с кодом на VB к примеру нет.

Как правильно заметил Raul программисты, своим карманом/головой отвечающие за надежность своего кода не пишут на C :)

_________________
"Помогите, 20 беспроводных мышей общаются сквозь стены!"
--- SweetLow ---


 

Мужики, может я что-то не понял? Короче, вопрос поставлен не корректно(темы). Если парень хочет программировать что-то серьезное, то СИ ему по-любому придется изучить. Каждый язык был придуман для своей ниши. Меня, например, больше прет от программирования на СИ и ассемблере(тогда, когда я управляю машиной и точно знаю, что твориться во время выполнения моей программы). Лично я жутко не люблю Вижуал приложения, потому что не знаю , что там наворочал виндоус, а копаться в распечатках кода считаю глупым, потому как операционка все равно закрытая. Именно поэтому, ктстати, я сейчас сижу про Линуксом, где все жутко логично(меня аж прет), открыто и сплошной СИ, да и постабильней Виндоуса на порядок!
Цитата:
Господа, изучите пожалуйста этот документ.

Прочту попозже, но пока скажу, что не стал бы прислушиваться к мнению коммерческой фирмы, там более с такой славой, как Microsoft. Гораздо более ценно мнение "сторонних, независимых наблюдателей". Да и потом, не знаю как сейчас, но посмотрите, как это все начиналось: парень(Билли Гейтес) ушел с 3 курса института и стал писать операционку(кстати, всем известно, что первую версию DOS'а написал Тим Паттерсон, которого Microsoft переманила с другой компании), причем до этого опыта написания ОС у Microsoft небыло! Так, что толкового может придумать недоучка? Unix, же развивался спокойно, в университетах учеными мужами. Глупо сравнивать комерческий продукт с научным. Тем более, сколько лет то прошло?.. а все еще ОС от Microsoft не догонит по надежности UNIX. А... о чем это я... так вот мнение Microsoft - это не круто!:)
Цитата:
Как правильно заметил Raul программисты, своим карманом/головой отвечающие за надежность своего кода не пишут на C

А я не говорил, что это просто!:) Опять же - деньги...голова... вот людей и сажает на измену, между тем код на СИ может быть гораздо быстрее(тем более на ассемлере).
Короче, серьезные системные продукты не пишутся на ЯВЕ, VB и т.д.
Область применения таких языков, как Java, VB, VC++, сугубо прикладная.
Вот мы опять пришли к вопросу о выборе "типа" программирования. Я больше сюда заходить не буду, глупо это. Надо, чтоб Shedow ответил уже, что ему нужно: прикладное программирвание или системное и хочет ли он это превратить в профессию. Блин, надо вопросы ставить конкретно!
Да он помоему уже все и так для себя решил, так что - ПОРА ЗАКРЫВАТЬ ТЕМУ, НАФИГ!


 

Member
Статус: Не в сети
Регистрация: 14.01.2004
Откуда: Киев, Украина
Цитата:
Блин, надо вопросы ставить конкретно!
Да он помоему уже все и так для себя решил, так что - ПОРА ЗАКРЫВАТЬ ТЕМУ, НАФИГ!

Lego_12239 ты прав.
Короче говоря, так или иначе вопрос заходит о Вижуал программировании, так вот что лучше в этом плане. То что VC++ надо знать и без него не обойтись это понятно. Но вопрос следуещего плана, много раз видел советы, что нужно переходить с Delphi на C# так ли это на самом деле? Также много раз слышал, что будущее за C# и С++ никуда уходить не собираеться. С Веб программированием все понятно думаю всем.
Avaddon
Цитата:
P.P.S. Я все примеры привожу в синтаксисе AT&T asm

Сразу становиться понятно что ты также программишь и под nix системы, по этому отстаиваешь С. PS Тут вопрос такой, закрыт ли доступ к IO портам под Linux?
И еще в очередной библии по VC++.net прочитал, что мол в VS.net не так важен выбор языка программирования, поскольку все они транслируються в MSIL, а также используют общюю для всех библиотеку классов BCL. Так ли это?

_________________
Ку ку


 

Member
Статус: Не в сети
Регистрация: 15.04.2004
Откуда: Москва
Daemon
Цитата:
И еще в очередной библии по VC++.net прочитал, что мол в VS.net не так важен выбор языка программирования, поскольку все они транслируються в MSIL, а также используют общюю для всех библиотеку классов BCL. Так ли это?

Да, при условии, что ты не пишешь на нативном C++. Только для этого случая, трансляция осуществляется в машинный код, в остальных - в MSIL.
SweetLow
Если говорить о платформонезависимом коде, то я сторонник исключительно Java. И считаю, что CLR останется как пресловУтый J++ - для написания под Windows и работы под Windows.
О CLR для других платформ я много слышал, но не видел ни одной нормально работоспособной.

_________________
Цель жизни - d20 по жизни...


 

Advanced member
Статус: Не в сети
Регистрация: 09.06.2003
Откуда: USSR
Daemon
Цитата:
что нужно переходить с Delphi на C# так ли это на самом деле?

Это еще зачем? Если нужно писать под .net тогда уже на Delphi# (Delphi 8)


 

Member
Статус: Не в сети
Регистрация: 30.04.2004
Откуда: [Omsk Team]
SweetLow
Цитата:
Как правильно заметил Raul программисты, своим карманом/головой отвечающие за надежность своего кода не пишут на C

а на чем? :D
Lego_12239
Цитата:
Так, что толкового может придумать недоучка? Unix, же развивался спокойно, в университетах учеными мужами. Глупо сравнивать комерческий продукт с научным. Тем более, сколько лет то прошло?.. а все еще ОС от Microsoft не догонит по надежности UNIX. А... о чем это я... так вот мнение Microsoft - это не круто!

Недоучка смог придумать систему, на которой работают подавляющее большинство дизайнеров/девелоперов/пользователей и т.д.
Цитата:
Надо, чтоб Shedow ответил уже, что ему нужно: прикладное программирвание или системное и хочет ли он это превратить в профессию.

точно, а то свели тему в "X vs Y"

_________________
forum.omskteam.ru- Все о керамограните


 

Member
Статус: Не в сети
Регистрация: 31.12.2003
Откуда: SaratOFF
Цитата:
Как правильно заметил Raul программисты, своим карманом/головой отвечающие за надежность своего кода не пишут на C
:lol: МегаЛОЛЪ!!!!!

Shedow Расскажу на своем примере, надеюсь, отвечу на поставленный в заголовке темы вопрос ;) Сначала изучал Паскаль (по школьной программе) - писал средненько, задачи и млкие проги запросто щёлкал, затем перешел на Дельфи - все тоже самое (почти, но не буду перечислять, те, кто пишут - знают), хочу сказать, что лучше начинать с Дельфи, если очень хочется. НО вот когда перешел на С++ - вот тут и начались все проблемы - структура программы совершенно отличается от Дельфи, ладно синтаксис, но все равно очень было тяжело - поэтому однозначно рекомендую для написания по-настоящему качественных программ сразу браться за С++, а не морочить себе голову экспериментами с Дельфи или (что хуже, но проще) ВижуалБэсике. И еще: лучше использовать не ВижуалС++ (MFC - мне лично не по душе), а с БорландСи++ (там библиотечки не такие кривые).

_________________
Кто ищет - тот доищется!


Показать сообщения за:  Поле сортировки  
Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 1137 • Страница 2 из 57<  1  2  3  4  5 ... 57  >
-

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  



Лаборатория














Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB | Kolobok smiles © Aiwan