Re[7]: Почему нельзя преподавать C#
От: prVovik Россия  
Дата: 08.03.05 17:33
Оценка:
Здравствуйте, Dog, Вы писали:

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

Да, но только фреймворк не имеет никакого отножения к языку.
... << RSDN@Home 1.1.4 @@subversion >>
лэт ми спик фром май харт
Re[5]: Почему нельзя преподавать C#
От: d Bratik  
Дата: 08.03.05 22:58
Оценка: -1
Здравствуйте, Cyberax, Вы писали:

C>d Bratik пишет:


>> Отсутствие средств процедурного программирования (чтобы показать

>> человеку объявление переменной, нужно объяснять, что такое ООП).
>> Маразм какой-то.

C>Почему "отсутствие"? Делаем так:

C>
C>class Program
C>{
C>    //Variables
C>    int var1,var2;

C>    void main()
C>    {
C>       func1();
C>    };

C>    void func1()
C>    {
C>       func2();
C>    }
C>};
C>


А теперь попробуйте объяснить человеку, который учил в школе математику и делает в программировании свои первые шаги, почему программа объявляется с помощью ключевого слова class, а не program , почему программа представляет собой множество, в котором, как известно, порядок элементов не важен , почему главная процедура, читаемая по английски как "пустая главная" (void main), на самом деле не пустая и, наконец, почему понятие главной процедуры не объединено с понятием программы

C>Самый что ни на есть процедурный код. Для запуска программы можно

C>вдобавок еще использовать красивую внешнюю утилитку.



>> Dog>Вы хотели сказать являлось VS2003 + Resharper порвёт людое Дельфи

>> по удобности. В VS2005 говорят и решарпера не надо будет
>> Речь идет о преподавании. В VS.NET разве есть Delphi? Вот Zonnon
>> обещают в будущем встроить.

C>А _нафига_ нужен Дельфи? Через 5 лет Дельфи уже уйдет в историю и

C>останется в нишевых областях (как сейчас FoxPro и прочие dBase'ы).

Для преподавания программирования на ближайшие 5 лет ничего лучшего пока нет.

C>Зоннон — тоже полная фигня. Это не промышеленный язык, и новых фич в нем примерно "0".


Глупое заявление.

C>Чем он педагогически лучше того же Паскаля — не знаю.


Наличием модулей, концепцией ООП.

>> Dog>И что делать выпустившемуся студенту знающему паскаль, делфи и

>> занон ? Учить С++, С# и Java
>> У нас нормальный студент к пятому курсу на всех перечисленных языках
>> программировать умеет и ему не сложно освоить любой новый язык. И
>> вообще знание языков не считается за умение программировать.

C>Ага, умение программировать у вас = умение писать GUI


Далеко не только
Re[5]: Почему нельзя преподавать C#
От: d Bratik  
Дата: 08.03.05 23:11
Оценка:
Здравствуйте, Cyberax, Вы писали:

C>Почему "отсутствие"? Делаем так:

C>
C>class Program
C>{
C>    //Variables
C>    int var1,var2;

C>    void main()
C>    {
C>       func1();
C>    };

C>    void func1()
C>    {
C>       func2();
C>    }
C>};
C>


C# явно не Ваша стихия, рекомендую подучить синтаксис
Re[3]: Почему нельзя преподавать C#
От: Andrei N.Sobchuck Украина www.smalltalk.ru
Дата: 09.03.05 07:23
Оценка: +1
beroal пишет:
> Я вижу, вопрос в этих ветках (здесь
> <http://rsdn.ru/Forum/Message.aspx?mid=1060012&amp;only=1&gt;
Автор: Cyberax
Дата: 07.03.05
, здесь

> <http://rsdn.ru/Forum/Message.aspx?mid=1060073&amp;only=1&gt;
Автор: Dog
Дата: 07.03.05
, здесь

> <http://rsdn.ru/Forum/Message.aspx?mid=1058422&amp;only=1&gt;
Автор: milkpot
Дата: 05.03.05
) крутится вокруг

> того, в каком порядке изучать языки. Я как-то читал про т.н.
> генетический подход в преподавании, когда концепции подаются в порядке
> их исторического возникновения. Я, как ни странно, учился
> программированию именно в таком порядке:
> -программируемый микрокалькулятор (ПМК) — была такая штука,
> ассемблероподобный язык;
> -BASIC;
> -C, затем Pascal;
> -SQL;
> -Haskell.

Проблема будет в том, что "тот самый Бейсик" (без процедур, с номерами
строк и GO TO), который был тогда уже нигде и не найти. А современные
бейсики очень сильно отличаются от первого.

--
Andrei N.Sobchuck
JabberID: andreis@jabber.ru. ICQ UIN: 46466235.
Posted via RSDN NNTP Server 1.9
Я ненавижу Hibernate
Автор: Andrei N.Sobchuck
Дата: 08.01.08
!
Re[6]: Почему нельзя преподавать C#
От: Cyberax Марс  
Дата: 09.03.05 08:07
Оценка:
d Bratik пишет:

> А теперь попробуйте объяснить человеку, который учил в школе

> математику и делает в программировании свои первые шаги, почему
> программа объявляется с помощью ключевого слова class, а не program

Сначала говорим, что это такое "магическое слово" и на него можно не
обращать внимание. А вот потом, когда будет изучатся ООП — тогда уже и
объяснять про классы. Более того, так можно построить плавный переход от
процедурного стиля к ООП (например, сначала вводя коллекции как "черные
ящики").

> почему программа представляет собой множество, в котором, как

> известно, порядок элементов не важен

А он не важен, вообще говоря. Порядок методов в классе значения не имеет.

> почему главная процедура, читаемая по английски как "пустая главная"

> (void main)

Так же — сначала считаем магическим словом, когда изучение дойдет до
функций — объясняем.

> на самом деле не пустая и, наконец, почему понятие главной процедуры

> не объединено с понятием программы

А почему оно должно быть объединено?

> C>А _нафига_ нужен Дельфи? Через 5 лет Дельфи уже уйдет в историю и

> C>останется в нишевых областях (как сейчас FoxPro и прочие dBase'ы).
> Для преподавания программирования на ближайшие 5 лет ничего лучшего
> пока нет.

Да? Чтобы через пять лет студенты оказались зависимыми от
_коммерческого_ продукта (Дельфи — оно ведь далеко не бесплатное), да
еще и устаревшего.

> C>Зоннон — тоже полная фигня. Это не промышеленный язык, и *новых фич

> в нем примерно "0"*.
> Глупое заявление.

Назовите в нем новые фичи, пожалуйста. Я слушаю...

> C>Ага, умение программировать у вас = умение писать GUI

> Далеко не только

Каюсь, зыбыл. Еще и RDBMS.

--
С уважением,
Alex Besogonov (alexy@izh.com)
Posted via RSDN NNTP Server 1.9
Sapienti sat!
Re[6]: Почему нельзя преподавать C#
От: Cyberax Марс  
Дата: 09.03.05 08:08
Оценка: :))) :))
d Bratik пишет:

