• Как понять этот код JavaScript начинающему кодеру?

    mmmaaak
    @mmmaaak
    Короче второй цикл берет из строки столько символов, какова длинна переменной myName, и сохраняет их в hits
    Ответ написан
    Комментировать
  • Как понять этот код JavaScript начинающему кодеру?

    nobodynoone
    @nobodynoone
    Тут прикол в том, что ищется первая буква имени, когда эта буква находится, получаем длину имени и прибавляем к нему 1 (почему 1? вспомните про то, что все массивы начинаются не с 1, а с 0, отсюда и это прибавление). Вот с комментариями

    // Строка, где будем искать имя 
    var text = "Hey,my is Bobby!";
    // Само имя 
    var myName = "Bobby";
    // Сюда будет пихать буквы имени, которые извлечем из строки 
    var hits = [];
    
    // Начинаем цикл, который будет перебирать каждый символ, потому что length возвращает
    // количество символов в строке 
    for ( var i=0; i<text.length; i++ ) {
        // Такк как мы перебираем не буквы, а числа, поэтому мы получаем символ из строки text
        // передачей позиции символа. Если буква найдена, то продолжаем. 
        if(text[i]==='B'){
            // Вы не поняли, зачем и почему тут j=i, да потому что мы все еще продолжаем искать 
            // символы в той же самой строке, а так как мы этот символ уже нашли, то нету смысла
            // начинать все с самого начала, потому что это неправильно, так как если предположить, что
            //  у нас до этого был перебор посимвольно строки весом скажем, 100Гб, то вы сами можете
            //  понять, что нам незачем еще раз делать то, что мы уже сделали, поэтому мы просто 
            // присваиваем переменной j текущее значение и позицию i и создаем цикл который позволит
            // нам полностью "забрать" слово. Как? Опять же берем длину строки с именем и прибавляем
            // единицу (почему 1? вспомните про то, что все массивы начинаются не с 1, а с 0, отсюда 
            // и это прибавление). 
            for(var j = i; j < (myName.length + i); j++) {
                            // Отправляем букву в массив
    			hits.push(text[j]);
            }
        }
    }
    
    if (hits.length === 0) {
    	console.log("Your name wasn't found!");
    } else {
    	console.log(hits);
    }


    Проще просто нельзя :)
    Ответ написан
    1 комментарий
  • Java 2. Том 1. Основы - Хорстманн, Корнелл

    @ElchinValiyev
    Ответ написан
    Комментировать
  • Хочу быть программистом, но не выходит. Как двигаться вперед?

    @CAMOKPYT
    1) Не верь в активно форсируемый миф про никчемность ВУЗов, математическую базу никто не отменял. Никто не занимается ни вебом, ни формочками после 2-3 лет опыта работы, потому что это скучная и однообразная работа, потом захочется заниматься программированием, никакие книжки не помогут, уже просто не захочется тратить 1-2 года на то чтобы все это освоить и будешь Senior Frontend Developer с 10 годами опыта. ВУЗ дает необходимую базу. С++ билдер или асм для 8086? Это вполне нормально, это база. На начальном этапе гораздо легче спросить препода, чем гуглить, самому учится по книгам это очень очень тяжело, особенно самые основы. Чтобы идти в свободное плавание, надо хотя бы 2 курса отсидеть на парах, чтобы иметь представление что гуглить. А еще в ВУЗе учат английскому, для программиста он даже важнее чем математика.
    2)3) Насчет выбора первого языка, я считаю что изучать чистый Си можно только под строгим присмотром знающего преподавателя и после хотя бы пол года изучения Computer Science, в противном случае только Паскаль. В первом языке главное научится излагать алгоритмы в коде и чуть-чуть пользоваться окружением (файлы\графика\память) и всё. Не надо требовать от первого языка промышленной востребованности. Научиться основам программирования, гораздо сложнее чем просто выучить синтаксис языка. Вообще лучше сначала получать знания непосредственно из курса Computer Science, так например я сначала прослушал курс Операционных систем и сред и курс Компьютерных сетей, а через полгода мы практиковались с программированием сокетов и в управление потоков, когда понимаешь на уровне ОС что и как работает хотя бы поверхностно, то программировать становится гораздо легче и не важно на каком языке. А насчет следующих языков, довольно тяжело сказать, с одной стороны надо выбирать под отрасль, но чтобы выбирать надо знать какая отрасль нравится, а пока не попрограммируешь в ней, понять не получится, этакая рекурсия. Я советую выбрать сразу 3 языка и изучать их, причем в первую очередь не синтаксис,а философию, какие цели ставил перед собой разработчик языка и насколько ему удалось их достичь, если это то что тебе нравится (то как язык решает поставленные задачи), то его и учи, а 3 языка для того чтобы было разнообразие, я для себя выбрал C#, Ruby и C++, как довольно разноплановые, но промышленно востребованные языки. Ну и не стоит забывать про сопутствующие технологии, без них не прожить, так любая более-менее большая программа требует базу данных, а это довольно обширная тема, а еще есть фронтэнд без которого также не обходится ни одна программа взаимодействующая с пользователем, а это языки разметки, тоже довольно обширная тема.
    Ответ написан
    2 комментария
  • Как изучить программирование с нуля?

    beeruser
    @beeruser
    Лучше брать известные open-source программы от вменяемых разработчиков (Google, например) и разбираться в их устройстве. Писать свой код как можно больше, реализуя любые задачи что попадутся под руку.
    А уже потом, обладая знаниями и/или зная точно что искать, можно приступать к чтению книг по программированию, если они вам понадобятся.
    Ответ написан
    Комментировать
  • Как изучить программирование с нуля?

    aur
    @aur
    www.intuit.ru — совершенно бесплатно можно пройти университетский курс по любому ЯП.
    Если уровень 9 класса — лучше начать с паскаля, который все равно будет в школе. Хотя я рекомендовал бы почитать лекции по C++, поделать лабы в какой-нибудь простенькой IDE вроде Dev-C++. Если придет понимание программирования на плюсах — это очень хорошо.

    Если решите все же изучать паскаль и понадобятся задания чуть сложнее «а:=5, b:=6, a+b = ?» можно стукнуть в ПМ, у меня есть задания для первого курса: массивы, файлы, связанные списки. Но нужно уже иметь какую-то базу, знать операторы цикла и ветвления.

    Если получится освоить вот этот курс — в будущем можно стать очень и очень хорошим программистом. Это курс по алгоритмам и уверяю, не каждый студент способен его успешно пройти.
    Ответ написан
    1 комментарий