К содержимому
learnspaceYOUR NEXT CHAPTER
ПРОСТРАНСТВО ОБУЧЕНИЯ
ГлавнаяКаталог курсовМоё обучениеCoursera

Знания без границ

Учитесь у лучших университетов и компаний мира.

Открыть Coursera
Интеграция
Пространство университета
Моё пространствоСтраница курса
↵
ЯЛичный кабинетСтудент
© 2026 LearnSpaceКаждый день — возможность узнать больше.Помощь
Computer Science: Programming with a Purpose · LearnSpace
Назад в каталог
courseraПрограммирование

Computer Science: Programming with a Purpose

Курс от Princeton University
Начальный≈ 88.1 чАнглийский
О курсеНавыкиПрограммаПреподаватели

О курсе

The basis for education in the last millennium was “reading, writing, and arithmetic;” now it is reading, writing, and computing. Learning to program is an essential part of the education of every student, not just in the sciences and engineering, but in the arts, social sciences, and humanities, as well. Beyond direct applications, it is the first step in understanding the nature of computer science’s undeniable impact on the modern world. This course covers the first half of our book Computer Science: An Interdisciplinary Approach (the second half is covered in our Coursera course Computer Science: Algorithms, Theory, and Machines). Our intent is to teach programming to those who need or want to learn it, in a scientific context. We begin by introducing basic programming elements such as variables, conditionals, loops, arrays, and I/O. Next, we turn to functions, introducing key concepts such as recursion, modular programming, and code reuse. Then, we present a modern introduction to object-oriented programming. We use the Java programming language and teach basic skills for computational problem solving that are applicable in many modern computing environments. Proficiency in Java is a goal, but we focus on fundamental concepts in programming, not Java per se. All the features of this course are available for free. People who are interested in digging deeper into the content may wish to obtain the textbook Computer Science: An Interdisciplinary Approach (upon which the course is based) or to visit the website introcs.cs.princeton.edu for a wealth of additional material. This course does not offer a certificate upon completion.

Навыки, которые вы освоите

Java ProgrammingObject Oriented Programming (OOP)Computer ProgrammingJavaData StructuresCode ReusabilityProgram DevelopmentAnimationsTheoretical Computer ScienceOther Programming LanguagesComputational ThinkingObject Oriented DesignProgramming PrinciplesComputer SciencePerformance TuningAlgorithms

Программа курса

10 модулей · 82 учебных материалов

01BASIC PROGRAMMING CONCEPTS8 материалов

Lecture 1: BASIC PROGRAMMING CONCEPTS

Supplements for Lecture 1ЧтениеWhy programming?ВидеоProgram developmentВидеоBuilt-in data typesВидео

Учитесь у экспертов

Robert Sedgewick

William O. Baker *39 Professor in Computer Science, Emeritus

Kevin Wayne

Phillip Y. Goldman '86 University Lecturer

Computer Science: Programming with a Purpose
В каталоге вашей программы

Инвестируйте в себя

Новые знания — в удобное для вас время.

Начать на Coursera

Обучение откроется на Coursera
в новой вкладке

Обучение на Coursera

≈ 88.1 ч

10 модулей

Язык: Английский

Субтитры: Арабский, Французский, Бенгальский, Узбекский, Украинский, Китайский (Китай), Греческий, Итальянский, Бразильский португальский, Вьетнамский, Нидерландский, Корейский, Немецкий, Пушту, Урду, Русский, Тайский, Индонезийский, Шведский, Турецкий, Азербайджанский, Испанский, Дари, Хинди, Японский, Казахский, Венгерский, Польский

Часть программы вашего университета
Type conversionВидео
Optional Enrichment on Basic Programming ConceptsЧтение
Basic Programming ConceptsЗадание
Hello, WorldПрограммирование
02CONDITIONALS AND LOOPS9 материалов

LECTURE 2: CONDITIONALS AND LOOPS

Supplements for Lecture 2ЧтениеConditionals: the if statementВидеоLoops: the while statementВидеоAn alternative: the for loopВидеоNestingВидеоDebuggingВидеоOptional Enrichment on Conditionals and LoopsЧтениеConditionals and LoopsЗаданиеConditionals and LoopsПрограммирование
03ARRAYS7 материалов

LECTURE 3: ARRAYS

Supplements for Lecture 3ЧтениеBasic conceptsВидеоTypical array-processing codeВидеоTwo-dimensional arraysВидеоOptional Enrichment on ArraysЧтениеArraysЗаданиеArraysПрограммирование
04INPUT AND OUTPUT8 материалов

LECTURE 4: INPUT AND OUTPUT

Supplements for Lecture 4ЧтениеStandard input and outputВидеоStandard drawingВидеоFractal drawingsВидеоAnimationВидеоOptional Enrichment on Input and OutputЧтениеInput and OutputЗаданиеInput and OutputПрограммирование
05FUNCTIONS AND LIBRARIES8 материалов

LECTURE 5: FUNCTIONS AND LIBRARIES

Supplements for Lecture 5ЧтениеBasic conceptsВидеоCase study: Digital audioВидеоApplication: Gaussian distributionВидеоModular programming and librariesВидеоOptional Enrichment on Functions and LibrariesЧтениеFunctions and LibrariesЗаданиеFunctionsПрограммирование
06RECURSION9 материалов

LECTURE 6: RECURSION

Supplements for Lecture 6ЧтениеFoundationsВидеоA classic exampleВидеоRecursive graphicsВидеоAvoiding exponential wasteВидеоDynamic programmingВидеоOptional Enrichment on RecursionЧтениеRecursionЗаданиеRecursionПрограммирование
07PERFORMANCE9 материалов

LECTURE 7: PERFORMANCE

Supplements for Lecture 7ЧтениеThe challengeВидеоEmpirical analysisВидеоMathematical modelsВидеоDoubling methodВидеоFamiliar examplesВидеоOptional Enrichment on PerformanceЧтениеPerformanceЗаданиеPerformanceПрограммирование
08ABSTRACT DATA TYPES8 материалов

LECTURE 8: ABSTRACT DATA TYPES

Supplements for Lecture 8ЧтениеOverviewВидеоColorВидеоImage processingВидеоString processingВидеоOptional Enrichment on Abstract Data TypesЧтениеAbstract Data TypesЗаданиеUsing Data TypesПрограммирование
09CREATING DATA TYPES8 материалов

LECTURE 9: CREATING DATA TYPES

Supplements for Lecture 9ЧтениеOverviewВидеоPoint chargesВидеоTurtle graphicsВидеоComplex numbersВидеоOptional Enrichment on Creating Data TypesЧтениеCreating Data TypesЗаданиеCreating Data TypesПрограммирование
10PROGRAMMING LANGUAGES8 материалов

LECTURE 10: PROGRAMMING LANGUAGES

Supplements for Lecture 10ЧтениеPopular languagesВидеоJava in contextВидеоObject-oriented programmingВидеоType checkingВидеоFunctional programmingВидеоProgramming LanguagesЗаданиеBar Chart RacerПрограммирование