diff --git a/app/src/main/java/fr/imt_atlantique/myfirstapplication/DatePickerActivity.java b/app/src/main/java/fr/imt_atlantique/myfirstapplication/DatePickerActivity.java
index 9573507dcb340bc1c3a36cfcf6ae371c6e642674..216e379a4835c7ba8b755780e325a1a159e405c9 100644
--- a/app/src/main/java/fr/imt_atlantique/myfirstapplication/DatePickerActivity.java
+++ b/app/src/main/java/fr/imt_atlantique/myfirstapplication/DatePickerActivity.java
@@ -14,7 +14,6 @@ import androidx.core.view.ViewCompat;
 import androidx.core.view.WindowInsetsCompat;
 
 import java.time.LocalDate;
-import java.time.format.DateTimeFormatter;
 
 public class DatePickerActivity extends AppCompatActivity {
 
@@ -37,26 +36,23 @@ public class DatePickerActivity extends AppCompatActivity {
 
         getValues();
 
-        // Bouton de validation
         Button validateButton = findViewById(R.id.validateDateButton);
         validateButton.setOnClickListener(view -> {
             int day = datePicker.getDayOfMonth();
-            int month = datePicker.getMonth() + 1; // Le mois commence à 0
+            int month = datePicker.getMonth() + 1;
             int year = datePicker.getYear();
             LocalDate date = null;
             if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
                 date = LocalDate.of(year, month, day);
             }
 
-            // Retourne la date sélectionnée via Parcelable
             fr.imt_atlantique.myfirstapplication.DatePicker dateObject = new fr.imt_atlantique.myfirstapplication.DatePicker(date);
             Intent resultIntent = new Intent();
             resultIntent.putExtra("date", dateObject);
             setResult(RESULT_OK, resultIntent);
-            finish(); // Ferme l'activité
+            finish();
         });
 
-        // Bouton d'annulation
         Button cancelButton = findViewById(R.id.cancel_button);
         cancelButton.setOnClickListener(view -> {
             setResult(RESULT_CANCELED);
@@ -71,8 +67,9 @@ public class DatePickerActivity extends AppCompatActivity {
             if (date != null) {
                 this.date = date.getDate();
 
-                // ✅ Met à jour le DatePicker avec la date reçue
-                datePicker.updateDate(this.date.getYear(), this.date.getMonthValue() - 1, this.date.getDayOfMonth());
+                if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
+                    datePicker.updateDate(this.date.getYear(), this.date.getMonthValue() - 1, this.date.getDayOfMonth());
+                }
             }
         }
     }
diff --git a/app/src/main/java/fr/imt_atlantique/myfirstapplication/DisplayUserActivity.java b/app/src/main/java/fr/imt_atlantique/myfirstapplication/DisplayUserActivity.java
index a09a6e975cf2af96f4e69253d7f7ec601c42364f..13a4f3f52d3dba1032280aadbe7f21e39895009b 100644
--- a/app/src/main/java/fr/imt_atlantique/myfirstapplication/DisplayUserActivity.java
+++ b/app/src/main/java/fr/imt_atlantique/myfirstapplication/DisplayUserActivity.java
@@ -1,7 +1,6 @@
 package fr.imt_atlantique.myfirstapplication;
 
 import android.app.AlertDialog;
-import android.content.DialogInterface;
 import android.content.pm.PackageManager;
 import android.net.Uri;
 import android.os.Build;
@@ -58,7 +57,7 @@ public class DisplayUserActivity extends AppCompatActivity {
                 lastName = user.getLastName();
                 birthCity = user.getBirthCity();
                 birthDept = user.getBirthDept();
-                DateTimeFormatter formatter = null;
+                DateTimeFormatter formatter;
                 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
                     formatter = DateTimeFormatter.ofPattern("d/M/yyyy");
                     birthDate = user.getBirthDate().format(formatter);
@@ -143,7 +142,7 @@ public class DisplayUserActivity extends AppCompatActivity {
             callIntent.setData(Uri.parse("tel:" + phoneNumber));
             startActivity(callIntent);
         } catch (SecurityException e) {
-            Snackbar.make(v, "An error occurred during the call attempt: " + e.toString(), Snackbar.LENGTH_SHORT).show();
+            Snackbar.make(v, "An error occurred during the call attempt: " + e, Snackbar.LENGTH_SHORT).show();
         }
     }
 
@@ -152,19 +151,9 @@ public class DisplayUserActivity extends AppCompatActivity {
         new AlertDialog.Builder(this)
                 .setTitle("Call Permission Required")
                 .setMessage("This App needs Call permission in order to be able to handle calling a phone number")
-                .setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
-                    @Override
-                    public void onClick(DialogInterface dialog, int which) {
-                        Toast.makeText(DisplayUserActivity.this, "Permission Denied", Toast.LENGTH_SHORT)
-                                .show();
-                    }
-                })
-                .setPositiveButton("Ok", new DialogInterface.OnClickListener() {
-                    @Override
-                    public void onClick(DialogInterface dialog, int which) {
-                        ActivityCompat.requestPermissions(DisplayUserActivity.this, new String[]{Manifest.permission.CALL_PHONE}, 3); // 3 is requestCode and can be any number
-                    }
-                })
+                .setNegativeButton("Cancel", (dialog, which) -> Toast.makeText(DisplayUserActivity.this, "Permission Denied", Toast.LENGTH_SHORT)
+                        .show())
+                .setPositiveButton("Ok", (dialog, which) -> ActivityCompat.requestPermissions(DisplayUserActivity.this, new String[]{Manifest.permission.CALL_PHONE}, 3))
                 .create()
                 .show();
     }
