Skip to content

Typical Southern Foods is a sample 📱 web 💻 responsive 🖥 (mobile, tablet, PC) application built using the lasted (2020) ASP.NET, Oracle DB and Entity Framework technologies for Windows Server and Internet Information Server (IIS).

License

JavierCanon/TypicalSouthernFoods

Repository files navigation

Typical Southern Foods

Typical Southern Foods is a sample application built using ASP.NET, Oracle 18c Database or Sql Server 2017, and Entity Framework.

Philosophy of Javier Cañon

  • KISS by design and programming. An acronym for "keep it simple, stupid" or "keep it stupid simple", is a design principle. The KISS principle states that most systems work best if they are kept simple rather than made complicated; therefore, simplicity should be a key goal in design, and unnecessary complexity should be avoided. Variations on the phrase include: "Keep it simple, silly", "keep it short and simple", "keep it simple and straightforward", "keep it small and simple", or "keep it stupid simple".
  • Select the best tools for the job, use tools that take less time to finish the job.
  • Productivity over complexity and avoid unnecessary complexity for elegant or beauty code.
  • Computers are machines, more powerful every year, give them hard work, concentrate on being productive.
  • Often people, especially computer engineers, focus on the machines. They think, "By doing this, the machine will run fast. By doing this, the machine will run more effectively. By doing this, the machine will something, something, something..." They are focusing on machines. But in fact we need to focus on humans, on how humans care about doing programming or operating the application of the machines. We are the masters. They are the slaves. [Yukihiro Matsumoto].

Features

✅ HTML5 JavaScript Responsive Web Development

✅ MVC (Model-View-Controller) or MVVM (Model-View-ViewModel)

Single-responsibility principle (is a computer-programming principle that states that every module or class should have responsibility over a single part of the functionality provided by the software, and that responsibility should be entirely encapsulated by the class, module or function).

Clean Architecture

Application Layer: This layer contains all application logic. It is dependent on the domain layer, but has no dependencies on any other layer or project. This layer defines interfaces that are implemented by outside layers. For example, if the application need to access a notification service, a new interface would be added to application and an implementation would be created within infrastructure.

Common Layer: This will contain all cross-cutting concerns.

Domain Layer: This will contain all entities, enums, exceptions, types and logic specific to the domain. The Entity Framework related classes are abstract, and should be considered in the same light as .NET. For testing, use an InMemory provider such as InMemory or SqlLite.

Infrastructure Layer: This layer contains classes for accessing external resources such as file systems, web services, smtp, and so on. These classes should be based on interfaces defined within the application layer.

Persistence Layer: When you use relational databases such as SQL Server, Oracle, or PostgreSQL, a recommended approach is to implement the persistence layer based on Entity Framework (EF). EF supports LINQ and provides strongly typed objects for your model, as well as simplified persistence into your database.

UI Layer's: MVC software design pattern. Commonly used for developing user interfaces which divides the related program logic into three interconnected elements. This is done to separate internal representations of information from the ways information is presented to and accepted from the user. This kind of pattern is used for designing the layout of the page.

Screenshoots

Screenshoot Screenshoot Screenshoot Screenshoot Screenshoot

Getting Started

Use these instructions to get the project up and running.

Prerequisites

You will need the following tools:

You need the following NuGet Packages, you can restore from solution:

  • "EntityFramework" version "6.4.4"
  • "Microsoft.AspNet.EntityDataSource" version "6.0.0"
  • "Oracle.ManagedDataAccess" version "19.7.0"
  • "Oracle.ManagedDataAccess.EntityFramework" version "19.7.0"

Setup

Follow these steps to get your development environment set up:

  1. Install Oracle Database Server if needed
  2. Install Oracle Data Access Components for .NET
  3. Install DevExpress Framework id needed
  4. From Visual Studio, restore NuGet packages
  5. Build and run.

Technologies

  • .NET 4.8
  • .NET Core 3.1
  • ASP.NET MVC 5
  • ASP.NET MVVM Razor Pages
  • Razor 3
  • Blazor .NET Core 3.1
  • ASP.NET 4.8 Webforms
  • Entity Framework 6.4
  • Oracle RDBMS 18c
  • Sql Server 2017
  • Bootstrap 4
  • JQuery 3.5
  • HTML5

License

This project is licensed under the MIT LICENSE - see the LICENSE.md file for details.


Made with ❤️ by Javier Cañon.

About

Typical Southern Foods is a sample 📱 web 💻 responsive 🖥 (mobile, tablet, PC) application built using the lasted (2020) ASP.NET, Oracle DB and Entity Framework technologies for Windows Server and Internet Information Server (IIS).

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages