À propos de ce Spécialisation
16,990 consultations récentes

Cours en ligne à 100 %

Commencez dès maintenant et apprenez aux horaires qui vous conviennent.

Planning flexible

Définissez et respectez des dates limites flexibles.

Niveau débutant

Approx. 8 mois pour terminer

5 heures/semaine recommandées

Anglais

Sous-titres : Anglais, Chinois (simplifié), Italien, Portugais (brésilien), Coréen, Espagnol, Turc, Roumain, Grec...

Compétences que vous acquerrez

RecursionAlgorithmsPython ProgrammingDynamic Programming

Cours en ligne à 100 %

Commencez dès maintenant et apprenez aux horaires qui vous conviennent.

Planning flexible

Définissez et respectez des dates limites flexibles.

Niveau débutant

Approx. 8 mois pour terminer

5 heures/semaine recommandées

Anglais

Sous-titres : Anglais, Chinois (simplifié), Italien, Portugais (brésilien), Coréen, Espagnol, Turc, Roumain, Grec...

Fonctionnement du Spécialisation

Suivez les cours

Une Spécialisation Coursera est une série de cours axés sur la maîtrise d'une compétence. Pour commencer, inscrivez-vous directement à la Spécialisation ou passez en revue ses cours et choisissez celui par lequel vous souhaitez commencer. Lorsque vous vous abonnez à un cours faisant partie d'une Spécialisation, vous êtes automatiquement abonné(e) à la Spécialisation complète. Il est possible de terminer seulement un cours : vous pouvez suspendre votre formation ou résilier votre abonnement à tout moment. Rendez-vous sur votre tableau de bord d'étudiant pour suivre vos inscriptions aux cours et vos progrès.

Projet pratique

Chaque Spécialisation inclut un projet pratique. Vous devez réussir le(s) projet(s) pour terminer la Spécialisation et obtenir votre Certificat. Si la Spécialisation inclut un cours dédié au projet pratique, vous devrez terminer tous les autres cours avant de pouvoir le commencer.

Obtenir un Certificat

Lorsque vous aurez terminé tous les cours et le projet pratique, vous obtiendrez un Certificat que vous pourrez partager avec des employeurs éventuels et votre réseau professionnel.

how it works

Cette Spécialisation compte 7 cours

Cours1

An Introduction to Interactive Programming in Python (Part 1)

4.8
2,230 notes
657 Avis

This two-part course is designed to help students with very little or no computing background learn the basics of building simple interactive applications. Our language of choice, Python, is an easy-to learn, high-level computer language that is used in many of the computational courses offered on Coursera. To make learning Python easy, we have developed a new browser-based programming environment that makes developing interactive applications in Python simple. These applications will involve windows whose contents are graphical and respond to buttons, the keyboard and the mouse. In part 1 of this course, we will introduce the basic elements of programming (such as expressions, conditionals, and functions) and then use these elements to create simple interactive applications such as a digital stopwatch. Part 1 of this class will culminate in building a version of the classic arcade game "Pong".

...
Cours2

An Introduction to Interactive Programming in Python (Part 2)

4.9
865 notes
223 Avis

This two-part course is designed to help students with very little or no computing background learn the basics of building simple interactive applications. Our language of choice, Python, is an easy-to learn, high-level computer language that is used in many of the computational courses offered on Coursera. To make learning Python easy, we have developed a new browser-based programming environment that makes developing interactive applications in Python simple. These applications will involve windows whose contents are graphical and respond to buttons, the keyboard and the mouse. In part 2 of this course, we will introduce more elements of programming (such as list, dictionaries, and loops) and then use these elements to create games such as Blackjack. Part 1 of this class will culminate in building a version of the classic arcade game "Asteroids". Upon completing this course, you will be able to write small, but interesting Python programs. The next course in the specialization will begin to introduce a more principled approach to writing programs and solving computational problems that will allow you to write larger and more complex programs.

...
Cours3

Principles of Computing (Part 1)

4.8
441 notes
73 Avis

This two-part course builds upon the programming skills that you learned in our Introduction to Interactive Programming in Python course. We will augment those skills with both important programming practices and critical mathematical problem solving skills. These skills underlie larger scale computational problem solving and programming. The main focus of the class will be programming weekly mini-projects in Python that build upon the mathematical and programming principles that are taught in the class. To keep the class fun and engaging, many of the projects will involve working with strategy-based games. In part 1 of this course, the programming aspect of the class will focus on coding standards and testing. The mathematical portion of the class will focus on probability, combinatorics, and counting with an eye towards practical applications of these concepts in Computer Science. Recommended Background - Students should be comfortable writing small (100+ line) programs in Python using constructs such as lists, dictionaries and classes and also have a high-school math background that includes algebra and pre-calculus.

...
Cours4

Principles of Computing (Part 2)

4.8
267 notes
41 Avis

This two-part course introduces the basic mathematical and programming principles that underlie much of Computer Science. Understanding these principles is crucial to the process of creating efficient and well-structured solutions for computational problems. To get hands-on experience working with these concepts, we will use the Python programming language. The main focus of the class will be weekly mini-projects that build upon the mathematical and programming principles that are taught in the class. To keep the class fun and engaging, many of the projects will involve working with strategy-based games. In part 2 of this course, the programming portion of the class will focus on concepts such as recursion, assertions, and invariants. The mathematical portion of the class will focus on searching, sorting, and recursive data structures. Upon completing this course, you will have a solid foundation in the principles of computation and programming. This will prepare you for the next course in the specialization, which will begin to introduce a structured approach to developing and analyzing algorithms. Developing such algorithmic thinking skills will be critical to writing large scale software and solving real world computational problems.