diff --git a/app/src/main/java/fr/imt_atlantique/myfirstapplication/MainActivity.java b/app/src/main/java/fr/imt_atlantique/myfirstapplication/MainActivity.java
index 6e176152ec90b7ea99a777e08cdc0cd6671b30b4..011faf5142c56edb12989dfc01d862f805d0afa0 100644
--- a/app/src/main/java/fr/imt_atlantique/myfirstapplication/MainActivity.java
+++ b/app/src/main/java/fr/imt_atlantique/myfirstapplication/MainActivity.java
@@ -37,14 +37,16 @@ import java.util.Set;
 
 public class MainActivity extends AppCompatActivity {
 
-    String firstName, lastName, birthCity = "";
-    String birthDate = "Pick date";
+    String firstName, lastName, birthCity;
+    String birthDate = getString(R.string.pick_date_hint);
     int birthDept = 0;
     ArrayList<String> phoneNumbersList = new ArrayList<>();
 
     TextView birthDateTextView;
     Button birthDateButton;
     EditText firstNameEditText, lastNameEditText, birthCityEditText;
+    Spinner birthDeptSpinner;
+    LinearLayout phonesLayout, mainContent;
 
     @Override
     protected void onCreate(Bundle savedInstanceState) {
@@ -58,20 +60,27 @@ public class MainActivity extends AppCompatActivity {
             return insets;
         });
 
+        findAllViewById();
+        birthDateButton.setOnClickListener(view -> showDatePicker());
+        restorePreferences();
+    }
+
+    private void findAllViewById() {
         birthDateTextView = findViewById(R.id.birthDateTextView);
         birthDateButton = findViewById(R.id.birthDateEditText);
         firstNameEditText = findViewById(R.id.firstNameEditText);
         lastNameEditText = findViewById(R.id.lastNameEditText);
         birthCityEditText = findViewById(R.id.birthCityEditText);
-        birthDateButton.setOnClickListener(view -> showDatePicker());
-
-        restorePreferences();
+        birthDeptSpinner = findViewById(R.id.birthDeptSpinner);
+        phonesLayout = findViewById(R.id.phonesLayout);
+        mainContent = findViewById(R.id.mainContent);
     }
 
+
     @Override
     protected void onStart() {
         super.onStart();
-        Spinner spinner = findViewById(R.id.birthDeptSpinner);
+        Spinner spinner = birthDeptSpinner;
         ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
                 this, R.array.departments, R.layout.spinner_item);
         adapter.setDropDownViewResource(R.layout.spinner_item);
