Introducción a Java (Coursera)

Introducción a Java (Coursera)

Me llamo Elisa Viso y una de mis pasiones es la de programar y enseñar a programar. El lenguaje Java es uno de los que más me ha gustado en mis 45 años que llevo programando. Si bien te podrá parecer un poco complicado empezar a programar en Java, una vez que cubras los conceptos básicos verás qué rápido se avanza. Java, como todos los lenguajes de programación bien hechos, te dejan hacer cualquier cosa (algunas de ellas con más trabajo que en otros lenguajes y otras casi directamente de cómo piensas la solución al problema).

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

Pero una vez que pasas esa primera etapa, programar te va a hacer sentir casi como un sacerdote de un culto extraño, que puede hacer que las cosas sucedan a placer, se vean exactamente como tú quieres y obtengas una satisfacción enorme de haber construido algo que puedes ver y repartirlo para que otros lo usen.
Este es un curso introductorio a la programación en Java. Como Java es un lenguaje orientado a objetos de propósito general, revisaremos los conceptos básicos del lenguaje como clases e interfaces. Veremos los ingredientes básicos de una clase como constantes y variables, funciones (métodos), y cómo organizar estos ingredientes dentro de una clase. También veremos la utilización de clases de las bibliotecas de Java.
En el primer módulo revisaremos el concepto de orientación a objetos aplicándolo en la vida real.
En el segundo módulo revisamos una herramienta de diseño orientado a objetos, llamada tarjetas de responsabilidades, y a partir de estas últimas diseñamos los encabezados de los distintos servicios que se van a dar, codificándolos en una interfaz.
En el tercer módulo terminaremos la construcción de la clase que corresponde a este problema, aclarando términos comunes en Java, revisando la sintaxis del lenguaje y la autodocumentación con la que cuenta.
En el cuarto módulo utilizaremos lo que ya tenemos para construir una clase más compleja que proporciones arreglos de objetos de la clase que ya tenemos y examinando con bastante profundidad tanto el esquema conceptual de los arreglos como su implementación en el modelo de memoria de Java.
En el quinto y último módulo profundizaremos en el uso de repetición en ejecución y, no puede faltar, los distintos tipos de ejecución condicional que provee el lenguaje.
En este curso, ofrecido por la UNAM, se proveerá al participante con conocimientos del lenguaje Java que le permitirán resolver una amplia gama de problemas con este lenguaje. Aprenderá a:
• Plantear la solución de un problema utilizando orientación a objetos.
• Programar la solución de los problemas utilizando las siguientes características del lenguaje Java:
-Interfaces y clases
-Métodos constructores de objetos, de acceso, de actualización, de implementación y auxiliares.
-Atributos y variables locales de tipos primitivos o de clase.
-Utilización de clases de biblioteca.
-Esquemas de ejecución como la repetición y la selección de enunciados
-Arreglos

Syllabus

WEEK 1
El proceso de programación
En este módulo describiremos la metodología de orientación a objetos utilizando sistemas de la vida real que incorporen los conceptos importantes de este metodología.

WEEK 2
Programación básica en Java
En este módulo aprenderás los ingredientes y sintaxis de las clases e interfaces de Java, implementando el recurso principal que son las tarjetas de responsabilidades.

WEEK 3
Avanzando en la programación de Java
En este módulo aprenderás cómo se implementan contratos (interfaces) y cómo usar clases que ya fueron definidas y compiladas.

WEEK 4
Arreglos y su manipulación
En este módulo presentaremos una visión completa del papel que juegan los arreglos en la programación, así como su abstracción y representación en memoria.

WEEK 5
Interacción con el usuario
Este módulo ahonda más en las relaciones entre los arreglos que utilizamos para implementar el catálogo, además de ofrecer enunciados condicionales que permiten trabajar usando un menú que se presenta al usuario.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Development of Real-Time Systems (Coursera) Coursera
EIT Digital

Development of Real-Time Systems (Coursera)

This course is intended for the Master's student and computer engineer who likes practical programming and problem solving! After completing this course, you will have the knowledge to plan and set-up a real-time system both on paper and in practice. The course centers around the problem of achieving timing correctness in embedded systems, which means to guarantee that the system reacts within the real-time requirements.

Jun 29th 2026
5-12 Weeks
Introduction to HTML5 (Coursera) Coursera
University of Michigan

Introduction to HTML5 (Coursera)

Thanks to a growing number of software programs, it seems as if anyone can make a webpage. But what if you actually want to understand how the page was created? There are great textbooks and online resources for learning web design, but most of those resources require some background knowledge. This course is designed to help the novice who wants to gain confidence and knowledge. We will explore the theory (what actually happens when you click on a link on a webpage?), the practical (what do I need to know to make my own page?), and the overlooked (I have a page, what do I do now?).