...
Cours5

Algorithmic Thinking (Part 1)

4.7
252 notes
48 Avis

Experienced Computer Scientists analyze and solve computational problems at a level of abstraction that is beyond that of any particular programming language. This two-part course builds on the principles that you learned in our Principles of Computing course and is designed to train students in the mathematical concepts and process of "Algorithmic Thinking", allowing them to build simpler, more efficient solutions to real-world computational problems. In part 1 of this course, we will study the notion of algorithmic efficiency and consider its application to several problems from graph theory. As the central part of the course, students will implement several important graph algorithms in Python and then use these algorithms to analyze two large real-world data sets. The main focus of these tasks is to understand interaction between the algorithms and the structure of the data sets being analyzed by these algorithms. Recommended Background - Students should be comfortable writing intermediate size (300+ line) programs in Python and have a basic understanding of searching, sorting, and recursion. Students should also have a solid math background that includes algebra, pre-calculus and a familiarity with the math concepts covered in "Principles of Computing".

...
Cours6

Réflexion algorithmique (partie 2)

4.7
154 notes
28 Avis

Experienced Computer Scientists analyze and solve computational problems at a level of abstraction that is beyond that of any particular programming language. This two-part class is designed to train students in the mathematical concepts and process of "Algorithmic Thinking", allowing them to build simpler, more efficient solutions to computational problems. In part 2 of this course, we will study advanced algorithmic techniques such as divide-and-conquer and dynamic programming. As the central part of the course, students will implement several algorithms in Python that incorporate these techniques and then use these algorithms to analyze two large real-world data sets. The main focus of these tasks is to understand interaction between the algorithms and the structure of the data sets being analyzed by these algorithms. Once students have completed this class, they will have both the mathematical and programming skills to analyze, design, and program solutions to a wide range of computational problems. While this class will use Python as its vehicle of choice to practice Algorithmic Thinking, the concepts that you will learn in this class transcend any particular programming language.

...
Cours7

The Fundamentals of Computing Capstone Exam

4.8
90 notes
18 Avis

While most specializations on Coursera conclude with a project-based course, students in the "Fundamentals of Computing" specialization have completed more than 20+ projects during the first six courses of the specialization. Given that much of the material in these courses is reused from session to session, our goal in this capstone class is to provide a conclusion to the specialization that allows each student an opportunity to demonstrate their individual mastery of the material in the specialization. With this objective in mind, the focus in this Capstone class will be an exam whose questions are updated periodically. This approach is designed to help insure that each student is solving the exam problems on his/her own without outside help. For students that have done their own work, we do not anticipate that the exam will be particularly hard. However, those students who have relied too heavily on outside help in previous classes may have a difficult time. We believe that this approach will increase the value of the Certificate for this specialization.

...

Enseignants

Avatar

Luay Nakhleh

Associate Professor
Computer Science; Biochemistry and Cell Biology
Avatar

Joe Warren

Professor
Computer Science
Avatar

Scott Rixner

Professor
Computer Science
Avatar

John Greiner

Lecturer
Department of Computer Science
Avatar

Stephen Wong

Lecturer
Computer Science

À propos de Université de Rice

Rice University is consistently ranked among the top 20 universities in the U.S. and the top 100 in the world. Rice has highly respected schools of Architecture, Business, Continuing Studies, Engineering, Humanities, Music, Natural Sciences and Social Sciences and is home to the Baker Institute for Public Policy....

Foire Aux Questions

  • Oui ! Pour commencer, cliquez sur la carte du cours qui vous intéresse et inscrivez-vous. Vous pouvez vous inscrire et terminer le cours pour obtenir un Certificat partageable, ou vous pouvez accéder au cours en auditeur libre afin d'en visualiser gratuitement le contenu. Si vous vous abonnez à un cours faisant partie d'une Spécialisation, vous êtes automatiquement abonné(e) à la Spécialisation complète. Visitez votre tableau de bord d'étudiant(e) pour suivre vos progrès.

  • Ce cours est entièrement en ligne : vous n'avez donc pas besoin de vous présenter physiquement dans une salle de classe. Vous pouvez accéder à vos vidéos de cours, lectures et devoirs en tout temps et en tout lieu, par l'intermédiaire du Web ou de votre appareil mobile.

  • The Specialization is designed to be completed in 6-9 months.

  • Knowledge of high school mathematics is required. No previous programming knowledge is required.

  • We strongly encourage students to take the courses in the Specialization in the listed order. Each class builds on the previous classes.

  • No.

  • You will be able to analyze a range of interesting application problems and write moderate-size Python programs (300-500 lines) that solve these problems.

  • This Specialization is based on the freshman Computer Science curriculum at one of the top-ranked universities in the world. The material is designed to be fun and challenging while helping you gain the skills necessary to be successful in advanced Computer Science classes.

D'autres questions ? Visitez le Centre d'Aide pour les Etudiants.