Онлайн-курс – сертифицированная профессиональная специализация Java: структуры данных и объектно-ориентированное программирование Калифорнийского университета в Сан-Диего.

Разработано мощное интерактивное программное обеспечение. Получите глубокие знания в области разработки программного обеспечения на четырех комплексных курсах.

Suggested by: Coursera (What is Coursera?)

Professional Certificate

Средний уровень

No prior knowledge required

Time to complete the course

7-day free trial

No unnecessary risks

Skills you will acquire in the course

  • коммуникативные навыки
  • решение проблем
  • критическое мышление
  • тайм-менеджмент
  • работать в команде
  • Способность к самостоятельному обучению
  • организаторские способности
  • Технологическое понимание
  • планирование проекта
  • управленческие навыки

What you will learn in the course

Courses for which the course is suitable

  • инженер-программист
  • Разработчик программного обеспечения
  • аналитик данных
  • Java-разработчик
  • Инженер данных
  • Разработчик алгоритмов
  • Эксперт по объектно-ориентированному программированию
  • Разработчик систем
  • Разработчик приложений
  • Менеджер технологических проектов

Стажировка — серия из 5 курсов

Эта специализация касается промежуточных тем в разработке программного обеспечения. Вы познакомитесь с принципами объектно-ориентированного программирования, которые позволят вам использовать потенциал Java, и будете применять структуры данных и алгоритмы для эффективной и удобной организации больших объемов данных.

Навыки, которые будут развиты во время стажировки:

  • Критически оцените свой код
  • Технические коммуникативные навыки
  • Подготовка к собеседованиям
  • Работа в команде в качестве инженера-программиста

Финальный проект:

В финальном проекте вы примените свои навыки для анализа данных, собранных из реальной социальной сети.

Сотрудничество:

  • Google участвовал в проектах с мест
  • Инженеры Google в качестве приглашенных лекторов на курсах

Особые случаи:

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

Details of the courses that make up the specialization

Курс объектно-ориентированного программирования на Java

  • Курс 1 • 39 часов • 4,7 (5750 оценок)

Детали курса

чему ты научишься

Добро пожаловать на наш курс по объектно-ориентированному программированию на Java, используемому с визуализацией данных. Люди приходят на этот курс с самыми разными целями – и мы очень рады работать со всеми вами! Некоторые из вас хотят стать профессиональными разработчиками, другие заинтересованы в совершенствовании своих навыков программирования, чтобы реализовать тот особый личный проект, который вы задумали, а третьи, возможно, еще не знают, зачем они здесь, и пытаются понять, о чем этот курс.

Это средний курс по Java. Мы рекомендуем этот курс учащимся, имеющим опыт разработки программного обеспечения или знания в области компьютерных наук. Наша цель состоит в том, чтобы по окончании курса каждый из вас почувствовал себя готовым создать программу на Java, которая будет более продвинутой, чем все, что вы создавали раньше, и что вам будет интересно ею заниматься.

В рамках достижения этой цели вы также изучите основы объектно-ориентированного программирования, как использовать возможности существующих библиотек, как создать графический интерфейс пользователя и как использовать некоторые базовые алгоритмы для поиска и сортировки данных. Этот курс основан на проектах, поэтому мы приступим к работе над проектом прямо сейчас!

Мы рады предложить уникальную структуру курса, которая призвана помочь учащимся с разным опытом добиться успеха в своем собственном темпе. В первом модуле объясняется, как это будет работать и подходит ли вам этот курс. Мы также рекомендуем потратить несколько минут на изучение веб-сайта курса. Хорошее место для начала — панель навигации слева. Нажмите на содержание курса, чтобы увидеть, какие материалы мы будем изучать каждую неделю, а также просмотреть задания, которые вам необходимо будет выполнить для прохождения курса. Нажмите на обсуждения, чтобы просмотреть форумы, на которых вы можете обсудить материал курса с другими студентами, посещающими этот курс. Не забудьте представиться всем на форуме «Встречи и знакомства».

Этот курс должен занять около 6 недель. Вы можете проверить рекомендуемое расписание курсов ниже, чтобы увидеть краткий обзор уроков и заданий, с которыми вы будете сталкиваться каждую неделю.

Мы очень рады, что вы учитесь вместе с нами. Давайте начнем!

Структуры данных и производительность

  • Курс 2 • 41 час • 4,8 (2221 оценка)

Детали курса

чему ты научишься

Как программы Java справляются с огромными объемами данных? Многие структуры данных и алгоритмы, работающие с базовыми примерами, выходят из строя, когда приложения обрабатывают реальные большие наборы данных. Эффективность имеет решающее значение, но как ее достичь и как ее измерить?

Это средний курс по Java. Мы рекомендуем этот курс учащимся, имеющим предыдущий опыт разработки программного обеспечения или опыт работы в области компьютерных наук, и, в частности, мы рекомендуем вам иметь опыт прохождения первого курса в этой области (что также требует предыдущего опыта работы с Java).