Jun 29th 2026
3 Weeks
Cloud Computing Concepts: Part 2 (Coursera) Coursera
University of Illinois at Urbana-Champaign

Cloud Computing Concepts: Part 2 (Coursera)

Cloud computing systems today, whether open-source or used inside companies, are built using a common set of core techniques, algorithms, and design philosophies—all centered around distributed systems. Learn about such fundamental distributed computing "concepts" for cloud computing. Some of these concepts include: Clouds, MapReduce, key-value stores, Classical precursors, Widely-used algorithms, Classical algorithms, Scalability, Trending areas, And more!

Jun 29th 2026
5-12 Weeks
Programando con Java para aplicaciones Android (Coursera) Coursera
Universidad Nacional Autónoma de México

Programando con Java para aplicaciones Android (Coursera)

¡Aprende lo mejor de Java para el desarrollo en Android! Descubre lo necesario para construir tus aplicaciones móviles de una forma sencilla, objetiva y práctica. A lo largo del curso, verás diversos ejemplos para crear tu primer Hola Mundo y practicarás la programación orientada a objetos.

Jun 29th 2026
3 Weeks
Programming Languages, Part C (Coursera) Coursera
University of Washington

Programming Languages, Part C (Coursera)

This course is an introduction to the basic concepts of programming languages, with a strong emphasis on functional programming. The course uses the languages ML, Racket, and Ruby as vehicles for teaching the concepts, but the real intent is to teach enough about how any language “fits together” to make you more effective programming in any language -- and in learning new ones.

Jun 29th 2026
3 Weeks
VLSI CAD Part I: Logic (Coursera) Coursera
University of Illinois at Urbana-Champaign

VLSI CAD Part I: Logic (Coursera)

A modern VLSI chip has a zillion parts -- logic, control, memory, interconnect, etc. How do we design these complex chips? Answer: CAD software tools. Learn how to build thesA modern VLSI chip is a remarkably complex beast: billions of transistors, millions of logic gates deployed for computation and control, big blocks of memory, embedded blocks of pre-designed functions designed by third parties (called “intellectual property” or IP blocks). How do people manage to design these complicated chips? Answer: a sequence of computer aided design (CAD) tools takes an abstract description of the chip, and refines it step-wise to a final design.

Jun 29th 2026
5-12 Weeks
Data Structures and Performance (Coursera) Coursera
University of California, San Diego

Data Structures and Performance (Coursera)

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? This is an intermediate Java course. We recommend this course to learners who have previous experience in software development or a background in computer science, and in particular, we recommend that you have taken the first course in this specialization (which also requires some previous experience with Java).

Jun 29th 2026
5-12 Weeks
Java for Android (Coursera) Coursera
Vanderbilt University

Java for Android (Coursera)

This MOOC teaches you how to program core features and classes from the Java programming language that are used in Android, which is the dominant platform for developing and deploying mobile device apps. In particular, this MOOC covers key Java programming language features that control the flow of execution through an app (such as Java’s various looping constructs and conditional statements), enable access to structured data (such as Java's built-in arrays and common classes in the Java Collections Framework, such as ArrayList and HashMap), group related operations and data into classes and interfaces (such as Java's primitive and user-defined types, fields, methods, generic parameters, and exceptions), customize the behavior of existing classes via inheritance and polymorphism (such as subclassing and overriding virtual methods).

Jun 30th 2026
4 Weeks
Desenvolvimento Ágil com Java Avançado (Coursera) Coursera
Instituto Tecnológico de Aeronáutica

Desenvolvimento Ágil com Java Avançado (Coursera)

Neste curso, assumimos que você já sabe projetar e desenvolver programas mais complexos em Java, graças às boas práticas e princípios orientados a objetos e TDD exercitados nos cursos anteriores; mas você talvez não se sinta ainda confortável em projetar programas para Web e com dados armazenados em banco de dados, bem como em aplicar conceitos mais avançados de Java. O objetivo deste curso é enriquecer sua experiência com conceitos avançados de Java, programação de aplicações Web e acesso a banco de dados no contexto de modelagem ágil.

Jun 29th 2026
4 Weeks
Java程序设计 (Coursera) Coursera
Peking University

Java程序设计 (Coursera)

《Java程序设计》课程是使用Java语言进行应用程序设计的课程,针对各专业的大学本科生开设。课程的主要目标有三: 一、掌握Java语言的语法,能够较为深入理解Java语言机制,掌握Java语言面向对象的特点。 二、掌握JavaSE中基本的API,掌握在集合、线程、输入输出、图形用户界面、网络等方面的应用。三、能够编写有一定规模的应用程序,养成良好的编程习惯,会使用重构、设计模式、单元测试、日志、质量管理工具提高代码的质量。 对于学过“计算机基础、计算概论或C语言的学生”尤为适用。

Jun 29th 2026
5-12 Weeks