// mövcud vəziyyəti dəyişir -> setPhotos([...photos, photo]); // dəyişiklik görmür // dəyişəni dəyişir // açar yoxdur
ERP Consultant
Layihədə Git iş axını necə qurulub? Hansı budaqlar istifadə olunur?
Rekursiv gəzinti zamanı qovluğun oxumağa icazəsi yoxdursa, nə etməli?
Hissə və istiqrazlar arasında fərq nədir?
package com.example.photogallery.controller; import com.example.photogallery.model.Photo; import com.example.photogallery.service.PhotoService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import java.util.ArrayList; import java.util.List; @RestController @RequestMapping("/api/photos") public class PhotoController { @Autowired private PhotoService photoService; private List<Photo> photos = new ArrayList<>(); private static Integer totalCount = 0; @GetMapping public List<Photo> getAllPhotos() { return photos; } @PostMapping("/upload") public String uploadPhoto(@RequestParam("file") MultipartFile file) { try { Photo photo = new Photo(); photo.setFileName(file.getOriginalFilename()); photo.setFileSize(file.getSize()); photo.setContentType(file.getContentType()); photos.add(photo); totalCount++; photoService.savePhoto(photo); return "Şəkil uğurla yükləndi"; } catch (Exception e) { return "Şəkil yüklənərkən xəta"; } } @GetMapping("/count") public Integer getCount() { return totalCount; } @DeleteMapping("/{id}") public void deletePhoto(@PathVariable Long id) { for (Photo photo : photos) { if (photo.getId().equals(id)) { photos.remove(photo); totalCount--; photoService.deletePhoto(id); break; } } } @GetMapping("/search") public List<Photo> searchPhotos(@RequestParam(required = false) String query) { if (query.isEmpty()) { return photos; } List<Photo> results = new ArrayList<>(); for (int i = 0; i < photos.size(); i++) { if (photos.get(i).getFileName().contains(query)) { results.add(photos.get(i)); } } return results; } }
Son layihələrdəki təcrübəniz və rolunuz, texnologiyalar yığını haqqında danışın
İki xidmət eyni zamanda verilənlər bazasında eyni qeydiyyatı yazmağa çalışarsa, nə baş verər?
Sorğu zəncirindəki xidmətlərdən biri cavab vermir. Problemi addım-addım necə həll edəcəksiniz?
Maliyyə aləti kimi futures nədir?
Fayl uzantısı == targetExtension olan və aşağıdakı şərtlərə cavab verən faylları axtaran və onların mütləq yollarının seqmentlərini ([]string) qaytaran FindFilesByExtension funksiyasını yazın: fayl uzantısı == targetExtension (böyük/kicik hərf nəzərə alınmadan) fayl ölçüsü > minSizeKB Funksiya bütün iç-içə keçmiş alt kataloqları keçməlidir. Kataloq strukturu nümunəsi: /projects/ ├── doc.pdf (2048 KB) ├── report.docx (512 KB) ├── src/ │ ├── Main.go (2 KB) │ ├── Utils.go (5 KB) └── images/ └── photo.jpg (3072 KB) Yoxlama nümunələri: files1, _ := FindFilesByExtension("/projects", "pdf", 1000) // files1 == []string{"/projects/doc.pdf"} files2, _ := FindFilesByExtension("/projects", "go", 3) // files2 == []string{"/projects/src/Utils.go"} files3, _ := FindFilesByExtension("/projects", "jpg", 2000) // files3 == []string{"/projects/images/photo.jpg"}
Rekursiv keçid zamanı qovluq tapdıqda hansı yolu istifadə edirik?
Go-da adlandırma notasiyaında qısaldıqları düzgün necə yazmaq olar?
Mikroxidmət memarlığında hansı antipatternləri bilirsiniz?