You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I trust this message finds you well. During my recent code review, I noticed a potential improvement opportunity in the bookroom method. It exhibits characteristics of a "Long Method," which can impact code readability and maintainability. I'd like to propose a refactoring using the "Preserve Whole Object" technique.
Why Refactor?
Readability: Long methods can be challenging to read and understand. Breaking them into smaller, focused methods enhances code readability.
Maintainability: Smaller methods are easier to maintain and update, promoting a more agile development process.
Refactoring Proposal:
public class RoomBooking {
private static Scanner sc = new Scanner(System.in);
public static void bookroom(int roomType) {
int roomNumber = displayAvailableRooms(roomType);
if (roomNumber != -1) {
try {
CustDetails(roomType, roomNumber);
System.out.println("Room Booked");
} catch (Exception e) {
System.out.println("Invalid Option");
}
} else {
System.out.println("Enter valid option");
}
}
private static int displayAvailableRooms(int roomType) {
int roomNumberOffset = 0;
Room[] rooms;
switch (roomType) {
case 1:
rooms = hotel_ob.luxury_doublerrom;
break;
case 2:
rooms = hotel_ob.deluxe_doublerrom;
roomNumberOffset = 10;
break;
case 3:
rooms = hotel_ob.luxury_singleerrom;
roomNumberOffset = 30;
break;
case 4:
rooms = hotel_ob.deluxe_singleerrom;
roomNumberOffset = 40;
break;
default:
return -1;
}
System.out.println("\nChoose room number from : ");
for (int j = 0; j < rooms.length; j++) {
if (rooms[j] == null) {
System.out.print(j + roomNumberOffset + ",");
}
}
System.out.print("\nEnter room number: ");
return sc.nextInt() - roomNumberOffset;
}
}
By breaking down the bookroom method into smaller, focused methods, we improve the overall readability and maintainability of the code. Each method now has a clear and specific responsibility.
Feel free to incorporate this suggestion, and if you have any questions or need further assistance, please don't hesitate to reach out.
The text was updated successfully, but these errors were encountered:
Hi shouryaj98,
I trust this message finds you well. During my recent code review, I noticed a potential improvement opportunity in the bookroom method. It exhibits characteristics of a "Long Method," which can impact code readability and maintainability. I'd like to propose a refactoring using the "Preserve Whole Object" technique.
Why Refactor?
Readability: Long methods can be challenging to read and understand. Breaking them into smaller, focused methods enhances code readability.
Maintainability: Smaller methods are easier to maintain and update, promoting a more agile development process.
Refactoring Proposal:
By breaking down the bookroom method into smaller, focused methods, we improve the overall readability and maintainability of the code. Each method now has a clear and specific responsibility.
Feel free to incorporate this suggestion, and if you have any questions or need further assistance, please don't hesitate to reach out.
The text was updated successfully, but these errors were encountered: