Специализация Программирование на языке Java: объектно-ориентированное проектирование структур данных

Начался мар 20

Специализация Программирование на языке Java: объектно-ориентированное проектирование структур данных

Develop Powerful Interactive Software

Advance your software development knowledge in four comprehensive courses.

Об этой специализации

This Specialization covers intermediate topics in software development. You’ll learn object-oriented programming principles that will allow you to use Java to its full potential, and you’ll implement data structures and algorithms for organizing large amounts of data in a way that is both efficient and easy to work with. You’ll also practice critically evaluating your own code, and you’ll build technical communication skills that will help you prepare for job interviews and collaborative work as a software engineer. In the final Capstone Project, you’ll apply your skills to analyze data collected from a real-world (social) network. Google has contributed real-world projects and the involvement of its engineers as guest lecturers to these courses. A small, select group of top learners who complete the Specialization will be offered practice interviews with Google recruiters. Invitation to a practice interview does not guarantee an actual interview or employment.

Автор:

courses
5 courses

Следуйте предложенному порядку или выберите свой.

projects
Проекты

Поможет на практике применить полученные навыки.

certificates
Сертификаты

Отметьте новые навыки в резюме и на LinkedIn.

Курсы
Intermediate Specialization.
Some related experience required.
  1. 1-Й КУРС

    Объектно Ориентированное Программирование Джава

    Текущая сессия: мар 20–май 8.
    Выполнение
    6 недель учёбы, 4-6 в неделю
    Субтитры
    English, Chinese (Simplified)

    О курсе

    Интересно ли вам узнать как был создан такой огромный проект как поисковик Гугл? В этом курсе мы будем учиться кодировать в методе "main" что бы создавать и строить более сложные проекты в среде Джава (думаем всё же не такие сложные как поисковик Гугл!). Мы узнаем как разделять большие проекты по иерархии классов и как увеличить функциональность ваших проектов привлекая необходимые библиотеки. Мы также рассмотрим некоторые основные алгоритмы для поиска и сортировки данных. И в тоже время вы будете развивать захватывающее интерактивное приложение с графическим пользовательским интерфейсом. В этом курсе мы хотим вдохновить вас на созидание. Вы будете погружаться в проект, и сразу же, каждый урок будет строится вокруг понятий, которые непосредственно применимы к расширению функциональных возможностей проекта. Видео лекции включают в себя как основное содержание, также отзывы и рассказы от реальных разработчиков программного обеспечения, разговоры между реальными студентами, которые изучают материал, к которым вы вероятно также захотите отнестись, а также многочисленные видео, к которым вы можете обратиться, если вы застряли.
  2. 2-Й КУРС

    Data structures: Measuring and Optimizing Performance

    Текущая сессия: мар 20–май 8.
    Выполнение
    6 weeks of study, 6-10 hours/week
    Субтитры
    English

    О курсе

    How do Java programs deal with vast quantities of data? Many of the data structures and algorithms that work with introductory toy examples break when applications process real, large data sets. Efficiency is critical, but how do we achieve it, and how do we even measure it? In this course, you will use and analyze data structures that are used in industry-level applications, such as linked lists, trees, and hashtables. You will explain how these data structures make programs more efficient and flexible. You will apply asymptotic Big-O analysis to describe the performance of algorithms and evaluate which strategy to use for efficient data retrieval, addition of new data, deletion of elements, and/or memory usage. The program you will build throughout this course allows its user to manage, manipulate and reason about large sets of textual data. This course is designed around the same video series as in our first course in this specialization, including explanations of core content, learner videos, student and engineer testimonials, and support videos -- to better allow you to choose your own path through the course!
  3. 3-Й КУРС

    Advanced Data Structures in Java

    Текущая сессия: мар 20–май 8.
    Выполнение
    5 weeks of study, 1-3 hours/week
    Субтитры
    English

    О курсе

    How does Google Maps plan the best route for getting around town given current traffic conditions? How does an internet router forward packets of network traffic to minimize delay? How does an aid group allocate resources to its affiliated local partners? To solve such problems, we first represent the key pieces of data in a complex data structure. In this course, you’ll learn about data structures, like graphs, that are fundamental for working with structured real world data. You will develop, implement, and analyze algorithms for working with this data to solve real world problems. In addition, as the programs you develop in this course become more complex, we’ll examine what makes for good code and class hierarchy design so that you can not only write correct code, but also share it with other people and maintain it in the future. The backbone project in this course will be a route planning application. You will apply the concepts from each Module directly to building an application that allows an autonomous agent (or a human driver!) to navigate its environment. And as usual we have our different video series to help tie the content back to its importance in the real world and to provide tiered levels of support to meet your personal needs.
  4. 4-Й КУРС

    Mastering the Software Engineering Interview

    Текущая сессия: мар 20–апр 24.
    Выполнение
    4 недели занятия, 2-4 часа в неделю
    Субтитры
    English

    О курсе

    You’ve hit a major milestone as a computer scientist and are becoming a capable programmer. You now know how to solve problems, write algorithms, and analyze solutions; and you have a wealth of tools (like data structures) at your disposal. You may now be ready for an internship or (possibly) an entry-level software engineering job. But can you land the internship/job? It depends in part on how well you can solve new technical problems and communicate during interviews. How can you get better at this? Practice! With the support of Google’s recruiting and engineering teams we’ve provided tips, examples, and practice opportunities in this course that may help you with a number of tech companies. We’ll assist you to organize into teams to practice. Lastly, we’ll give you basic job search advice, and tips for succeeding once you’re on the job.
  5. 5-Й КУРС

    Capstone: Analyzing (Social) Network Data

    Предстоящая сессия: май 22–июль 10.
    Выполнение
    6 weeks of study, 3-5 hours/week
    Субтитры
    English

    О дипломном проекте

    In this capstone project we’ll combine all of the skills from all four specialization courses to do something really fun: analyze social networks! The opportunities for learning are practically endless in a social network. Who are the “influential” members of the network? What are the sub-communities in the network? Who is connected to whom, and by how many links? These are just some of the questions you can explore in this project. We will provide you with a real-world data set and some infrastructure for getting started, as well as some warm up tasks and basic project requirements, but then it’ll be up to you where you want to take the project. If you’re running short on ideas, we’ll have several suggested directions that can help get your creativity and imagination going. Finally, to integrate the skills you acquired in course 4 (and to show off your project!) you will be asked to create a video showcase of your final product.

Авторы

  • Калифорнийский университет в Сан-Диего

    The UC San Diego Department of Computer Science and Engineering (CSE) embodies the university's tradition of excellence as a world-class leader in computer science and engineering education and research.

    UC San Diego is an academic powerhouse and economic engine, recognized as one of the top 10 public universities by U.S. News and World Report. Innovation is central to who we are and what we do. Here, students learn that knowledge isn't just acquired in the classroom—life is their laboratory.

  • Leo Porter

    Leo Porter

    Assistant Teaching Professor
  • Christine Alvarado

    Christine Alvarado

    Associate Teaching Professor
  • Mia Minnes

    Mia Minnes

    Assistant Teaching Professor

FAQs

More questions? Visit the Learner Help Center.