- C# and .NET Core Test Driven Development
- Ayobami Adewole
- 202字
- 2021-06-25 22:00:26
Tight coupling
Most legacy software applications are known to be tightly coupled, with little or no flexibility and modularity. Tightly coupled software components lead to a rigid code base which can be difficult to modify, extend, and maintain. As most software applications evolve over time, big maintenance issues are created when components of applications are tightly coupled. This is due to the changes in requirements, user's business processes, and operations.
Third-party libraries and frameworks reduce development time and allow developers to concentrate on implementing users' business logic and requirements without having to waste valuable productive time reinventing the wheel through implementing common or mundane tasks. However, at times, developers tightly couple the applications with third-party libraries and frameworks, creating maintenance bottlenecks that require great efforts to fix when the need arises to replace a referenced library or framework.
The following code snippet shows an example of tight coupling with a third-party smpp library:
public void SendSMS()
{
SmppManager smppManager= new SmppManager();
smppManager.SendMessage("0802312345","Hello", "John");
}
public class SmppManager
{
private string sourceAddress;
private SmppClient smppClient;
public SmppManager()
{
smppClient = new SmppClient();
smppClient.Start();
}
public void SendMessage(string recipient, string message, string senderName)
{
// send message using referenced library
}
}
- 微服務(wù)設(shè)計(jì)(第2版)
- Python從菜鳥(niǎo)到高手(第2版)
- Mastering Articulate Storyline
- Hands-On C++ Game Animation Programming
- R的極客理想:工具篇
- 用戶體驗(yàn)增長(zhǎng):數(shù)字化·智能化·綠色化
- 深入RabbitMQ
- Spring核心技術(shù)和案例實(shí)戰(zhàn)
- Microsoft Exchange Server 2016 PowerShell Cookbook(Fourth Edition)
- HTML5 WebSocket權(quán)威指南
- CryENGINE Game Programming with C++,C#,and Lua
- Getting Started with RethinkDB
- Java網(wǎng)絡(luò)編程實(shí)用精解
- Internet of Things with Arduino Cookbook
- Mastering Linux Kernel Development