>

>
>C>class Program
>C>{
>C> //Variables
>C> int var1,var2;
>
>C> void main()
>C> {
>C> func1();
>C> };
>
>C> void func1()
>C> {
>C> func2();
>C> }
>C>};
>C>
>
> C# явно не Ваша стихия, рекомендую подучить синтаксис

Это Ява

--
С уважением,
Alex Besogonov (alexy@izh.com)
Posted via RSDN NNTP Server 1.9
Sapienti sat!
Re[8]: Почему нельзя преподавать C#
От: Dog  
Дата: 09.03.05 08:22
Оценка:
Dog>>А почему в изучении .NET нельзя идти от простого к сложному ?
M>.НЕТ актуально, когда есть ВинНТ и выше, а когда в компьютерных классах Вин95/98 ,
M>то ситуация не располагает к Студио.НЕТ (C#). И не ситуация скоро не изменится.
При обучении полезно ориентироваться на будущее , а не настоящее. И если ВУЗ не может обеспечить будущих специалистов, которых он готовит, то о каком уровне обучения может идти речь? Тогда споров нет Фортран и вперёд за ЕС (это такие гробики с железной клавиатурой. Смотрятся потрясающе. Я бы сейчас такой купил )

Dog>>Тут многие кричат, мол надо учить ООП. Так воспользуйтесь своим же советом идите от простого к сложному, дайте только то что необходимо для понимания на текущий момент.

M>Если компьютер дома есть, то не забудешь. Обучение структурному программированию теперь привязано к .НЕТ и C#?
M>Теория ведь не привязана к конкретному языку.К выделенному : а что без шарпа примерчики уже не смотрятся?
А что для этого надо учить отдельный язык ?

M>И ООП понимать надо (плюсы и минусы).

Идите от простого к сложному

Dog>>А вчём смысл фразы ? В том что надо изучить кучу языков, что бы увидеть после, что всё эти идеи воплотились в шарпе ? Причём согласитесь, воплатились очень хорошо.

M>Это не куча. Что-то стоит упомянуть, а что-то и изучать.
M>Я вижу, что C# приподносится как универсальный инструмент (этакий кухонный комбайн со всеми воплощенными идеями) в пределах .НЕТ.
Зачем учить кучу языков из одного семейства, если можно сосредоточиться на 2-3, которые будут реально использоваться в будущем? Я понимаю ещё, когда тут советуют учить функциональные языки.

Dog>>Чисто субьктивная оценка. У меня , допустим, всё нормально. Что я делаю не так ?

M>К примеру, документ Ворд, созданный в Ворд97, после редактирования в Ворд2003 прилично выростает в размере на пустом месте.
M>Это есть плата за эволюцию в стиле Микрософт.
И что это доказывает? Некоторые вообще в блокноте набирают, так что на основании этого сделать вывод , что ворд совсем не нужен и MS это тупиковый путь развития ?

M>>>Это расплата за использование языков типа С в ВинАПИ. Это язык для программ малых размеров.

Dog>>Размер уже не имеер такого большого значения как раньше. По поводу скорости , ни кто не мешает вам написать критические участки на C++ или асме, а всё остально сделать на шарпе. И так будет правильно и затратистся намного меньше времени на разработку и отладку.
M>Код программы в стиле бутерброда — не лучший вариант.
Похоже на то что вы знаете вкус яичницы
Где-то между собакой и богом.
Re[8]: Почему нельзя преподавать C#
От: Dog  
Дата: 09.03.05 08:22
Оценка:
Dog>>После Java, может быть. Но после C++ ... незнание фрэймворка и платфориы пораждают порой такие велосипеды и хм. оригинальные решения, что диву даёшься.
V>Да, но только фреймворк не имеет никакого отножения к языку.
Вот после таких заявлений и пишутся велосипеды. Спасибо, насмотрелся
Где-то между собакой и богом.
Re[9]: Почему нельзя преподавать C#
От: prVovik Россия  
Дата: 09.03.05 08:38
Оценка:
Здравствуйте, Dog, Вы писали:

Dog>Вот после таких заявлений и пишутся велосипеды. Спасибо, насмотрелся

А при чем тут велосипеды? Речь то шла о знании языка. А если говорить о .NET`e то свет клином на шарпе не сошелся: например, можно писать на С++ и при этом замечательно использовать фреймворк, и не подозревать о существовании шарпа . Короче, надо отделять мух от котлет и фреймворк от языка. Язык можно выучить за пару дней, а вот с фреймворком, действительно, придется повозиться.
лэт ми спик фром май харт
Re[10]: Почему нельзя преподавать C#
От: Dog  
Дата: 09.03.05 11:23
Оценка:
Dog>>Вот после таких заявлений и пишутся велосипеды. Спасибо, насмотрелся
V>А при чем тут велосипеды? Речь то шла о знании языка.
Знание синтаксиса ничего в себе не несёт.

V> А если говорить о .NET`e то свет клином на шарпе не сошелся: например, можно писать на С++ и при этом замечательно использовать фреймворк, и не подозревать о существовании шарпа .

Для этого надо как минимум знать С++

V> Короче, надо отделять мух от котлет и фреймворк от языка. Язык можно выучить за пару дней, а вот с фреймворком, действительно, придется повозиться.

С таким подходом любой язык можно выучить за 3 дня. И после гнуть пальцы
Где-то между собакой и богом.
Re[2]: Почему нельзя преподавать C#
От: GlebZ Россия  
Дата: 09.03.05 12:24
Оценка:
Здравствуйте, minorlogic, Вы писали:

M>Попробую и я вставить свои 5 копеек.


M>Принципиальных аргументов против си шарпа у меня нет.


M>Но когда у меня спрашивают совета что учить , я рекомендую JAVA.

M>Несколько неочевидных преимуществ это минимальное время для стартапа , то есть можно написать программу и уже через пару минут видеть как она работает в браузере.
В консоли на C# и С++ такое же время. Чудная возможность написать программу Hello world на доске, и объяснить ее смысл.(как это давалось когда-то в нашем институте).

M>В университете , (не техникуме) а именно в универе. который должен готовить ДУМАЮЩИХ специалистов , я бы обучал

M>1. Паралельно JAVA + Assembler (почти любой). Чтобы понять где грабли, и как их обойти.
Дикая смесь. С Java все понятно. Но ассемблер без элементарных знаний архитектуры — нонсенс.
M>Плюс алгоритмику ОЧЕНЬ легко давать на жабе.
Я бы ее давал на C++. Уменьшает вмешательство языка в алгоритмы, а также показать возможности оптимизации работы программы средствами языка. В силу совместимости с С.

M>2. на более старших курсах , поверхностное ознакомление с С++, , SmallTalk , моежет еще какую экзотику.

Ого — C++ у нас экзотика.

M>3. дипломы и курсовые можно было бы писать на любом выбранном студентом языке , хоть C# если он на нем практикуется.

Само-собой.

С уважением, Gleb.
Re[11]: Почему нельзя преподавать C#
От: prVovik Россия  
Дата: 09.03.05 13:03
Оценка: -1
Здравствуйте, Dog, Вы писали:

Dog>Знание синтаксиса ничего в себе не несёт.

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

V>> А если говорить о .NET`e то свет клином на шарпе не сошелся: например, можно писать на С++ и при этом замечательно использовать фреймворк, и не подозревать о существовании шарпа .

Dog>Для этого надо как минимум знать С++
Конечно.

V>> Короче, надо отделять мух от котлет и фреймворк от языка. Язык можно выучить за пару дней, а вот с фреймворком, действительно, придется повозиться.

Dog> С таким подходом любой язык можно выучить за 3 дня. И после гнуть пальцы
Неа, С++ за три дня по любому не выучить, даже если знать шарп. А вот наоборот — легко.
... << RSDN@Home 1.1.4 @@subversion >>
лэт ми спик фром май харт
Re[8]: Почему нельзя преподавать C#
От: GlebZ Россия  
Дата: 09.03.05 13:03
Оценка:
Здравствуйте, milkpot, Вы писали:

M>Ну и как? Научился? О сишнике надо рассказать Задорнову (сатирику), чтоб тот выступил на одной из ближайших Микрософтовских

M>презентаций.
Почему ты решил что это говорит в пользу или не в пользу языка? Я просто говорю что они слишком разные даже на бытовом уровне.

С уважением, Gleb.
Re[8]: Почему нельзя преподавать C#
От: GlebZ Россия  
Дата: 09.03.05 13:20
Оценка:
Здравствуйте, prVovik, Вы писали:

V>Здравствуйте, GlebZ, Вы писали:


GZ>>Ну-ну. У меня знакомый сишник три дня ходил за мной, все не мог понять каким образом не надо делать delete и что такое сборщик мусора.

V>А что, чтобы узнать, что такое сборщик мусора, надо обязательно выучить именно С#. Так чтоли?
Нет, не нужно. А вот для того чтобы учитывать что ты работаешь в среде со сборщиком мусора и у тебя нет деструктора, нужно. Поскольку финалайзер и диспозе поддерживается именно языком. И чем тебе грозит работа в финалайзере, тоже нужно знать. То есть нужно знать не просто о сборщике мусора, а о конкретной его реализации.

GZ>>А через некоторое время пришлось объяснять что не все так просто, и зачем нужен using.

V>Это да, согласен. Первую неделю, пока не узнал о using, писал try/finally.
А этой конструкции в С++ нет. Что касается __try/__finally, то я его вообще никогда в жизни не использовал. Детерменированного деструктора С++ хватает для данной функциональности.

GZ>>Что такое сборка, тоже интересный вопрос.

V>То же, что и длл, только приятней.
Почти да, и почти нет. Но впрочем это фича платформы которую тоже придется выучить.

GZ>>Что такое value и не value объекты, и почему нужно всегда помнить с каким типом объекта ты работаешь.

V>Ну это еще тройка предложений:
V>1) value объекты — это объекты на стеке.
И что у них есть отличия в наследовании. Они могут наследовать только интерфейсы.
V>2) reference объекты — объекты в куче, управляются ГЦ.
V>3) boxing — создание копии стекового объекта в куче.
V>Человеку, знающему С++, чтобы прочитать и понять эти предложения понадобится максимум секунд 20
Человеку знающему C++ в ум не придет, что для того чтобы изменить структуру в некотором массиве, нужно выгружать из массива копию, и так же копию обратно вставлять в массив. И то что при передаче объекта через параметр, нужно помнить что ты создал копию объекта, или ссылку на него.

С уважением, Gleb.
Re: Почему нельзя преподавать C#
От: _orion_  
Дата: 09.03.05 13:42
Оценка:
Здравствуйте, Quintanar, Вы писали:

Q>Допуская изучение подобных технологий в гос. вузе государство, фактически, льет воду на мельницу одной компании, т.е. совершенно не понятно за что создает ей тепличные условия за свой счет. Чем больше будущих программистов будет с самого начала приобщено к технологиям MS, тем лучше для компании. Это касается, естественно, не только MS, но и Борланда с его Delphi и даже Sun с Java.


С тем что это льет воду на мельницу одной компании — с этим я согласен. Но ниужели ты считаешь, что компании типа Sun или\и Borland смогут конкурировать с Микрософт ?? Да ты даже сейчас не найдешь нормальной работы на Delphi или Java, а если и найдешь, то всегда будешь получать меньше чем программист под .NET. И какие бы нововведения Borland и Sun не вводили, они просто не смогут конкурировать с C# и .NET, и не потому, что они будут хуже или что-то еще, а просто Микрософт им не позволит, Микрософт фактически монополисты в этой области и не пропустит сюда никого.

Сейчас я учусь в университете, и мои преподы, люди, которые действительно еще молоды и являются профессионалами в области Delphi, жалуются, что не могут найти вообще никакой работы, а если такая работа и есть, то даже в университете им платят больше чем на этой работе.

Поэтому я считаю, что изучать .NET НАДО, будть-то VB.NET, C# или любой другой язый.
Re[2]: Почему нельзя преподавать C#
От: _orion_  
Дата: 09.03.05 13:46
Оценка:
Здравствуйте, _orion_, Вы писали:

__>С тем что это льет воду на мельницу одной компании — с этим я согласен. Но ниужели ты считаешь, что компании типа Sun или\и Borland смогут конкурировать с Микрософт ?? Да ты даже сейчас не найдешь нормальной работы на Delphi или Java, а если и найдешь, то всегда будешь получать меньше чем программист под .NET. И какие бы нововведения Borland и Sun не вводили, они просто не смогут конкурировать с C# и .NET, и не потому, что они будут хуже или что-то еще, а просто Микрософт им не позволит, Микрософт фактически монополисты в этой области и не пропустит сюда никого.


__>Сейчас я учусь в университете, и мои преподы, люди, которые действительно еще молоды и являются профессионалами в области Delphi, жалуются, что не могут найти вообще никакой работы, а если такая работа и есть, то даже в университете им платят больше чем на этой работе.


__>Поэтому я считаю, что изучать .NET НАДО, будть-то VB.NET, C# или любой другой язый.


Кстати, к подтверждению моих слов о зарплате сюда http://www.dedasys.com/articles/language_popularity.html
Re[2]: Почему нельзя преподавать C#
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 09.03.05 13:49
Оценка: +1
Здравствуйте, minorlogic, Вы писали:

M>Но когда у меня спрашивают совета что учить , я рекомендую JAVA.


Я тоже.

M>Несколько неочевидных преимуществ это минимальное время для стартапа , то есть можно написать программу и уже через пару минут видеть как она работает в браузере.


А чем в этом плане отличается .NET?

M>В университете , (не техникуме) а именно в универе. который должен готовить ДУМАЮЩИХ специалистов , я бы обучал

M>1. Паралельно JAVA + Assembler (почти любой). Чтобы понять где грабли, и как их обойти. Плюс алгоритмику ОЧЕНЬ легко давать на жабе. А уж работы тпринимать в виде аплетов так просто сказка !

А чем в этом плане отличается .NET?
... << RSDN@Home 1.1.4 beta 4 rev. 350>>
AVK Blog
Re[3]: Почему нельзя преподавать C#
От: Курилка Россия http://kirya.narod.ru/
Дата: 09.03.05 13:56
Оценка:
Здравствуйте, _orion_, Вы писали:

__>Здравствуйте, _orion_, Вы писали:


__>>Поэтому я считаю, что изучать .NET НАДО, будть-то VB.NET, C# или любой другой язый.


__>Кстати, к подтверждению моих слов о зарплате сюда http://www.dedasys.com/articles/language_popularity.html


Просвяти неразумного — где ты там зарплату увидел, а?
Re[3]: Почему нельзя преподавать C#
От: minorlogic Украина  
Дата: 09.03.05 14:12
Оценка: -1 :))
AVK>А чем в этом плане отличается .NET?
Тем что на .NET этого сделать нельзя.
Ищу работу, 3D, SLAM, computer graphics/vision.
Re[4]: Почему нельзя преподавать C#
От: _orion_  
Дата: 09.03.05 14:22
Оценка:
Здравствуйте, Курилка, Вы писали:

К>Здравствуйте, _orion_, Вы писали:


__>>Здравствуйте, _orion_, Вы писали:


__>>>Поэтому я считаю, что изучать .NET НАДО, будть-то VB.NET, C# или любой другой язый.


__>>Кстати, к подтверждению моих слов о зарплате сюда http://www.dedasys.com/articles/language_popularity.html


К>Просвяти неразумного — где ты там зарплату увидел, а?


Прости, не правильно понял, это результаты по запросам в гуглу
Но тем не менее, то, что программисты на C# получают очеь много — это факт.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.