Skip to content

camilogalvan/ultimate-brain

Repository files navigation

VERSION-1.0

🧠🎮 ULTIMATE BRAIN 🧠🎮

Technologies and Quality Attributes : .NET Framework

Table of Contents

  1. General Description
  2. Access to
  3. Explanatory Video
  4. Technologies
  5. Local Replication
  6. Detailed Description
  7. About Us

General Description

Is an exciting challenge where your knowledge and cunning lead you on the road to riches. Imagine being in the spotlight, under the bright spotlight, as you face a series of challenging questions. Each question is like a rung on a ladder to fortune. With each correct answer, you climb one step higher and get closer to the grand prize: one million units of in-game currency! But be careful, one wrong answer can cause you to fall and lose all your progress. The tension builds as the questions become more difficult and time is against you.

The game was designed with the purpose of providing an entertaining and instructive experience to the users, and for this purpose an MVC (Model-View-Controller) software architecture was implemented. In this architecture, the model is in charge of the data management and business logic of the game, while the view handles the presentation of the game and the user interaction. Finally, the controller is the component that receives user requests and communicates with the model to obtain and update data. With this structure, players can enter the game with just their name and face a series of increasingly difficult questions, with the opportunity to level up and win attractive prizes by answering correctly.

Ultimate Brain MVC Architecture

Web Access

You can access the game at the following link : 🧠🎮 https://ultimate-brainprod.azurewebsites.net/ 🧠🎮

Explanatory Video

Technologies Used in the Project

.NET FRAMEWORK

Introducción a .NET Framework

.NET Framework is a managed runtime environment for Windows that provides various services to running applications. It consists of two main components: Common Language Runtime (CLR), which is the runtime engine that controls running applications, and the .NET Framework class library, which provides a library of tested and reusable code that developers can call from within their own applications. The services provided by.

Official Microsoft documentation: https://learn.microsoft.com/es-es/dotnet/framework/get-started/

Characteristics used in the project

  • Entity Framework:

The project uses Entity Framework, which is a .NET ORM (Object-Relational Mapping) to facilitate data manipulation in a database.

It uses the mapping of objects to database tables, LINQ (Language Integrated Query) queries and facilities to perform CRUD (Create, Read, Update, Delete) operations.

  • Razor:

The project uses Razor, which is a .NET templating engine to generate dynamic content in views.

It combines C# (or VB.NET) code with HTML markup to create dynamic and reusable views.

It has advantages such as code readability, the ability to create conditional structures and loops in the views, and integration with the model and data.

  • C#

Paseo por el lenguaje C#

C# (pronounced "si sharp" in English) is a modern, object-based, type-safe programming language. C# allows developers to create many types of safe and robust applications that run on .NET. C# has its roots in the C family of languages, and C, C++, Java and JavaScript programmers will find it immediately familiar. This walkthrough provides an overview of the major language components in C# 8 and earlier versions. If you want to explore the language through interactive examples, try the introductory C# tutorials.

C# is a component-oriented, object-oriented programming language. C# provides language constructs to directly support these concepts, making it a natural language in which to create and use software components. Since its origin, C# has added features to support new workloads and emerging software design practices. At its core, C# is an object-oriented language. Define types and their behavior.

Oficial Microsoft Documentation: https://learn.microsoft.com/es-es/dotnet/csharp/

