Разработано мощное интерактивное программное обеспечение. Получите глубокие знания в области разработки программного обеспечения на четырех комплексных курсах.
Suggested by: Coursera (What is Coursera?)
No prior knowledge required
No unnecessary risks
Эта специализация касается промежуточных тем в разработке программного обеспечения. Вы познакомитесь с принципами объектно-ориентированного программирования, которые позволят вам использовать потенциал Java, и будете применять структуры данных и алгоритмы для эффективной и удобной организации больших объемов данных.
В финальном проекте вы примените свои навыки для анализа данных, собранных из реальной социальной сети.
Небольшая особая группа выдающихся учеников, прошедших стажировку, будет приглашена на обучающие собеседования с рекрутерами из Google. Приглашение на пробное собеседование не гарантирует настоящего собеседования или трудоустройства.
Добро пожаловать на наш курс по объектно-ориентированному программированию на Java, используемому с визуализацией данных. Люди приходят на этот курс с самыми разными целями – и мы очень рады работать со всеми вами! Некоторые из вас хотят стать профессиональными разработчиками, другие заинтересованы в совершенствовании своих навыков программирования, чтобы реализовать тот особый личный проект, который вы задумали, а третьи, возможно, еще не знают, зачем они здесь, и пытаются понять, о чем этот курс.
Это средний курс по Java. Мы рекомендуем этот курс учащимся, имеющим опыт разработки программного обеспечения или знания в области компьютерных наук. Наша цель состоит в том, чтобы по окончании курса каждый из вас почувствовал себя готовым создать программу на Java, которая будет более продвинутой, чем все, что вы создавали раньше, и что вам будет интересно ею заниматься.
В рамках достижения этой цели вы также изучите основы объектно-ориентированного программирования, как использовать возможности существующих библиотек, как создать графический интерфейс пользователя и как использовать некоторые базовые алгоритмы для поиска и сортировки данных. Этот курс основан на проектах, поэтому мы приступим к работе над проектом прямо сейчас!
Мы рады предложить уникальную структуру курса, которая призвана помочь учащимся с разным опытом добиться успеха в своем собственном темпе. В первом модуле объясняется, как это будет работать и подходит ли вам этот курс. Мы также рекомендуем потратить несколько минут на изучение веб-сайта курса. Хорошее место для начала — панель навигации слева. Нажмите на содержание курса, чтобы увидеть, какие материалы мы будем изучать каждую неделю, а также просмотреть задания, которые вам необходимо будет выполнить для прохождения курса. Нажмите на обсуждения, чтобы просмотреть форумы, на которых вы можете обсудить материал курса с другими студентами, посещающими этот курс. Не забудьте представиться всем на форуме «Встречи и знакомства».
Этот курс должен занять около 6 недель. Вы можете проверить рекомендуемое расписание курсов ниже, чтобы увидеть краткий обзор уроков и заданий, с которыми вы будете сталкиваться каждую неделю.
Мы очень рады, что вы учитесь вместе с нами. Давайте начнем!
Как программы Java справляются с огромными объемами данных? Многие структуры данных и алгоритмы, работающие с базовыми примерами, выходят из строя, когда приложения обрабатывают реальные большие наборы данных. Эффективность имеет решающее значение, но как ее достичь и как ее измерить?
Это средний курс по Java. Мы рекомендуем этот курс учащимся, имеющим предыдущий опыт разработки программного обеспечения или опыт работы в области компьютерных наук, и, в частности, мы рекомендуем вам иметь опыт прохождения первого курса в этой области (что также требует предыдущего опыта работы с Java).
В этом курсе вы будете использовать и анализировать структуры данных, используемые в приложениях промышленного уровня, такие как связанные списки, деревья и таблицы пожаров. Объясните, как эти структуры данных делают программы более эффективными и гибкими. Примените асимптотический анализ Big-O, чтобы описать производительность алгоритмов и оценить, какую стратегию использовать для эффективного поиска данных, добавления новых данных, удаления элементов и использования памяти.
Программа, которую вы создадите в ходе этого курса, позволит пользователю управлять большими системами текстовых данных, манипулировать ими и думать о них. Это промежуточный курс по Java, и мы будем опираться на ваши предыдущие знания. Этот курс построен на той же серии видеороликов, что и первый курс по нашей специализации, включая объяснения основного содержания, обучающие видеоролики, отзывы студентов и инженеров, а также вспомогательные видеоролики, чтобы вы могли выбрать свой путь в рамках курса!
Как Google Maps планирует лучший маршрут для передвижения по городу с учетом текущих условий дорожного движения? Как интернет-маршрутизатор пересылает пакеты сетевого трафика, чтобы уменьшить задержку? Как гуманитарная организация распределяет ресурсы среди своих местных партнеров?
Чтобы решить такие проблемы, мы сначала представим центральные данные в сложной структуре данных. В этом курсе вы узнаете о структурах данных, таких как графики, которые имеют основополагающее значение для работы с реальными структурированными данными. Вы будете разрабатывать, внедрять и анализировать алгоритмы работы с этими данными для решения реальных задач. Кроме того, когда программы, которые вы разрабатываете в этом курсе, станут более сложными, мы рассмотрим, что делает код хорошим дизайном и многоуровневой структурой, которая позволит вам не только писать правильный код, но и делиться им с другими и поддерживать его в будущее.
Основным проектом этого курса будет приложение для планирования маршрута. Применяйте концепции каждого модуля непосредственно при создании приложения, которое позволяет автономному агенту (или водителю-человеку!) перемещаться по его пространству. Как всегда, у нас есть различные серии видео, которые помогут связать контент с его актуальностью в реальном мире и обеспечить различные уровни поддержки для удовлетворения ваших индивидуальных потребностей.
Вы достигли важной вехи в качестве разработчиков программного обеспечения и стали опытными программистами. Вы уже умеете решать задачи, писать алгоритмы и анализировать решения; И у вас есть множество инструментов (например, структур данных) для использования. Теперь вы можете быть готовы к стажировке или (возможно) позиции программирования начального уровня. Но сможете ли вы получить стажировку/работу? Частично это зависит от того, насколько хорошо вы умеете решать новые технические задачи и общаться во время собеседований. Как это можно улучшить? упражняться! С помощью команды по подбору персонала и инженеров Google мы предоставили в этом курсе советы, примеры и возможности для практики, которые могут помочь вам в работе с рядом технологических компаний. Мы поможем вам организоваться в группы для практик. Наконец, мы дадим вам основные советы по поиску работы и советы, как добиться успеха, когда вы начнете работать.
В этом заключительном проекте мы объединим все навыки всех четырех курсов специализации, чтобы сделать что-то действительно интересное: проанализировать социальные сети! Возможности обучения в социальной сети практически безграничны. Кто такие «влиятельные друзья» в сети? Каковы подсообщества внутри сети? Кто с кем связан и сколько ссылок? Это лишь некоторые из вопросов, которые вы можете изучить в этом проекте.
Мы предоставим вам набор реальных данных и некоторую инфраструктуру для начала, а также некоторые подготовительные задачи и основные требования к проекту, но после этого вы сможете свободно выбирать, в каком направлении двигаться. Если у вас закончатся идеи, мы предложим несколько направлений, которые помогут подпитать ваше творчество и воображение. Наконец, чтобы объединить навыки, полученные на курсе 4 (и продвигать свой проект!), вам будет предложено создать видео, демонстрирующее ваш конечный продукт.



