• На каких сайтах есть бесплатное обучение с выдачей сертификатов?

    Wolfnsex
    @Wolfnsex Куратор тега CSS
    Если не хочешь быть первым - не вставай в очередь!
    Битрикс (какой-то базовый курс), бесплатные сертификаты в электронном виде выдавал. Но, я думаю, Вы сами должны понимать, что "бесплатные сертификаты", кроме как для украшения стен туалетов больше никуда особо не годятся. Я когда на собеседование прихожу, обычно следующий вопрос после "что вы знаете об ООП, HTML5, CSS3 и прочих технологиях" сразу уходит с основной темы, о моих знаниях и переходит в тему, того какую я з/п хочу, условия работы и т.д., состою ли я в каких-то сообществах разработчиков и т.д. Пару раз, при подаче документов, "обнаруживались" сертификаты, но их никто даже не смотрел. Всё заканчивалось на вопросе:
    - что это?
    - это сертификаты всякие, по программированию, технике, Unix'ам...
    - а, ну классно


    Дальше их даже никто из папки не доставал.

    Сертификаты, которые хотя бы чего-то стоят, обычно сочетаются либо с обучением, либо с глубокой экзаменацией. Обычно, стоимость только самих экзаменов стоит 80-300$ (сертификат в стоимость включен разумеется, если экзамен сдадите).

    Например, экзамен по Symfony стоит 250€ + Twig (без которого, я себе Symfony плохо представляю) стоит 150€... Остальное - только лишний расход бумаги и Вашего времени.
    Ответ написан
    Комментировать
  • Что нужно изучить, для того что бы написиать сервер на java для андроид приложения?

    Toisen
    @Toisen
    Backend Developer
    есть относительно неплохой курс от одного разработчика из Mail.ru на Stepic.org
    Ответ написан
    Комментировать
  • Как сгенерировать 14-ти значное положительное число?

    @Joysi75
    Если нужны длинные (допустим 100-значные), то можно затратно так (пример для 14 значного):
    BigInteger b;
    do{
           b = new BigInteger(48, new SecureRandom());
    } while (b.toString().length()!=14);
    System.out.println(b.toString());
    Ответ написан
    4 комментария
  • Где находить open source проект Java для новичка?

    Taraflex
    @Taraflex
    Ищу работу. Контакты в профиле.
    Нигде.
    Open Source не для новичков.
    Все эти хипстерские отзывы в стиле - пилите проекты на гитхаб и работодатели сами за вас хвататься будут - полный бред.
    Не тратьте время. Ищите стразу стажировку у работодателей.
    Ответ написан
    1 комментарий
  • Какие есть специализации у Java программиста?

    zagayevskiy
    @zagayevskiy Куратор тега Java
    Android developer at Yandex
    Ну, в общем их не так много:
    * Веб. Java EE, сервлеты, портлеты, JSF, JSP, Spring, hibernate, вот это всё...
    * Десктопная. Консольные и оконные приложения, Swing, JavaFX, что там ещё модно?
    * Мобильная (Android, про JavaME не вспоминаем). Моя любимая. Читать здесь.

    Вроде ничего не забыл, но может кто дополнит. Ах да, вот - внутри сим-карты есть JVM, там тоже Java код выполняется, и кто-то его пишет :)
    Ответ написан
  • Какие есть образовательные проекты по Java?

    www.javarush.ru
    JavaRush forever
    Ответ написан
    Комментировать
  • Какие есть образовательные проекты по Java?

    @pibiv
    JavaRush просто шикарно организованная штука
    Ответ написан
    3 комментария
  • Какие есть образовательные проекты по Java?

    @Nezaam
    Есть платный интерактивный курс JavaRush.
    Также есть бесплатный видеокурс от Якова Фаина.
    Ответ написан
    Комментировать
  • Какой материал для изучения алгоритмов вы можете порекомендовать?

    @artemt
    Full-stack developer
    Стэнфордский курс на coursera тоже хорош. Они с принстоновским курсом Седжвика неплохо друг друга дополняют. Ну и повторение — мать учения.

    Принстон: больше конкретики. Даётся библиотека готовых алгоритмов, с помощью них решаешь практические задачи на Java.

    Стэнфорд: несколько больше теории. Сам реализуешь алгоритмы на любом языке программирования.
    Ответ написан
    3 комментария
  • Какой материал для изучения алгоритмов вы можете порекомендовать?

    dimonchik2013
    @dimonchik2013
    non progredi est regredi
    по алгоритмам есть единственная книга, которая для начинающих лучше Кормана:
    000878653_1.jpg

    рекомендую так:
    смотришь два курса
    получше (есть на тракере), и похуже (Ютуб),

    потом вышеприведенная книга, потом Корман

    P.S. говорят, в книге есть неточности перевода, но, повторюсь, ее будешь читать уже после видеовведений и будет заметно
    Ответ написан
    1 комментарий
  • Какой материал для изучения алгоритмов вы можете порекомендовать?

    @evgeniy_lm
    Ну, дык, самый лучший источник это первоисточник - Д. Кнут "Искусство программирования"
    Ответ написан
    11 комментариев
  • Какой материал для изучения алгоритмов вы можете порекомендовать?

    LeEnot
    @LeEnot
    Енот-андроид
    Лучшее, что вы можете найти по теме:
    Томас Х. Кормен, Чарльз И. Лейзерсон, Рональд Л. Ривест, Клиффорд Штайн. Алгоритмы: построение и анализ, 3-е издание
    Ответ написан
    2 комментария
  • Суть виртуальной машины Java?

    pi314
    @pi314
    Президент Солнечной системы и окрестностей
    Тут дали уже много хороших и правильных ответов, но хотелось бы уточнить, что вот эта метафора:
    Виртуальня машина java это тоже интерпретатор по сути

    может направить по весьма ложному пути!

    У слов в названиях есть достаточно точный смысл, и JVM называется именно машиной, а не интерпретатором, и не компилятором совершенно не случайно. Компилятор в Яве есть (javac), и он нужен не для выполнения программы, а именно для ее компиляции (в байткод). Имено поэтому он не входит в состав JRE (среды выполнения), а содержится в JDK (среде разработки). В самой JVM есть еще один, JIT-компилятор, который компилирует байткод в инструкции процессора во время выполнения программы, но это уже другая история, и его тоже никак не назвать интерпретатором.

    По сути JVM - это процессор, только виртуальный. И как у любого процессора (железного, типа x86, или виртуального, типа CLR в .NET), у него есть свой набор опкодов, называемый байткодом. Так же точно, как на х86 может выполняться код, порожденный компилятором с C++, или Pascal, или Go, так же и на JVM может выполняться байткод, скомпилированный из Java, или Scala, или Kotlin (или даже написанный вручную), а .class -файл, это, по сути, тот же .exe (точнее .so), скомпилированный под "процессор JVM". В этом и заключается кроссплатформенность. Так же, как код, скомпилированный под х86 будет выполняться на процессоре от Intel или AMD, так же и байткод JVM будет выполняться на JVM от Oracle, IBM, OpenJDK и т.д. И даже наличие JIT, компилирующего байткод в опкод конкретного железного процессора во время выполнения, все еще не дает повода обзывать честную стековую (SUN) или регистровую (Dalvik) VM интерпретатором, пусть даже и по сути :)

    Дело в том, что сама эта классификация (интерпретируемый/компилируемый ЯЗЫК) последние лет эдак 25 уже практически лишена смысла. Языкам, изначально ориентированным на реализацию в виде интерпретатора (с просто анализируемой лексикой, чтоб интерпретатор был поменьше и мог оставить самой программе достаточно места в ограниченной по объему памяти) типа APL или BASIC, сейчас (кроме, разумеется, очень узкоспециального применения) почетное место разве что в старых учебниках, из которых эту самую классификацию, с достойным лучшего применения упорством, продолжают дословно переписывать в новые. При этом, почему-то, забывают уточнить, что эти два понятия уже давно не про сами языки, а всего лишь про некоторые методы их реализации, и что с тех пор помимо этих методов появилось еще много других хороших и разных концепций на эту тему (типа VM, JIT, сборщиков мусора, да и хотя бы тех же OOП, разных видов типизации и еще миллион чего), которых в тех учебниках еще просто не было в силу их года издания. И что на сегодня уже даже для языков, принципиально заточеных для компиляции под регистровую архитектуру, типа С, есть пруд пруди интерпретаторов (раз, два, три)... которые, опять же, никто не называет виртуальными машинами, т.к. это все суть разные понятия. Короче, это все равно что пытаться понять, где в квантовой механике огонь, вода, земля и воздух, в том виде, как их понимали Платон и Аристотель :)

    P.S. Чтоб осознать, когда эта классификация еще была актуальна, рекомендую вот это . Там создатели APL, одного из первых настоящих интерпретируемых языков, обсуждают насущные проблемы языкостроения того времени. Если туго с английским, посмотрите хотя бы вступление... в тех железяках было меньше памяти и вычислительной мощности, чем в современной симке :)
    Ответ написан
    Комментировать
  • Суть виртуальной машины Java?

    ruFelix
    @ruFelix
    Предсказание будущего по руке, таро, кофе.
    Ну смотрите процессор компьютера понимает опкоды, для разных процессоров свои опкоды, x86 , AMD64, ARM и т.д.

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

    Интерпретируемые языки поступают иначе, они имеют в своём составе интерпретатор, который транслирует код программы в опкоды процессора. Соответственно реализовав один раз интерпретатор по разные платформы мы получаем кроссплатформенный язык.

    Виртуальня машина java это тоже интерпретатор по сути, но ему на вход идёт не сама java программа, а её трансформированный вариант, т.е. уже проверенный и более удобный для VM.

    Да вы всё правильно поняли, без JVM программа на java не запуститься не где. Замечу что например в симкарте вашего телефона есть процессор на котором запущена JVM и софт который на ней исполняется, это я к тому, что кроссплатформенность у java действительно широка.
    Ответ написан
    Комментировать
  • Как подготовиться к сертификационным экзаменам по Java?

    DzodzikovAK
    @DzodzikovAK
    Java Developer
    Для меня оптимальным оказался такой способ:
    1. Читаете материал по всем темам к данной сертификации (желательно с конспектом)
    2. Проходите mock-тесты от Enthuware с разбором ошибок.

    По такой схеме сдал OCA по Java 8 на 94%, OCP по Java 8 на 90%.

    По первому пункту читал книги Jeanne Boyarsky и Scott Selicoff: OCA, OCP.

    Насчет Enthuware тестов - это лучшая трата десяти долларов. Семь полновесных тестов, имитирующих реальный экзамен, с подробным объяснением (после прохождения) всех ответов, правильных и неправильных. Очень рекомендую.
    Ответ написан
    2 комментария
  • Алгоритм изучения Java?

    @Noortvel
    Не слушай тех, кто говорит, что Java сложен для первого яп.Синтаксис очень читабелен и нету заморочек и ловушек насчет памяти.А по теме, в любой области опыт набирается методом проб и ошибок, главное просто начать(стабильность - признак мастерства). Начинать стоит с "копи-пасты" смотришь - повторяешь.Потом прощупав как оно там методом тыка(все этим постигается) и офигеть от своей тупости(когда я это осознал, мир в моих глазах "перевернулся") начинаешь пытаться сам.С самого начала,конечно,будет кошмар,но нужно просто каждый день писать,смотреть, читать.Увы, но идеального и быстрого способа прокачаться нету, все и вся достигается трудом и потом.
    Ответ написан
    Комментировать