LINUX.ORG.RU

Раннее знакомство с Java калечит судьбы программистов?

 ,


0

0

По мнению профессоров Нью-Йоркского университета Роберта Девара (Robert Dewar) и Эдмонда Шонберга (Edmond Schonberg) у студентов, начавших изучение программирования с Java, присутствуют только поверхностные знания о предмете. Также они считаю, что изучение програмирования стоит начинать с низкоуровневого языка Си, а также языков С++, Lisp и Ada.

>>> Источник

anonymous

Проверено: Shaman007 ()

Ответ на: комментарий от V0ID

>Уважаемые постеры ! Успокойтесь: Мозгам подавляющего большинства из вас ничего не грозит. Нельзя разрушить то, чего нет 8).

>P.S. Вобще-то программирование - это не искуство расставлять скобки... >V0ID ** (*) (15.01.2008 19:36:18)

+256

Адекватные программист (типа меня ;) ) может программировать на Java постоянно. А при необходимости начать патчить asterisk (VoIP). Верно и обратное.

Каждый ЯП характеризуется сложностью вхождения и сложностью написания безбажных программ. Java проще С / С++, за счет запрещения потенциально небезопасных вещей. В итоге можно забивать на многое. С / С++ такого позволить не могут - нужно писать сразу и аккуратно.

anonymous
()
Ответ на: комментарий от anonymous

>> моя первая программа была написана на яве 1.2 , 1996 году(мой первый курс)... был прочитан спецкурс по perl, по которому у меня в зачетке стоял зачет. С тех пор я стал нормальным

>java 1.2 переименовали в java 2 platform.

>сравнивать perl,c/c++ и java всеравно, что сравнивать верстак с мебельной фабрикой. да, можно, при наличии определенного навыка, сделать хороший стул на верстаке, но даже 1000 верстаков не заменят мебельной фабрики. потому, что найти 1000 хороших столяров гораздо сложнее, чем купить хороший конвеер и нанять 20 выпускников пту. людям нужно много стульев. те, кто готовы платить большие деньги, найдут очень хорошего столяра и заплатят ему сполна. но... ни один вуз не в состоянии выпустить даже приличного программера, не говоря уже о хорошем. те немногие, кто сразу после института способен делать "стулья, которые не падают от легкого прикосновения", единицы-самоучки.

>anonymous (*) (15.01.2008 21:55:43)

Э... ошарашен. Онанимус, а умный )))

Java это когда нужно быстро спрограммировать. С когда нужно программировать с экономией каждого байта + требуется качество программирования.

PS кто из С++ программистов ставит обработку исключений на декларировании автоматических переменных? А кто понимет, что MyCoolObject m; может вызвать Ecxeption.

anonymous
()
Ответ на: комментарий от kernel

>По этому, чисто экономически, для написания 1С бугалтерии и "еще одного писателя ДВД" вполне достаточно выпускников аналогов политеха.

Для написания "1С Бухгалтерии" нужно уметь создавать шустрые компиляторы/интерпретаторы, знать реляционную алгебру и многое другое. :0)

Guru_1c
()
Ответ на: комментарий от anonymous

> кто из С++ программистов ставит обработку исключений на декларировании автоматических переменных?

Те, кому она нужна.

> А кто понимет, что MyCoolObject m; может вызвать Ecxeption.

А что, есть такие, кто не понимает? O_O

tailgunner ★★★★★
()
Ответ на: комментарий от anonymous

> а трактор нельзя в повозку запрячь

это почему это?

vilfred ☆☆
()
Ответ на: комментарий от sS

> Дык матан (как и линейка) это подстилка под спецкурсы.

Вооот. И кроме "подстилки", это еще и база для того, в чем (может быть) потребуется разбираться самостоятельно.

tailgunner ★★★★★
()
Ответ на: комментарий от anonymous

> А какое не храмает?

Все хромают

> Хирург должен пройти курсы кройки и шитья?

Вроде бы в медицинских всех врачей первые 3-4 года учат одинаково, будут они потом гинекологами или нейрохирургами?

tailgunner ★★★★★
()
Ответ на: комментарий от anonymous

>Я начинал с бейсика для spectrum и ассемблера для него же :)