Some Advantajes About .NET

  - Portability: With .NET, it is possible to develop applications that run on multiple platforms, such as Windows, macOS and Linux, using .NET Core. 
  This allows reaching a wider audience and facilitates the deployment of applications in different environments.
 
  - Support for multiple programming languages: .NET offers support for several programming languages, including C#, Visual Basic and F#.
  This gives developers flexibility, allowing them to choose the language they are most comfortable with and leverage their existing skills.

  - Efficiency and performance: The .NET framework is designed for efficient and optimized performance. 
  It includes a Just-in-Time (JIT) compiler that translates code at runtime for greater efficiency and an automatic garbage collector that efficiently manages memory.

  - Integration with other Microsoft technologies: .NET integrates tightly with other Microsoft technologies and tools, such as Microsoft Azure (Microsoft's cloud platform), 
  Visual Studio (the integrated development environment) and SQL Server (Microsoft's database), making it easy to develop and deploy applications in the Microsoft ecosystem.

HTML, CSS and JAVASCRIPT

HTML, CSS and JAVASCRIPT

Every website is composed of two sides: the Back End and the Front End. The first has to do with the development of the web element that is not visible to users, and the front-end represents the graphical interface of a website, from the structure to the styles, such as the definition of colors, fonts, textures, sections, among others. Its use is crucial for the user to have a good experience when browsing the site or application.

HTML, CSS and Javascript are three languages that are used in the Front End, that is to say, that are used on the user side. HTML has existed since the beginning of the Internet and from the growth of this language comes CSS to improve the aesthetics of the websites created from HTML. Lastly, Javascript was created to provide interactivity.

Oficial Documentation: https://www.w3schools.com/

AZURE APP SERVICE and AZURE SQL DATABASE

Ultimate Brain was deployed in the cloud using Azure, so the Azure Infrastructure view is a visualization tool that allows users to see and understand the architecture of their resources in the Microsoft Azure cloud. This view provides a visual representation of the network topology of your resources, including the connections between them, and allows users to see the geographic distribution of your resources. The Ultimate Brain infrastructure view is composed of two main Azure services which are:

  • Azure App Service: An HTTP-based service for hosting web applications, REST APIs and back-ends for mobile devices.

  • Azure SQL Database: is an intelligent, fully managed relational database service built for the cloud. With SQL Database, you can create a high-performance, highly available data storage layer for modern cloud applications.

Vista de Infraestructura Ultimate Brain

How to replicate the project?

First, it is necessary to download Visual Studio 2022, which you can find here : https://visualstudio.microsoft.com/es/vs/.

Additionally, it is necessary to download the Software Development Kit (SDK 6.0) which includes everything necessary to compile and run .Net applications using command line tools and any editor such as Visual Studio Code, mentioned above. You can access the download at: https://dotnet.microsoft.com/es-es/download/dotnet/6.0

Microsoft .NET 6 And Visual Studio 2022 Are Now Generally Available

Recommended documentation for preparing the Visual Studio Code and .NET framework : https://www.campusmvp.es/recursos/post/visual-studio-code-como-preparar-un-entorno-de-trabajo-para-net-core.aspx

The next step is to clone the repository of this project and bring it to your computer downloaded by the method you prefer. You can see the ways to clone a repo from Git Hub here : https://docs.github.com/es/repositories/creating-and-managing-repositories/cloning-a-repository The access to our project: https://github.com/camilogalvan/ultimate-brain

Finally, you must open the . sln file, which contains text-based information that the environment uses to find and load name-value parameters for persistent data and the VSPackages project references it.

Now you can work on the project, make the modifications you create and run it locally.

Detailed Description

Normal flow of the game:

  • The player starts the application and accesses the main game screen.

  • The player selects the "Start Game" option to begin the game.

  • The system displays a question on the screen along with the answer options.

  • The player reads the question and selects the option he/she considers correct.

  • The system checks if the selected answer is correct.

  • If the answer is incorrect, the system displays an error message and ends the game.

  • If the answer is correct, the system displays a success message and updates the player's accumulated amount.

  • The system loads the next question and repeats steps 4-7 until the questions are exhausted or the player decides to end the game.

  • At the end of the game, the system displays the player's final score and allows the player to save his record if it is high enough.

- The player has the option to start a new game or exit the game.

About us

WhatsApp Image 2023-05-07 at 10 53 36

About

Mental challenge game created with microsoft technologies, such as .NET, C#, SQL Server and Azure

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 5

Languages