FreeCourse Logo
FreeCourse.io
Verified CouponsFree CoursesJobsBlog
Categories
Home/Courses/Aprende a programar desde cero con C# de Microsoft .NET
Aprende a programar desde cero con C# de Microsoft .NET
Development100% OFF

Aprende a programar desde cero con C# de Microsoft .NET

Udemy Instructor
4.4(37.6K students)
Self-paced
All Levels

About this course

En este curso aprende a programar con C#, uno de los lenguajes de programación mas sencillos y a su vez robustos que existentes actualmente. Además C# cuenta con el respaldo de Microsoft al ser parte de .NETNOTA: Este curso se actualiza constantemente y en este momento ya está actualizado a .NET 5 y .NET 6También aprenderás de la mano con Visual Studio, uno de los IDE más potentes en la actualidad, que proporciona las mejores herramientas en su categoría para cualquier desarrollador. Además permite simplificar muchas tareas que en otros lenguajes y entornos de programación podría ser hasta tortuoso.

Visual Studio nos permite desarrollar con un conjunto de herramientas completo, desde el diseño inicial hasta la implementación final.Irás paso a paso conociendo desde cero el lenguaje y los conceptos de programación necesarios para convertirte en un buen programador, con bases sólidas y logrando posteriormente incluso penetrar en cualquier otro lenguaje o plataforma. Si ya cuentas con las bases de programación, podrás brincarte los fundamentos y pasar directo a la acción, éste curso esta diseñado para iniciar en el nivel que te encuentras.Tambien aprende a crear excelentes aplicaciones de escritorio con Windows Presentation Fundation (WPF), la mejor plataforma pra crear aplicaciónes llamativas sobre Windows.El curso incluirá los siguientes temas de estudio :Fundamentosi. Introducción.Presentaciónii.

Introducción a .NET y Visual StudioObjetivoIntroducción a .NET FrameworkIntroducción a Visual StudioPráctica: Instalación de Visual StudioSDK de .NETCreación de proyectos con Visual StudioPráctica: Analizando un proyecto de consolaiii. Introducción a los conceptos básicos de programaciónLógica de programaciónProcesamiento y almacenamiento de datos informáticosHardwareSoftwareCiclo de vida de la aplicaciónTipos de aplicaciónPráctica: Tipos de aplicaciónCompilación de códigoPráctica: CompilaciónResumeniv. Conceptos básicos del lenguaje de programaciónIntroducciónSintaxisPráctica: SintaxisTipos de datosVariables y constantesPráctica: Tipos, variables y constantesResumenv.

Flujo de programaIntroducción a los conceptos de programación estructuradaIntroducción a la ramificaciónFuncionesPractica: Aplicando programación estructuradavi. Algoritmos y estructuras de datosAlgoritmosEstructura de datosPráctica. Matrices.Práctica.

Colas y pilas.Practica. ListasPráctica. Otras colecciones.vii.

Manejo de errores y depuraciónIntroducción a los errores del programaIntroducción al manejo estructurado de erroresPráctica. Depuración con Visual Studio.Práctica. Try Catch Finally.viii.

Introducción a la programación orientada a objetosIntroducción a estructuras y clases.ClasesEncapsulaciónHerenciaEnumeracionesPráctica. Clases, encapsulación y herenciaPráctica. Clases, encapsulación y herencia.

ContinuaciónPolimorfismoVistazo a la biblioteca de clases base de .NETTipo Recordix. Programación Entrada/Salida fundamentalUso de la E/S de la consolaPráctica. Usando E/S en consolaUsando E/S en archivosx.

Rendimiento de aplicaciones y gestión de memoriaTipos de valor vs tipos de referenciaTipos de conversión - ImplícitasTipos de conversión – ExplícitasTipos de conversión – System.ConvertEl recolector de elementos no utilizadosINTERMEDIO-AVANZADOxi. Implementando multiprocesamiento y procesamiento asíncronoUsando Delegados y Lambda fácilmenteEntendiendo hilos (Threads)Usando la clase ThreadUsando la clase Thread - ParameterizedThreadStartUsando la clase Thread – ThreadStaticUsando la clase Thread – ThreadLocalUsando ThreadPoolUsando TareasUsando Tareas – ContinueWithUsando Tareas – TaskFactoryUsando Tareas - WaitAllUsando la clase PARALLELUsando ASYNC y AWAITUsando ASYNC y AWAIT – EcalabilidadUsando ASYNC y AWAIT - SynchronizationContextUsando Parallel Language Integrated Query (PLINQ)Usando colecciones concurrentesxii. Administrando subprocesos múltiples (multithreading)Objetivo de la sección.Sincronizando recursosLa clase VolatileLa clase InterlockedCancelando tareasxiii.