+100, мы всем классом экономический симулятор для него писали, под впечатлением от игры "Диктатор". Теперь тимлидер - крутой биндит, недвижимостью занимается.

Absurd ★★★
()

> Раннее знакомство с Java калечит судьбы программистов?

Да-да, начинать надо с brainfuck :)))

anonymous
()
Ответ на: комментарий от tailgunner

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

Это плохой аргумент. Может мне придется разбираться в органической химии.

r ★★★★★
()
Ответ на: комментарий от r

> Может мне придется разбираться в органической химии

Подозреваю, что матан в этом полезнее, чем дискретка :) Вообще, такое впечатление, что все здесь смотрят со своей колокольни. А те, кто составляют программы обучения, обязаны смотреть с многих одновременно.

Лично мне, кстати, ни дискретка, ни матан не пригодились - бывает и так. А вот курс чего-то вроде ТРИЗ мне бы не помешал. И прикладная теория знаний пригодилась бы (хотя ее и не существует :D).

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

>Лично мне, кстати, ни дискретка, ни матан не пригодились - бывает и так.

Да ты шутишь:)

Разделы дискретной математики

* Наивная теория множеств
* Математическая логика
* Математическая кибернетика
* Теория функциональных систем
* Общая алгебра
* Комбинаторика (отдельные разделы)
* Теория графов
* Машинная арифметика
* Теория алгоритмов
* Теория игр
* Теория кодирования
* Теория конечных автоматов
* Теория формальных грамматик
* Вычислительная геометрия
* Теория булевых функций
* Логическое программирование
* Функциональное программирование
* λ-исчисление
* Булева алгебра
* Комбинаторная логика
* Математическая лингвистика
* Теория искусственного интеллекта
* Прямоугольная система линейных алгебраических уравнений


И ничего из этого не пригодилось? Да ты шутишь:)

r ★★★★★
()
Ответ на: комментарий от r

Ты знаешь, большей части этого у нас и не было. А насчет общей алгебры в дискретной математике - ты уверен? o_O

Это не говоря о том, что всякой там машинной арифметике и теории формальных языков нас учили почему-то не в курсе ДМ.

tailgunner ★★★★★
()
Ответ на: комментарий от r

> Это плохой аргумент. Может мне придется разбираться в органической химии.

А чо не в балете ? ;)

sS ★★★★★
()

> "значения семантических указателей"

:) убило

Burbaka ★★
()
Ответ на: комментарий от sS

>> Это плохой аргумент. Может мне придется разбираться в органической химии.

> А чо не в балете ? ;)

Дык для матмоделирвания балерин нужны будут всякие там недискретные разделы математики типа дифуров :D

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

>А насчет общей алгебры в дискретной математике - ты уверен?

Я нет - википедия да :)

>Ты знаешь, большей части этого у нас и не было.

Вот потому я и говорю надо дискретку учить пять лет а не "курс с тремя лекциями по лямбда исчислению".

r ★★★★★
()
Ответ на: комментарий от r

>> Ты знаешь, большей части этого у нас и не было.

> Вот потому я и говорю надо дискретку учить пять лет

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

tailgunner ★★★★★
()
Ответ на: комментарий от r

К стати если его растянуть именно на пять лет - то можно и более вменяемые курсовики делать и т.д. Я помню на втором куресе мы с напарником написали визуальный редактор графов с применеием к нему всех задач, потому как скучно было применять к текстовому файлику эхешник и полчать 10 цифр в результате. А если подойти более серьезно можно писать игрушки или картографию в графах и т.д. Например по сиспрограммингу мы написали на том же втором курсе диггера с довольно неплохим качеством по тем временам и всем включая deathmatch mode:))

Короче вместо "работы со строками на С" дайте студентам куда приложить мозг - и все будет нормально с уровнем выпускников.

r ★★★★★
()
Ответ на: комментарий от tailgunner

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

Идет. Но дискретка непосредственно связана с программированием - да посмотри на список дисциплин. Практически кажданяиеет непосредственное повседневное применение. А вот дифуры решать мне до сих пор не приходилось после курса матана. К стати препод, который на преподавал матан понимал это - что оно нам в будущем и нахрен не понадобится. Потому нас имели только на РГР каждую неделю, чтоб не расслаблялись, а экзамены были шаровыми. У нас физики имели промэлектрошщиков, математики механиков, электротехники - промэнергетиков, а нас оставили на имение родной кафедре и электронщикам (не считая одного дикого физика который после нашего курса никогда не вел у специальности X):)

