|
所在平台: Udemy |
课程主页: https://www.udemy.com/course/programacion-en-pascal-y-delphi/
课程评论:没有评论
**Coursera 课程摘要:Pascal 和 Delphi 编程** 本课程旨在从零基础到精通,教授 Pascal 语言和 Lazarus IDE 的应用,以快速创建创新型应用程序。课程将全面涵盖从软件开发的基石到高级概念,并逐步引导学习者掌握不同的编程范式,包括: * **结构化编程:** 学习所有创建程序的基本工具,包括数据输入/输出、变量、数据类型、流程图、顺序与选择、循环、子范围、数组(静态、动态、二维)、调试、枚举、记录、过程、函数以及作用域和参数传递。 * **动态内存与抽象数据类型 (ADT):** 深入学习指针,理解内存管理,并掌握 ADT 的概念,将程序模块化,为面向对象编程打下基础。内容包括指针、内存分配与释放、别名、链表(单、双、循环)、队列、栈以及自定义 ADT。 * **递归与二叉树 ADT:** 探索递归的强大之处,理解其与迭代的区别,并学习如何利用指针创建有用的树形结构,如二叉搜索树和通用树。 * **面向对象编程 (OOP):** 运用所学知识,掌握类、对象、继承、多态、类型转换、抽象类、接口、异常处理以及 UML 基础。 * **图形用户界面 (GUI):** 学习使用 Lazarus 的 LCL 库创建 GUI,包括手动和图形化界面设计、事件处理和错误控制。 * **MySQL 和 SQLite 数据库:** 学习数据库连接、数据持久化设计、SQL 命令、数据库管理工具(MySQL Workbench, SQLite Studio)以及数据到对象的映射。 通过一系列项目、设计和问题解决,学员将培养编程思维,将复杂挑战分解为小部分,并深入理解编程理论。
Este curso te enseñará a programar desde la nada absoluta hasta volverte experto, trabajando en lenguaje Pascal y entorno (IDE) Lazarus, para la creación rápida de aplicaciones innovadoras. Haremos un recorrido completo desde lo más esencial del desarrollo de software hasta lo más avanzado. Pasarás de forma progresiva por los distintos paradigmas de programación, aprendiendo:Programación estructuradaProgramación modularMemoria dinámicaProgramación Orientada a ObjetosProgramación de Interfaces Gráficas de UsuarioBases de Datos SQLA través de este curso el estudiante desarrollará varios proyectos, diseñará sus propios programas, resolverá problemas complejos con pocas herramientas, aprenderá a pensar y a dividir grandes retos en pequeñas partes. Aprenderá también la teoría profunda que todo programador necesita hoy día y la pondrá en práctica inmediatamente a través de los ejercicios y proyectos planteados.El curso se divide en 5 módulos extremadamente poderosos, cada uno de los cuales extiende y amplifica al módulo anterior. En concreto:=== Módulo 1: Programación estructurada ===Un curso de programación en sí mismo, ya que en él el estudiante conocerá todas las herramientas esenciales para crear programas en cualquier lenguaje. Los conceptos son dados de tal forma que el estudiante podrá aplicarlos en cualquier lenguaje moderno a su elección. Los temas que se darán son:Salida estándar de datosEntrada estándarDefinición de variablesTipos primitivos de datosTipos estructurados de datosDiagramas de flujoSecuencia y selección (IF)Repetición iterativa (FOR)Repetición condicional (WHLE y REPEAT - DO...WHILE)SubrangosArreglos lineales estáticosArreglos lineales dinámicosArreglos bidimensionalesDepurador y ejecución paso a pasoEnumerados y registrosProcedimientos y funcionesAlcance de identificadores (locales y globales)Pasaje de parámetros por valor (copia) y por referencia (alias)Archivos de texto y archivos tipadosProyectos finales=== Módulo 2: Memoria dinámica y Tipos Abstractos de datos===Aquí el curso comienza a profundizar en conceptos que muchos programadores desconocen o no dominan (como quienes aprenden Java como primer lenguaje): los punteros. A través de esta herramienta el programador podrá comenzar a crear programas que gestionen la memoria RAM, enfrentándose a los problemas y complejidades que ésto conlleva.Los Tipos Abstractos de Datos (TADs) introducen todo un concepto nuevo de programación: dividir el programa en módulos individuales y trabajar por separado con cada uno. De este modo el estudiante aprenderá a abstraer datos y a modularizar sus programas, todo lo cual es la base fundamental de la Programación Orientada a Objetos que posteriormente será tratada en profundidad.El tipo punteroSolicitud de memoriaLiberación de memoriaAliasReprogramación de proyectos a memoria dinámicaModularización de programasCreación de unidadesDefinición de tipos abstractosImplementación de operacionesUso de TADs en diferentes sistemasLinkediciónListas encadenadas simplesListas doblemente encadenadasListas circularesColasPilasTADs personalizadosReprogramación de proyectos usando TADs=== Módulo 3: Recursividad y el TAD Árbol binario===Una herramienta muy poderosa y a la vez delicada. El estudiante aprenderá a utilizarla, conocerá sus ventajas y desventajas, entenderá su diferencia con la repetición iterativa, y comprenderá cómo resolver problemas complejos con ella.El estudiante además conocerá cómo crear una estructura arborescente a través del uso de punteros, y cómo esta estructura resulta útil para ciertos casos. Es una herramienta muy poderosa que no todo programador domina. Siendo una estructura recursiva, se une perfectamente con la recursividad.Qué es la recursividadDiferencia entre recursividad e iteraciónRecursividad en listas linealesRecursividad en matricesReprogramación de proyectos usando recursividadÁrbol binario de búsquedaÁrbol generalEstructuras arborescentesCaso de estudioProyecto=== Módulo 4: Programación Orientada a Objetos ===El estudiante aplicará ahora todos sus conocimientos para aprender este nuevo paradigma y comenzar a ver las estructuras de los programas como objetos. De este modo logrará modularizar aún más su código y comenzar a diseñar programas de forma más rápida y eficiente.Teoría de objetosClasesCreación y destrucción de objetosHerenciaPolimorfismoCasteoClases abstractas e interfacesBloques try y lanzamiento de excepcionesBeansDiseño básico de softwareBases de UMLProyectos finales=== Módulo 5: Interfaces gráficas de usuario ===Todo lo aprendido en el curso le permitirá al estudiante comprender cómo crear interfaces gráficas de usuario y utilizarlas de forma inteligente, ya que éstas, en cualquier lenguaje moderno, están diseñadas con Objetos (POO). De esta manera el estudiante aprenderá a utilizar la librería LCL de Lazarus, que le permitirá aprender las bases de la creación de interfaces gráficas, manejo de eventos y control de errores.Creación manual de interfaces y componentesCreación gráfica mediante el entorno de desarrolloEjemplos y aplicacionesReprogramación de proyectos para crear interfaces gráficasProyecto final=== Módulo 6: Bases de datos MySQL y SQLite ===Pasaremos a un punto bien distinto de la programación, ya que el estudiante ahora aprenderá a usar dos herramientas concretas de bases de datos, que es algo que va más allá de la programación en sí pero que a la vez es super necesario.Conexión de bases de datos a un programaAnálisis y diseño de persistenciaComandos SQL por consolaHerramientas gráficas MySQL Workbench y SQLite StudioDe tablas a objetos: mapeo de datosMantenimiento de bases de datos