Students file sharing social network using 3 tier arhitecture and MVP pattern | By Marko Mitreski
The problem:
Students have a problem - Unorganized and too much of a hassle to get books, materials and files for learning. They were all over the place, paper files, e-books, files on different servers etc.
Goals:
- All the data/files at one place
- Available anytime
- Notification for new data/files
- Sharing the knowledge
The solution:
Student social network for file sharing.
Motto: From the students, for the students - get the right information, at the right time.
= Software solution description:
- Model-View-Presenter pattern
- Three(3) tier architecture
- Web and Desktop Application using MVP
- Database design and development
- Team Foundation Server for source control and team managment
= Model-View-Presenter pattern
- Using a separation of concerns/responsible design approach you will increase code reuse
- Separate business logic from user interface (UI) logic to make the code easier to understand and maintain
- Implementing IView interface used to loosely couple the presenter from its view
- Presenter is responsible for interacting between the view/model
= Three(3) tier architecture - Reusable and portable code
- Data Access Layer
- Business Logic Layer
- Presentation Layer
= Web and Desktop Application using MVP
- We manage to develop Web Application and Desktop App in just ONE DAY!
- Using MVP pattern, UI is very simple, clean and quick/flexible to design and develop. After setting up the architecture and defining the interfaces, our team was able to split and work parallel - at the same time - on the three different layers without interruption.
Other noticeable achievements:
- Customized error/exception handling
- Customized Regular expression usage
- SOLID Principles
- Design patterns
- SQL programming - store procedures, functions ...
Skills:
Teamwork | Collaboration | Communication | Clean Code | Pragmatism | Programming best practices
Toolset:
.Net | C# | WinForms | ADO.net | MSSQL | SQL programming
ASP.Net | JavaScript | JQuery | HTML | CSS
This is a team project.