Crear e implementar eventos (EVENTS) y devoluciones de llamada (CALLBACK).Objetivo de la sección.Entendiendo delegados (DELEGATES)Usando expresiones LAMBDAUsando eventos (EVENTS)xiv. Usando Tipos en modo avanzadoObjetivo de la sección.Creando enumeracionesUsando tipos genéricos (GENERICS)Extendiendo tipos existentesUsando tipos dinámicosxv. Programación orientada a objetos avanzadaObjetivo de la sección.Diseñando e implementando interfacesCreando y Usando clases basePráctica: Interfaces y Clases BaseClases base abstractas y selladasPrincipio de sustitución de LiskovImplementando interfaces estándar de .NETPráctica: Usando IDisposable.xvi.

Utilizando ReflectionObjetivo de la secciónCreando y usando atributosEjercicio: Usando atributos localmenteUsando ReflectionUsando CodeDOM y expresiones Lambda para generar código.xvii. Usando Strings en modo avanzado.Objetivo Usando strings en .NETManipulando StringsBuscando y enumerando StringsFormateando StringsEjercicio. Formateo de Stringsxviii.

Validando la entrada de aplicaciónObjetivo¿Por qué es importante validar las entradas de una aplicación?Usando Parse, TryParse y ConvertUsando Expresiones RegularesValidando JSON y XMLEjercicio. Validando JSONxix. Ejecutando encriptación simétrica y asimétricaObjetivoUsando encriptación simétrica y asimétricaTrabajando con encriptación en .NETUsando HashingAdministrando y creando certificados.Usando SecureStringxx.

Administrando ensamblados (ASSEMBLIES)Objetivo¿Qué es un ensamblado?Firmando ensamblados usando STRONG NAMEEl Global Assembly Cache (GAC)Versionando ensambladosxxi. Depuración (DEBUG) avanzadaObjetivo Configuración de compilaciónCrear y administrar directivas de compilaciónGestión de archivos PDB y símbolosxxii. Implementando el diagnóstico en una aplicación.ObjetivoLOGIN y TRACING 1LOGIN y TRACING 2Perfilando tu aplicaciónCreando y monitoreando contadores de rendimiento.xxiii.

Entrada/Salida avanzadaObjetivoArchivos - Usando DrivesArchivos - Usando DirectoriosArchivos - Usando ArchivosArchivos - Usando PathsEl FILE SYSTEM no es solo para tíComunicándonos a través de la RED.Implementando E/S asíncronaxxiv. Consumiendo datosObjetivo¿Que es una base de datos?Instalando Sql ServerInstalando Microsoft Sql Server Management StudioTrabajando con base de datos - ConexiónTrabajando con base de datos - ConsultaTrabajando con base de datos - ActualizaciónTrabajando con base de datos - ParámetrosTrabajando con base de datos - TransaccionesTrabajando con base de datos - ORM - Entity FrameworkUsando WEB SERVICE - WCFConsumiendo XMLConsumiendo XML - Clases de .NETConsumiendo JSONxxv. Consultando y manipulando datos y objetos usando LINQObjetivoConceptos LINQ: Explicit TypingConceptos LINQ: Sintaxis de inicialización de objetosConceptos LINQ: Expresiones LAMBDAConceptos LINQ: Métodos de extensiónConceptos LINQ: Tipos anónimosUsando queries LINQOperadores estándar de LINQ¿Cómo funciona LINQ?Usando LINQ para XMLxxvi.

Serializar y deserializar datosObjetivo Usando serialización y deserializaciónUsando XmlSerializerUsando serialización binariaUsando DataContractUsando JSON SerializerWINDOWS PRESENTATION FUNDATION (WPF) PARA PRINCIPIANTESxxvii. Introducción a WPFObjetivoMi primer aplicación WPF¿Qué es WPF?XAMLCodigo subyacenteControlesLayoutsData bindingGráficos y animaciónTipografía y textoPersonalización - Content ModelPersonalización - Plantillas y TriggersPersonalización - EstilosPersonalización - Controlesxxviii. XAMLObjetivo¿Qué es XAML?Resumen de la sintaxis XAML Caso y espacio en blanco en XAMLExtensiones de marcadoConvertidores de tipoElementos raíz XAML y espacios de nombres XAMLPrefijos personalizados y tipos personalizados en XAMLEventos y código subyacente XAMLElementos con nombre XAMLPropiedades adjuntas y eventos adjuntosTipos base y XAMLSeguridad XAMLCargando XAML desde el códigoxxix.

