Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Какая разница при помощи какого языка программировать?
И что интересно по этой гипотезе происходит у людей владеющих несколькими языками? Они по идее должны стать сверхчеловеками.
А как должны мыслить люди владеющими обоими языками?
&foo и *foo.echo "PHP is great language!";
echo "Wanna see some PHP magic?";
echo ("one plus two minus three"==0); //1a=[1, 2]
b=a
b.append(3)
print a, b
#[1, 2, 3] [1, 2, 3]List<Integer> a = new ArrayList<Integer>();
a.add(1);
a.add(2);
List<Integer> b = a;
b.add(3);
System.out.println(a);
System.out.println(b);
// [1, 2, 3]
// [1, 2, 3]
Но это все ещё важно для некоторых из самых восхитительных программных разработок. Например, без указателей вы никогда не сможете работать над ядром Linux. Вы не сможете понять ни строки кода Linux или любой операционной системы без реального понимания указателей.
Без понимания функционального программирования вы не сможете придумать MapReduce — алгоритма, который делает Google столь хорошо масштабируемым. Термины Map и Reduce пришли из Lisp и функционального программирования. MapReduce понятен любому, кто помнит из своего курса, эквивалентного 6.001, что истинно функциональные программы не имеют побочных эффектов и поэтому легко распараллеливаемы.
Вам может быть интересно, может ли обучение объектно-ориентированному программированию (ООП) быть хорошим заменителем указателей и рекурсии как вычищающих курсов. Короткий ответ — нет. Не обсуждая достоинства ООП, можно просто сказать, что оно недостаточно сложно для отсеивания посредственных программистов. Преподавание ООП состоит в основном в запоминании нескольких словарных терминов, таких как «инкапсуляция» и «наследование» и заучивании ответов на множество вопросов о разнице между полиморфизмом и перегрузкой операций. Не сложнее заучивания знаменательных дат и имён на уроках истории, ООП ставит неадекватно простую задачу для того, чтобы отпугнуть первокурсников.
И то же функциональное программирование, мало того что тренирует мозг, по-моему как-раз сейчас очень актуально, хотя-бы в связи с проблемой параллелизации
И выкидывать курс по нему в угоду Java, по-моему глупо
Академическая степень имхо подразумевает более широкое образование, и курсы по таким важным парадигмам, как ООП и фунциональное программирование (в контексте конкретных языков) уж точно можно пройти параллельно, если готовишься на программиста.
Опасности обучения на Java