Answered step by step
Verified Expert Solution
Question
1 Approved Answer
3. (30 marks) Dependency Inversion Principle: high-level modules should not depend upon low level modules. Both should depend upon abstraction. The following code is an
3. (30 marks) Dependency Inversion Principle: high-level modules should not depend upon low level modules. Both should depend upon abstraction. The following code is an implementation of a login function for MySocialNetwork, but it violates the Dependency Inversion Principle. a. Explain why the code violates the Dependency Inversion Principle (15 marks) b. Rewrite the code to make it conform with the principle (15 marks) public class My_HCMIU_Email \{ public void loginWithStudentid(String username, String password) l... / 3 public class MySocialNetwork \{ private My_HCMIU_Email loginService; public void SetLoginservice (My_HCMIU_Email value) \{ loginservice = value; \} public bool login (String username, String password) \{ return loginservice. loginWithstudentID (username, password) ; \}
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started