r ★★★★★
()
Ответ на: комментарий от r

> А вот дифуры решать мне до сих пор не приходилось после курса матана

Верю. Но это всего лишь _следствие_ того, что ты работаешь в той области, в которой работаешь. Ты видишь строго со своей колокольни.

Ну а почему у нас практически нет других областей - это тема для нацпол-флейма.

tailgunner ★★★★★
()
Ответ на: комментарий от r

> А вот дифуры решать мне до сих пор не приходилось после курса матана

Верю. Но это всего лишь _следствие_ того, что ты работаешь в той области, в которой работаешь. Ты видишь строго со своей колокольни. А, скажем, sS - со своей.

Ну а почему у нас практически нет других областей - это тема для нацпол-флейма.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

>Верю. Но это всего лишь _следствие_ того, что ты работаешь в той области, в которой работаешь.

Подозреваю что выпускники упомянутых специальностей решающие дифуры статистически несуществуют.

r ★★★★★
()

> По мнению профессоров

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

:)))))))))))))))))))))))))))))))))))

Bioreactor ★★★★★
()
Ответ на: комментарий от cvs-255

> > надо учить наиболее востребованый на данный момент рынком. Это ява и дотнет.

> А по твоему программировать системы управления самолетом/спутником/атомным реактором тоже можно на яве и .нет?

Как ты себе представляеш самолёт/спутник/реактор на виндовсе (для дотнет)?

А в Яве лицензия запрещает использовать яву в mission critical задачах. Для таких задач есть специальные языки - Ада, например.

anonymous
()

Полнейшая чушь, купленная негрософтом для популяризации конкурирующего C#!

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

anonymous
()
Ответ на: комментарий от Bioreactor

> Эти убогие теоретики, наверное, не могут пронять, как это реальные Джава программисты зарабатывают больше их, болезных

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

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

>Дык для матмоделирвания балерин нужны будут всякие там недискретные разделы математики типа дифуров :D

Там 2 семестра термеха и 2 сопромата за глаза ;)

sS ★★★★★
()

Может и калечит если ничего кроме языка программирования не преподавать. А вот если давать понятие алгоритмов (от самых широких до узко специализированных) то будет абсолютно наплевать на чем ты их описываешь, потому как основные конструкции любого языка может выучить даже обезьяна...

anonymous
()
Ответ на: комментарий от r

К сожалению зачастую преподаватели дальше "работы со строками на С" сами не знают и придерживаются мнения что на 5 должен знать Бог на 4 Я, а на всё остальное студенты...

anonymous
()
Ответ на: комментарий от anonymous

>А в Яве лицензия запрещает использовать яву в mission critical задачах.

Уже нет. GPL.

r ★★★★★
()
Ответ на: комментарий от anonymous

>перепиши 1с - а ?

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

anonymous
()
Ответ на: комментарий от tailgunner

> Лично мне, кстати, ни дискретка, ни матан не пригодились - бывает и так

вот-вот! а потом кому-то приходится разгребать писанину типа "нахождение числа комбинаций N-элементов множества путем создания временной таблицы в базе данных, добавления в нее записей внутри N вложенных циклов и вызова select count(*)".

anonymous
()
Ответ на: комментарий от anonymous

>> Лично мне, кстати, ни дискретка, ни матан не пригодились - бывает и так

>вот-вот! а потом кому-то приходится разгребать писанину типа "нахождение числа комбинаций N-элементов множества путем создания временной таблицы в базе данных

Сочуствую. Но ты это разгребаешь не за мной.

tailgunner ★★★★★
()
Ответ на: комментарий от anonymous

Программы создаются для людей. 1с - хорошая ниша ,чтоб и людям жизнь облегчить, и себе заработать. Слив - засчитан.

anonymous
()
Ответ на: комментарий от anonymous

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

anonymous
()
Ответ на: комментарий от tailgunner

> Сочуствую. Но ты это разгребаешь не за мной.

а я уже обрадовался, что нашел автора :)