В этом курсе вы будете использовать и анализировать структуры данных, используемые в приложениях промышленного уровня, такие как связанные списки, деревья и таблицы пожаров. Объясните, как эти структуры данных делают программы более эффективными и гибкими. Примените асимптотический анализ Big-O, чтобы описать производительность алгоритмов и оценить, какую стратегию использовать для эффективного поиска данных, добавления новых данных, удаления элементов и использования памяти.

Программа, которую вы создадите в ходе этого курса, позволит пользователю управлять большими системами текстовых данных, манипулировать ими и думать о них. Это промежуточный курс по Java, и мы будем опираться на ваши предыдущие знания. Этот курс построен на той же серии видеороликов, что и первый курс по нашей специализации, включая объяснения основного содержания, обучающие видеоролики, отзывы студентов и инженеров, а также вспомогательные видеоролики, чтобы вы могли выбрать свой путь в рамках курса!

Навыки, которые вы получите
  • Категория: графики
  • Категория: алгоритм поиска
  • Категория: Алгоритмы на графах
  • Категория: Структуры данных на графах

Расширенные структуры данных в Java

  • Курс 3 • 28 часов • 4,8 (1236 оценок)

Детали курса

чему ты научишься

Как Google Maps планирует лучший маршрут для передвижения по городу с учетом текущих условий дорожного движения? Как интернет-маршрутизатор пересылает пакеты сетевого трафика, чтобы уменьшить задержку? Как гуманитарная организация распределяет ресурсы среди своих местных партнеров?

Чтобы решить такие проблемы, мы сначала представим центральные данные в сложной структуре данных. В этом курсе вы узнаете о структурах данных, таких как графики, которые имеют основополагающее значение для работы с реальными структурированными данными. Вы будете разрабатывать, внедрять и анализировать алгоритмы работы с этими данными для решения реальных задач. Кроме того, когда программы, которые вы разрабатываете в этом курсе, станут более сложными, мы рассмотрим, что делает код хорошим дизайном и многоуровневой структурой, которая позволит вам не только писать правильный код, но и делиться им с другими и поддерживать его в будущее.

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

Навыки, которые вы получите
  • Категория: Логическое программирование
  • Категория: Java-программирование
  • Категория: Объектно-ориентированное программирование (ООП)
  • Категория: алгоритм сортировки

специализироваться на собеседовании по программированию

  • Курс 4 • 20 часов • 4.6 (554 оценки)

Детали курса

чему ты научишься

Вы достигли важной вехи в качестве разработчиков программного обеспечения и стали опытными программистами. Вы уже умеете решать задачи, писать алгоритмы и анализировать решения; И у вас есть множество инструментов (например, структур данных) для использования. Теперь вы можете быть готовы к стажировке или (возможно) позиции программирования начального уровня. Но сможете ли вы получить стажировку/работу? Частично это зависит от того, насколько хорошо вы умеете решать новые технические задачи и общаться во время собеседований. Как это можно улучшить? упражняться! С помощью команды по подбору персонала и инженеров Google мы предоставили в этом курсе советы, примеры и возможности для практики, которые могут помочь вам в работе с рядом технологических компаний. Мы поможем вам организоваться в группы для практик. Наконец, мы дадим вам основные советы по поиску работы и советы, как добиться успеха, когда вы начнете работать.

Навыки, которые вы получите
  • Категория: Живое программирование
  • Категория: интервью по программированию
  • Категория: Алгоритмы
  • Категория: Устранение неполадок

Дипломный проект: Анализ данных (социальных) сетей

  • Курс 5 • 17 часов • 4,7 (99 оценок)

Детали курса

чему ты научишься

В этом заключительном проекте мы объединим все навыки всех четырех курсов специализации, чтобы сделать что-то действительно интересное: проанализировать социальные сети! Возможности обучения в социальной сети практически безграничны. Кто такие «влиятельные друзья» в сети? Каковы подсообщества внутри сети? Кто с кем связан и сколько ссылок? Это лишь некоторые из вопросов, которые вы можете изучить в этом проекте.

Мы предоставим вам набор реальных данных и некоторую инфраструктуру для начала, а также некоторые подготовительные задачи и основные требования к проекту, но после этого вы сможете свободно выбирать, в каком направлении двигаться. Если у вас закончатся идеи, мы предложим несколько направлений, которые помогут подпитать ваше творчество и воображение. Наконец, чтобы объединить навыки, полученные на курсе 4 (и продвигать свой проект!), вам будет предложено создать видео, демонстрирующее ваш конечный продукт.

Навыки, которые вы получите
  • Категория: Деревья (структуры данных)
  • категория: структуры данных
  • Категория: Связанный список
  • Категория: бинарное дерево