|
所在平台: Udemy |
课程主页: https://www.udemy.com/course/orm-n-tier-architecture-multi-layered-applications/
课程评论:没有评论
课程名称:ORM、N层架构、多层应用程序 课程概述:本课程将帮助学生看到他们在之前课程中努力学习的成果。通过掌握面向对象编程的四大基本原则、四大基本数据库操作(CRUD),以及前述任务所培养的分析和算法思维,学生将迎接当前的挑战——创建一个包含不同层的多层应用程序。课程将重点围绕灵活的结构进行,包括业务层、数据层、服务层和表现层。 在数据层的设计上会采取不同的方法,以便学生能够体会到多层范式的优势(例如,变更应用的某一部分不需要重写整个代码)。完成数据层的同步实现后,将解释并整合异步方法。课程将引入Entity Framework(Core)作为C#应用的ORM技术,并教授代码优先和数据库优先的方法。学生将使用数据注解和Fluent API进行数据库的进一步配置,并学习数据查询的优化。 课程还将创建不同的表现层——控制台应用程序、Windows窗体、Windows Presentation Foundation(WPF)及基于Web的MVC。学生们将意识到他们可以如何轻松构建任何图形用户界面在前三个层的基础上。尽管有些技术可能逐渐过时,但其中的原则和概念对于学生思维的发展至关重要。即使学生未来仅使用JavaScript、Java创建Web应用,或使用C++开发游戏应用,对组件、委托和事件的理解都是必不可少的。遵循SOLID原则、面向对象编程原则、良好的编程实践和算法思维能力对于软件开发者的成长非常重要。即使用户迁移到不同类型的数据库模型,由于N层应用所遵循的相同原则,实现变更也会变得更加容易。 在继续进行复杂的多层应用程序开发(例如,增加授权、认证、电子邮件确认、支付方式和数据过滤;为服务层添加新层以简化功能增长)之前,掌握解决简单任务的坚实知识、技能和经验是必要的。该课程是实现这一目标的第六个基石。我希望我的学生能够在课程的问答环节中彼此友善,并在未来的软件开发(及工程)职业中取得成功。
In this course the students will finally see the fruits of the hard work that they have undergone through the previous courses. The knowledge of the four fundamental principles of object-oriented programming, the four basic database operations (CRUD), the developed analytical and algorithmic thinking from solving preceding tasks will help them in the current challenge - creating a multi-tier application containing different layers.The course will be focused on the following flexible structure - Business, Data, Service and Presentation layer. There will be different approaches to the Data layer so that the students will be able to appreciate the advantages of the multi layered paradigm (for example, changing one facet of the application won't require rewriting the whole code). After finishing the synchronous implementation of the Data layer the asynchronous approach will be explained and integrated.Entity Framework (Core) will be introduced as the ORM technology for the C# applications. Code First and Database First approaches will be taught. Data annotations and Fluent API will be used to configure the databases further. Optimization for the querying of data will be shown.Different presentation layers will be created - Console application, Windows Forms, Windows Presentation Foundation (WPF) and (web-based) MVC. Students will realize how easily they can build upon the structure of the first three layers any kind of graphical user interface. Although some of the technologies are becoming outdated, the principles and concepts wherein are crucial for the development of the thinking of the student. Even if the students will start creating web applications only with JavaScript, Java or game applications with C++ the knowledge and experience in components, delegates and events are necessary. The ability to follow SOLID principles, OOP principles, good programming practices and algorithmic thinking are vital for the growth of the software developer. Even if the user migrates to a different type of database model, it will be easier to implement it in its application because of the same principles that n-tier applications are made of.Before we continue making complex multi-tier applications (adding authorization, authentication, email confirmation, payment methods and filtering of data; adding new layers to simplify the growing of the functionalities in the service layer) a strong foundation of knowledge, skills and experience with solving simple tasks are necessary. This course is the sixth stepping stone towards achieving that goal.I hope that my students will be benevolent toward each other in the Q & A section of the courses and be successful in their future career as a software developer (and engineer).