The Middle-Tier, A Beginners Guide

edinstation
4 min readApr 24, 2021

--

Picture this, your Mom blindfolds you and takes you out the house to gift you your dream car (just like in the movies), you take off blindfold your and there it is, the beauty you’ve always dreamed of. Excited! You jump right in and attempt to start the vehicle only to be told the car has no engine, shocker!

Well that car is as useful as a front-end without middle tier services and database, at least in a web application development context.

This article is a continuation of the web development series and will help to give you understanding on the basics of building your middle-tier services and take you a step closer to completing your web application. Check out the first article on the front-end basics here, if you haven’t already to get you up to date.

The Middle Who?

The middle-tier, also known as the application or logic tier is the engine of any web application built with a 3-tier architecture. In this tier, data collected from the user via the front-end is processed using business logic (specific set of business rules) and that information is usually added, deleted or modified in the database.

Why it’s Important

While the front-end is that fancy looking brand ambassador that just sits pretty (just kidding, there’s more to the front-end) the services in the middle- tier act like the heart of the application. Questions like what happens when you click the login button on a form are all answered by the middle-tier.

Essentially, front-end developers work with backend developers to create UI components that accurately represent the functionality of whatever goes on in the middle-tier, imagine eating a chocolate cake that tastes like salmon, awful! You could get jailed for that! Likewise in building your web application you don’t want to have a excellently designed download button that deletes your entire photo gallery.

Enough Talk, Let’s get Coding!

The technologies used by developers to build middle-tier services are too many to count, but we’ll take a look at a few popular ones that you can get started with.

Programming languages like Java, Scala, C#, Python, PHP among others are usually used to develop the middle-tier for most web apps, though selecting a language relies heavily on the requirements of the application, I’ve listed some of the qualities of these languages in summary to give you a gist.

However if you’re looking for a more detailed explanation then watch out for an upcoming article on the best programming languages to start coding with.

Java / Scala

Java is one of the world’s most widely used programming languages. It’s simple, object-oriented, and fairly easy to learn. Java is a general purpose language used to build web applications, mobile applications, games, enterprise software's and a lot more.

Scala is a modern and advanced programming language I wouldn’t recommend starting with unless you already have a background in programming. Scala runs on the Java platform and is compatible with existing Java applications and is a hybrid of object oriented programming and functional programming.

To begin programming in Java/Scala you’ll need an IDE, (a software that let’s you write code) IntelliJ and Eclipse are really reliable options. Some popular web frameworks to help you kick-start your middle-tier development are Springboot/Spring and Struts, just to mention a couple.

C#

C#(pronounced See Sharp) is a modern, object-oriented language managed by Microsoft that enables developers to build applications that run in the .NET(dotnet) ecosystem. C# is quite similar to C, C++, Java, and JavaScript. C# can be used to create web services and web API, blockchains and distributed ledger technology including cryptocurrency and windows client applications to name a few.

Visual Studio is the go-to IDE for developing in C# as it’s also managed by Microsoft, other options include Jetbrains Rider and Eclipse.

ASP.Net Core is an extremely common framework that c# utilizes in web development, if you’re interested in building your web application in C# then you should definitely read on ASP.Net.

Python

Python (nothing to do with snakes) is arguably one of the most simple and user friendly programming languages out there today, but don’t be conned by it’s simplicity because python is in fact a high-level programming language with dynamic semantics.

Python is useful for machine learning and artificial intelligence, data science and data visualization, web development etc.

PyCharm, Spyder, IDLE are all popular IDE options for python, and for web frameworks you can consider either Django or Flask.

PHP

PHP is a widely-used ,open source, server side scripting language that is especially suited for web development. PHP has a relatively shorter learning curve in comparison to other languages so definitely consider it if you’re a complete beginner.

Visual Studio Code, Sublime Text, PHPStorm are good examples of Text editors or IDE’s you’ll need for developing in PHP.

Software Engineers are Relationship Coaches and Conclusion

All software engineers(myself included) are good relationship advisors, because we all agree one way or the other that communication is the key to any relationship.

For this reason you need to know how to facilitate the communication of your beautiful looking front-end and hard working middle-tier, but that’s all for this article, we’ll play match maker later in the next write-up when we discuss Communication, API calls and the Database. Thanks for reading.

Reference

.

--

--

edinstation

Immerse yourself in technology, software, animation and extended reality. Explore our digital realm. 🚀"