@@ -93,13 +102,6 @@ public class MainActivity extends AppCompatActivity {
     }
 
     private void restoreValues() {
-        EditText firstNameEditText = findViewById(R.id.firstNameEditText);
-        EditText lastNameEditText = findViewById(R.id.lastNameEditText);
-        Button birthDateButton = findViewById(R.id.birthDateEditText);
-        EditText birthCityEditText = findViewById(R.id.birthCityEditText);
-        Spinner birthDeptSpinner = findViewById(R.id.birthDeptSpinner);
-        LinearLayout phonesLayout = findViewById(R.id.phonesLayout);
-
         firstNameEditText.setText(firstName);
         lastNameEditText.setText(lastName);
         birthDateButton.setText(birthDate);
@@ -113,14 +115,8 @@ public class MainActivity extends AppCompatActivity {
             addPhoneNumberToLayout(phonesLayout, phoneNumber);
         }
     }
-    private void saveValues() {
-        EditText firstNameEditText = findViewById(R.id.firstNameEditText);
-        EditText lastNameEditText = findViewById(R.id.lastNameEditText);
-        Button birthDateButton = findViewById(R.id.birthDateEditText);
-        EditText birthCityEditText = findViewById(R.id.birthCityEditText);
-        Spinner birthDeptSpinner = findViewById(R.id.birthDeptSpinner);
-        LinearLayout phonesLayout = findViewById(R.id.phonesLayout);
 
+    private void saveValues() {
         firstName = firstNameEditText.getText().toString();
         lastName = lastNameEditText.getText().toString();
         birthDate = birthDateButton.getText().toString();
@@ -172,8 +168,8 @@ public class MainActivity extends AppCompatActivity {
 
     public void validateAction(View v) {
 
-        if (firstNameEditText.getText().toString().isEmpty() || lastNameEditText.getText().toString().isEmpty() || birthCityEditText.getText().toString().isEmpty() || birthDateButton.getText().toString().equalsIgnoreCase("pick date")){
-            final Snackbar snackbar = Snackbar.make(findViewById(R.id.mainContent), getString(R.string.empty_warning), Snackbar.LENGTH_LONG);
+        if (firstNameEditText.getText().toString().isEmpty() || lastNameEditText.getText().toString().isEmpty() || birthCityEditText.getText().toString().isEmpty() || birthDateButton.getText().toString().equalsIgnoreCase(getString(R.string.pick_date_hint))) {
+            final Snackbar snackbar = Snackbar.make(mainContent, getString(R.string.empty_warning), Snackbar.LENGTH_LONG);
             snackbar.setAction(getString(R.string.close_snackbar), v1 -> snackbar.dismiss());
             snackbar.show();
             return;
@@ -181,7 +177,7 @@ public class MainActivity extends AppCompatActivity {
 
         saveValues();
 
-        SharedPreferences sp = getSharedPreferences("identity",0);
+        SharedPreferences sp = getSharedPreferences("identity", 0);
         SharedPreferences.Editor editor = sp.edit();
 
         savePreferencesViaEditor(editor);
@@ -201,15 +197,15 @@ public class MainActivity extends AppCompatActivity {
         } else {
             phoneNumbers = phoneNumbersList.toArray(new String[0]);
         }
-        User user = null;
+        User user;
         try {
             user = new User(firstName, lastName, birthCity, birthDeptString, parsedBirthDate, phoneNumbers);
         } catch (Exception e) {
             final Snackbar snackbar;
-            if (e.getMessage() == null){
-                snackbar = Snackbar.make(findViewById(R.id.mainContent), "An error occured please try again.", Snackbar.LENGTH_LONG);
+            if (e.getMessage() == null) {
+                snackbar = Snackbar.make(mainContent, "An error occurred please try again.", Snackbar.LENGTH_LONG);
             } else {
-                snackbar = Snackbar.make(findViewById(R.id.mainContent), e.getMessage(), Snackbar.LENGTH_LONG);
+                snackbar = Snackbar.make(mainContent, e.getMessage(), Snackbar.LENGTH_LONG);
             }
             snackbar.setAction(getString(R.string.close_snackbar), v1 -> snackbar.dismiss());
             snackbar.show();
@@ -221,16 +217,9 @@ public class MainActivity extends AppCompatActivity {
     }
 
     public void resetAction(MenuItem item) {
-        EditText firstNameEditText = findViewById(R.id.firstNameEditText);
-        EditText lastNameEditText = findViewById(R.id.lastNameEditText);
-        Button birthDateButton = findViewById(R.id.birthDateEditText);
-        EditText birthCityEditText = findViewById(R.id.birthCityEditText);
-        Spinner birthDeptSpinner = findViewById(R.id.birthDeptSpinner);
-        LinearLayout phonesLayout = findViewById(R.id.phonesLayout);
-
         firstNameEditText.setText("");
         lastNameEditText.setText("");
-        birthDateButton.setText("Pick date");
+        birthDateButton.setText(getString(R.string.pick_date_hint));
         birthCityEditText.setText("");
         birthDeptSpinner.setSelection(0);
 
@@ -245,8 +234,8 @@ public class MainActivity extends AppCompatActivity {
         return true;
     }
 
-    public void addPhoneNumber (View v){
-        ViewGroup viewGroup = (ViewGroup) findViewById(R.id.phonesLayout);
+    public void addPhoneNumber(View v) {
+        ViewGroup viewGroup = phonesLayout;
         LayoutInflater inflater = LayoutInflater.from(this);
 
         View duplicatedView = inflater.inflate(R.layout.phone_number_input, viewGroup, false);
@@ -266,8 +255,7 @@ public class MainActivity extends AppCompatActivity {
     }
 
 
-
-    protected void onSaveInstanceState(Bundle outState){
+    protected void onSaveInstanceState(@NonNull Bundle outState) {
         super.onSaveInstanceState(outState);
         Log.i("Lifecycle", "onSaveInstanceState method");
         saveValues();
@@ -279,7 +267,7 @@ public class MainActivity extends AppCompatActivity {
         outState.putStringArrayList("phones", phoneNumbersList);
     }
 
-    protected void onRestoreInstanceState(Bundle savedInstanceState){
+    protected void onRestoreInstanceState(@NonNull Bundle savedInstanceState) {
         super.onRestoreInstanceState(savedInstanceState);
         firstName = savedInstanceState.getString("firstName");
         lastName = savedInstanceState.getString("lastName");
@@ -290,7 +278,7 @@ public class MainActivity extends AppCompatActivity {
         restoreValues();
     }
 
-    private void savePreferencesViaEditor(SharedPreferences.Editor editor){
+    private void savePreferencesViaEditor(SharedPreferences.Editor editor) {
 
         editor.putString("firstName", firstName);
         editor.putString("lastName", lastName);
@@ -302,11 +290,11 @@ public class MainActivity extends AppCompatActivity {
         editor.apply();
     }
 
-    private void restorePreferences(){
-        SharedPreferences sp = getSharedPreferences("identity",0);
+    private void restorePreferences() {
+        SharedPreferences sp = getSharedPreferences("identity", 0);
         firstName = sp.getString("firstName", "");
         lastName = sp.getString("lastName", "");
-        birthDate = sp.getString("birthDate", "Pick date");
+        birthDate = sp.getString("birthDate", getString(R.string.pick_date_hint));
         birthCity = sp.getString("birthCity", "");
         birthDept = sp.getInt("birthDept", 0);
 
@@ -330,7 +318,7 @@ public class MainActivity extends AppCompatActivity {
 
     private void openWikipedia() {
         if (birthCity == null || birthCity.trim().isEmpty()) {
-            Snackbar.make(findViewById(R.id.mainContent), "Please enter a birth city first", Snackbar.LENGTH_LONG).show();
+            Snackbar.make(mainContent, "Please enter a birth city first", Snackbar.LENGTH_LONG).show();
             return;
         }
 
@@ -340,20 +328,20 @@ public class MainActivity extends AppCompatActivity {
         if (intent.resolveActivity(getPackageManager()) != null) {
             startActivity(intent);
         } else {
-            Snackbar.make(findViewById(R.id.mainContent), "No browser found to open Wikipedia", Snackbar.LENGTH_LONG).show();
+            Snackbar.make(mainContent, "No browser found to open Wikipedia", Snackbar.LENGTH_LONG).show();
         }
     }
 
     private void shareCity() {
         if (birthCity == null || birthCity.trim().isEmpty()) {
-            Snackbar.make(findViewById(R.id.mainContent), "Please enter a birth city first", Snackbar.LENGTH_LONG).show();
+            Snackbar.make(mainContent, "Please enter a birth city first", Snackbar.LENGTH_LONG).show();
             return;
         }
 
         Intent intent = new Intent(Intent.ACTION_SEND);
         intent.setType("text/plain");
-        intent.putExtra(intent.EXTRA_TEXT, birthCity);
-        Intent chooser = Intent.createChooser(intent, "Partage ville");
+        intent.putExtra(Intent.EXTRA_TEXT, birthCity);
+        Intent chooser = Intent.createChooser(intent, "Share ville");
         startActivity(chooser);
 
     }
@@ -361,7 +349,7 @@ public class MainActivity extends AppCompatActivity {
     public void showDatePicker() {
         Intent intent = new Intent(MainActivity.this, DatePickerActivity.class);
 
-        if (!birthDate.equals("Pick date")) {  // ✅ Envoie la date uniquement si elle est définie
+        if (!birthDate.equals(getString(R.string.pick_date_hint))) {
             LocalDate date = null;
             if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
                 date = LocalDate.parse(birthDate, DateTimeFormatter.ofPattern("d/M/yyyy"));
@@ -380,9 +368,9 @@ public class MainActivity extends AppCompatActivity {
                     fr.imt_atlantique.myfirstapplication.DatePicker date = result.getData().getParcelableExtra("date");
                     if (date != null) {
                         if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
-                            birthDate = date.getDate().format(DateTimeFormatter.ofPattern("d/M/yyyy"));  // ✅ Formate la date
+                            birthDate = date.getDate().format(DateTimeFormatter.ofPattern("d/M/yyyy"));
                         }
-                        birthDateButton.setText(birthDate);    // ✅ Met à jour le texte du bouton (si nécessaire)
+                        birthDateButton.setText(birthDate);
                     }
                 }
             }
diff --git a/app/src/main/java/fr/imt_atlantique/myfirstapplication/User.java b/app/src/main/java/fr/imt_atlantique/myfirstapplication/User.java
index 863d36009365bef96354206949c1298e46b06692..b56fe5b89fc6eb40fa2cc73b5168d9a624e498c6 100644
--- a/app/src/main/java/fr/imt_atlantique/myfirstapplication/User.java
+++ b/app/src/main/java/fr/imt_atlantique/myfirstapplication/User.java
@@ -6,22 +6,16 @@ import android.os.Parcelable;
 
 import androidx.annotation.NonNull;
 
-import java.text.DateFormat;
 import java.time.LocalDate;
 import java.time.format.DateTimeFormatter;
-import java.util.ArrayList;
 import java.util.Arrays;
-import java.util.Date;
 
 public class User implements Parcelable {
-    private String firstName;
-    private String lastName;
-    private String birthCity;
-    private String birthDept;
-    private LocalDate birthDate;
-    private String[] phoneNumbers;
-
-    public User(String firstName, String lastName, String birthCity, String birthDept, LocalDate birthDate, String[] phoneNumbers) throws Exception {
+    private String firstName, lastName, birthCity, birthDept;
+    LocalDate birthDate;
+    String[] phoneNumbers;
+
+    public User(String firstName, String lastName, String birthCity, String birthDept, LocalDate birthDate, String[] phoneNumbers) throws IllegalArgumentException {
         try {
             setFirstName(firstName);
             setLastName(lastName);
@@ -35,7 +29,6 @@ public class User implements Parcelable {
     }
 
 
-
     protected User(Parcel in) {
         firstName = in.readString();
         lastName = in.readString();
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index b8800e822979c893aa3b4be400fd7a011c9a98df..4582dc4a9f011e2d060ebac05fb5c5383e2ccd47 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -17,4 +17,5 @@
     <string name="phone_number_placeholder">0612345678</string>
     <string name="empty_warning">Please fill all empty field !</string>
     <string name="close_snackbar">Close</string>
+    <string name="pick_date_hint">Pick date</string>
 </resources>
\ No newline at end of file