Code Behind en WPFObjetivo¿Qué es Code Behind?Requisitos de código subyacente, controlador de eventos y clase parcial en WPFx: Código y Limitaciones del código en líneaxxx. WPF: WindowsObjetivoLa clase WindowImplementando WindowAbriendo una ventanaVentana propietariaActivación de una ventanaCerrar una ventanaResumen ciclo de vida de una ventanaUbicación y tamaño de una ventanaEstado de una ventanaApariencia de una ventanaxxxi WPF: Cuadros de diálogo.Cuadros de mensaje Cuadros de diálogo comunes Cuadros de diálogo personalizados Elementos de la interfaz de usuario que abren un cuadro de diálogo Devolver un resultado

Skills you'll gain

Programming LanguagesSpanish

Available Coupons

Loading...

Course Information

Level: All Levels

Suitable for learners at this level

Duration: Self-paced

Total course content

Instructor: Udemy Instructor

Expert course creator

This course includes:

  • 📹Video lectures
  • 📄Downloadable resources
  • 📱Mobile & desktop access
  • 🎓Certificate of completion
  • ♾️Lifetime access
$0$103.99

Save $103.99 today!

Enroll Now - Free

Redirects to Udemy • Limited free enrollments

Share this course

https://freecourse.io/courses/aprende-a-programar-desde-cero-con-c-sharp-de-microsoft-dot-net

You May Also Like

Explore more courses similar to this one

JavaScript Coding Interview Questions [with SOLUTIONS]
Development
0% OFF

JavaScript Coding Interview Questions [with SOLUTIONS]

Udemy Instructor

JavaScript Interview Coding Questions and Answers (Solution Code with Detailed Explanations)Are you preparing for a JavaScript coding interview and seeking to achieve a level of mastery that allows you to confidently address challenging, nuanced questions? This course is meticulously crafted to provide you with a profound competitive advantage, irrespective of your current level of expertise.In this course, you will engage in hands-on practice with a carefully curated set of real-world JavaScript interview questions, enriched with comprehensive hints, step-by-step solutions, and in-depth theoretical explanations. Whether you are an aspiring developer preparing for your initial technical interview or a seasoned professional aiming to refine your problem-solving acumen, this course offers deep insights and practical skills through an extensive range of problems and detailed analytical walkthroughs.Key Features of This Course:Detailed Hints for Problem Solving: Before delving directly into the solution, you will receive strategic hints designed to enhance your cognitive approach, guiding you towards effective problem-solving independently. These hints are purposefully constructed to bolster your logical reasoning capabilities and ensure that you develop the analytical mindset necessary for complex problem breakdown. The course aims to foster independent critical thinking, encouraging you to dissect questions into modular components.Solution Code with Step-by-Step Explanation: Each question is accompanied by a fully detailed solution, articulated step-by-step to ensure deep conceptual understanding. This pedagogical approach transcends rote memorization of code—rather, it equips you with the rationale behind each line of implementation. You will cultivate the ability to think like a sophisticated JavaScript engineer, an essential skill that will significantly distinguish you from other candidates. The granular dissection of every solution aims to provide a holistic understanding of the underlying concepts, core principles, and design patterns that are prevalent in JavaScript technical interviews.Comprehensive Coverage of Common Interview Questions: This course offers an exhaustive collection of questions frequently posed by hiring managers. It spans fundamental JavaScript concepts, such as closures, promises, and callback functions, extending to advanced algorithmic challenges and data structure intricacies. Additionally, you will encounter nuanced questions that probe your understanding of JavaScript's subtleties and more sophisticated features. Such comprehensive exposure prepares you for the full spectrum of questions you are likely to face during a rigorous technical interview.Mastery of Problem-Solving Methodologies: Beyond merely providing answers, this course places a pronounced emphasis on developing and honing effective problem-solving strategies. You will gain insight into multiple potential approaches to each challenge, along with an analysis of the comparative advantages and limitations inherent to each method. This perspective not only prepares you for interview scenarios but also significantly enhances your overall software development prowess, enabling you to produce cleaner, more efficient, and maintainable code in practical settings.Deep Dive into JavaScript Fundamentals: This course eschews superficial coverage in favor of an in-depth exploration of JavaScript's foundational concepts as well as its advanced features. Mastering these core topics provides the necessary framework to approach even the most challenging interview questions with composure and clarity. We delve into critical subjects such as hoisting, closure behavior, the intricacies of the event loop, and asynchronous programming paradigms to ensure that you are fully equipped for any technical inquiry.Why This Course Will Benefit You:Confidence Boost for Complex Scenarios: The structured combination of practice questions, strategic hints, and exhaustive solution breakdowns empowers you to approach both straightforward and complex interview scenarios with composure. By internalizing these skills, you will walk into interviews equipped with the tools to address any coding challenge methodically and confidently.Think Like an Expert Developer: This course emphasizes the importance of process over mere results. Gaining a thorough understanding of the rationale—"the why"—behind every solution is crucial to cultivating a comprehensive mastery of JavaScript. You will learn how to systematically deconstruct problems, apply logical frameworks, and think in a manner akin to an experienced software developer. This ability to navigate novel and unfamiliar challenges will be an invaluable asset in both interviews and professional environments.Hands-On, Realistic Practice: Engage with a wide array of challenges that accurately simulate real interview environments. From algorithmic exercises to practical problem-solving drills, every component of this course is tailored to mirror the demands of a technical interview. This experiential approach will refine your technical competencies and prepare you to thrive under the inherent pressures of coding interviews.Effective Coding Patterns and Best Practices: Throughout the course, you will be introduced to essential coding patterns and best practices that will not only enhance the efficiency and readability of your code but also align with what interviewers seek in candidates. Developing a familiarity with these patterns ensures that you write code that is both functionally correct and optimally efficient—characteristics that are crucial in any technical interview or software development role.Application to Real-World Scenarios: The skills and concepts addressed in this course are not confined to interview contexts but are directly transferable to real-world development tasks. By understanding the internal mechanics of JavaScript and consistently applying best practices, you will lay the groundwork for a robust career in software development, well beyond the interview room.Whether you are aspiring to secure a position at a leading tech company or aiming to enhance your proficiency in JavaScript for your current role, this course offers a comprehensive framework to excel in JavaScript technical interviews. You will emerge equipped with a nuanced understanding that will allow you to tackle problems of varying difficulty, articulate your thought process clearly, and impress prospective employers with insightful and well-formulated solutions.Take command of your professional development and lay the foundation for success in your software engineering career. Enroll today and begin your journey toward mastering JavaScript interviews!

0.0•3.8K•Self-paced
FREE$95.99
Enroll
250+ DSA Interview Questions JavaScript Coding - FAANG Ready
Development
0% OFF

250+ DSA Interview Questions JavaScript Coding - FAANG Ready

Udemy Instructor

This course contains the use of artificial intelligence. DSA Interview Questions JavaScript Coding - FAANG Ready is a complete DSA interview preparation course with 250+ coding problems solved in JavaScript. Every single question you'll find here is the type that gets asked at companies like Google, Amazon, Microsoft, Meta, and top product startups.We don't just throw problems at you. We teach you the thinking process behind every solution — why this approach, why not that one, what's the time complexity, what's the space complexity, and most importantly — how would you explain this in a real interview.What makes this different from other DSA courses?Honestly, most DSA courses either go too theoretical or just show you the answer without explaining the thought process. This course does neither.Here's what you actually get:Every problem is solved in JavaScript — not Java, not Python. Real JS syntax, real JS methods, things you already know.Problems are organized by patterns, not randomly. You'll do all Sliding Window problems together, all Two Pointer problems together. This is how your brain builds pattern recognition.We cover 14 topics — Arrays, Strings, Linked Lists, Stacks, Queues, Trees, Graphs, Heaps, Tries, Recursion, Backtracking, Dynamic Programming, Sorting, and Bit Manipulation.Each solution comes with a step-by-step explanation — not just code dumped on the screen.We discuss multiple approaches for most problems — brute force first, then optimized. Because that's how real interviews go.By the time you finish this course, you'll be able to look at any DSA problem and immediately identify which pattern to apply. You'll walk into your next technical interview with actual confidence — not the fake kind where you hope the interviewer asks something you memorized, but the real kind where you know you can figure it out even if you've never seen that exact problem before.You'll also have solved 250+ problems in JavaScript — which means your problem-solving muscle will be strong. Companies like Google and Amazon don't expect you to have seen every problem. They want to see how you think. This course trains exactly that.Topics Covered:Arrays & StringsLinked ListsStacks & QueuesTrees & Binary Search TreesGraphs (BFS, DFS, Topological Sort)Dynamic Programming (Knapsack, LCS, LIS and more)Recursion & BacktrackingHeaps & Priority QueuesTriesSorting & Searching (Binary Search patterns)Greedy AlgorithmsBit ManipulationMath & Number Theory