anonymous
()
Ответ на: комментарий от JackYF

Изучать надо тот язык, который нужен. Когда я учился на Прикмате (так-что хоть с матосновами все ОК), у нас по этим вещам (только программирование) было так:

1 курс:

Информатика - Симонов вел как надо. И машкоды, и представление данных и т.п. (проги писали на Pascal+Delphi) Основы программирования - TurboPascal

2 курс Технология программирования - C - 1 семестр, С++ 1 семестр. В допнагрузку системное программирование ОС Linux (по книге Теренса Чана), WinAPI (пардон за мат), QT. 4-ый семестр - еще и Методы трансляции добавились. Компилятор я написал.

3 курс - COM, 2 тома Стивенсона, протоколы данных. И ну тут уже ближе к интересам студента, почти на выбор: Java, PHP, Perl, C#.

4 курс - БД. Межсетевое взаимодействие. Ну и я asm и Fortran 95/03 изучил, так как интересно было.

5 курс - Параллельное программирование. MPI, OpenMP, PVM. Сам изучил ADA, на работе был нужен.

Примерно так.

В реальности лично мне понадобились C++, Fortran и QT. Поэтому главное - прочный фундамент, четкое мышление.

popov_da
()
Ответ на: комментарий от anonymous

TurboBasic - это действительно рвотное поделие.

Microsoft Basic - вот это круто!

anonymous
()
Ответ на: комментарий от tailgunner

>Лично мне, кстати, ни дискретка, ни матан не пригодились - бывает и так. А вот курс чего-то вроде ТРИЗ мне бы не помешал. И прикладная теория знаний пригодилась бы (хотя ее и не существует :D).

Что матан не пригодился, это можно допустить, но дискретка... o_O

Программисту булева алгебра, комбинаторика, теория множеств и мат. логика _как минимум_ не помешают :) Кроме того, это все еще и здорово развивает мышление.

Demon37 ★★★★
()
Ответ на: комментарий от popov_da

> Изучать надо тот язык, который нужен. Когда я учился на Прикмате

А что это, кстати, за вуз?

sv75 ★★★★★
()
Ответ на: комментарий от anonymous

> А в Яве лицензия запрещает использовать яву в mission critical задачах. Для таких задач есть специальные языки - Ада, например.

Да, упавшая ракета была как раз на Ada, помним, знаем...

sv75 ★★★★★
()
Ответ на: комментарий от Sidrian

> Ну почему? Мне голову 2 семестра дискреткой делали. Вроде как не мало.

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

sv75 ★★★★★
()
Ответ на: комментарий от r

> Лучше научить нормально принципам, с примерами на одном языке.

> Это плохой способ учить принципам.

+1

Я неприятно разошелся во мнениях по данному вопросу с руководством. Что делать, не знаю. Менять место работы? :(

sv75 ★★★★★
()
Ответ на: комментарий от szh

>> По тому, что я видел за последние лет 15 - у C-шника более тяжело "ломка сознания" протекает при обучении другим языкам... > И чем тут поможет предварительное изучение паскаля ? Имхо та же ломка будет.

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

Когда r бредит на тему давать примеры на всех языках мира : вот попробуй курс сделать, где у тебя будут примеры на pascale, C, java, python. И оцени, что тебе придется еще и синтаксис их рассказать и особенности некоторые, и на все вопросы по всем четырем ответить. Студенты должны будут тебя сдать сортировку шелла на всех четырех языках, какой-нить интеграл вычислить - тоже на четырех и т.д. Или предлагаете расширить список языков?

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

skwish ★★
()
Ответ на: комментарий от skwish

> Когда r бредит на тему давать примеры на всех языках мира : вот попробуй курс сделать, где у тебя будут примеры на pascale, C, java, python.

s/pascal/erlang/ Попробовал бы, если бы разрешили.

> И оцени, что тебе придется еще и синтаксис их рассказать и особенности некоторые, и на все вопросы по всем четырем ответить.

А что тут пугает, собсно? А, придется преподу знать что-то, кроме паскаля? Да, это проблема.

> Студенты должны будут тебя сдать сортировку шелла на всех четырех языках,

А что там такого, ее уже за них написали?

> какой-нить интеграл вычислить - тоже на четырех и т.д.

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

sv75 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.