0.0•131•Self-paced
FREE$97.99
Enroll
400 Data Science Interview Questions with Answers 2026
Development
0% OFF

400 Data Science Interview Questions with Answers 2026

Udemy Instructor

Data Science Interview Practice Questions is my comprehensive toolkit designed to bridge the gap between theoretical knowledge and the high-pressure environment of technical screenings. I’ve meticulously crafted this question bank to mirror the actual challenges you'll face at top-tier tech companies, covering everything from fundamental Python data structures and SQL window functions to the nuances of MLOps and ethical AI system design. Whether you are a fresh graduate aiming for your first role or a senior lead refreshing your knowledge on Transformers and deployment pipelines, I provide deep-dive explanations for every single option to ensure you don't just memorize answers, but actually master the underlying logic. By focusing on real-world business problem solving and rigorous statistical foundations, I’ve built this course to be the final hurdle you clear before landing your dream offer in the data space.Exam Domains & Sample TopicsPython, SQL & Data Wrangling: NumPy, Pandas, Joins, Window Functions, and Performance Optimization.Statistics, Probability & EDA: Hypothesis Testing, A/B Testing, Confidence Intervals, and Data Viz.Machine Learning & Model Building: Supervised/Unsupervised Learning, Feature Engineering, and Evaluation Metrics.Advanced ML, NLP & MLOps: XGBoost, Transformers, Neural Networks, Docker, and MLflow.System Design & Responsible AI: Project Scalability, Ethics, Privacy, and Stakeholder Communication.Sample Practice QuestionsQuestion 1: In the context of the Bias-Variance tradeoff, how does increasing the complexity of a model (e.g., increasing the depth of a Decision Tree) typically affect the error components?A) Both Bias and Variance increase.B) Bias increases while Variance decreases.C) Bias decreases while Variance increases.D) Both Bias and Variance decrease.E) Bias remains constant while Variance increases.F) Variance remains constant while Bias decreases.Correct Answer: COverall Explanation: The Bias-Variance tradeoff describes the relationship between a model's complexity and its error. As a model becomes more complex, it fits the training data more closely (lower bias) but becomes more sensitive to fluctuations/noise (higher variance).Detailed Option Explanation:A) Incorrect: These two usually move in opposite directions; they don't both increase simultaneously when tuning complexity.B) Incorrect: This describes "underfitting," which happens when you decrease complexity.C) Correct: More complexity allows the model to capture complex patterns (low bias), but it leads to overfitting on noise (high variance).D) Incorrect: This is the "ideal" but physically impossible state in most real-world scenarios.E) Incorrect: Bias almost always changes as the model's ability to fit the underlying distribution changes.F) Incorrect: Variance is highly sensitive to model complexity changes.Question 2: You are performing an A/B test for a new website feature. If your p-value is 0.03 and your alpha level (significance level) is 0.05, what is the most appropriate statistical conclusion?A) Accept the Null Hypothesis; the feature has no effect.B) Fail to reject the Null Hypothesis; results are not significant.C) Reject the Null Hypothesis; the result is statistically significant.D) Increase the sample size because the p-value is too high.E) Reject the Alternative Hypothesis; the effect is random.F) The test is inconclusive because the p-value is above 0.01.Correct Answer: COverall Explanation: In frequentist statistics, if the p-value is less than the pre-defined significance level (α), we have sufficient evidence to reject the null hypothesis in favor of the alternative.Detailed Option Explanation:A) Incorrect: We never "accept" the null hypothesis; we only "fail to reject" it.B) Incorrect: Since 0.03

0.0•159•Self-paced
FREE$96.99
Enroll
FreeCourse LogoFreeCourse

Freecourse.io brings you high-quality online courses with free certificates to help you upskill, boost your career, and achieve your goals anytime, anywhere.

Resources

  • Courses
  • Jobs
  • Categories
  • Features

Company

  • About
  • Blog
  • Contact

Legal

  • Privacy
  • Terms
  • Cookies
  • Licenses

© 2026 FreeCourse. All rights reserved.